linux_dsm_epyc7002/drivers/soc
Suman Anna dc1129564a soc: ti: pruss: Add a platform driver for PRUSS in TI SoCs
The Programmable Real-Time Unit - Industrial Communication
Subsystem (PRU-ICSS) is present on various TI SoCs such as
AM335x or AM437x or the Keystone 66AK2G. Each SoC can have
one or more PRUSS instances that may or may not be identical.
For example, AM335x SoCs have a single PRUSS, while AM437x has
two PRUSS instances PRUSS1 and PRUSS0, with the PRUSS0 being
a cut-down version of the PRUSS1.

The PRUSS consists of dual 32-bit RISC cores called the
Programmable Real-Time Units (PRUs), some shared, data and
instruction memories, some internal peripheral modules, and
an interrupt controller. The programmable nature of the PRUs
provide flexibility to implement custom peripheral interfaces,
fast real-time responses, or specialized data handling.

The PRU-ICSS functionality is achieved through three different
platform drivers addressing a specific portion of the PRUSS.
Some sub-modules of the PRU-ICSS IP reuse some of the existing
drivers (like davinci mdio driver or the generic syscon driver).
This design provides flexibility in representing the different
modules of PRUSS accordingly, and at the same time allowing the
PRUSS driver to add some instance specific configuration within
an SoC.

The PRUSS platform driver deals with the overall PRUSS and is
used for managing the subsystem level resources like various
memories and the CFG module. It is responsible for the creation
and deletion of the platform devices for the child PRU devices
and other child devices (like Interrupt Controller, MDIO node
and some syscon nodes) so that they can be managed by specific
platform drivers. The PRUSS interrupt controller is managed by
an irqchip driver, while the individual PRU RISC cores are
managed by a PRU remoteproc driver.

The driver currently supports the AM335x SoC, and support for
other TI SoCs will be added in subsequent patches.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Grzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
2020-09-11 21:43:34 -07:00
..
actions treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
amlogic soc: amlogic: meson-gx-socinfo: Fix S905X3 and S905D3 ID's 2020-06-29 16:00:53 -07:00
aspeed treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
atmel drivers: soc: atmel: move sam9x60 under its own config flag 2019-12-10 00:44:53 +01:00
bcm soc: bcm: brcmstb: biuctrl: Update programming for 7211 2020-01-05 13:44:04 -08:00
dove treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
fsl ARM/SoC: drivers for v5.7 2020-06-04 19:56:20 -07:00
gemini soc: Add SoC driver for Gemini 2018-01-04 17:01:53 +01:00
imx ARM: SoC driver updates for v5.9 2020-08-03 19:30:59 -07:00
ixp4xx soc: ixp4xx: Protect IXP4xx SoC drivers by ARCH_IXP4XX || COMPILE_TEST 2019-08-29 17:34:38 +02:00
kendryte riscv: K210: Add a built-in device tree 2020-05-18 11:38:06 -07:00
lantiq soc: lantiq: convert to devm_platform_ioremap_resource 2020-01-10 11:44:52 -08:00
mediatek soc: mediatek: cmdq: add set event function 2020-06-22 13:21:00 +02:00
qcom Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-08-07 21:14:30 -07:00
renesas soc: renesas: rcar-rst: Add support for RZ/G2H 2020-07-13 10:34:41 +02:00
rockchip ARM: SoC-related driver updates 2019-07-19 17:13:56 -07:00
samsung soc: samsung: exynos-regulator-coupler: Add simple voltage coupler for Exynos5800 2020-07-22 22:33:57 +02:00
sifive soc: sifive: l2 cache: Mark l2_get_priv_group as static 2020-05-28 15:57:49 -07:00
sunxi treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
tegra soc/tegra: fuse: Fix typo in APB MISC warning 2020-07-17 15:47:35 +02:00
ti soc: ti: pruss: Add a platform driver for PRUSS in TI SoCs 2020-09-11 21:43:34 -07:00
ux500 soc: ux500: Use custom soc attribute group instead of device_create_file 2020-07-06 09:48:06 +01:00
versatile soc: integrator: Use custom soc attribute group instead of device_create_file 2020-07-06 09:48:05 +01:00
xilinx firmware: xilinx: Remove eemi ops for set_requirement 2020-04-28 15:45:09 +02:00
zte treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
Kconfig riscv: Add Kendryte K210 SoC support 2020-04-03 10:49:52 -07:00
Makefile RISC-V Patches for the 5.7 Merge Window, Part 1 2020-04-09 10:51:30 -07:00