1. 22 May, 2019 1 commit
  2. 30 Apr, 2019 1 commit
    • Andrew F. Davis's avatar
      ti: k3: common: Remove MSMC port definitions · a82bf5ad
      Andrew F. Davis authored
      
      
      The MSMC port defines were added to help in the case when some ports
      are not connected and have no cores attached. We can get the same
      functionality by defined the number of cores on that port to zero.
      This simplifies several code paths, do this here.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      Change-Id: I3247fe37af7b86c3227e647b4f617fab70c8ee8a
      a82bf5ad
  3. 26 Apr, 2019 4 commits
  4. 23 Apr, 2019 4 commits
    • Andrew F. Davis's avatar
      ti: k3: drivers: ti_sci: Retry message receive on bad sequence ID · 71a35273
      Andrew F. Davis authored
      
      
      When we get a sequence ID that does not match what we expect then the we
      are looking at is not the one we are expecting and so we error out. We
      can also assume this message is a stale message left in the queue, in
      this case we can read in the next message and check again for our
      message. Switch to doing that here. We only retry a set number of times
      so we don't lock the system if our message is actually lost and will
      never show up.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      Change-Id: I6c8186ccc45e646d3ba9d431f7d4c451dcd70c5c
      71a35273
    • Andrew F. Davis's avatar
      ti: k3: drivers: ti_sci: Cleanup sequence ID usage · 7a469035
      Andrew F. Davis authored
      
      
      The sequence ID can be set with a message to identify it when it is
      responded to in the response queue. We assign each message a number and
      check for this same number to detect response mismatches.
      
      Start this at 0 and increase it by one for each message sent, even ones
      that do not request or wait for a response as one may still be delivered
      in some cases and we want to detect this.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      Change-Id: I72b4d1ef98bf1c1409d9db9db074af8dfbcd83ea
      7a469035
    • Andrew F. Davis's avatar
      ti: k3: drivers: sec_proxy: Use direction definitions · fb98ca5a
      Andrew F. Davis authored
      
      
      The direction of a thread should be explicitly compared to avoid
      confusion. Also fixup message wording based on this direction.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      Change-Id: Ia3cf9413cd23af476bb5d2e6d70bee15234cbd11
      fb98ca5a
    • Andrew F. Davis's avatar
      ti: k3: drivers: sec_proxy: Fix printf format specifiers · 6c30baee
      Andrew F. Davis authored
      
      
      The ID of a thread is not used outside for printing it out when
      something goes wrong. The specifier used is also not consistent.
      Instead of storing the thread ID, store its name and print that.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      Change-Id: Id137c2f8dfdd5c599e220193344ece903f80af7b
      6c30baee
  5. 19 Apr, 2019 4 commits
  6. 11 Feb, 2019 6 commits
  7. 22 Jan, 2019 1 commit
    • Andrew F. Davis's avatar
      ti: k3: common: Add support for runtime detection of GICR base address · b5443284
      Andrew F. Davis authored
      
      
      Valid addresses for GICR base are always a set calculable distance from
      the GICD and is based on the number of cores a given instance of GICv3 IP
      can support. The formula for the number of address bits is given by the
      ARM GIC-500 TRM section 3.2 as 2^(18+log2(cores)) with the MSB set to
      one for GICR instances. Holes in the GIC address space are also
      guaranteed to safely return 0 on reads. This allows us to support runtime
      detection of the GICR base address by starting from GIC base address plus
      BIT(18) and walking until the GICR ID register (IIDR) is detected. We
      stop searching after BIT(20) to prevent searching out into space if
      something goes wrong. This can be extended out if we ever have a device
      with 16 or more cores.
      Signed-off-by: default avatarAndrew F. Davis <afd@ti.com>
      b5443284
  8. 21 Jan, 2019 7 commits
  9. 04 Jan, 2019 1 commit
    • Antonio Nino Diaz's avatar
      Sanitise includes across codebase · 09d40e0e
      Antonio Nino Diaz authored
      Enforce full include path for includes. Deprecate old paths.
      
      The following folders inside include/lib have been left unchanged:
      
      - include/lib/cpus/${ARCH}
      - include/lib/el3_runtime/${ARCH}
      
      The reason for this change is that having a global namespace for
      includes isn't a good idea. It defeats one of the advantages of having
      folders and it introduces problems that are sometimes subtle (because
      you may not know the header you are actually including if there are two
      of them).
      
      For example, this patch had to be created because two headers were
      called the same way: e0ea0928 ("Fix gpio includes of mt8173 platform
      to avoid collision."). More recently, this patch has had similar
      problems: 46f9b2c3 ("drivers: add tzc380 support").
      
      This problem was introduced in commit 4ecca339
      
       ("Move include and
      source files to logical locations"). At that time, there weren't too
      many headers so it wasn't a real issue. However, time has shown that
      this creates problems.
      
      Platforms that want to preserve the way they include headers may add the
      removed paths to PLAT_INCLUDES, but this is discouraged.
      
      Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8f
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      09d40e0e
  10. 07 Dec, 2018 1 commit
    • Julius Werner's avatar
      drivers/console: Link console framework code by default · 985ee0b7
      Julius Werner authored
      
      
      This patch makes the build system link the console framework code by
      default, like it already does with other common libraries (e.g. cache
      helpers). This should not make a difference in practice since TF is
      linked with --gc-sections, so the linker will garbage collect all
      functions and data that are not referenced by any other code. Thus, if a
      platform doesn't want to include console code for size reasons and
      doesn't make any references to console functions, the code will not be
      included in the final binary.
      
      To avoid compatibility issues with older platform ports, only make this
      change for the MULTI_CONSOLE_API.
      
      Change-Id: I153a9dbe680d57aadb860d1c829759ba701130d3
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      985ee0b7
  11. 08 Nov, 2018 1 commit
    • Antonio Nino Diaz's avatar
      Standardise header guards across codebase · c3cf06f1
      Antonio Nino Diaz authored
      
      
      All identifiers, regardless of use, that start with two underscores are
      reserved. This means they can't be used in header guards.
      
      The style that this project is now to use the full name of the file in
      capital letters followed by 'H'. For example, for a file called
      "uart_example.h", the header guard is UART_EXAMPLE_H.
      
      The exceptions are files that are imported from other projects:
      
      - CryptoCell driver
      - dt-bindings folders
      - zlib headers
      
      Change-Id: I50561bf6c88b491ec440d0c8385c74650f3c106e
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      c3cf06f1
  12. 30 Oct, 2018 1 commit
  13. 26 Oct, 2018 1 commit
  14. 25 Oct, 2018 1 commit
    • Antonio Nino Diaz's avatar
      Add plat_crash_console_flush to platforms without it · 9c675b37
      Antonio Nino Diaz authored
      
      
      Even though at this point plat_crash_console_flush is optional, it will
      stop being optional in a following patch.
      
      The console driver of warp7 doesn't support flush, so the implementation
      is a placeholder.
      
      TI had ``plat_crash_console_init`` and ``plat_crash_console_putc``, but
      they weren't global so they weren't actually used. Also, they were
      calling the wrong functions.
      
      imx8_helpers.S only has placeholders for all of the functions.
      
      Change-Id: I8d17bbf37c7dad74e134c61ceb92acb9af497718
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      9c675b37
  15. 16 Oct, 2018 1 commit
  16. 28 Sep, 2018 1 commit
  17. 31 Aug, 2018 1 commit
  18. 22 Aug, 2018 3 commits