1. 20 May, 2019 1 commit
    • Leonard Crestez's avatar
      plat: imx8mq: Implement IMX_SIP_GET_SOC_INFO · 72196cbb
      Leonard Crestez authored
      The manual documents that 0x3036006c should contains the soc revision
      for imx8mq but this always reports A0. Work around this by parsing the
      ROM header and checking if OCOTP register 0x40 is stuck at 0xff0055aa.
      
      Determining this inside TF-A makes life easier for OS, see for example
      this linux discussion: https://lkml.org/lkml/2019/5/3/465
      
      
      
      The soc revision can also be useful inside TF-A itself, for example for
      the non-upstream DDR DVFS "busfreq" feature is affected by 8mq erratas.
      
      The clock for OCOTP block can be disabled by OS so only initialize soc
      revision once at boot time.
      
      Change-Id: I9ca3f27840229ce8a28b53870e44da29f63c73aa
      Signed-off-by: default avatarLeonard Crestez <leonard.crestez@nxp.com>
      72196cbb
  2. 15 May, 2019 4 commits
  3. 14 May, 2019 1 commit
  4. 13 May, 2019 2 commits
  5. 10 May, 2019 5 commits
  6. 09 May, 2019 4 commits
  7. 08 May, 2019 6 commits
  8. 07 May, 2019 3 commits
  9. 03 May, 2019 4 commits
  10. 02 May, 2019 4 commits
    • Soby Mathew's avatar
      Merge changes from topic "rk3399q7" into integration · 8917380a
      Soby Mathew authored
      * changes:
        rockchip: Disable binary generation for all SoCs.
        build_macros: Add mechanism to prevent bin generation.
      8917380a
    • Christoph Müllner's avatar
      rockchip: Disable binary generation for all SoCs. · 33218d2a
      Christoph Müllner authored
      
      
      All supported Rockchip SoCs (RK3288, RK3328, RK3368 and RK3399)
      have non-continuous memory areas in the linker script with a huge
      gap between them. This results in extremely padded binary images
      with a size of about 4 GiB.
      
      E.g. on the RK3399 we have the following memory areas (and base addresses):
      RAM (0x1000), SRAM (0xFF8C0000), and PMUSRAM (0xFF3B0000).
      
      Consumers of the TF-A project (e.g. coreboot or U-Boot) therefore
      use the ELF image instead, which has a size of a few hundred kBs.
      
      In order to prevent the generation of a huge and useless file,
      this patch disables the binary generation for all affected Rockchip
      SoCs.
      Signed-off-by: default avatarChristoph Müllner <christophm30@gmail.com>
      Change-Id: I4ac65bdf1e598c3e1a59507897d183aee9a36916
      33218d2a
    • Christoph Müllner's avatar
      build_macros: Add mechanism to prevent bin generation. · 9e4609f1
      Christoph Müllner authored
      
      
      On certain platforms it does not make sense to generate
      TF-A binary images. For example a platform could make use of serveral
      memory areas, which are non-continuous and the resulting binary
      therefore would suffer from the padding-bytes.
      Typically these platforms use the ELF image.
      
      This patch introduces a variable DISABLE_BIN_GENERATION, which
      can be set to '1' in the platform makefile to prevent the binary
      generation.
      Signed-off-by: default avatarChristoph Müllner <christophm30@gmail.com>
      Change-Id: I62948e88bab685bb055fe6167d9660d14e604462
      9e4609f1
    • Antonio Niño Díaz's avatar
      Merge changes from topic "rk3399q7" into integration · b3c8ac13
      Antonio Niño Díaz authored
      * changes:
        rockchip: Allow console device to be set by DTB.
        rockchip: Add params_setup to RK3328.
        rockchip: Streamline and complete UARTn_BASE macros.
      b3c8ac13
  11. 01 May, 2019 3 commits
    • Christoph Müllner's avatar
      rockchip: Allow console device to be set by DTB. · 220c33a2
      Christoph Müllner authored
      
      
      Currently the compile-time constant PLAT_RK_UART_BASE defines
      which UART is used as console device. E.g. on RK3399 it is set
      to UART2. That means, that a single bl31 image can not be used
      for two boards, which just differ on the UART console.
      
      This patch addresses this limitation by parsing the "stdout-path"
      property from the "chosen" node in the DTB. The expected property
      string is expected to have the form "serialN:XXX", with
      N being either 0, 1, 2, 3 or 4. When the property is found, it will
      be used to override PLAT_RK_UART_BASE.
      
      Tested on RK3399-Q7, with a stdout-path of "serial0:115200n8".
      Signed-off-by: default avatarChristoph Müllner <christophm30@gmail.com>
      Change-Id: Iafe1320e77ab006c121f8d52745d54cef68a48c7
      220c33a2
    • Christoph Müllner's avatar
      rockchip: Add params_setup to RK3328. · f476e63f
      Christoph Müllner authored
      
      
      params_setup.c provides the function params_early_setup, which
      takes care of parsing ATF parameters (bl31_plat_param array,
      fdt or coreboot table). As params_early_setup is defined as weak
      symbol in bl31_plat_setup.c, providing a platform-specific
      bl31_plat_setup implementation is optional.
      
      This patch adds the rockchip-common params_setup.c to the sources
      for RK3328. This streamlines the parameter handling for all supported
      rockchip SoCs.
      Signed-off-by: default avatarChristoph Müllner <christophm30@gmail.com>
      Change-Id: I071c03106114364ad2fc408e49cc791fe5b35925
      f476e63f
    • Christoph Müllner's avatar
      rockchip: Streamline and complete UARTn_BASE macros. · 0957b9b2
      Christoph Müllner authored
      
      
      In order to set the UART base during bootup in common code of
      plat/rockchip, we need to streamline the way the UART base addresses
      are defined and add the missing definitions and mappings.
      
      This patch does so by following the pattern UARTn_BASE, which is
      already in use on RK3399 and RK3328. The numbering itself is derived
      from the upstream Linux DTS files of the individual SoCs.
      Signed-off-by: default avatarChristoph Müllner <christophm30@gmail.com>
      Change-Id: I341a1996f4ceed5f82a2f6687d4dead9d7cc5c1f
      0957b9b2
  12. 30 Apr, 2019 3 commits