1. 13 May, 2014 1 commit
    • Juan Castillo's avatar
      Fix C accessors to GIC distributor registers with set/clear semantics · 42a52d89
      Juan Castillo authored
      This patch fixes C accessors to GIC registers that follow a set/clear
      semantic to change the state of an interrupt, instead of read/write/modify.
      These registers are:
        Set-Enable
        Clear-Enable
        Set-Pending
        Clear-Pending
        Set-Active
        Clear-Active
      For instance, to enable an interrupt we write a one to the corresponding bit
      in the Set-Enable register, whereas to disable it we write a one to the
      corresponding bit in the Clear-Enable register.
      
      Fixes ARM-software/tf-issues#137
      
      Change-Id: I3b66bad94d0b28e0fe08c9042bac0bf5ffa07944
      42a52d89
  2. 07 May, 2014 1 commit
    • Andrew Thoelke's avatar
      Correct usage of data and instruction barriers · 8cec598b
      Andrew Thoelke authored
      The current code does not always use data and instruction
      barriers as required by the architecture and frequently uses
      barriers excessively due to their inclusion in all of the
      write_*() helper functions.
      
      Barriers should be used explicitly in assembler or C code
      when modifying processor state that requires the barriers in
      order to enable review of correctness of the code.
      
      This patch removes the barriers from the helper functions and
      introduces them as necessary elsewhere in the code.
      
      PORTING NOTE: check any port of Trusted Firmware for use of
      system register helper functions for reliance on the previous
      barrier behaviour and add explicit barriers as necessary.
      
      Fixes ARM-software/tf-issues#92
      
      Change-Id: Ie63e187404ff10e0bdcb39292dd9066cb84c53bf
      8cec598b
  3. 06 May, 2014 5 commits
    • Dan Handley's avatar
      Reduce deep nesting of header files · 97043ac9
      Dan Handley authored
      Reduce the number of header files included from other header
      files as much as possible without splitting the files. Use forward
      declarations where possible. This allows removal of some unnecessary
      "#ifndef __ASSEMBLY__" statements.
      
      Also, review the .c and .S files for which header files really need
      including and reorder the #include statements alphabetically.
      
      Fixes ARM-software/tf-issues#31
      
      Change-Id: Iec92fb976334c77453e010b60bcf56f3be72bd3e
      97043ac9
    • Dan Handley's avatar
      Always use named structs in header files · fb037bfb
      Dan Handley authored
      Add tag names to all unnamed structs in header files. This
      allows forward declaration of structs, which is necessary to
      reduce header file nesting (to be implemented in a subsequent
      commit).
      
      Also change the typedef names across the codebase to use the _t
      suffix to be more conformant with the Linux coding style. The
      coding style actually prefers us not to use typedefs at all but
      this is considered a step too far for Trusted Firmware.
      
      Also change the IO framework structs defintions to use typedef'd
      structs to be consistent with the rest of the codebase.
      
      Change-Id: I722b2c86fc0d92e4da3b15e5cab20373dd26786f
      fb037bfb
    • Dan Handley's avatar
      Refactor GIC header files · 8a4fb6f6
      Dan Handley authored
      Move the function prototypes from gic.h into either gic_v2.h or
      gic_v3.h as appropriate. Update the source files to include the
      correct headers.
      
      Change-Id: I368cfda175cdcbd3a68f46e2332738ec49048e19
      8a4fb6f6
    • Dan Handley's avatar
      Make use of user/system includes more consistent · 35e98e55
      Dan Handley authored
      Make codebase consistent in its use of #include "" syntax for
      user includes and #include <> syntax for system includes.
      
      Fixes ARM-software/tf-issues#65
      
      Change-Id: If2f7c4885173b1fd05ac2cde5f1c8a07000c7a33
      35e98e55
    • Dan Handley's avatar
      Move include and source files to logical locations · 4ecca339
      Dan Handley authored
      Move almost all system include files to a logical sub-directory
      under ./include. The only remaining system include directories
      not under ./include are specific to the platform. Move the
      corresponding source files to match the include directory
      structure.
      
      Also remove pm.h as it is no longer used.
      
      Change-Id: Ie5ea6368ec5fad459f3e8a802ad129135527f0b3
      4ecca339
  4. 24 Apr, 2014 1 commit
    • Harry Liebel's avatar
      Add TrustZone (TZC-400) driver · cd116d17
      Harry Liebel authored
      The TZC-400 performs security checks on transactions to memory or
      peripherals. Separate regions can be created in the address space each
      with individual security settings.
      
      Limitations:
      This driver does not currently support raising an interrupt on access
      violation.
      
      Change-Id: Idf8ed64b4d8d218fc9b6f9d75acdb2cd441d2449
      cd116d17
  5. 14 Apr, 2014 1 commit
    • Dan Handley's avatar
      Move console.c to pl011 specific driver location · d72f6e31
      Dan Handley authored
      Rename drivers/console/console.c to
      drivers/arm/peripherals/pl011/pl011_console.c. This makes it clear
      that this is a pl011 specific console implementation.
      
      Fixes ARM-software/tf-issues#129
      
      Change-Id: Ie2f8109602134c5b86993e32452c70734c45a3ed
      d72f6e31
  6. 26 Mar, 2014 1 commit
    • Soby Mathew's avatar
      Move console functions out of pl011.c · c1df3be7
      Soby Mathew authored
      This commit isolates the accessor functions in pl011.c and builds
      a wrapper layer for console functions.
      
      This also modifies the console driver to use the pl011 FIFO.
      
      Fixes ARM-software/tf-issues#63
      
      Change-Id: I3b402171cd14a927831bf5e5d4bb310b6da0e9a8
      c1df3be7
  7. 20 Feb, 2014 1 commit
    • Achin Gupta's avatar
      Specify address of UART device to use as a console · 8aa0cd43
      Achin Gupta authored
      This patch adds the ability to specify the base address of a UART
      device for initialising the console. This allows a boot loader stage
      to use a different UART device from UART0 (default) for the console.
      
      Change-Id: Ie60b927389ae26085cfc90d22a564ff83ba62955
      8aa0cd43
  8. 17 Jan, 2014 1 commit
  9. 05 Dec, 2013 1 commit
    • Dan Handley's avatar
      Enable third party contributions · ab2d31ed
      Dan Handley authored
      - Add instructions for contributing to ARM Trusted Firmware.
      
      - Update copyright text in all files to acknowledge contributors.
      
      Change-Id: I9311aac81b00c6c167d2f8c889aea403b84450e5
      ab2d31ed
  10. 25 Oct, 2013 1 commit