Home
last modified time | relevance | path

Searched full:scu (Results 1 – 25 of 570) sorted by relevance

12345678910>>...23

/kernel/linux/linux-6.6/drivers/platform/x86/
Dintel_scu_ipc.c3 * Driver for the Intel SCU IPC mechanism
8 * SCU running in ARC processor communicates with other entity running in IA
9 * core through IPC mechanism which in turn messaging between IA core ad SCU.
10 * SCU has two IPC mechanism IPC-1 and IPC-2. IPC-1 is used between IA32 and
11 * SCU where IPC-2 is used between P-Unit and SCU. This driver delas with
40 * To read or write information to the SCU, driver writes to IPC-1 memory
47 * the IPC-1 register block, causing an interrupt to the SCU
49 * 3. SCU firmware decodes this interrupt and IPC message and the appropriate
73 * 16 byte buffer for sending and receiving data to and from SCU.
82 static DEFINE_MUTEX(ipclock); /* lock used to prevent multiple call to SCU */
[all …]
Dintel_scu_ipcutil.c3 * Driver for the Intel SCU IPC mechanism
8 * This driver provides IOCTL interfaces to call Intel SCU IPC driver API.
25 struct intel_scu_ipc_dev *scu; variable
45 * Allow the user to perform register accesses on the SCU via the
58 return intel_scu_ipc_dev_readv(scu, data->addr, data->data, count); in scu_reg_access()
60 return intel_scu_ipc_dev_writev(scu, data->addr, data->data, count); in scu_reg_access()
62 return intel_scu_ipc_dev_update(scu, data->addr[0], data->data[0], in scu_reg_access()
70 * scu_ipc_ioctl - control ioctls for the SCU
71 * @fp: file handle of the SCU device
75 * Support the I/O and firmware flashing interfaces of the SCU
[all …]
Dintel_scu_pltdrv.c3 * Platform driver for the Intel SCU.
23 struct intel_scu_ipc_dev *scu; in intel_scu_platform_probe() local
33 scu = devm_intel_scu_ipc_register(&pdev->dev, &scu_data); in intel_scu_platform_probe()
34 if (IS_ERR(scu)) in intel_scu_platform_probe()
35 return PTR_ERR(scu); in intel_scu_platform_probe()
37 platform_set_drvdata(pdev, scu); in intel_scu_platform_probe()
59 MODULE_DESCRIPTION("Intel SCU platform driver");
/kernel/linux/linux-5.10/drivers/platform/x86/
Dintel_scu_ipc.c3 * Driver for the Intel SCU IPC mechanism
8 * SCU running in ARC processor communicates with other entity running in IA
9 * core through IPC mechanism which in turn messaging between IA core ad SCU.
10 * SCU has two IPC mechanism IPC-1 and IPC-2. IPC-1 is used between IA32 and
11 * SCU where IPC-2 is used between P-Unit and SCU. This driver delas with
40 * To read or write information to the SCU, driver writes to IPC-1 memory
47 * the IPC-1 register block, causing an interrupt to the SCU
49 * 3. SCU firmware decodes this interrupt and IPC message and the appropriate
73 * 16 byte buffer for sending and receiving data to and from SCU.
82 static DEFINE_MUTEX(ipclock); /* lock used to prevent multiple call to SCU */
[all …]
Dintel_scu_ipcutil.c3 * Driver for the Intel SCU IPC mechanism
8 * This driver provides IOCTL interfaces to call Intel SCU IPC driver API.
25 struct intel_scu_ipc_dev *scu; variable
45 * Allow the user to perform register accesses on the SCU via the
58 return intel_scu_ipc_dev_readv(scu, data->addr, data->data, count); in scu_reg_access()
60 return intel_scu_ipc_dev_writev(scu, data->addr, data->data, count); in scu_reg_access()
62 return intel_scu_ipc_dev_update(scu, data->addr[0], data->data[0], in scu_reg_access()
70 * scu_ipc_ioctl - control ioctls for the SCU
71 * @fp: file handle of the SCU device
75 * Support the I/O and firmware flashing interfaces of the SCU
[all …]
Dintel_scu_pltdrv.c3 * Platform driver for the Intel SCU.
23 struct intel_scu_ipc_dev *scu; in intel_scu_platform_probe() local
33 scu = devm_intel_scu_ipc_register(&pdev->dev, &scu_data); in intel_scu_platform_probe()
34 if (IS_ERR(scu)) in intel_scu_platform_probe()
35 return PTR_ERR(scu); in intel_scu_platform_probe()
37 platform_set_drvdata(pdev, scu); in intel_scu_platform_probe()
59 MODULE_DESCRIPTION("Intel SCU platform driver");
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/firmware/
Dfsl,scu.yaml4 $id: http://devicetree.org/schemas/firmware/fsl,scu.yaml#
26 const: fsl,imx-scu
30 Clock controller node that provides the clocks controlled by the SCU
31 $ref: /schemas/clock/fsl,scu-clk.yaml
35 Control the GPIO PINs on SCU domain over the firmware APIs
40 OCOTP controller node provided by the SCU
41 $ref: /schemas/nvmem/fsl,scu-ocotp.yaml
45 Keys provided by the SCU
46 $ref: /schemas/input/fsl,scu-key.yaml
53 channels is 1 TX and 1 RX channels if MU instance is "fsl,imx8-mu-scu"
[all …]
/kernel/linux/linux-5.10/arch/x86/include/asm/
Dintel_scu_ipc.h11 * struct intel_scu_ipc_data - Data used to configure SCU IPC
12 * @mem: Base address of SCU IPC MMIO registers
13 * @irq: The IRQ number used for SCU (optional)
28 void intel_scu_ipc_unregister(struct intel_scu_ipc_dev *scu);
39 void intel_scu_ipc_dev_put(struct intel_scu_ipc_dev *scu);
42 int intel_scu_ipc_dev_ioread8(struct intel_scu_ipc_dev *scu, u16 addr,
44 int intel_scu_ipc_dev_iowrite8(struct intel_scu_ipc_dev *scu, u16 addr,
46 int intel_scu_ipc_dev_readv(struct intel_scu_ipc_dev *scu, u16 *addr,
48 int intel_scu_ipc_dev_writev(struct intel_scu_ipc_dev *scu, u16 *addr,
51 int intel_scu_ipc_dev_update(struct intel_scu_ipc_dev *scu, u16 addr,
[all …]
/kernel/linux/linux-6.6/arch/x86/include/asm/
Dintel_scu_ipc.h11 * struct intel_scu_ipc_data - Data used to configure SCU IPC
12 * @mem: Base address of SCU IPC MMIO registers
13 * @irq: The IRQ number used for SCU (optional)
28 void intel_scu_ipc_unregister(struct intel_scu_ipc_dev *scu);
39 void intel_scu_ipc_dev_put(struct intel_scu_ipc_dev *scu);
42 int intel_scu_ipc_dev_ioread8(struct intel_scu_ipc_dev *scu, u16 addr,
44 int intel_scu_ipc_dev_iowrite8(struct intel_scu_ipc_dev *scu, u16 addr,
46 int intel_scu_ipc_dev_readv(struct intel_scu_ipc_dev *scu, u16 *addr,
48 int intel_scu_ipc_dev_writev(struct intel_scu_ipc_dev *scu, u16 *addr,
51 int intel_scu_ipc_dev_update(struct intel_scu_ipc_dev *scu, u16 addr,
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/
Dfsl,scu-pd.yaml4 $id: http://devicetree.org/schemas/power/fsl,scu-pd.yaml#
7 title: i.MX SCU Client Device Node - Power Domain Based on SCU Message Protocol
12 description: i.MX SCU Client Device Node
13 Client nodes are maintained as children of the relevant IMX-SCU device node.
14 Power domain bindings based on SCU Message Protocol
23 - fsl,imx8qm-scu-pd
24 - fsl,imx8qxp-scu-pd
25 - const: fsl,scu-pd
39 compatible = "fsl,imx8qxp-scu-pd", "fsl,scu-pd";
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/arm/freescale/
Dfsl,scu.txt19 The scu node with the following properties shall be under the /firmware/ node.
23 - compatible: should be "fsl,imx-scu".
60 i.MX SCU Client Device Node:
63 Client nodes are maintained as children of the relevant IMX-SCU device node.
65 Power domain bindings based on SCU Message Protocol
68 This binding for the SCU power domain providers uses the generic power
73 "fsl,imx8qm-scu-pd",
74 "fsl,imx8qxp-scu-pd"
75 followed by "fsl,scu-pd"
78 SCU commands.
[all …]
/kernel/linux/linux-5.10/drivers/clk/imx/
Dclk-scu.c13 #include "clk-scu.h"
21 * struct clk_scu - Description of one SCU clock
23 * @rsrc_id: resource ID of this SCU clock
34 * @hdr: SCU protocol header
39 * This structure describes the SCU protocol of clock rate set
59 * @hdr: SCU protocol header
63 * This structure describes the SCU protocol of clock rate get
75 * @hdr: SCU protocol header
79 * This structure describes the SCU protocol of clock get parent
96 * @hdr: SCU protocol header
[all …]
/kernel/linux/linux-6.6/drivers/irqchip/
Dirq-aspeed-scu-ic.c3 * Aspeed AST24XX, AST25XX, and AST26XX SCU Interrupt Controller
42 struct regmap *scu; member
60 * The SCU IC has just one register to control its operation and read in aspeed_scu_ic_irq_handler()
69 regmap_read(scu_ic->scu, scu_ic->reg, &sts); in aspeed_scu_ic_irq_handler()
80 regmap_write_bits(scu_ic->scu, scu_ic->reg, mask, in aspeed_scu_ic_irq_handler()
98 regmap_update_bits(scu_ic->scu, scu_ic->reg, mask, 0); in aspeed_scu_ic_irq_mask()
113 regmap_update_bits(scu_ic->scu, scu_ic->reg, mask, bit); in aspeed_scu_ic_irq_unmask()
124 .name = "aspeed-scu-ic",
154 scu_ic->scu = syscon_node_to_regmap(node->parent); in aspeed_scu_ic_of_init_common()
155 if (IS_ERR(scu_ic->scu)) { in aspeed_scu_ic_of_init_common()
[all …]
/kernel/linux/linux-5.10/drivers/irqchip/
Dirq-aspeed-scu-ic.c3 * Aspeed AST24XX, AST25XX, and AST26XX SCU Interrupt Controller
41 struct regmap *scu; member
60 * The SCU IC has just one register to control its operation and read in aspeed_scu_ic_irq_handler()
69 regmap_read(scu_ic->scu, scu_ic->reg, &sts); in aspeed_scu_ic_irq_handler()
81 regmap_write_bits(scu_ic->scu, scu_ic->reg, mask, in aspeed_scu_ic_irq_handler()
99 regmap_update_bits(scu_ic->scu, scu_ic->reg, mask, 0); in aspeed_scu_ic_irq_mask()
114 regmap_update_bits(scu_ic->scu, scu_ic->reg, mask, bit); in aspeed_scu_ic_irq_unmask()
125 .name = "aspeed-scu-ic",
155 scu_ic->scu = syscon_node_to_regmap(node->parent); in aspeed_scu_ic_of_init_common()
156 if (IS_ERR(scu_ic->scu)) { in aspeed_scu_ic_of_init_common()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/nvmem/
Dfsl,scu-ocotp.yaml4 $id: http://devicetree.org/schemas/nvmem/fsl,scu-ocotp.yaml#
7 title: i.MX SCU Client Device Node - OCOTP Based on SCU Message Protocol
12 description: i.MX SCU Client Device Node
13 Client nodes are maintained as children of the relevant IMX-SCU device node.
21 - fsl,imx8qm-scu-ocotp
22 - fsl,imx8qxp-scu-ocotp
49 compatible = "fsl,imx8qxp-scu-ocotp";
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/arm/
Dscu.txt1 * ARM Snoop Control Unit (SCU)
17 "arm,cortex-a9-scu"
18 "arm,cortex-a5-scu"
19 "arm,arm11mp-scu"
21 - reg : Specify the base address and the size of the SCU register window.
25 scu@a0410000 {
26 compatible = "arm,cortex-a9-scu";
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/arm/
Darm,scu.yaml4 $id: http://devicetree.org/schemas/arm/arm,scu.yaml#
7 title: ARM Snoop Control Unit (SCU)
28 - arm,cortex-a9-scu
29 - arm,cortex-a5-scu
30 - arm,arm11mp-scu
43 scu@a0410000 {
44 compatible = "arm,cortex-a9-scu";
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/clock/
Dfsl,scu-clk.yaml4 $id: http://devicetree.org/schemas/clock/fsl,scu-clk.yaml#
7 title: i.MX SCU Client Device Node - Clock Controller Based on SCU Message Protocol
12 description: i.MX SCU Client Device Node
13 Client nodes are maintained as children of the relevant IMX-SCU device node.
27 - const: fsl,scu-clk
41 compatible = "fsl,imx8qxp-clk", "fsl,scu-clk";
/kernel/linux/linux-6.6/drivers/clk/imx/
Dclk-scu.c18 #include "clk-scu.h"
42 * struct clk_scu - Description of one SCU clock
44 * @rsrc_id: resource ID of this SCU clock
60 * struct clk_gpr_scu - Description of one SCU GPR clock
62 * @rsrc_id: resource ID of this SCU clock
77 * @hdr: SCU protocol header
82 * This structure describes the SCU protocol of clock rate set
102 * @hdr: SCU protocol header
106 * This structure describes the SCU protocol of clock rate get
118 * @hdr: SCU protocol header
[all …]
/kernel/linux/linux-5.10/drivers/watchdog/
Dintel-mid_wdt.c3 * intel-mid_wdt: generic Intel MID SCU watchdog driver
29 /* SCU watchdog messages */
39 struct intel_scu_ipc_dev *scu; member
45 struct intel_scu_ipc_dev *scu = mid->scu; in wdt_command() local
47 return intel_scu_ipc_dev_command_with_size(scu, IPC_WATCHDOG, sub, in, in wdt_command()
62 * SCU expects the input size for watchdog IPC to be 2 which is the in wdt_start()
63 * size of the structure in dwords. SCU IPC normally takes bytes in wdt_start()
110 .identity = "Intel MID SCU watchdog",
157 mid->scu = devm_intel_scu_ipc_dev_get(dev); in mid_wdt_probe()
158 if (!mid->scu) in mid_wdt_probe()
/kernel/linux/linux-6.6/drivers/watchdog/
Dintel-mid_wdt.c3 * intel-mid_wdt: generic Intel MID SCU watchdog driver
29 /* SCU watchdog messages */
39 struct intel_scu_ipc_dev *scu; member
45 struct intel_scu_ipc_dev *scu = mid->scu; in wdt_command() local
47 return intel_scu_ipc_dev_command_with_size(scu, IPC_WATCHDOG, sub, in, in wdt_command()
62 * SCU expects the input size for watchdog IPC to be 2 which is the in wdt_start()
63 * size of the structure in dwords. SCU IPC normally takes bytes in wdt_start()
110 .identity = "Intel MID SCU watchdog",
157 mid->scu = devm_intel_scu_ipc_dev_get(dev); in mid_wdt_probe()
158 if (!mid->scu) in mid_wdt_probe()
/kernel/linux/linux-5.10/drivers/scsi/isci/
Dscu_task_context.h60 * This file contains the structures and constants for the SCU hardware task
69 * types the SCU hardware will accept. The definition for the various task
70 * types the SCU hardware will accept can be found in the DS specification.
85 * types the SCU hardware will accept. The definition for the various task
86 * types the SCU hardware will accept can be found in the DS specification.
187 * operations to construct the various SCU commands
224 * SCU_COMMAND_TYPES These constants provide the grouping of the different SCU
240 * posted to the SCU hardware.
284 * SCU_TASK_CONTEXT_PROTOCOL SCU Task context protocol types this is uesd to
285 * program the SCU Task context protocol field in word 0x00.
[all …]
Dscu_remote_node_context.h60 * This file contains the structures and constatns used by the SCU hardware to
67 * struct ssp_remote_node_context - This structure contains the SCU hardware
79 * the SCU device context capacity register.
85 * This field tells the SCU hardware how many simultaneous connections that
91 * This field tells the SCU hardware which logical port to associate with this
148 * This field tells the SCU hardware how long this device may occupy the
154 * This field tells the SCU hardware how long to maintain a connection when
173 * This field tells the SCU hardware what to program for the features in the
179 * This field tells the SCU hardware what to use for the source zone group in
186 * This field tells the SCU hardware what to use as the more capibilities in
[all …]
/kernel/linux/linux-6.6/drivers/scsi/isci/
Dscu_task_context.h60 * This file contains the structures and constants for the SCU hardware task
69 * types the SCU hardware will accept. The definition for the various task
70 * types the SCU hardware will accept can be found in the DS specification.
85 * types the SCU hardware will accept. The definition for the various task
86 * types the SCU hardware will accept can be found in the DS specification.
187 * operations to construct the various SCU commands
224 * SCU_COMMAND_TYPES These constants provide the grouping of the different SCU
240 * posted to the SCU hardware.
284 * SCU_TASK_CONTEXT_PROTOCOL SCU Task context protocol types this is uesd to
285 * program the SCU Task context protocol field in word 0x00.
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/input/
Dfsl,scu-key.yaml4 $id: http://devicetree.org/schemas/input/fsl,scu-key.yaml#
7 title: i.MX SCU Client Device Node - SCU Key Based on SCU Message Protocol
12 description: i.MX SCU Client Device Node
13 Client nodes are maintained as children of the relevant IMX-SCU device node.

12345678910>>...23