/openbmc/linux/drivers/platform/x86/ |
H A D | intel_scu_ipc.c | 102 struct intel_scu_ipc_dev *scu = NULL; in intel_scu_ipc_dev_get() local 114 scu = ipcdev; in intel_scu_ipc_dev_get() 118 return scu; in intel_scu_ipc_dev_get() 130 void intel_scu_ipc_dev_put(struct intel_scu_ipc_dev *scu) in intel_scu_ipc_dev_put() argument 132 if (scu) { in intel_scu_ipc_dev_put() 133 module_put(scu->owner); in intel_scu_ipc_dev_put() 134 put_device(&scu->dev); in intel_scu_ipc_dev_put() 140 struct intel_scu_ipc_dev *scu; member 146 struct intel_scu_ipc_dev *scu = dr->scu; in devm_intel_scu_ipc_dev_release() local 148 intel_scu_ipc_dev_put(scu); in devm_intel_scu_ipc_dev_release() [all …]
|
H A D | intel_scu_ipcutil.c | 25 struct intel_scu_ipc_dev *scu; variable 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() 103 if (scu) { in scu_ipc_open() 108 scu = intel_scu_ipc_dev_get(); in scu_ipc_open() 109 if (!scu) in scu_ipc_open() 120 intel_scu_ipc_dev_put(scu); in scu_ipc_release() 121 scu = NULL; in scu_ipc_release()
|
H A D | intel_scu_pltdrv.c | 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()
|
/openbmc/u-boot/drivers/clk/aspeed/ |
H A D | clk_ast2600.c | 216 extern u32 ast2600_get_pll_rate(struct ast2600_scu *scu, int pll_idx) in ast2600_get_pll_rate() argument 224 pll_reg = readl(&scu->h_pll_param); in ast2600_get_pll_rate() 227 pll_reg = readl(&scu->m_pll_param); in ast2600_get_pll_rate() 230 pll_reg = readl(&scu->d_pll_param); in ast2600_get_pll_rate() 233 pll_reg = readl(&scu->e_pll_param); in ast2600_get_pll_rate() 254 u32 hwstrap1 = readl(&scu->hwstrap1.hwstrap); in ast2600_get_pll_rate() 271 extern u32 ast2600_get_apll_rate(struct ast2600_scu *scu) in ast2600_get_apll_rate() argument 273 u32 hw_rev = readl(&scu->chip_id1); in ast2600_get_apll_rate() 275 u32 apll_reg = readl(&scu->a_pll_param); in ast2600_get_apll_rate() 337 static u32 ast2600_get_hclk(struct ast2600_scu *scu) in ast2600_get_hclk() argument [all …]
|
H A D | clk_ast2500.c | 52 extern u32 ast2500_get_clkin(struct ast2500_scu *scu) in ast2500_get_clkin() argument 54 return readl(&scu->hwstrap) & SCU_HWSTRAP_CLKIN_25MHZ in ast2500_get_clkin() 62 extern u32 ast2500_get_mpll_rate(struct ast2500_scu *scu) in ast2500_get_mpll_rate() argument 64 u32 clkin = ast2500_get_clkin(scu); in ast2500_get_mpll_rate() 65 u32 mpll_reg = readl(&scu->m_pll_param); in ast2500_get_mpll_rate() 80 extern u32 ast2500_get_hpll_rate(struct ast2500_scu *scu) in ast2500_get_hpll_rate() argument 82 u32 clkin = ast2500_get_clkin(scu); in ast2500_get_hpll_rate() 83 u32 hpll_reg = readl(&scu->h_pll_param); in ast2500_get_hpll_rate() 99 extern u32 ast2500_get_dpll_rate(struct ast2500_scu *scu) in ast2500_get_dpll_rate() argument 101 u32 clkin = ast2500_get_clkin(scu); in ast2500_get_dpll_rate() [all …]
|
H A D | clk_ast2400.c | 37 extern u32 ast2400_get_clkin(struct ast2400_scu *scu) in ast2400_get_clkin() argument 40 u32 strap = readl(&scu->hwstrap); in ast2400_get_clkin() 61 extern u32 ast2400_get_mpll_rate(struct ast2400_scu *scu) in ast2400_get_mpll_rate() argument 64 u32 clkin = ast2400_get_clkin(scu); in ast2400_get_mpll_rate() 65 u32 mpll_reg = readl(&scu->m_pll_param); in ast2400_get_mpll_rate() 91 extern u32 ast2400_get_hpll_rate(struct ast2400_scu *scu) in ast2400_get_hpll_rate() argument 94 u32 clkin = ast2400_get_clkin(scu); in ast2400_get_hpll_rate() 95 u32 hpll_reg = readl(&scu->h_pll_param); in ast2400_get_hpll_rate() 142 extern u32 ast2400_get_d2pll_rate(struct ast2400_scu *scu) in ast2400_get_d2pll_rate() argument 145 u32 clkin = ast2400_get_clkin(scu); in ast2400_get_d2pll_rate() [all …]
|
/openbmc/u-boot/arch/x86/lib/ |
H A D | scu.c | 33 struct scu { struct 124 struct scu *scu; in scu_ipc_raw_command() local 131 scu = dev_get_priv(dev); in scu_ipc_raw_command() 137 writel(dptr, &scu->regs->dptr); in scu_ipc_raw_command() 138 writel(sptr, &scu->regs->sptr); in scu_ipc_raw_command() 152 return scu_ipc_cmd(scu->regs, cmd, sub, inbuf, inlen, out, outlen); in scu_ipc_raw_command() 169 struct scu *scu; in scu_ipc_simple_command() local 177 scu = dev_get_priv(dev); in scu_ipc_simple_command() 179 scu_ipc_send_command(scu->regs, sub << 12 | cmd); in scu_ipc_simple_command() 180 return scu_ipc_check_status(scu->regs); in scu_ipc_simple_command() [all …]
|
/openbmc/u-boot/drivers/reset/aspeed/ |
H A D | reset-ast2500.c | 18 struct ast2500_scu *scu; member 24 struct ast2500_scu *scu = priv->scu; in ast2500_reset_deassert() local 30 clrbits_le32(&scu->sysreset_ctrl2 , BIT(reset_ctl->id - 32)); in ast2500_reset_deassert() 32 clrbits_le32(&scu->sysreset_ctrl1 , BIT(reset_ctl->id)); in ast2500_reset_deassert() 40 struct ast2500_scu *scu = priv->scu; in ast2500_reset_assert() local 57 ast_scu_unlock(priv->scu); in ast2500_reset_assert() 58 setbits_le32(&priv->scu->sysreset_ctrl1, in ast2500_reset_assert() 61 clrbits_le32(&priv->scu->sysreset_ctrl1, in ast2500_reset_assert() 63 ast_scu_lock(priv->scu); in ast2500_reset_assert() 69 setbits_le32(&scu->sysreset_ctrl2 , BIT(reset_ctl->id - 32)); in ast2500_reset_assert() [all …]
|
H A D | reset-ast2600.c | 18 struct ast2600_scu *scu; member 24 struct ast2600_scu *scu = priv->scu; in ast2600_reset_deassert() local 29 writel(BIT(reset_ctl->id - 32), &scu->sysreset_clr_ctrl2); in ast2600_reset_deassert() 31 writel(BIT(reset_ctl->id), &scu->sysreset_clr_ctrl1); in ast2600_reset_deassert() 39 struct ast2600_scu *scu = priv->scu; in ast2600_reset_assert() local 44 writel(BIT(reset_ctl->id - 32), &scu->sysreset_ctrl2); in ast2600_reset_assert() 46 writel(BIT(reset_ctl->id), &scu->sysreset_ctrl1); in ast2600_reset_assert() 73 priv->scu = devfdt_get_addr_ptr(clk_dev); in ast2600_reset_probe() 74 if (IS_ERR(priv->scu)) { in ast2600_reset_probe() 76 return PTR_ERR(priv->scu); in ast2600_reset_probe()
|
H A D | reset-ast2400.c | 15 struct ast2400_scu *scu; member 21 struct ast2400_scu *scu = priv->scu; in ast2400_reset_deassert() local 25 clrbits_le32(&scu->sysreset_ctrl1 , BIT(reset_ctl->id)); in ast2400_reset_deassert() 33 struct ast2400_scu *scu = priv->scu; in ast2400_reset_assert() local 39 setbits_le32(&scu->sysreset_ctrl1 , BIT(reset_ctl->id)); in ast2400_reset_assert() 67 priv->scu = devfdt_get_addr_ptr(clk_dev); in ast2400_reset_probe() 68 if (IS_ERR(priv->scu)) { in ast2400_reset_probe() 70 return PTR_ERR(priv->scu); in ast2400_reset_probe()
|
/openbmc/linux/arch/x86/include/asm/ |
H A D | intel_scu_ipc.h | 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, 54 int intel_scu_ipc_dev_simple_command(struct intel_scu_ipc_dev *scu, int cmd, 56 int intel_scu_ipc_dev_command_with_size(struct intel_scu_ipc_dev *scu, int cmd, 60 static inline int intel_scu_ipc_dev_command(struct intel_scu_ipc_dev *scu, int cmd, in intel_scu_ipc_dev_command() argument [all …]
|
/openbmc/linux/drivers/irqchip/ |
H A D | irq-aspeed-scu-ic.c | 42 struct regmap *scu; member 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() 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() 156 rc = PTR_ERR(scu_ic->scu); in aspeed_scu_ic_of_init_common() 159 regmap_write_bits(scu_ic->scu, scu_ic->reg, ASPEED_SCU_IC_STATUS, ASPEED_SCU_IC_STATUS); in aspeed_scu_ic_of_init_common() 160 regmap_write_bits(scu_ic->scu, scu_ic->reg, ASPEED_SCU_IC_ENABLE, 0); in aspeed_scu_ic_of_init_common()
|
/openbmc/linux/arch/arm/mach-shmobile/ |
H A D | Makefile | 32 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
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | ast2600.dtsi | 125 clocks = <&scu ASPEED_CLK_AHB>; 150 clocks = <&scu ASPEED_CLK_AHB>; 171 clocks = <&scu ASPEED_CLK_AHB>; 208 clocks = <&scu ASPEED_CLK_GATE_MAC1CLK>; 218 clocks = <&scu ASPEED_CLK_GATE_MAC2CLK>; 228 clocks = <&scu ASPEED_CLK_GATE_MAC3CLK>; 238 clocks = <&scu ASPEED_CLK_GATE_MAC4CLK>; 257 clocks = <&scu ASPEED_CLK_GATE_USBPORT1CLK>; 267 clocks = <&scu ASPEED_CLK_GATE_USBPORT2CLK>; 281 compatible = "aspeed,g6-scu", "syscon", "simple-mfd"; [all …]
|
H A D | ast2500.dtsi | 67 clocks = <&scu ASPEED_CLK_AHB>; 92 clocks = <&scu ASPEED_CLK_AHB>; 113 clocks = <&scu ASPEED_CLK_AHB>; 140 clocks = <&scu ASPEED_CLK_GATE_MAC1CLK>, <&scu ASPEED_CLK_D2PLL>; 148 clocks = <&scu ASPEED_CLK_GATE_MAC2CLK>, <&scu ASPEED_CLK_D2PLL>; 156 clocks = <&scu ASPEED_CLK_GATE_USBPORT1CLK>; 166 clocks = <&scu ASPEED_CLK_GATE_USBPORT2CLK>; 187 compatible = "aspeed,g5-scu", "syscon", "simple-mfd"; 230 … clocks = <&scu ASPEED_CLK_GATE_SDCLK>, <&scu ASPEED_CLK_GATE_SDEXTCLK>; 242 clocks = <&scu ASPEED_CLK_SDIO>; [all …]
|
H A D | ast2400.dtsi | 67 clocks = <&scu ASPEED_CLK_AHB>; 92 clocks = <&scu ASPEED_CLK_AHB>; 119 clocks = <&scu ASPEED_CLK_GATE_MAC1CLK>; 127 clocks = <&scu ASPEED_CLK_GATE_MAC2CLK>; 153 compatible = "aspeed,g4-scu", "syscon", "simple-mfd"; 196 … clocks = <&scu ASPEED_CLK_GATE_SDCLK>, <&scu ASPEED_CLK_GATE_SDEXTCLK>; 208 clocks = <&scu ASPEED_CLK_SDIO>; 218 clocks = <&scu ASPEED_CLK_SDIO>; 246 clocks = <&scu ASPEED_CLK_GATE_UART1CLK>; 257 clocks = <&scu ASPEED_CLK_GATE_UART5CLK>; [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/interrupt-controller/ |
H A D | aspeed,ast2xxx-scu-ic.txt | 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";
|
/openbmc/linux/drivers/pinctrl/ |
H A D | pinctrl-lpc18xx.c | 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 1001 reg_val = readl(scu->base + reg_offset); in lpc18xx_pconf_set_gpio_pin_int() 1004 writel(reg_val, scu->base + reg_offset); in lpc18xx_pconf_set_gpio_pin_int() 1090 struct lpc18xx_scu_data *scu = pinctrl_dev_get_drvdata(pctldev); in lpc18xx_pconf_set() local 1102 reg = readl(scu->base + pin_cap->offset); in lpc18xx_pconf_set() [all …]
|
/openbmc/linux/drivers/watchdog/ |
H A D | intel-mid_wdt.c | 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() 157 mid->scu = devm_intel_scu_ipc_dev_get(dev); in mid_wdt_probe() 158 if (!mid->scu) in mid_wdt_probe()
|
/openbmc/linux/drivers/mfd/ |
H A D | intel_pmc_bxt.c | 170 struct intel_scu_ipc_dev *scu = pmc->scu; in simplecmd_store() local 181 ret = intel_scu_ipc_dev_simple_command(scu, cmd, subcmd); in simplecmd_store() 206 struct intel_scu_ipc_dev *scu = pmc->scu; in northpeak_store() local 221 ret = intel_scu_ipc_dev_simple_command(scu, PMC_NORTHPEAK_CTRL, subcmd); in northpeak_store() 442 pmc->scu = devm_intel_scu_ipc_register(&pdev->dev, &scu_data); in intel_pmc_probe() 443 if (IS_ERR(pmc->scu)) in intel_pmc_probe() 444 return PTR_ERR(pmc->scu); in intel_pmc_probe()
|
/openbmc/linux/drivers/firmware/imx/ |
H A D | Makefile | 3 obj-$(CONFIG_IMX_SCU) += imx-scu.o misc.o imx-scu-irq.o rm.o imx-scu-soc.o
|
/openbmc/linux/drivers/platform/x86/intel/telemetry/ |
H A D | pltdrv.c | 255 return intel_scu_ipc_dev_command(telm_conf->scu, IOSS_TELEM, in telemetry_plt_config_ioss_event() 275 struct intel_scu_ipc_dev *scu = telm_conf->scu; in telemetry_setup_iossevtconfig() local 286 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_setup_iossevtconfig() 297 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_setup_iossevtconfig() 311 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_setup_iossevtconfig() 339 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_setup_iossevtconfig() 390 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_setup_iossevtconfig() 579 ret = intel_scu_ipc_dev_command(telm_conf->scu, IOSS_TELEM, in telemetry_setup() 675 struct intel_scu_ipc_dev *scu = telm_conf->scu; in telemetry_plt_set_sampling_period() local 684 ret = intel_scu_ipc_dev_command(scu, IOSS_TELEM, in telemetry_plt_set_sampling_period() [all …]
|
/openbmc/u-boot/arch/arm/mach-tegra/ |
H A D | ap.c | 113 struct scu_ctlr *scu = (struct scu_ctlr *)NV_PA_ARM_PERIPHBASE; in enable_scu() local 121 if (readl(&scu->scu_ctrl) & SCU_CTRL_ENABLE) in enable_scu() 125 writel(0xFFFF, &scu->scu_inv_all); in enable_scu() 128 reg = readl(&scu->scu_ctrl); in enable_scu() 130 writel(reg, &scu->scu_ctrl); in enable_scu()
|
/openbmc/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8qm-ss-lsio.dtsi | 78 compatible = "fsl,imx8-mu-scu", "fsl,imx8qm-mu", "fsl,imx6sx-mu"; 82 compatible = "fsl,imx8-mu-scu", "fsl,imx8qm-mu", "fsl,imx6sx-mu"; 86 compatible = "fsl,imx8-mu-scu", "fsl,imx8qm-mu", "fsl,imx6sx-mu"; 90 compatible = "fsl,imx8-mu-scu", "fsl,imx8qm-mu", "fsl,imx6sx-mu"; 94 compatible = "fsl,imx8-mu-scu", "fsl,imx8qm-mu", "fsl,imx6sx-mu";
|
/openbmc/u-boot/drivers/pinctrl/aspeed/ |
H A D | pinctrl_ast2500.c | 21 struct ast2500_scu *scu; member 38 priv->scu = devfdt_get_addr_ptr(clk_dev); in ast2500_pinctrl_probe() 39 if (IS_ERR(priv->scu)) { in ast2500_pinctrl_probe() 41 return PTR_ERR(priv->scu); in ast2500_pinctrl_probe() 187 u32 *ctrl_reg = (u32*)priv->scu; in ast2500_pinctrl_group_set()
|