History log of /rk3399_ARM-atf/include/ (Results 1651 – 1675 of 3957)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
a127b99d09-Nov-2021 Olivier Deprez <olivier.deprez@arm.com>

Merge "feat(SPMD): route secure interrupts to SPMC" into integration

2e43638e09-Nov-2021 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge changes from topic "st_usb" into integration

* changes:
fix(drivers/usb): add a optional ops get_other_speed_config_desc
fix(drivers/usb): remove unnecessary cast

28623c1008-Nov-2021 Manish Pandey <manish.pandey2@arm.com>

Merge "fix: libc: use long for 64-bit types on aarch64" into integration


/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcard.c
/rk3399_ARM-atf/drivers/marvell/amb_adec.c
/rk3399_ARM-atf/drivers/marvell/ccu.c
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.c
/rk3399_ARM-atf/drivers/marvell/gwin.c
/rk3399_ARM-atf/drivers/marvell/io_win.c
/rk3399_ARM-atf/drivers/marvell/iob.c
/rk3399_ARM-atf/drivers/marvell/mc_trustzone/mc_trustzone.c
/rk3399_ARM-atf/drivers/mtd/spi-mem/spi_mem.c
/rk3399_ARM-atf/drivers/nxp/ddr/nxp-ddr/ddr.c
/rk3399_ARM-atf/fdts/arm_fpga.dts
lib/libc/aarch32/inttypes_.h
lib/libc/aarch32/stdint_.h
lib/libc/aarch64/inttypes_.h
lib/libc/aarch64/stdint_.h
lib/libc/inttypes.h
lib/libc/stdint.h
/rk3399_ARM-atf/lib/bl_aux_params/bl_aux_params.c
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/a3700_ea.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/plat/nxp/common/setup/ls_bl31_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rzg/bl2_plat_setup.c
/rk3399_ARM-atf/plat/rpi/rpi4/rpi4_bl31_setup.c
/rk3399_ARM-atf/plat/xilinx/common/plat_startup.c
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/std_svc/sdei/sdei_intr_mgmt.c
/rk3399_ARM-atf/services/std_svc/sdei/sdei_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_pm.c
51d8d1e308-Nov-2021 Mark Dykes <mark.dykes@arm.com>

Changing SMC code for transitioning Granule

Changing the SMC code value to conform with RMM for
transitioning a realm granule back to non-secure,
otherwise known as undelegate.

Signed-off-by: Mark

Changing SMC code for transitioning Granule

Changing the SMC code value to conform with RMM for
transitioning a realm granule back to non-secure,
otherwise known as undelegate.

Signed-off-by: Mark Dykes <mark.dykes@arm.com>
Change-Id: Ia45ad6cab538de48c65b071b49e504be234afa2b

show more ...

4ce3e99a25-Aug-2020 Scott Branden <scott.branden@broadcom.com>

fix: libc: use long for 64-bit types on aarch64

Use long instead of long long on aarch64 for 64_t stdint types.
Introduce inttypes.h to properly support printf format specifiers for
fixed width type

fix: libc: use long for 64-bit types on aarch64

Use long instead of long long on aarch64 for 64_t stdint types.
Introduce inttypes.h to properly support printf format specifiers for
fixed width types for such change.

Change-Id: I0bca594687a996fde0a9702d7a383055b99f10a1
Signed-off-by: Scott Branden <scott.branden@broadcom.com>

show more ...


/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/getting_started/prerequisites.rst
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcard.c
/rk3399_ARM-atf/drivers/marvell/amb_adec.c
/rk3399_ARM-atf/drivers/marvell/ccu.c
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.c
/rk3399_ARM-atf/drivers/marvell/gwin.c
/rk3399_ARM-atf/drivers/marvell/io_win.c
/rk3399_ARM-atf/drivers/marvell/iob.c
/rk3399_ARM-atf/drivers/marvell/mc_trustzone/mc_trustzone.c
/rk3399_ARM-atf/drivers/mtd/spi-mem/spi_mem.c
/rk3399_ARM-atf/drivers/nxp/ddr/nxp-ddr/ddr.c
lib/libc/aarch32/inttypes_.h
lib/libc/aarch32/stdint_.h
lib/libc/aarch64/inttypes_.h
lib/libc/aarch64/stdint_.h
lib/libc/inttypes.h
lib/libc/stdint.h
/rk3399_ARM-atf/lib/bl_aux_params/bl_aux_params.c
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/a3700_ea.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_sip_calls.c
/rk3399_ARM-atf/plat/nxp/common/setup/ls_bl31_setup.c
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/renesas/rzg/bl2_plat_setup.c
/rk3399_ARM-atf/plat/rpi/rpi4/rpi4_bl31_setup.c
/rk3399_ARM-atf/plat/xilinx/common/plat_startup.c
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/std_svc/sdei/sdei_intr_mgmt.c
/rk3399_ARM-atf/services/std_svc/sdei/sdei_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_pm.c
0b5e33c708-Nov-2021 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge changes Ic2f90d79,Ieca02425,I615bcc1f,I6a9cb4a2,I5247f8f8, ... into integration

