1. 01 Aug, 2019 1 commit
    • Julius Werner's avatar
      Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ · d5dfdeb6
      Julius Werner authored
      
      
      NOTE: __ASSEMBLY__ macro is now deprecated in favor of __ASSEMBLER__.
      
      All common C compilers predefine a macro called __ASSEMBLER__ when
      preprocessing a .S file. There is no reason for TF-A to define it's own
      __ASSEMBLY__ macro for this purpose instead. To unify code with the
      export headers (which use __ASSEMBLER__ to avoid one extra dependency),
      let's deprecate __ASSEMBLY__ and switch the code base over to the
      predefined standard.
      
      Change-Id: Id7d0ec8cf330195da80499c68562b65cb5ab7417
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      d5dfdeb6
  2. 12 Feb, 2019 1 commit
  3. 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
  4. 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
  5. 30 Aug, 2018 2 commits
    • Bryan O'Donoghue's avatar
      drivers: imx: crash-console: Add a mxc_crash_console driver · 2f5307d6
      Bryan O'Donoghue authored
      
      
      This patch does two main things
      
      - It implements the crash console UART init in assembly, as a
        hard-coded 115200 8N1 assumed from the 24 MHz clock.
      
        If the clock setup code has not run yet, this code can't work but,
        setting up clocks and clock-gates is way out of scope for this type of
        recovery function.
      
      - It adds code to write a character out of the NXP UART without using any
        stack-based operations when doing so.
      
      - Provides support for crash console in DCE or DTE mode.
      Signed-off-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
      2f5307d6
    • Bryan O'Donoghue's avatar
      drivers: imx: uart: Add mxc_console · 598cee48
      Bryan O'Donoghue authored
      
      
      - Adds a simple register read/write abstraction to cut-down on the
        amount of typing and text required to access UART registers in this driver.
      
      - Adds a console getc() callback.
      
      - Adds a console putc() callback, translating '\n' to '\r' + '\n'.
      
      - Initializes the MXC UART, take a crude method of calculating the
        BAUD rate generator. The UART clock-gates must have been enabled prior
        to launching the UART init code.
        Special care needs to be taken to ensure the UBIR is initialized before the
        UBMR and we need to ensure that UCR2.SRST comes good before trying to
        program other registers associated with the UART.
      Signed-off-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
      598cee48