1. 08 Jul, 2020 2 commits
    • Etienne Carriere's avatar
      stm32mp1: shared resources: peripheral registering · 68450c94
      Etienne Carriere authored
      
      
      Define helper functions stm32mp_register_secure_periph() and
      stm32mp_register_non_secure_periph() for platform drivers to
      register a shared resource assigned to respectively secure
      or non-secure world.
      
      Some resources are related to clock resources. When a resource is
      registered as secure, ensure its clock dependencies are also
      registered as secure. Registering a non-secure resource does not
      mandate its clock dependencies are also registered as non-secure.
      
      Change-Id: I74975be8976b8d3bf18dcc807541a072803af6e3
      Signed-off-by: default avatarEtienne Carriere <etienne.carriere@st.com>
      68450c94
    • Etienne Carriere's avatar
      stm32mp1: shared resources: add trace messages · a2150c33
      Etienne Carriere authored
      
      
      Define from helper functions to get a human readable string
      identifier from a shared resource enumerated ID. Use them to
      make debug traces more friendly peripheral registering functions.
      
      Change-Id: I9e207b8ce1d1e9250e242ca7e15461b9a1532f40
      Signed-off-by: default avatarEtienne Carriere <etienne.carriere@st.com>
      a2150c33
  2. 29 Jun, 2020 2 commits
  3. 26 Jun, 2020 2 commits
    • Andre Przywara's avatar
      arm_fpga: Fix MPIDR topology checks · 53baf7f0
      Andre Przywara authored
      
      
      The plat_core_pos_by_mpidr() implementation for the Arm FPGA port has
      some issues, which leads to problems when matching GICv3 redistributors
      with cores:
      - The power domain tree was not taking multithreading into account, so
        we ended up with the wrong mapping between MPIDRs and core IDs.
      - Before even considering an MPIDR, we try to make sure Aff2 is 0.
        Unfortunately this is the cluster ID when the MT bit is set.
      - We mask off the MT bit in MPIDR, before basing decisions on it.
      - When detecting the MT bit, we are properly calculating the thread ID,
        but don't account for the shift in the core and cluster ID checks.
      
      Those problems lead to early rejections of MPIDRs values, in particular
      when called from the GIC code. As a result, CPU_ON for secondary cores
      was failing for most of the cores.
      
      Fix this by properly handling the MT bit in plat_core_pos_by_mpidr(),
      also pulling in FPGA_MAX_PE_PER_CPU when populating the power domain
      tree.
      
      Change-Id: I71b2255fc0d27bfe5806511df479ab38e4e33fc4
      Signed-off-by: default avatarAndre Przywara <andre.przywara@arm.com>
      53baf7f0
    • Manish V Badarkhe's avatar
      plat/arm: Use only fw_config between bl2 and bl31 · 7fb9bcd8
      Manish V Badarkhe authored
      
      
      Passed the address of fw_config instead of soc_fw_config
      as arg1 to BL31 from BL2 for ARM fvp platform.
      
      BL31 then retrieve load-address of other device trees
      from fw_config device tree.
      Signed-off-by: default avatarLouis Mayencourt <louis.mayencourt@arm.com>
      Signed-off-by: default avatarManish V Badarkhe <Manish.Badarkhe@arm.com>
      Change-Id: Ib7e9581cd765d76111dcc3b7e0dafc12503c83c1
      7fb9bcd8
  4. 25 Jun, 2020 2 commits
    • Manish V Badarkhe's avatar
      plat/arm: Increase size of firmware configuration area · ce4ca1a8
      Manish V Badarkhe authored
      
      
      Increased the size of firmware configuration area to accommodate
      all configs.
      
      Updated maximum size of following bootloaders due to increase
      in firmware configs size and addition of the code in the BL2.
      
      1. Increased maximum size of BL2 for Juno platform in no
         optimisation case.
      2. Reduced maximum size of BL31 for fvp and Juno platform.
      3. Reduced maximum size of BL32 for Juno platform.
      
      Change-Id: Ifba0564df0d1fe86175bed9fae87fdcf013b1831
      Signed-off-by: default avatarManish V Badarkhe <Manish.Badarkhe@arm.com>
      ce4ca1a8
    • Manish V Badarkhe's avatar
      plat/arm: Load and populate fw_config and tb_fw_config · 82869675
      Manish V Badarkhe authored
      
      
      Modified the code to do below changes:
      
      1. Load tb_fw_config along with fw_config by BL1.
      2. Populate fw_config device tree information in the
         BL1 to load tb_fw_config.
      3. In BL2, populate fw_config information to retrieve
         the address of tb_fw_config and then tb_fw_config
         gets populated using retrieved address.
      4. Avoid processing of configuration file in case of error
         value returned from "fw_config_load" function.
      5. Updated entrypoint information for BL2 image so
         that it's arg0 should point to fw_config address.
      Signed-off-by: default avatarManish V Badarkhe <Manish.Badarkhe@arm.com>
      Signed-off-by: default avatarLouis Mayencourt <louis.mayencourt@arm.com>
      Change-Id: Ife6f7b673a074e7f544ee3d1bda7645fd5b2886c
      82869675
  5. 24 Jun, 2020 6 commits
  6. 23 Jun, 2020 9 commits
  7. 21 Jun, 2020 1 commit
    • Varun Wadekar's avatar
      Tegra: sanity check NS address and size before use · 685e5609
      Varun Wadekar authored
      
      
      This patch updates the 'bl31_check_ns_address()' helper function to
      check that the memory address and size passed by the NS world are not
      zero.
      
      The helper fucntion also returns the error code as soon as it detects
      inconsistencies, to avoid multiple error paths from kicking in for the
      same input parameters.
      Signed-off-by: default avatarVarun Wadekar <vwadekar@nvidia.com>
      
      Change-Id: I46264f913954614bedcbde12e47ea0c70cd19be0
      685e5609
  8. 19 Jun, 2020 13 commits
  9. 18 Jun, 2020 1 commit
    • Marcin Wojtas's avatar
      plat: marvell: armada: modify PLAT_FAMILY name for 37xx SoCs · b5c850d4
      Marcin Wojtas authored
      
      
      The Marvell Armada 37xx SoCs-based platforms contain a bit
      awkward directory structure because the currently only one
      supported PLAT and PLAT_FAMILY are the same. Modify the latter
      to 'a3k' in order to improve it and keep plat/marvell/armada
      tree more consistent:
      
      plat/marvell/
      ├── armada
      │   ├── a3k
      │   │   ├── a3700
      
      [...]
      
      │   ├── a8k
      │   │   ├── a70x0
      
      [...]
      
      Change-Id: I693a6ef88e6ce49a326a3328875c90bbc186066a
      Signed-off-by: default avatarMarcin Wojtas <mw@semihalf.com>
      b5c850d4
  10. 17 Jun, 2020 1 commit
    • Manish V Badarkhe's avatar
      plat/arm: Fix load address of TB_FW_CONFIG · 15865870
      Manish V Badarkhe authored
      
      
      Load address of tb_fw_config is incorrectly mentioned
      in below device trees:
      1. rdn1edge_fw_config.dts
      2. tc0_fw_config.dts
      
      Till now, tb_fw_config load-address is not being retrieved from
      device tree and hence never exeprienced any issue for tc0 and
      rdn1edge platform.
      
      For tc0 and rdn1edge platform, Load-address of tb_fw_config should
      be the SRAM base address + 0x300 (size of fw_config device tree)
      Hence updated these platform's fw_config.dts accordingly to reflect
      this load address change.
      
      Change-Id: I2ef8b05d49be10767db31384329f516df11ca817
      Signed-off-by: default avatarManish V Badarkhe <Manish.Badarkhe@arm.com>
      15865870
  11. 12 Jun, 2020 1 commit