* changes:
fix(errata): workaround for Neoverse V1 erratum 2216392
fix(errata): workaround for Cortex A78 er

Merge changes Ic2f90d79,Ieca02425,I615bcc1f,I6a9cb4a2,I5247f8f8, ... into integration

* changes:
fix(errata): workaround for Neoverse V1 erratum 2216392
fix(errata): workaround for Cortex A78 erratum 2242635
fix(errata): workaround for Neoverse-N2 erratum 2280757
fix(errata): workaround for Neoverse-N2 erratum 2242400
fix(errata): workaround for Neoverse-N2 erratum 2138958
fix(errata): workaround for Neoverse-N2 erratum 2242415

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/drivers/usb/usb_device.c
/rk3399_ARM-atf/fdts/arm_fpga.dts
/rk3399_ARM-atf/fdts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp151.dtsi
/rk3399_ARM-atf/fdts/stm32mp157c-ed1.dts
/rk3399_ARM-atf/fdts/stm32mp157c-ev1.dts
/rk3399_ARM-atf/fdts/stm32mp157c-lxa-mc1.dts
/rk3399_ARM-atf/fdts/stm32mp15xx-dkx.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxaa-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxab-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxac-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxad-pinctrl.dtsi
lib/cpus/aarch64/neoverse_n2.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n2.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_v1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/gpt_rme/gpt_rme.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_gicv3.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_private.h
/rk3399_ARM-atf/plat/arm/board/tc/fdts/tc_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/tc/fdts/tc_tb_fw_config.dts
/rk3399_ARM-atf/plat/st/common/stm32cubeprogrammer_usb.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
216c122304-Nov-2021 Patrick Delaunay <patrick.delaunay@foss.st.com>

fix(drivers/usb): add a optional ops get_other_speed_config_desc

Correctly handle USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION request
in USB driver and support a different result than
USB_DESC_TYPE_CONF

fix(drivers/usb): add a optional ops get_other_speed_config_desc

Correctly handle USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION request
in USB driver and support a different result than
USB_DESC_TYPE_CONFIGURATION with the new optional ops
get_other_speed_config_desc().

The support of this descriptor is optionnal and is only
required when high-speed capable device which can operate at its
other possible speed.

This patch allows to remove the pbuf update in usb_core_get_desc()
and solves an issue on USB re-enumeration on STM32MP15 platform
as the result of get_config_desc() is a const array.
This issue is not see on normal use-case, as the USB enumeration
is only done in ROM code and TF-A reuse the same USB descritors.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Change-Id: I8edcc1e45065ab4e45d48f4bc37b49120674fdb0

show more ...

603806d108-Oct-2021 nayanpatel-arm <nayankumar.patel@arm.com>

fix(errata): workaround for Neoverse-N2 erratum 2242400

