Home
last modified time | relevance | path

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

1234567891011

/linux/drivers/platform/x86/
H A 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
102 struct intel_scu_ipc_dev *scu = NULL; intel_scu_ipc_dev_get() local
130 intel_scu_ipc_dev_put(struct intel_scu_ipc_dev * scu) intel_scu_ipc_dev_put() argument
140 struct intel_scu_ipc_dev *scu; global() member
146 struct intel_scu_ipc_dev *scu = dr->scu; devm_intel_scu_ipc_dev_release() local
165 struct intel_scu_ipc_dev *scu; devm_intel_scu_ipc_dev_get() local
191 ipc_command(struct intel_scu_ipc_dev * scu,u32 cmd) ipc_command() argument
203 ipc_data_writel(struct intel_scu_ipc_dev * scu,u32 data,u32 offset) ipc_data_writel() argument
215 ipc_read_status(struct intel_scu_ipc_dev * scu) ipc_read_status() argument
221 ipc_data_readb(struct intel_scu_ipc_dev * scu,u32 offset) ipc_data_readb() argument
227 ipc_data_readl(struct intel_scu_ipc_dev * scu,u32 offset) ipc_data_readl() argument
233 busy_loop(struct intel_scu_ipc_dev * scu) busy_loop() argument
247 ipc_wait_for_interrupt(struct intel_scu_ipc_dev * scu) ipc_wait_for_interrupt() argument
263 intel_scu_ipc_check_status(struct intel_scu_ipc_dev * scu) intel_scu_ipc_check_status() argument
268 intel_scu_ipc_get(struct intel_scu_ipc_dev * scu) intel_scu_ipc_get() argument
287 pwr_reg_rdwr(struct intel_scu_ipc_dev * scu,u16 * addr,u8 * data,u32 count,u32 op,u32 id) pwr_reg_rdwr() argument
349 intel_scu_ipc_dev_ioread8(struct intel_scu_ipc_dev * scu,u16 addr,u8 * data) intel_scu_ipc_dev_ioread8() argument
366 intel_scu_ipc_dev_iowrite8(struct intel_scu_ipc_dev * scu,u16 addr,u8 data) intel_scu_ipc_dev_iowrite8() argument
386 intel_scu_ipc_dev_readv(struct intel_scu_ipc_dev * scu,u16 * addr,u8 * data,size_t len) intel_scu_ipc_dev_readv() argument
407 intel_scu_ipc_dev_writev(struct intel_scu_ipc_dev * scu,u16 * addr,u8 * data,size_t len) intel_scu_ipc_dev_writev() argument
429 intel_scu_ipc_dev_update(struct intel_scu_ipc_dev * scu,u16 addr,u8 data,u8 mask) intel_scu_ipc_dev_update() argument
450 intel_scu_ipc_dev_simple_command(struct intel_scu_ipc_dev * scu,int cmd,int sub) intel_scu_ipc_dev_simple_command() argument
489 intel_scu_ipc_dev_command_with_size(struct intel_scu_ipc_dev * scu,int cmd,int sub,const void * in,size_t inlen,size_t size,void * out,size_t outlen) intel_scu_ipc_dev_command_with_size() argument
541 struct intel_scu_ipc_dev *scu = dev_id; ioc() local
552 struct intel_scu_ipc_dev *scu; intel_scu_ipc_release() local
579 struct intel_scu_ipc_dev *scu; __intel_scu_ipc_register() local
660 intel_scu_ipc_unregister(struct intel_scu_ipc_dev * scu) intel_scu_ipc_unregister() argument
674 struct intel_scu_ipc_dev *scu = dr->scu; devm_intel_scu_ipc_unregister() local
696 struct intel_scu_ipc_dev *scu; __devm_intel_scu_ipc_register() local
[all...]
H A 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 static 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...]
H A 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");
/linux/Documentation/devicetree/bindings/firmware/
H A 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 …]
/linux/Documentation/devicetree/bindings/power/
H A 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,imx8dl-scu-pd
24 - fsl,imx8qm-scu-pd
25 - fsl,imx8qxp-scu-pd
26 - const: fsl,scu-pd
40 compatible = "fsl,imx8qxp-scu-pd", "fsl,scu-pd";
/linux/Documentation/devicetree/bindings/clock/
H A Dairoha,en7523-scu.yaml4 $id: http://devicetree.org/schemas/clock/airoha,en7523-scu.yaml#
33 - airoha,en7523-scu
34 - airoha,en7581-scu
59 const: airoha,en7523-scu
64 - description: scu base address
65 - description: misc scu base address
72 const: airoha,en7581-scu
77 - description: scu base address
78 - description: misc scu base address
80 - description: pb scu base address
[all …]
H A 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";
/linux/drivers/irqchip/
H A 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 …]
/linux/Documentation/devicetree/bindings/nvmem/
H A 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";
/linux/drivers/clk/imx/
H A Dclk-scu.c20 #include "clk-scu.h"
44 * struct clk_scu - Description of one SCU clock
46 * @rsrc_id: resource ID of this SCU clock
62 * struct clk_gpr_scu - Description of one SCU GPR clock
64 * @rsrc_id: resource ID of this SCU clock
79 * @hdr: SCU protocol header
84 * This structure describes the SCU protocol of clock rate set
104 * @hdr: SCU protocol header
108 * This structure describes the SCU protocol of clock rate get
120 * @hdr: SCU protocol header
[all …]
/linux/drivers/scsi/isci/
H A 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 …]
H A 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 …]
/linux/Documentation/devicetree/bindings/arm/
H A 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";
/linux/drivers/watchdog/
H A Dintel-mid_wdt.c3 * intel-mid_wdt: generic Intel MID SCU watchdog driver
33 /* SCU watchdog messages */
43 struct intel_scu_ipc_dev *scu;
49 struct intel_scu_ipc_dev *scu = mid->scu; in wdt_command()
51 return intel_scu_ipc_dev_command_with_size(scu, IPC_WATCHDOG, sub, in, in wdt_command()
66 * SCU expects the input size for watchdog IPC to be 2 which is the in wdt_start()
67 * size of the structure in dwords. SCU IPC normally takes bytes in wdt_start()
114 .identity = "Intel MID SCU watchdog",
161 mid->scu in mid_wdt_probe()
44 struct intel_scu_ipc_dev *scu; global() member
50 struct intel_scu_ipc_dev *scu = mid->scu; wdt_command() local
[all...]
/linux/Documentation/devicetree/bindings/input/
H A 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.
/linux/drivers/pinctrl/
H A Dpinctrl-lpc18xx.c2 * Pinctrl driver for NXP LPC18xx/LPC43xx System Control Unit (SCU)
26 /* LPC18XX SCU analog function registers */
32 /* LPC18XX SCU pin register definitions */
54 /* LPC18XX SCU pin interrupt select registers */
764 struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev); in lpc18xx_pconf_get_gpio_pin_int() local
779 ret = lpc18xx_get_pintsel(scu->base + LPC18XX_SCU_PINTSEL0, val, arg); in lpc18xx_pconf_get_gpio_pin_int()
783 return lpc18xx_get_pintsel(scu->base + LPC18XX_SCU_PINTSEL1, val, arg); in lpc18xx_pconf_get_gpio_pin_int()
877 struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev); in lpc18xx_pconf_get() local
887 reg = readl(scu->base + pin_cap->offset); in lpc18xx_pconf_get()
986 struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev); in lpc18xx_pconf_set_gpio_pin_int() local
[all …]
/linux/drivers/firmware/imx/
H A Dimx-scu.c6 * Implementation of the SCU IPC functions using MUs (client side).
36 /* SCU uses 4 Tx and 4 Rx channels */
43 /* temporarily store the SCU msg */
93 * Get the default handle used by SCU
105 /* Callback called when the word of a message is ack-ed, eg read by SCU */
180 * SCU requires that all messages words are written in imx_scu_ipc_write()
183 * different channels must be ensured by SCU API interface. in imx_scu_ipc_write()
240 * Some special SCU firmware APIs do NOT have return value in imx_scu_call_rpc()
242 * APIs are defined as void function in SCU firmware, so they in imx_scu_call_rpc()
282 sc_ipc->fast_ipc = of_device_is_compatible(args.np, "fsl,imx8-mu-scu"); in imx_scu_probe()
[all …]
/linux/drivers/clk/renesas/
H A Dr8a7791-cpg-mssr.c189 DEF_MOD("scu-all", 1017, R8A7791_CLK_P),
190 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
191 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
192 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
193 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
194 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
195 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
196 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
197 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
198 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
H A Dr8a7790-cpg-mssr.c194 DEF_MOD("scu-all", 1017, R8A7790_CLK_P),
195 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
196 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
197 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
198 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
199 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
200 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
201 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
202 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
203 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
H A Dr8a7742-cpg-mssr.c185 DEF_MOD("scu-all", 1017, R8A7742_CLK_P),
186 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
187 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
188 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
189 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
190 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
191 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
192 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
193 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
194 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
H A Dr8a774c0-cpg-mssr.c234 DEF_MOD("scu-all", 1017, R8A774C0_CLK_S3D4),
235 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
236 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
237 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
238 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
239 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
240 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
241 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
242 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
243 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
H A Dr8a7743-cpg-mssr.c176 DEF_MOD("scu-all", 1017, R8A7743_CLK_P),
177 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
178 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
179 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
180 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
181 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
182 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
183 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
184 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
185 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
H A Dr8a77990-cpg-mssr.c248 DEF_MOD("scu-all", 1017, R8A77990_CLK_S3D4),
249 DEF_MOD("scu-dvc1", 1018, MOD_CLK_ID(1017)),
250 DEF_MOD("scu-dvc0", 1019, MOD_CLK_ID(1017)),
251 DEF_MOD("scu-ctu1-mix1", 1020, MOD_CLK_ID(1017)),
252 DEF_MOD("scu-ctu0-mix0", 1021, MOD_CLK_ID(1017)),
253 DEF_MOD("scu-src9", 1022, MOD_CLK_ID(1017)),
254 DEF_MOD("scu-src8", 1023, MOD_CLK_ID(1017)),
255 DEF_MOD("scu-src7", 1024, MOD_CLK_ID(1017)),
256 DEF_MOD("scu-src6", 1025, MOD_CLK_ID(1017)),
257 DEF_MOD("scu-src5", 1026, MOD_CLK_ID(1017)),
[all …]
/linux/Documentation/devicetree/bindings/interrupt-controller/
H A Daspeed,ast2xxx-scu-ic.txt1 Aspeed AST25XX and AST26XX SCU Interrupt Controller
5 - compatible : must be "aspeed,ast2500-scu-ic",
6 "aspeed,ast2600-scu-ic0" or
7 "aspeed,ast2600-scu-ic1"
19 compatible = "aspeed,ast2500-scu-ic";
/linux/arch/arm/mach-shmobile/
H A DMakefile32 smp-$(CONFIG_ARCH_SH73A0) += smp-sh73a0.o headsmp-scu.o platsmp-scu.o
33 smp-$(CONFIG_ARCH_R8A7779) += smp-r8a7779.o headsmp-scu.o platsmp-scu.o
34 smp-$(CONFIG_ARCH_EMEV2) += smp-emev2.o headsmp-scu.o platsmp-scu.o

1234567891011