/Linux-v5.10/drivers/soc/ti/ |
D | pruss.c | 24 * struct pruss_private_data - PRUSS driver private data 25 * @has_no_sharedram: flag to indicate the absence of PRUSS Shared Data RAM 26 * @has_core_mux_clock: flag to indicate the presence of PRUSS core clock 41 static int pruss_clk_mux_setup(struct pruss *pruss, struct clk *clk_mux, in pruss_clk_mux_setup() argument 45 struct device *dev = pruss->dev; in pruss_clk_mux_setup() 87 reg = pruss->cfg_base + reg_offset; in pruss_clk_mux_setup() 121 static int pruss_clk_init(struct pruss *pruss, struct device_node *cfg_node) in pruss_clk_init() argument 125 struct device *dev = pruss->dev; in pruss_clk_init() 139 ret = pruss_clk_mux_setup(pruss, pruss->core_clk_mux, in pruss_clk_init() 147 ret = pruss_clk_mux_setup(pruss, pruss->iep_clk_mux, "iepclk-mux", in pruss_clk_init() [all …]
|
D | Makefile | 15 obj-$(CONFIG_TI_PRUSS) += pruss.o
|
/Linux-v5.10/include/linux/ |
D | pruss_driver.h | 15 * enum pruss_mem - PRUSS memory range identifiers 25 * struct pruss_mem_region - PRUSS memory region structure 26 * @va: kernel virtual address of the PRUSS memory region 27 * @pa: physical (bus) address of the PRUSS memory region 28 * @size: size of the PRUSS memory region 37 * struct pruss - PRUSS parent structure 38 * @dev: pruss device pointer 41 * @mem_regions: data for each of the PRUSS memory regions 42 * @core_clk_mux: clk handle for PRUSS CORE_CLK_MUX 43 * @iep_clk_mux: clk handle for PRUSS IEP_CLK_MUX [all …]
|
/Linux-v5.10/Documentation/devicetree/bindings/soc/ti/ |
D | ti,pruss.yaml | 4 $id: http://devicetree.org/schemas/soc/ti/ti,pruss.yaml# 16 (PRU-ICSS a.k.a. PRUSS) is present on various TI SoCs such as AM335x, AM437x, 17 Keystone 66AK2G, OMAP-L138/DA850 etc. A PRUSS consists of dual 32-bit RISC 52 as child nodes within this PRUSS node. This node shall be a child of the 60 pattern: "^(pruss|icssg)@[0-9a-f]+$" 64 - ti,am3356-pruss # for AM335x SoC family 65 - ti,am4376-pruss0 # for AM437x SoC family and PRUSS unit 0 66 - ti,am4376-pruss1 # for AM437x SoC family and PRUSS unit 1 67 - ti,am5728-pruss # for AM57xx SoC family 68 - ti,k2g-pruss # for 66AK2G SoC family [all …]
|
/Linux-v5.10/Documentation/devicetree/bindings/interrupt-controller/ |
D | ti,pruss-intc.yaml | 4 $id: http://devicetree.org/schemas/interrupt-controller/ti,pruss-intc.yaml# 17 various other PRUSS internal and external peripherals. The first 2 output 20 including the MPU and/or other PRUSS instances, DSPs or devices. 24 defined, it implies that all the PRUSS INTC output interrupts 2 through 9 33 corresponding PRUSS node. The node should be named "interrupt-controller". 38 - ti,pruss-intc 41 Use "ti,pruss-intc" for OMAP-L13x/AM18x/DA850 SoCs, 85 Bitmask of host interrupts between 0 and 7 (corresponding to PRUSS INTC 109 pruss: pruss@0 { 110 compatible = "ti,am3356-pruss"; [all …]
|
/Linux-v5.10/drivers/uio/ |
D | uio_pruss.c | 2 * Programmable Real-Time Unit Sub System (PRUSS) UIO driver (uio_pruss) 4 * This driver exports PRUSS host event out interrupts and PRUSS, L3 RAM, 5 * and DDR RAM to user space for applications interacting with PRUSS firmware 43 * Host event IRQ numbers from PRUSS - PRUSS can generate up to 8 interrupt 44 * events to AINTC of ARM host processor - which can be used for IPC b/w PRUSS 139 gdev->pruss_clk = clk_get(dev, "pruss"); in pruss_probe() 154 dev_err(dev, "No PRUSS I/O resource specified\n"); in pruss_probe() 188 dev_err(dev, "Can't remap PRUSS I/O address range\n"); in pruss_probe() 212 /* Register PRUSS IRQ lines */ in pruss_probe()
|
D | Kconfig | 129 tristate "Texas Instruments PRUSS driver" 133 PRUSS driver for OMAPL138/DA850/AM18XX devices 134 PRUSS driver requires user space components, examples and user space
|
/Linux-v5.10/drivers/irqchip/ |
D | irq-pruss-intc.c | 25 * is not the same as the total number of host interrupts supported by the PRUSS 85 * @num_system_events: number of input system events handled by the PRUSS INTC 87 * channels) supported by the PRUSS INTC 95 * struct pruss_intc - PRUSS interrupt controller structure 98 * @irqs: kernel irq numbers corresponding to PRUSS host interrupts 101 * @soc_config: cached PRUSS INTC IP configuration data 102 * @dev: PRUSS INTC device pointer 113 struct mutex lock; /* PRUSS INTC lock */ 117 * struct pruss_host_irq_data - PRUSS host irq data structure 118 * @intc: PRUSS interrupt controller pointer [all …]
|
D | Makefile | 109 obj-$(CONFIG_TI_PRUSS_INTC) += irq-pruss-intc.o
|
D | Kconfig | 509 The PRUSS INTC enables various interrupts to be routed to multiple
|
/Linux-v5.10/arch/arm/boot/dts/ |
D | am57-pruss.dtsi | 5 * Common PRUSS data for TI AM57xx platforms 10 compatible = "ti,sysc-pruss", "ti,sysc"; 31 compatible = "ti,sysc-pruss", "ti,sysc";
|
D | am5718.dtsi | 7 #include "am57-pruss.dtsi"
|
D | am5728.dtsi | 7 #include "am57-pruss.dtsi"
|
D | am5748.dtsi | 7 #include "am57-pruss.dtsi"
|
D | am5729-beagleboneai.dts | 519 compatible = "ti,pruss-shmem"; 525 compatible = "ti,pruss-shmem";
|
D | am4372.dtsi | 416 compatible = "ti,sysc-pruss", "ti,sysc";
|
D | am33xx-clocks.dtsi | 570 pruss_ocp_clkctrl: pruss-ocp-clkctrl@e8 {
|
D | am43xx-clocks.dtsi | 852 pruss_ocp_clkctrl: pruss-ocp-clkctrl@320 {
|
/Linux-v5.10/include/linux/platform_data/ |
D | uio_pruss.h | 21 /* To configure the PRUSS INTC base offset for UIO driver */
|
/Linux-v5.10/include/dt-bindings/bus/ |
D | ti-sysc.h | 21 /* PRUSS sysc found on AM33xx/AM43xx/AM57xx */
|
/Linux-v5.10/Documentation/devicetree/bindings/bus/ |
D | ti-sysc.txt | 41 "ti,sysc-pruss"
|
/Linux-v5.10/drivers/clk/davinci/ |
D | psc-da830.c | 36 LPSC(13, 0, pruss, pll0_sysclk2, NULL, LPSC_ALWAYS_ENABLED),
|
D | psc-da850.c | 37 LPSC(13, 0, pruss, pll0_sysclk2, NULL, 0),
|
/Linux-v5.10/drivers/bus/ |
D | ti-sysc.c | 1417 /* PRUSS on am3, am4 and am5 */ 1418 SYSC_QUIRK("pruss", 0, 0x26000, 0x26004, -ENODEV, 0x47000000, 0xff000000, 1796 /* PRUSS needs to set MSTANDBY_INIT inorder to idle properly */ 2638 * PRUSS found on some AM33xx, AM437x and AM57xx SoCs 3061 { .compatible = "ti,sysc-pruss", .data = &sysc_pruss, },
|
/Linux-v5.10/arch/arm/mach-davinci/ |
D | board-da850-evm.c | 1476 pr_warn("da850_evm_init: pruss initialization failed: %d\n", in da850_evm_init()
|