Home
last modified time | relevance | path

Searched +full:ti +full:- +full:pruss (Results 1 – 25 of 66) sorted by relevance

123

/kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/ti/
Dti,pruss.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/soc/ti/ti,pruss.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 TI Programmable Real-Time Unit and Industrial Communication Subsystem
11 - Suman Anna <s-anna@ti.com>
15 The Programmable Real-Time Unit and Industrial Communication Subsystem
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
18 cores (Programmable Real-Time Units, or PRUs), shared RAM, data and
[all …]
/kernel/linux/linux-6.6/drivers/soc/ti/
Dpruss.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PRU-ICSS platform driver for various TI SoCs
5 * Copyright (C) 2014-2020 Texas Instruments Incorporated - http://www.ti.com/
7 * Suman Anna <s-anna@ti.com>
8 * Andrew F. Davis <afd@ti.com>
9 * Tero Kristo <t-kristo@ti.com>
12 #include <linux/clk-provider.h>
13 #include <linux/dma-mapping.h>
26 #include "pruss.h"
29 * struct pruss_private_data - PRUSS driver private data
[all …]
Dpruss.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * PRU-ICSS Subsystem user interfaces
5 * Copyright (C) 2015-2023 Texas Instruments Incorporated - http://www.ti.com
6 * MD Danish Anwar <danishanwar@ti.com>
50 * pruss_cfg_read() - read a PRUSS CFG sub-module register
51 * @pruss: the pruss instance handle
52 * @reg: register offset within the CFG sub-module
55 * Reads a given register within the PRUSS CFG sub-module and
56 * returns it through the passed-in @val pointer
60 static int pruss_cfg_read(struct pruss *pruss, unsigned int reg, unsigned int *val) in pruss_cfg_read() argument
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/soc/ti/
Dti,pruss.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/soc/ti/ti,pruss.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 TI Programmable Real-Time Unit and Industrial Communication Subsystem
11 - Suman Anna <s-anna@ti.com>
15 The Programmable Real-Time Unit and Industrial Communication Subsystem
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
18 cores (Programmable Real-Time Units, or PRUs), shared RAM, data and
[all …]
/kernel/linux/linux-5.10/drivers/soc/ti/
Dpruss.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PRU-ICSS platform driver for various TI SoCs
5 * Copyright (C) 2014-2020 Texas Instruments Incorporated - http://www.ti.com/
7 * Suman Anna <s-anna@ti.com>
8 * Andrew F. Davis <afd@ti.com>
11 #include <linux/clk-provider.h>
12 #include <linux/dma-mapping.h>
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
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/interrupt-controller/
Dti,pruss-intc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/interrupt-controller/ti,pruss-intc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: TI PRU-ICSS Local Interrupt Controller
10 - Suman Anna <s-anna@ti.com>
13 Each PRU-ICSS has a single interrupt controller instance that is common
17 various other PRUSS internal and external peripherals. The first 2 output
20 including the MPU and/or other PRUSS instances, DSPs or devices.
22 The property "ti,irqs-reserved" is used for denoting the connection
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/interrupt-controller/
Dti,pruss-intc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/interrupt-controller/ti,pruss-intc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: TI PRU-ICSS Local Interrupt Controller
10 - Suman Anna <s-anna@ti.com>
13 Each PRU-ICSS has a single interrupt controller instance that is common
17 various other PRUSS internal and external peripherals. The first 2 output
20 including the MPU and/or other PRUSS instances, DSPs or devices.
22 The property "ti,irqs-reserved" is used for denoting the connection
[all …]
/kernel/linux/linux-6.6/arch/arm/boot/dts/ti/omap/
Dam57-pruss.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
5 * Common PRUSS data for TI AM57xx platforms
9 pruss1_tm: target-module@4b226000 {
10 compatible = "ti,sysc-pruss", "ti,sysc";
13 reg-names = "rev", "sysc";
14 ti,sysc-mask = <(SYSC_PRUSS_STANDBY_INIT |
16 ti,sysc-midle = <SYSC_IDLE_FORCE>,
19 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
24 clock-names = "fck";
[all …]
Dam4372.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
8 #include <dt-bindings/bus/ti-sysc.h>
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/clock/am4.h>
14 compatible = "ti,am4372", "ti,am43";
15 interrupt-parent = <&wakeupgen>;
16 #address-cells = <1>;
17 #size-cells = <1>;
[all …]
Dam5748.dtsi1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2019 Texas Instruments Incorporated - https://www.ti.com/
6 #include "dra74x-p.dtsi"
7 #include "am57-pruss.dtsi"
10 compatible = "ti,am5748", "ti,dra762", "ti,dra7";
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/
Dti,icssg-prueth.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/net/ti,icssg-prueth.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Texas Instruments ICSSG PRUSS Ethernet
10 - Md Danish Anwar <danishanwar@ti.com>
13 Ethernet based on the Programmable Real-Time Unit and Industrial
17 - $ref: /schemas/remoteproc/ti,pru-consumer.yaml#
22 - ti,am654-icssg-prueth # for AM65x SoC family
32 dma-names:
[all …]
/kernel/linux/linux-5.10/include/linux/
Dpruss_driver.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * PRU-ICSS sub-system specific definitions
5 * Copyright (C) 2014-2020 Texas Instruments Incorporated - http://www.ti.com/
6 * Suman Anna <s-anna@ti.com>
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
[all …]
/kernel/linux/linux-6.6/include/linux/
Dpruss_driver.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * PRU-ICSS sub-system specific definitions
5 * Copyright (C) 2014-2020 Texas Instruments Incorporated - http://www.ti.com/
6 * Suman Anna <s-anna@ti.com>
13 #include <linux/remoteproc/pruss.h>
18 * enum pruss_gp_mux_sel - PRUSS GPI/O Mux modes for the
23 * values are interchanged. Also, this bit-field does not exist on
36 * enum pruss_gpi_mode - PRUSS GPI configuration modes, used
48 * enum pru_type - PRU core type identifier
50 * @PRU_TYPE_PRU: Programmable Real-time Unit
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/remoteproc/
Dti,pru-rproc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/remoteproc/ti,pru-rproc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: TI Programmable Realtime Unit (PRU) cores
10 - Suman Anna <s-anna@ti.com>
13 Each Programmable Real-Time Unit and Industrial Communication Subsystem
14 (PRU-ICSS or PRUSS) has two 32-bit load/store RISC CPU cores called
15 Programmable Real-Time Units (PRUs), each represented by a node. Each PRU
17 use the Data RAMs present within the PRU-ICSS for code execution.
[all …]
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Dam57-pruss.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/
5 * Common PRUSS data for TI AM57xx platforms
9 pruss1_tm: target-module@4b226000 {
10 compatible = "ti,sysc-pruss", "ti,sysc";
13 reg-names = "rev", "sysc";
14 ti,sysc-mask = <(SYSC_PRUSS_STANDBY_INIT |
16 ti,sysc-midle = <SYSC_IDLE_FORCE>,
19 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
24 clock-names = "fck";
[all …]
Dam5748.dtsi1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2019 Texas Instruments Incorporated - https://www.ti.com/
7 #include "am57-pruss.dtsi"
10 compatible = "ti,am5748", "ti,dra762", "ti,dra7";
/kernel/linux/linux-5.10/drivers/irqchip/
Dirq-pruss-intc.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PRU-ICSS INTC IRQChip driver for various TI SoCs
5 * Copyright (C) 2016-2020 Texas Instruments Incorporated - http://www.ti.com/
8 * Andrew F. Davis <afd@ti.com>
9 * Suman Anna <s-anna@ti.com>
24 * Number of host interrupts reaching the main MPU sub-system. Note that this
25 * is not the same as the total number of host interrupts supported by the PRUSS
57 /* CMR register bit-field macros */
62 /* HMR register bit-field macros */
67 /* HIPIR register bit-fields */
[all …]
/kernel/linux/linux-6.6/drivers/irqchip/
Dirq-pruss-intc.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PRU-ICSS INTC IRQChip driver for various TI SoCs
5 * Copyright (C) 2016-2020 Texas Instruments Incorporated - http://www.ti.com/
8 * Andrew F. Davis <afd@ti.com>
9 * Suman Anna <s-anna@ti.com>
24 * Number of host interrupts reaching the main MPU sub-system. Note that this
25 * is not the same as the total number of host interrupts supported by the PRUSS
57 /* CMR register bit-field macros */
62 /* HMR register bit-field macros */
67 /* HIPIR register bit-fields */
[all …]
/kernel/linux/linux-6.6/drivers/remoteproc/
Dpru_rproc.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PRU-ICSS remoteproc driver for various TI SoCs
5 * Copyright (C) 2014-2022 Texas Instruments Incorporated - https://www.ti.com/
8 * Suman Anna <s-anna@ti.com>
9 * Andrew F. Davis <afd@ti.com>
11 * Puranjay Mohan <p-mohan@ti.com>
12 * Md Danish Anwar <danishanwar@ti.com>
22 #include <linux/remoteproc/pruss.h>
41 /* CTRL register bit-fields */
71 * enum pru_iomem - PRU core memory/register range identifiers
[all …]
Dpru_rproc.h1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
3 * PRUSS Remote Processor specific types
5 * Copyright (C) 2014-2020 Texas Instruments Incorporated - https://www.ti.com/
6 * Suman Anna <s-anna@ti.com>
13 * struct pruss_int_map - PRU system events _to_ channel and host mapping
19 * to host interrupts. Events can be mapped to channels in a one-to-one or
20 * many-to-one ratio (multiple events per channel), and channels can be
21 * mapped to host interrupts in a one-to-one or many-to-one ratio (multiple
31 * struct pru_irq_rsc - PRU firmware section header for IRQ data
37 * provides the PRUSS interrupt mapping description. The pru_irq_rsc struct
/kernel/linux/linux-6.6/drivers/uio/
Duio_pruss.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * 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
8 * Copyright (C) 2010-11 Texas Instruments Incorporated - http://www.ti.com/
18 #include <linux/dma-mapping.h>
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
70 struct uio_pruss_dev *gdev = info->priv; in pruss_handler()
71 int intr_bit = (irq - gdev->hostirq_start + 2); in pruss_handler()
[all …]
/kernel/linux/linux-5.10/drivers/uio/
Duio_pruss.c2 * 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
7 * Copyright (C) 2010-11 Texas Instruments Incorporated - http://www.ti.com/
26 #include <linux/dma-mapping.h>
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
78 struct uio_pruss_dev *gdev = info->priv; in pruss_handler()
79 int intr_bit = (irq - gdev->hostirq_start + 2); in pruss_handler()
81 void __iomem *base = gdev->prussio_vaddr + gdev->pintc_base; in pruss_handler()
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
36 for acknowledging the hardware device if needed, and re-enabling
114 performance memories and memory-mapped devices. For devices using
115 FCM or UPM eLBC modes, other device-specific drivers are available.
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
135 driver is available from below SVN repo - you may use anonymous login
137 https://gforge.ti.com/gf/project/pru_sw/
141 http://processors.wiki.ti.com/index.php/PRU_Linux_Application_Loader
[all …]
/kernel/linux/linux-6.6/drivers/net/ethernet/ti/icssg/
Dicssg_prueth.h1 /* SPDX-License-Identifier: GPL-2.0 */
4 * Copyright (C) 2018-2022 Texas Instruments Incorporated - https://www.ti.com/
26 #include <linux/remoteproc/pruss.h>
31 #include <linux/dma-mapping.h>
32 #include <linux/dma/ti-cppi5.h>
33 #include <linux/dma/k3-udma-glue.h>
41 #define PRUETH_MAX_MTU (2000 - ETH_HLEN - ETH_FCS_LEN)
56 #define ICSSG_NUM_ETHTOOL_STATS (ICSSG_NUM_STATS - ICSSG_NUM_STANDARD_STATS)
181 * struct prueth_pdata - PRUeth platform data
191 * struct prueth - PRUeth structure
[all …]
Dicssg_prueth.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2018-2022 Texas Instruments Incorporated - https://www.ti.com/
12 #include <linux/dma-mapping.h>
13 #include <linux/dma/ti-cppi5.h>
27 #include <linux/remoteproc/pruss.h>
33 #include "../k3-cppi-desc-pool.h"
35 #define PRUETH_MODULE_DESCRIPTION "PRUSS ICSSG Ethernet driver"
65 if (rx_chn->desc_pool) in prueth_cleanup_rx_chns()
66 k3_cppi_desc_pool_destroy(rx_chn->desc_pool); in prueth_cleanup_rx_chns()
68 if (rx_chn->rx_chn) in prueth_cleanup_rx_chns()
[all …]

123