Home
last modified time | relevance | path

Searched full:pruss (Results 1 – 25 of 34) sorted by relevance

12

/Linux-v6.1/drivers/soc/ti/
Dpruss.c24 * 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()
137 ret = pruss_clk_mux_setup(pruss, pruss->core_clk_mux, in pruss_clk_init()
145 ret = pruss_clk_mux_setup(pruss, pruss->iep_clk_mux, "iepclk-mux", in pruss_clk_init()
[all …]
DMakefile15 obj-$(CONFIG_TI_PRUSS) += pruss.o
/Linux-v6.1/include/linux/
Dpruss_driver.h15 * 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-v6.1/Documentation/devicetree/bindings/soc/ti/
Dti,pruss.yaml4 $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,am625-pruss # for K3 AM62x SoC family
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/interrupt-controller/
Dti,pruss-intc.yaml4 $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".
41 - ti,pruss-intc
44 Use "ti,pruss-intc" for OMAP-L13x/AM18x/DA850 SoCs,
88 Bitmask of host interrupts between 0 and 7 (corresponding to PRUSS INTC
114 pruss: pruss@0 {
115 compatible = "ti,am3356-pruss";
[all …]
/Linux-v6.1/arch/arm/boot/dts/
Dam57-pruss.dtsi5 * Common PRUSS data for TI AM57xx platforms
10 compatible = "ti,sysc-pruss", "ti,sysc";
29 pruss1: pruss@0 {
30 compatible = "ti,am5728-pruss";
45 compatible = "ti,pruss-cfg", "syscon";
65 compatible = "ti,pruss-mii", "syscon";
70 compatible = "ti,pruss-intc";
119 compatible = "ti,sysc-pruss", "ti,sysc";
138 pruss2: pruss@0 {
139 compatible = "ti,am5728-pruss";
[all …]
Dam4372.dtsi415 compatible = "ti,sysc-pruss", "ti,sysc";
435 pruss1: pruss@0 {
451 compatible = "ti,pruss-cfg", "syscon";
471 compatible = "ti,pruss-mii", "syscon";
476 compatible = "ti,pruss-intc";
523 pruss0: pruss@40000 {
537 compatible = "ti,pruss-cfg", "syscon";
557 compatible = "ti,pruss-mii", "syscon";
563 compatible = "ti,pruss-intc";
Dam5718.dtsi7 #include "am57-pruss.dtsi"
Dam5728.dtsi7 #include "am57-pruss.dtsi"
Dam5748.dtsi7 #include "am57-pruss.dtsi"
/Linux-v6.1/drivers/uio/
Duio_pruss.c3 * Programmable Real-Time Unit Sub System (PRUSS) UIO driver (uio_pruss)
5 * This driver exports PRUSS host event out interrupts and PRUSS, L3 RAM,
6 * and DDR RAM to user space for applications interacting with PRUSS firmware
35 * Host event IRQ numbers from PRUSS - PRUSS can generate up to 8 interrupt
36 * events to AINTC of ARM host processor - which can be used for IPC b/w PRUSS
125 gdev->pruss_clk = devm_clk_get(dev, "pruss"); in pruss_probe()
139 dev_err(dev, "No PRUSS I/O resource specified\n"); in pruss_probe()
173 dev_err(dev, "Can't remap PRUSS I/O address range\n"); in pruss_probe()
197 /* Register PRUSS IRQ lines */ in pruss_probe()
DKconfig129 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-v6.1/drivers/irqchip/
Dirq-pruss-intc.c25 * 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 …]
/Linux-v6.1/Documentation/devicetree/bindings/remoteproc/
Dti,pru-rproc.yaml14 (PRU-ICSS or PRUSS) has two 32-bit load/store RISC CPU cores called
32 Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml
109 compatible = "ti,sysc-pruss", "ti,sysc";
114 pruss: pruss@0 {
115 compatible = "ti,am3356-pruss";
/Linux-v6.1/drivers/remoteproc/
Dpru_rproc.c108 * @id: id of the PRU core within the PRUSS
110 * @pruss: back-reference to parent PRUSS structure
125 struct pruss *pruss; member
324 * corresponding sibling PRUSS INTC node. in pru_handle_intrmap()
422 * Each PRU has access to all data memories within the PRUSS, accessible at
431 struct pruss *pruss = pru->pruss; in pru_d_da_to_va() local
438 dram0 = pruss->mem_regions[PRUSS_MEM_DRAM0]; in pru_d_da_to_va()
439 dram1 = pruss->mem_regions[PRUSS_MEM_DRAM1]; in pru_d_da_to_va()
443 shrd_ram = pruss->mem_regions[PRUSS_MEM_SHRD_RAM2]; in pru_d_da_to_va()
698 * and .pru_irq_map one. The second one contains the PRUSS interrupt mapping
[all …]
Dpru_rproc.h3 * PRUSS Remote Processor specific types
37 * provides the PRUSS interrupt mapping description. The pru_irq_rsc struct
/Linux-v6.1/include/linux/platform_data/
Duio_pruss.h13 /* To configure the PRUSS INTC base offset for UIO driver */
/Linux-v6.1/include/dt-bindings/bus/
Dti-sysc.h21 /* PRUSS sysc found on AM33xx/AM43xx/AM57xx */
/Linux-v6.1/arch/arm64/boot/dts/ti/
Dk3-am65-main.dtsi941 compatible = "ti,pruss-cfg", "syscon";
972 compatible = "ti,pruss-mii", "syscon";
977 compatible = "ti,pruss-mii-g", "syscon";
1082 compatible = "ti,pruss-cfg", "syscon";
1113 compatible = "ti,pruss-mii", "syscon";
1118 compatible = "ti,pruss-mii-g", "syscon";
1223 compatible = "ti,pruss-cfg", "syscon";
1254 compatible = "ti,pruss-mii", "syscon";
1259 compatible = "ti,pruss-mii-g", "syscon";
Dk3-am64-main.dtsi1020 compatible = "ti,pruss-cfg", "syscon";
1051 compatible = "ti,pruss-mii", "syscon";
1056 compatible = "ti,pruss-mii-g", "syscon";
1160 compatible = "ti,pruss-cfg", "syscon";
1191 compatible = "ti,pruss-mii", "syscon";
1196 compatible = "ti,pruss-mii-g", "syscon";
Dk3-am62.dtsi64 <0x00 0x30040000 0x00 0x30040000 0x00 0x00080000>, /* PRUSS-M */
Dk3-am62a.dtsi64 <0x00 0x30040000 0x00 0x30040000 0x00 0x00080000>, /* PRUSS-M */
/Linux-v6.1/drivers/clk/davinci/
Dpsc-da830.c36 LPSC(13, 0, pruss, pll0_sysclk2, NULL, LPSC_ALWAYS_ENABLED),
Dpsc-da850.c37 LPSC(13, 0, pruss, pll0_sysclk2, NULL, 0),
/Linux-v6.1/Documentation/devicetree/bindings/bus/
Dti-sysc.yaml51 - ti,sysc-pruss

12