Neoverse-N2 erratum 2242400 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR5_EL1[

fix(errata): workaround for Neoverse-N2 erratum 2242400

Neoverse-N2 erratum 2242400 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR5_EL1[17] to 1'b1 followed by setting few
system control registers to specific values as per attached
SDEN document.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1982442/latest

Signed-off-by: nayanpatel-arm <nayankumar.patel@arm.com>
Change-Id: I6a9cb4a23238b8b511802a1ee9fcc5b207137649

show more ...

c948185c21-Oct-2021 nayanpatel-arm <nayankumar.patel@arm.com>

fix(errata): workaround for Neoverse-N2 erratum 2138958

Neoverse-N2 erratum 2138958 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR5_EL1[

fix(errata): workaround for Neoverse-N2 erratum 2138958

Neoverse-N2 erratum 2138958 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR5_EL1[13] to 1'b1.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1982442/latest

Signed-off-by: nayanpatel-arm <nayankumar.patel@arm.com>
Change-Id: I5247f8f8eef08d38c169aad6d2c5501ac387c720

show more ...

5819e23b06-Oct-2021 nayanpatel-arm <nayankumar.patel@arm.com>

fix(errata): workaround for Neoverse-N2 erratum 2242415

Neoverse-N2 erratum 2242415 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR_EL1[2

fix(errata): workaround for Neoverse-N2 erratum 2242415

Neoverse-N2 erratum 2242415 is a Cat B erratum that applies to
revision r0p0 of CPU. It is still open. The workaround
is to set CPUACTLR_EL1[22] to 1'b1. Setting CPUACTLR_EL1[22]
will cause CFP instruction to invalidate all branch predictor
resources regardless of context.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1982442/latest

Signed-off-by: nayanpatel-arm <nayankumar.patel@arm.com>
Change-Id: I442be81fbc32e21fed51a84f59584df17f845e96

show more ...

93b785f519-May-2021 Andre Przywara <andre.przywara@arm.com>

feat(arm_fpga): determine GICR base by probing

When an Arm Ltd GIC (Arm GIC-[567]00) is instantiated with one or more
ITSes, the ITS MMIO frames appear between the distributor and
redistributor addr

feat(arm_fpga): determine GICR base by probing

When an Arm Ltd GIC (Arm GIC-[567]00) is instantiated with one or more
ITSes, the ITS MMIO frames appear between the distributor and
redistributor addresses. This makes the beginning of the redistributor
region dependent on the existence and number of ITSes.

To support various FPGA images, with and without ITSes, probe the
addresses in question, to learn whether they accommodate an ITS or a
redistributor. This can be safely done by looking at the PIDR[01]
registers, which contain an ID code for each region, documented in the
Arm GIC TRMs.

We try to find all ITSes instantiated, and skip either two or four 64K
frames, depending on GICv4.1 support. At some point we will find the
first redistributor; this address we then update in the DTB.

Change-Id: Iefb88c2afa989e044fe0b36b7020b56538c60b07
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

73a643ee24-Aug-2021 Andre Przywara <andre.przywara@arm.com>

feat(gicv3): introduce GIC component identification

The GIC specification describes ID registers in each GIC register frame
(PIDRx), which can be used to identify a GIC component. The Arm Ltd. GIC
i

feat(gicv3): introduce GIC component identification

The GIC specification describes ID registers in each GIC register frame
(PIDRx), which can be used to identify a GIC component. The Arm Ltd. GIC
implementations use certain ID values to identify the distributor, the
redistributors and other parts like ITSes.

Introduce a function that reads those part number IDs, which are spread
over two registers. The actual numbers are only meaningful in connection
with a certain GIC model, which would need to be checked beforehand, by
the caller.

Change-Id: Ia6ff326a1e8b12664e4637bc8e2683d2b5c7721c
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

4d585fe519-May-2021 Andre Przywara <andre.przywara@arm.com>

feat(libfdt): also allow changing base address

For platforms where we don't know the number of cores at compile time,
the size of the GIC redistributor frame is then also undetermined, since
it depe

feat(libfdt): also allow changing base address

For platforms where we don't know the number of cores at compile time,
the size of the GIC redistributor frame is then also undetermined, since
it depends on this number of cores.
On top of this the GICR base address can also change, when an unknown
number of ITS frames (including zero) take up space between the
distributor and redistributor.

So while those two adjustments are done for independent reasons, the
code for doing so is very similar, so we should utilise the existing
fdt_adjust_gic_redist() function.

Add an (optional) gicr_base parameters to the prototype, so callers can
choose to also adjust this base address later, if needed.

Change-Id: Id39c0ba83e7401fdff1944e86950bb7121f210e8
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...

8cb99c3f05-Aug-2020 Olivier Deprez <olivier.deprez@arm.com>

feat(SPMD): route secure interrupts to SPMC

Define a handler in the SPMD to route secure interrupts occurring while
the normal world runs. On a Group1 Secure interrupt (with a GICv3 or a
Group0 inte

feat(SPMD): route secure interrupts to SPMC

Define a handler in the SPMD to route secure interrupts occurring while
the normal world runs. On a Group1 Secure interrupt (with a GICv3 or a
Group0 interrupt on GICv2), the normal world is pre-empted to EL3 and
redirected to the SPMD/SPMC for further handling.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
Change-Id: I1350d74048c5549a2af8da0ba004c08512cc006a

show more ...

4fcbbb3329-Oct-2021 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge changes from topic "st_usb" into integration

* changes:
feat(plat/st/stm32mp1): add STM32MP_USB_PROGRAMMER target
feat(plat/st/stm32mp1): add USB DFU support for STM32MP1
feat(plat/st):

Merge changes from topic "st_usb" into integration

* changes:
feat(plat/st/stm32mp1): add STM32MP_USB_PROGRAMMER target
feat(plat/st/stm32mp1): add USB DFU support for STM32MP1
feat(plat/st): add STM32CubeProgrammer support on USB
feat(drivers/st/usb): add device driver for STM32MP1
feat(plat/st): add a USB DFU stack
feat(drivers/usb): add a USB device stack

show more ...

6482255d29-Oct-2021 Manish Pandey <manish.pandey2@arm.com>

Merge "refactor(fvp_r): remove unused files and clean up makefiles" into integration


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/trusted-board-boot.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gic600_multichip.c
/rk3399_ARM-atf/fdts/stm32mp15-bl2.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-bl32.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-ddr.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi
/rk3399_ARM-atf/fdts/stm32mp15-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp151.dtsi
/rk3399_ARM-atf/fdts/stm32mp157c-ed1.dts
/rk3399_ARM-atf/fdts/stm32mp157c-ev1.dts
/rk3399_ARM-atf/fdts/stm32mp157c-lxa-mc1.dts
/rk3399_ARM-atf/fdts/stm32mp15xx-dkx.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxaa-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxab-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxac-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp15xxad-pinctrl.dtsi
/rk3399_ARM-atf/fdts/tc.dts
arch/aarch64/el2_common_macros.S
/rk3399_ARM-atf/lib/xlat_mpu/xlat_mpu_utils.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_bl1_entrypoint.S
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_bl1_main.c
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_common.c
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_debug.S
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_def.h
/rk3399_ARM-atf/plat/arm/board/fvp_r/fvp_r_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp_r/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp_r/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/platform_def.h
9a138eb514-Sep-2020 Patrick Delaunay <patrick.delaunay@st.com>

feat(drivers/st/usb): add device driver for STM32MP1

Add a device driver for Synopsis DWC2 USB IP of STM32MP15x,
this USB OTG device is only supported in device mode.

Signed-off-by: Patrick Delauna

feat(drivers/st/usb): add device driver for STM32MP1

Add a device driver for Synopsis DWC2 USB IP of STM32MP15x,
this USB OTG device is only supported in device mode.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Change-Id: I90b21f094f6637b85f3ace23a3a3a2f6fd4e0951

show more ...

859bfd8d04-Sep-2020 Patrick Delaunay <patrick.delaunay@st.com>

feat(drivers/usb): add a USB device stack

Add a new USB framework to manage an USB device profile (USBD)
based on a peripheral controller driver (PCD).

This USB stack can be use to implement any Un

feat(drivers/usb): add a USB device stack

Add a new USB framework to manage an USB device profile (USBD)
based on a peripheral controller driver (PCD).

This USB stack can be use to implement any Universal Serial Bus Device
Class in TF-A on top of a USB driver defined in the platform.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Change-Id: I7971ec6d952edec3511157a198e6e5359df4346b

show more ...

88c2273711-Oct-2021 johpow01 <john.powell@arm.com>

refactor(fvp_r): remove unused files and clean up makefiles

This patch removes files that are not used by TF-R as well as
removes unused generic files from the TF-R makefile.

Signed-off-by: John Po

refactor(fvp_r): remove unused files and clean up makefiles

This patch removes files that are not used by TF-R as well as
removes unused generic files from the TF-R makefile.

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: Idb15ac295dc77fd38735bf2844efdb73e6f7c89b

show more ...

6812078305-May-2021 Chris Kay <chris.kay@arm.com>

feat(mpmm): add support for MPMM

MPMM - the Maximum Power Mitigation Mechanism - is an optional
microarchitectural feature present on some Armv9-A cores, introduced
with the Cortex-X2, Cortex-A710 a

feat(mpmm): add support for MPMM

MPMM - the Maximum Power Mitigation Mechanism - is an optional
microarchitectural feature present on some Armv9-A cores, introduced
with the Cortex-X2, Cortex-A710 and Cortex-A510 cores.

MPMM allows the SoC firmware to detect and limit high activity events
to assist in SoC processor power domain dynamic power budgeting and
limit the triggering of whole-rail (i.e. clock chopping) responses to
overcurrent conditions.

This feature is enabled via the `ENABLE_MPMM` build option.
Configuration can be done via FCONF by enabling `ENABLE_MPMM_FCONF`, or
by via the plaform-implemented `plat_mpmm_topology` function.

Change-Id: I77da82808ad4744ece8263f0bf215c5a091c3167
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

742ca23019-Aug-2021 Chris Kay <chris.kay@arm.com>

feat(amu): enable per-core AMU auxiliary counters

This change makes AMU auxiliary counters configurable on a per-core
basis, controlled by `ENABLE_AMU_AUXILIARY_COUNTERS`.

Auxiliary counters can be

feat(amu): enable per-core AMU auxiliary counters

This change makes AMU auxiliary counters configurable on a per-core
basis, controlled by `ENABLE_AMU_AUXILIARY_COUNTERS`.

Auxiliary counters can be described via the `HW_CONFIG` device tree if
the `ENABLE_AMU_FCONF` build option is enabled, or the platform must
otherwise implement the `plat_amu_topology` function.

A new phandle property for `cpu` nodes (`amu`) has been introduced to
the `HW_CONFIG` specification to allow CPUs to describe the view of
their own AMU:

```
cpu0: cpu@0 {
...

amu = <&cpu0_amu>;
};
```

Multiple cores may share an `amu` handle if they implement the
same set of auxiliary counters.

AMU counters are described for one or more AMUs through the use of a new
`amus` node:

```
amus {
cpu0_amu: amu-0 {
#address-cells = <1>;
#size-cells = <0>;

counter@0 {
reg = <0>;

enable-at-el3;
};

counter@n {
reg = <n>;

...
};
};
};
```

This structure describes the **auxiliary** (group 1) AMU counters.
Architected counters have architecturally-defined behaviour, and as
such do not require DTB entries.

These `counter` nodes support two properties:

- The `reg` property represents the counter register index.
- The presence of the `enable-at-el3` property determines whether
the firmware should enable the counter prior to exiting EL3.

Change-Id: Ie43aee010518c5725a3b338a4899b0857caf4c28
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

e747a59b24-May-2021 Chris Kay <chris.kay@arm.com>

refactor(amu): refactor enablement and context switching

This change represents a general refactoring to clean up old code that
has been adapted to account for changes required to enable dynamic
aux

refactor(amu): refactor enablement and context switching

This change represents a general refactoring to clean up old code that
has been adapted to account for changes required to enable dynamic
auxiliary counters.

Change-Id: Ia85e0518f3f65c765f07b34b67744fc869b9070d
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

31d3cc2525-May-2021 Chris Kay <chris.kay@arm.com>

refactor(amu): detect auxiliary counters at runtime

This change decouples the group 1 counter macros to facilitate dynamic
detection at runtime. These counters remain disabled - we will add
dynamic

refactor(amu): detect auxiliary counters at runtime

This change decouples the group 1 counter macros to facilitate dynamic
detection at runtime. These counters remain disabled - we will add
dynamic enablement of them in a later patch.

Change-Id: I820d05f228d440643bdfa308d030bd51ebc0b35a
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

81e2ff1f25-May-2021 Chris Kay <chris.kay@arm.com>

refactor(amu): detect architected counters at runtime

This change removes the `AMU_GROUP0_COUNTERS_MASK` and
`AMU_GROUP0_MAX_COUNTERS` preprocessor definitions, instead retrieving
the number of grou

refactor(amu): detect architected counters at runtime

This change removes the `AMU_GROUP0_COUNTERS_MASK` and
`AMU_GROUP0_MAX_COUNTERS` preprocessor definitions, instead retrieving
the number of group 0 counters dynamically through `AMCGCR_EL0.CG0NC`.

Change-Id: I70e39c30fbd5df89b214276fac79cc8758a89f72
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

1fd685a725-May-2021 Chris Kay <chris.kay@arm.com>

refactor(amu): conditionally compile auxiliary counter support

This change reduces preprocessor dependencies on the
`AMU_GROUP1_NR_COUNTERS` and `AMU_GROUP1_COUNTERS_MASK` definitions, as
these valu

refactor(amu): conditionally compile auxiliary counter support

This change reduces preprocessor dependencies on the
`AMU_GROUP1_NR_COUNTERS` and `AMU_GROUP1_COUNTERS_MASK` definitions, as
these values will eventually be discovered dynamically.

In their stead, we introduce the `ENABLE_AMU_AUXILIARY_COUNTERS` build
option, which will enable support for dynamically detecting and
enabling auxiliary AMU counters.

This substantially reduces the amount of memory used by platforms that
know ahead of time that they do not have any auxiliary AMU counters.

Change-Id: I3d998aff44ed5489af4857e337e97634d06e3ea1
Signed-off-by: Chris Kay <chris.kay@arm.com>

show more ...

1...<<61626364656667686970>>...159