scu                67 arch/arm/mach-vexpress/platsmp.c 	struct device_node *scu = of_find_matching_node(NULL,
scu                70 arch/arm/mach-vexpress/platsmp.c 	if (scu)
scu                71 arch/arm/mach-vexpress/platsmp.c 		scu_enable(of_iomap(scu, 0));
scu                90 drivers/fsi/fsi-master-ast-cf.c 	struct regmap		*scu;
scu               692 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_COPRO_CTRL, SCU_COPRO_RESET);
scu               694 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_COPRO_CTRL, 0);
scu               700 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_COPRO_CTRL, SCU_COPRO_CLK_EN);
scu               722 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_SEG0, master->cf_mem_addr |
scu               726 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_SEG2, SYSREG_BASE |
scu               728 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_SEG3, SYSREG_BASE | 0x100000 |
scu               732 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_SEG6, SYSREG_BASE);
scu               733 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_SEG7, SYSREG_BASE | 0x100000);
scu               736 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2500_COPRO_CACHE_CTL,
scu               743 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2400_COPRO_SEG0, master->cf_mem_addr |
scu               747 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2400_COPRO_SEG2, SYSREG_BASE |
scu               751 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2400_COPRO_SEG6, SYSREG_BASE);
scu               754 drivers/fsi/fsi-master-ast-cf.c 	regmap_write(master->scu, SCU_2400_COPRO_CACHE_CTL,
scu              1153 drivers/fsi/fsi-master-ast-cf.c 		regmap_read(master->scu, SCU_COPRO_CTRL, &reg);
scu              1235 drivers/fsi/fsi-master-ast-cf.c 		master->scu = syscon_regmap_lookup_by_compatible("aspeed,ast2500-scu");
scu              1237 drivers/fsi/fsi-master-ast-cf.c 		master->scu = syscon_regmap_lookup_by_compatible("aspeed,ast2400-scu");
scu              1238 drivers/fsi/fsi-master-ast-cf.c 	if (IS_ERR(master->scu)) {
scu              1240 drivers/fsi/fsi-master-ast-cf.c 		rc = PTR_ERR(master->scu);
scu                11 drivers/gpu/drm/aspeed/aspeed_gfx.h 	struct regmap			*scu;
scu                63 drivers/gpu/drm/aspeed/aspeed_gfx_crtc.c 	regmap_update_bits(priv->scu, 0x2c, BIT(16), BIT(16));
scu                77 drivers/gpu/drm/aspeed/aspeed_gfx_crtc.c 	regmap_update_bits(priv->scu, 0x2c, BIT(16), 0);
scu               113 drivers/gpu/drm/aspeed/aspeed_gfx_drv.c 	priv->scu = syscon_regmap_lookup_by_compatible("aspeed,ast2500-scu");
scu               114 drivers/gpu/drm/aspeed/aspeed_gfx_drv.c 	if (IS_ERR(priv->scu)) {
scu               116 drivers/gpu/drm/aspeed/aspeed_gfx_drv.c 		return PTR_ERR(priv->scu);
scu               372 drivers/pinctrl/aspeed/pinctrl-aspeed.c 	pdata->scu = syscon_node_to_regmap(parent->of_node);
scu               373 drivers/pinctrl/aspeed/pinctrl-aspeed.c 	if (IS_ERR(pdata->scu)) {
scu               375 drivers/pinctrl/aspeed/pinctrl-aspeed.c 		return PTR_ERR(pdata->scu);
scu               378 drivers/pinctrl/aspeed/pinctrl-aspeed.c 	pdata->pinmux.maps[ASPEED_IP_SCU] = pdata->scu;
scu               490 drivers/pinctrl/aspeed/pinctrl-aspeed.c 	rc = regmap_read(pdata->scu, pconf->reg, &val);
scu               545 drivers/pinctrl/aspeed/pinctrl-aspeed.c 		rc = regmap_update_bits(pdata->scu, pconf->reg,
scu                39 drivers/pinctrl/aspeed/pinctrl-aspeed.h 	struct regmap *scu;
scu               130 drivers/pinctrl/freescale/pinctrl-imx.c 					(unsigned long *)&pin->conf.scu;
scu                56 drivers/pinctrl/freescale/pinctrl-imx.h 		struct imx_pin_scu scu;
scu               110 drivers/pinctrl/freescale/pinctrl-scu.c 	struct imx_pin_scu *pin_scu = &pin->conf.scu;
scu               762 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu               777 drivers/pinctrl/pinctrl-lpc18xx.c 	ret = lpc18xx_get_pintsel(scu->base + LPC18XX_SCU_PINTSEL0, val, arg);
scu               781 drivers/pinctrl/pinctrl-lpc18xx.c 	return lpc18xx_get_pintsel(scu->base + LPC18XX_SCU_PINTSEL1, val, arg);
scu               875 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu               885 drivers/pinctrl/pinctrl-lpc18xx.c 	reg = readl(scu->base + pin_cap->offset);
scu               984 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu               999 drivers/pinctrl/pinctrl-lpc18xx.c 	reg_val = readl(scu->base + reg_offset);
scu              1002 drivers/pinctrl/pinctrl-lpc18xx.c 	writel(reg_val, scu->base + reg_offset);
scu              1088 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu              1100 drivers/pinctrl/pinctrl-lpc18xx.c 	reg = readl(scu->base + pin_cap->offset);
scu              1117 drivers/pinctrl/pinctrl-lpc18xx.c 	writel(reg, scu->base + pin_cap->offset);
scu              1144 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu              1146 drivers/pinctrl/pinctrl-lpc18xx.c 	*groups  = scu->func[function].groups;
scu              1147 drivers/pinctrl/pinctrl-lpc18xx.c 	*num_groups = scu->func[function].ngroups;
scu              1155 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev);
scu              1178 drivers/pinctrl/pinctrl-lpc18xx.c 		writel(LPC18XX_SCU_ANALOG_PIN_CFG, scu->base + pin->offset);
scu              1185 drivers/pinctrl/pinctrl-lpc18xx.c 		reg = readl(scu->base + offset);
scu              1187 drivers/pinctrl/pinctrl-lpc18xx.c 		writel(reg, scu->base + offset);
scu              1193 drivers/pinctrl/pinctrl-lpc18xx.c 		writel(LPC18XX_SCU_ANALOG_PIN_CFG, scu->base + pin->offset);
scu              1195 drivers/pinctrl/pinctrl-lpc18xx.c 		reg = readl(scu->base + LPC18XX_SCU_REG_ENAIO2);
scu              1197 drivers/pinctrl/pinctrl-lpc18xx.c 		writel(reg, scu->base + LPC18XX_SCU_REG_ENAIO2);
scu              1210 drivers/pinctrl/pinctrl-lpc18xx.c 	reg = readl(scu->base + pin->offset);
scu              1212 drivers/pinctrl/pinctrl-lpc18xx.c 	writel(reg | func, scu->base + pin->offset);
scu              1299 drivers/pinctrl/pinctrl-lpc18xx.c 					 struct lpc18xx_scu_data *scu)
scu              1310 drivers/pinctrl/pinctrl-lpc18xx.c 		scu->func[func].ngroups = ngroups;
scu              1311 drivers/pinctrl/pinctrl-lpc18xx.c 		scu->func[func].groups = devm_kcalloc(dev,
scu              1314 drivers/pinctrl/pinctrl-lpc18xx.c 		if (!scu->func[func].groups)
scu              1318 drivers/pinctrl/pinctrl-lpc18xx.c 			scu->func[func].groups[i] = lpc18xx_pins[pins[i]].name;
scu              1326 drivers/pinctrl/pinctrl-lpc18xx.c 	struct lpc18xx_scu_data *scu;
scu              1330 drivers/pinctrl/pinctrl-lpc18xx.c 	scu = devm_kzalloc(&pdev->dev, sizeof(*scu), GFP_KERNEL);
scu              1331 drivers/pinctrl/pinctrl-lpc18xx.c 	if (!scu)
scu              1335 drivers/pinctrl/pinctrl-lpc18xx.c 	scu->base = devm_ioremap_resource(&pdev->dev, res);
scu              1336 drivers/pinctrl/pinctrl-lpc18xx.c 	if (IS_ERR(scu->base))
scu              1337 drivers/pinctrl/pinctrl-lpc18xx.c 		return PTR_ERR(scu->base);
scu              1339 drivers/pinctrl/pinctrl-lpc18xx.c 	scu->clk = devm_clk_get(&pdev->dev, NULL);
scu              1340 drivers/pinctrl/pinctrl-lpc18xx.c 	if (IS_ERR(scu->clk)) {
scu              1342 drivers/pinctrl/pinctrl-lpc18xx.c 		return PTR_ERR(scu->clk);
scu              1345 drivers/pinctrl/pinctrl-lpc18xx.c 	ret = lpc18xx_create_group_func_map(&pdev->dev, scu);
scu              1351 drivers/pinctrl/pinctrl-lpc18xx.c 	ret = clk_prepare_enable(scu->clk);
scu              1357 drivers/pinctrl/pinctrl-lpc18xx.c 	platform_set_drvdata(pdev, scu);
scu              1359 drivers/pinctrl/pinctrl-lpc18xx.c 	scu->pctl = devm_pinctrl_register(&pdev->dev, &lpc18xx_scu_desc, scu);
scu              1360 drivers/pinctrl/pinctrl-lpc18xx.c 	if (IS_ERR(scu->pctl)) {
scu              1362 drivers/pinctrl/pinctrl-lpc18xx.c 		clk_disable_unprepare(scu->clk);
scu              1363 drivers/pinctrl/pinctrl-lpc18xx.c 		return PTR_ERR(scu->pctl);
scu               120 drivers/platform/x86/intel_scu_ipc.c static inline void ipc_command(struct intel_scu_ipc_dev *scu, u32 cmd)
scu               122 drivers/platform/x86/intel_scu_ipc.c 	reinit_completion(&scu->cmd_complete);
scu               123 drivers/platform/x86/intel_scu_ipc.c 	writel(cmd | IPC_IOC, scu->ipc_base);
scu               132 drivers/platform/x86/intel_scu_ipc.c static inline void ipc_data_writel(struct intel_scu_ipc_dev *scu, u32 data, u32 offset)
scu               134 drivers/platform/x86/intel_scu_ipc.c 	writel(data, scu->ipc_base + 0x80 + offset);
scu               144 drivers/platform/x86/intel_scu_ipc.c static inline u8 ipc_read_status(struct intel_scu_ipc_dev *scu)
scu               146 drivers/platform/x86/intel_scu_ipc.c 	return __raw_readl(scu->ipc_base + 0x04);
scu               150 drivers/platform/x86/intel_scu_ipc.c static inline u8 ipc_data_readb(struct intel_scu_ipc_dev *scu, u32 offset)
scu               152 drivers/platform/x86/intel_scu_ipc.c 	return readb(scu->ipc_base + IPC_READ_BUFFER + offset);
scu               156 drivers/platform/x86/intel_scu_ipc.c static inline u32 ipc_data_readl(struct intel_scu_ipc_dev *scu, u32 offset)
scu               158 drivers/platform/x86/intel_scu_ipc.c 	return readl(scu->ipc_base + IPC_READ_BUFFER + offset);
scu               162 drivers/platform/x86/intel_scu_ipc.c static inline int busy_loop(struct intel_scu_ipc_dev *scu)
scu               164 drivers/platform/x86/intel_scu_ipc.c 	u32 status = ipc_read_status(scu);
scu               170 drivers/platform/x86/intel_scu_ipc.c 		status = ipc_read_status(scu);
scu               174 drivers/platform/x86/intel_scu_ipc.c 		dev_err(scu->dev, "IPC timed out");
scu               185 drivers/platform/x86/intel_scu_ipc.c static inline int ipc_wait_for_interrupt(struct intel_scu_ipc_dev *scu)
scu               189 drivers/platform/x86/intel_scu_ipc.c 	if (!wait_for_completion_timeout(&scu->cmd_complete, 3 * HZ)) {
scu               190 drivers/platform/x86/intel_scu_ipc.c 		dev_err(scu->dev, "IPC timed out\n");
scu               194 drivers/platform/x86/intel_scu_ipc.c 	status = ipc_read_status(scu);
scu               201 drivers/platform/x86/intel_scu_ipc.c static int intel_scu_ipc_check_status(struct intel_scu_ipc_dev *scu)
scu               203 drivers/platform/x86/intel_scu_ipc.c 	return scu->irq_mode ? ipc_wait_for_interrupt(scu) : busy_loop(scu);
scu               209 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               220 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev == NULL) {
scu               232 drivers/platform/x86/intel_scu_ipc.c 			ipc_data_writel(scu, wbuf[nc], offset);
scu               233 drivers/platform/x86/intel_scu_ipc.c 		ipc_command(scu, (count * 2) << 16 | id << 12 | 0 << 8 | op);
scu               238 drivers/platform/x86/intel_scu_ipc.c 			ipc_data_writel(scu, wbuf[nc], offset);
scu               239 drivers/platform/x86/intel_scu_ipc.c 		ipc_command(scu, (count * 3) << 16 | id << 12 | 0 << 8 | op);
scu               243 drivers/platform/x86/intel_scu_ipc.c 		ipc_data_writel(scu, wbuf[0], 0); /* Write wbuff */
scu               244 drivers/platform/x86/intel_scu_ipc.c 		ipc_command(scu, 4 << 16 | id << 12 | 0 << 8 | op);
scu               247 drivers/platform/x86/intel_scu_ipc.c 	err = intel_scu_ipc_check_status(scu);
scu               250 drivers/platform/x86/intel_scu_ipc.c 		memcpy_fromio(cbuf, scu->ipc_base + 0x90, 16);
scu               252 drivers/platform/x86/intel_scu_ipc.c 			data[nc] = ipc_data_readb(scu, nc);
scu               433 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               437 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev == NULL) {
scu               441 drivers/platform/x86/intel_scu_ipc.c 	ipc_command(scu, sub << 12 | cmd);
scu               442 drivers/platform/x86/intel_scu_ipc.c 	err = intel_scu_ipc_check_status(scu);
scu               463 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               467 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev == NULL) {
scu               473 drivers/platform/x86/intel_scu_ipc.c 		ipc_data_writel(scu, *in++, 4 * i);
scu               475 drivers/platform/x86/intel_scu_ipc.c 	ipc_command(scu, (inlen << 16) | (sub << 12) | cmd);
scu               476 drivers/platform/x86/intel_scu_ipc.c 	err = intel_scu_ipc_check_status(scu);
scu               480 drivers/platform/x86/intel_scu_ipc.c 			*out++ = ipc_data_readl(scu, 4 * i);
scu               509 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               519 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev == NULL) {
scu               524 drivers/platform/x86/intel_scu_ipc.c 	writel(dptr, scu->ipc_base + IPC_DPTR);
scu               525 drivers/platform/x86/intel_scu_ipc.c 	writel(sptr, scu->ipc_base + IPC_SPTR);
scu               537 drivers/platform/x86/intel_scu_ipc.c 		ipc_data_writel(scu, inbuf[i], 4 * i);
scu               539 drivers/platform/x86/intel_scu_ipc.c 	ipc_command(scu, (inlen << 16) | (sub << 12) | cmd);
scu               540 drivers/platform/x86/intel_scu_ipc.c 	err = intel_scu_ipc_check_status(scu);
scu               543 drivers/platform/x86/intel_scu_ipc.c 			*out++ = ipc_data_readl(scu, 4 * i);
scu               569 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               573 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev == NULL) {
scu               579 drivers/platform/x86/intel_scu_ipc.c 		writel(addr, scu->i2c_base + IPC_I2C_CNTRL_ADDR);
scu               582 drivers/platform/x86/intel_scu_ipc.c 		*data = readl(scu->i2c_base + I2C_DATA_ADDR);
scu               584 drivers/platform/x86/intel_scu_ipc.c 		writel(*data, scu->i2c_base + I2C_DATA_ADDR);
scu               586 drivers/platform/x86/intel_scu_ipc.c 		writel(addr, scu->i2c_base + IPC_I2C_CNTRL_ADDR);
scu               588 drivers/platform/x86/intel_scu_ipc.c 		dev_err(scu->dev,
scu               608 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = dev_id;
scu               609 drivers/platform/x86/intel_scu_ipc.c 	int status = ipc_read_status(scu);
scu               611 drivers/platform/x86/intel_scu_ipc.c 	writel(status | IPC_STATUS_IRQ, scu->ipc_base + IPC_STATUS);
scu               612 drivers/platform/x86/intel_scu_ipc.c 	complete(&scu->cmd_complete);
scu               628 drivers/platform/x86/intel_scu_ipc.c 	struct intel_scu_ipc_dev *scu = &ipcdev;
scu               631 drivers/platform/x86/intel_scu_ipc.c 	if (scu->dev)		/* We support only one SCU */
scu               646 drivers/platform/x86/intel_scu_ipc.c 	init_completion(&scu->cmd_complete);
scu               648 drivers/platform/x86/intel_scu_ipc.c 	scu->ipc_base = pcim_iomap_table(pdev)[0];
scu               650 drivers/platform/x86/intel_scu_ipc.c 	scu->i2c_base = ioremap_nocache(pdata->i2c_base, pdata->i2c_len);
scu               651 drivers/platform/x86/intel_scu_ipc.c 	if (!scu->i2c_base)
scu               655 drivers/platform/x86/intel_scu_ipc.c 			       scu);
scu               660 drivers/platform/x86/intel_scu_ipc.c 	scu->dev = &pdev->dev;
scu               664 drivers/platform/x86/intel_scu_ipc.c 	pci_set_drvdata(pdev, scu);