Lines Matching full:scu
6 * microcontroller is System Controller Unit (SCU) which, in particular,
9 * This driver enables IPC channel to SCU.
18 #include <asm/scu.h>
23 /* SCU register map */
34 struct scu { struct
39 * scu_ipc_send_command() - send command to SCU
40 * @regs: register map of SCU
44 * A write to this register results in an interrupt to the SCU core processor
55 * @regs: register map of SCU
59 * block and error status of the IPC command that was just processed by SCU
110 * Issue a simple command to the SCU. Do not use this interface if
112 * by another SCU access by the time this function returns.
114 * This function may sleep. Locking for SCU accesses is handled for
119 struct scu *scu; in scu_ipc_simple_command() local
127 scu = dev_get_priv(dev); in scu_ipc_simple_command()
129 scu_ipc_send_command(scu->regs, sub << 12 | cmd); in scu_ipc_simple_command()
130 return scu_ipc_check_status(scu->regs); in scu_ipc_simple_command()
135 struct scu *scu; in scu_ipc_command() local
143 scu = dev_get_priv(dev); in scu_ipc_command()
145 return scu_ipc_cmd(scu->regs, cmd, sub, in, inlen, out, outlen); in scu_ipc_command()
150 struct scu *scu = dev_get_priv(dev); in scu_ipc_probe() local
152 scu->regs = syscon_get_first_range(X86_SYSCON_SCU); in scu_ipc_probe()
158 { .compatible = "intel,scu-ipc", .data = X86_SYSCON_SCU },
167 .priv_auto_alloc_size = sizeof(struct scu),