Home
last modified time | relevance | path

Searched full:rstc (Results 1 – 25 of 154) sorted by relevance

1234567

/linux/drivers/reset/
H A Dcore.c68 * @rstc: array of reset controls
73 struct reset_control *rstc[] __counted_by(num_rstcs);
221 rstc_to_array(struct reset_control *rstc) { in rstc_to_array() argument
222 return container_of(rstc, struct reset_control_array, base); in rstc_to_array()
230 ret = reset_control_reset(resets->rstc[i]); in reset_control_array_reset()
240 struct reset_control *rstc; in reset_control_array_rearm() local
244 rstc = resets->rstc[i]; in reset_control_array_rearm()
246 if (!rstc) in reset_control_array_rearm()
249 if (WARN_ON(IS_ERR(rstc))) in reset_control_array_rearm()
252 if (rstc->shared) { in reset_control_array_rearm()
[all …]
H A Dreset-meson-audio-arb.c16 struct reset_controller_dev rstc; member
65 container_of(rcdev, struct meson_audio_arb_data, rstc); in meson_audio_arb_update()
86 container_of(rcdev, struct meson_audio_arb_data, rstc); in meson_audio_arb_status()
159 arb->rstc.nr_resets = data->reset_num; in meson_audio_arb_probe()
160 arb->rstc.ops = &meson_audio_arb_rstc_ops; in meson_audio_arb_probe()
161 arb->rstc.of_node = dev->of_node; in meson_audio_arb_probe()
162 arb->rstc.owner = THIS_MODULE; in meson_audio_arb_probe()
172 ret = devm_reset_controller_register(dev, &arb->rstc); in meson_audio_arb_probe()
H A Dreset-rzg2l-usbphy-ctrl.c35 struct reset_control *rstc; member
135 priv->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in rzg2l_usbphy_ctrl_probe()
136 if (IS_ERR(priv->rstc)) in rzg2l_usbphy_ctrl_probe()
137 return dev_err_probe(dev, PTR_ERR(priv->rstc), in rzg2l_usbphy_ctrl_probe()
140 error = reset_control_deassert(priv->rstc); in rzg2l_usbphy_ctrl_probe()
191 reset_control_assert(priv->rstc); in rzg2l_usbphy_ctrl_probe()
202 reset_control_assert(priv->rstc); in rzg2l_usbphy_ctrl_remove()
/linux/drivers/clk/hisilicon/
H A Dreset.c46 struct hisi_reset_controller *rstc = to_hisi_reset_controller(rcdev); in hisi_reset_assert() local
54 spin_lock_irqsave(&rstc->lock, flags); in hisi_reset_assert()
56 reg = readl(rstc->membase + offset); in hisi_reset_assert()
57 writel(reg | BIT(bit), rstc->membase + offset); in hisi_reset_assert()
59 spin_unlock_irqrestore(&rstc->lock, flags); in hisi_reset_assert()
67 struct hisi_reset_controller *rstc = to_hisi_reset_controller(rcdev); in hisi_reset_deassert() local
75 spin_lock_irqsave(&rstc->lock, flags); in hisi_reset_deassert()
77 reg = readl(rstc->membase + offset); in hisi_reset_deassert()
78 writel(reg & ~BIT(bit), rstc->membase + offset); in hisi_reset_deassert()
80 spin_unlock_irqrestore(&rstc->lock, flags); in hisi_reset_deassert()
[all …]
/linux/drivers/reset/tegra/
H A Dreset-bpmp.c11 static struct tegra_bpmp *to_tegra_bpmp(struct reset_controller_dev *rstc) in to_tegra_bpmp() argument
13 return container_of(rstc, struct tegra_bpmp, rstc); in to_tegra_bpmp()
16 static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc, in tegra_bpmp_reset_common() argument
20 struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc); in tegra_bpmp_reset_common()
43 static int tegra_bpmp_reset_module(struct reset_controller_dev *rstc, in tegra_bpmp_reset_module() argument
46 return tegra_bpmp_reset_common(rstc, CMD_RESET_MODULE, id); in tegra_bpmp_reset_module()
49 static int tegra_bpmp_reset_assert(struct reset_controller_dev *rstc, in tegra_bpmp_reset_assert() argument
52 return tegra_bpmp_reset_common(rstc, CMD_RESET_ASSERT, id); in tegra_bpmp_reset_assert()
55 static int tegra_bpmp_reset_deassert(struct reset_controller_dev *rstc, in tegra_bpmp_reset_deassert() argument
58 return tegra_bpmp_reset_common(rstc, CMD_RESET_DEASSERT, id); in tegra_bpmp_reset_deassert()
[all …]
/linux/drivers/clk/meson/
H A Dmeson-aoclk.c25 struct meson_aoclk_reset_controller *rstc = in meson_aoclk_do_reset() local
28 return regmap_write(rstc->regmap, rstc->data->reset_reg, in meson_aoclk_do_reset()
29 BIT(rstc->data->reset[id])); in meson_aoclk_do_reset()
38 struct meson_aoclk_reset_controller *rstc; in meson_aoclkc_probe() local
49 rstc = devm_kzalloc(dev, sizeof(*rstc), GFP_KERNEL); in meson_aoclkc_probe()
50 if (!rstc) in meson_aoclkc_probe()
62 rstc->data = data; in meson_aoclkc_probe()
63 rstc->regmap = regmap; in meson_aoclkc_probe()
64 rstc->reset.ops = &meson_aoclk_reset_ops; in meson_aoclkc_probe()
65 rstc->reset.nr_resets = data->num_reset; in meson_aoclkc_probe()
[all …]
/linux/Documentation/devicetree/bindings/reset/
H A Datmel,at91sam9260-reset.yaml21 - atmel,at91sam9260-rstc
22 - atmel,at91sam9g45-rstc
23 - atmel,sama5d3-rstc
24 - microchip,sam9x60-rstc
25 - microchip,sama7g5-rstc
27 - const: atmel,sama5d3-rstc
28 - const: atmel,at91sam9g45-rstc
53 - microchip,sama7g5-rstc
65 compatible = "atmel,at91sam9260-rstc";
/linux/arch/arm/boot/dts/sunplus/
H A Dsunplus-sp7021.dtsi57 resets = <&rstc RST_OTPRX>;
85 resets = <&rstc RST_GPIO>;
172 rstc: reset@54 { label
183 resets = <&rstc RST_RTC>;
196 resets = <&rstc RST_SPI_COMBO_0>;
213 resets = <&rstc RST_SPI_COMBO_1>;
226 resets = <&rstc RST_SPI_COMBO_2>;
239 resets = <&rstc RST_SPI_COMBO_3>;
248 resets = <&rstc RST_UA0>;
258 resets = <&rstc RST_UA1>;
[all …]
/linux/arch/arm/mach-meson/
H A Dplatsmp.c158 struct reset_control *rstc; in meson8_smp_boot_secondary() local
161 rstc = meson_smp_get_core_reset(cpu); in meson8_smp_boot_secondary()
162 if (IS_ERR(rstc)) { in meson8_smp_boot_secondary()
164 return PTR_ERR(rstc); in meson8_smp_boot_secondary()
170 ret = reset_control_assert(rstc); in meson8_smp_boot_secondary()
195 ret = reset_control_deassert(rstc); in meson8_smp_boot_secondary()
206 reset_control_put(rstc); in meson8_smp_boot_secondary()
214 struct reset_control *rstc; in meson8b_smp_boot_secondary() local
218 rstc = meson_smp_get_core_reset(cpu); in meson8b_smp_boot_secondary()
219 if (IS_ERR(rstc)) { in meson8b_smp_boot_secondary()
[all …]
/linux/drivers/mmc/host/
H A Dsdhci-st.c21 struct reset_control *rstc; member
351 struct reset_control *rstc; in sdhci_st_probe() local
364 rstc = devm_reset_control_get_optional_exclusive(&pdev->dev, NULL); in sdhci_st_probe()
365 if (IS_ERR(rstc)) in sdhci_st_probe()
366 return PTR_ERR(rstc); in sdhci_st_probe()
367 reset_control_deassert(rstc); in sdhci_st_probe()
378 pdata->rstc = rstc; in sdhci_st_probe()
429 reset_control_assert(rstc); in sdhci_st_probe()
439 struct reset_control *rstc = pdata->rstc; in sdhci_st_remove() local
447 reset_control_assert(rstc); in sdhci_st_remove()
[all …]
/linux/drivers/pci/controller/dwc/
H A Dpcie-bt1.c358 if (!btpci->dw.app_rsts[bt1_pcie_app_rsts[i]].rstc) { in bt1_pcie_get_resources()
365 if (!btpci->dw.core_rsts[bt1_pcie_core_rsts[i]].rstc) { in bt1_pcie_get_resources()
421 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_PWR_RST].rstc); in bt1_pcie_cold_start_bus()
427 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_HOT_RST].rstc); in bt1_pcie_cold_start_bus()
442 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_PHY_RST].rstc); in bt1_pcie_cold_start_bus()
471 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_PIPE_RST].rstc); in bt1_pcie_cold_start_bus()
477 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_CORE_RST].rstc); in bt1_pcie_cold_start_bus()
491 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_STICKY_RST].rstc); in bt1_pcie_cold_start_bus()
497 ret = reset_control_deassert(pci->core_rsts[DW_PCIE_NON_STICKY_RST].rstc); in bt1_pcie_cold_start_bus()
512 reset_control_assert(pci->core_rsts[DW_PCIE_STICKY_RST].rstc); in bt1_pcie_cold_start_bus()
[all …]
/linux/drivers/pwm/
H A Dpwm-hibvt.c38 struct reset_control *rstc; member
220 hi_pwm_chip->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in hibvt_pwm_probe()
221 if (IS_ERR(hi_pwm_chip->rstc)) { in hibvt_pwm_probe()
223 return PTR_ERR(hi_pwm_chip->rstc); in hibvt_pwm_probe()
226 reset_control_assert(hi_pwm_chip->rstc); in hibvt_pwm_probe()
228 reset_control_deassert(hi_pwm_chip->rstc); in hibvt_pwm_probe()
253 reset_control_assert(hi_pwm_chip->rstc); in hibvt_pwm_remove()
255 reset_control_deassert(hi_pwm_chip->rstc); in hibvt_pwm_remove()
/linux/drivers/clocksource/
H A Drenesas-ostm.c164 struct reset_control *rstc; in ostm_init() local
172 rstc = of_reset_control_get_optional_exclusive(np, NULL); in ostm_init()
173 if (IS_ERR(rstc)) { in ostm_init()
174 ret = PTR_ERR(rstc); in ostm_init()
178 reset_control_deassert(rstc); in ostm_init()
219 reset_control_assert(rstc); in ostm_init()
220 reset_control_put(rstc); in ostm_init()
H A Ddw_apb_timer_of.c22 struct reset_control *rstc; in timer_get_base_and_rate() local
34 rstc = of_reset_control_get(np, NULL); in timer_get_base_and_rate()
35 if (!IS_ERR(rstc)) { in timer_get_base_and_rate()
36 reset_control_assert(rstc); in timer_get_base_and_rate()
37 reset_control_deassert(rstc); in timer_get_base_and_rate()
/linux/drivers/watchdog/
H A Drzv2h_wdt.c52 struct reset_control *rstc; member
93 ret = reset_control_deassert(priv->rstc); in rzv2h_wdt_start()
126 ret = reset_control_assert(priv->rstc); in rzv2h_wdt_stop()
159 ret = reset_control_deassert(priv->rstc); in rzv2h_wdt_restart()
172 ret = reset_control_reset(priv->rstc); in rzv2h_wdt_restart()
228 priv->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in rzv2h_wdt_probe()
229 if (IS_ERR(priv->rstc)) in rzv2h_wdt_probe()
230 return dev_err_probe(&pdev->dev, PTR_ERR(priv->rstc), in rzv2h_wdt_probe()
H A Dsunplus_wdt.c48 struct reset_control *rstc; member
159 priv->rstc = devm_reset_control_get_shared(dev, NULL); in sp_wdt_probe()
160 if (IS_ERR(priv->rstc)) in sp_wdt_probe()
161 return dev_err_probe(dev, PTR_ERR(priv->rstc), "Failed to get reset\n"); in sp_wdt_probe()
163 reset_control_deassert(priv->rstc); in sp_wdt_probe()
165 ret = devm_add_action_or_reset(dev, sp_reset_control_assert, priv->rstc); in sp_wdt_probe()
H A Drzg2l_wdt.c53 struct reset_control *rstc; member
107 ret = reset_control_deassert(priv->rstc); in rzg2l_wdt_start()
130 ret = reset_control_assert(priv->rstc); in rzg2l_wdt_stop()
173 ret = reset_control_deassert(priv->rstc); in rzg2l_wdt_restart()
184 ret = reset_control_reset(priv->rstc); in rzg2l_wdt_restart()
271 priv->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in rzg2l_wdt_probe()
272 if (IS_ERR(priv->rstc)) in rzg2l_wdt_probe()
273 return dev_err_probe(&pdev->dev, PTR_ERR(priv->rstc), in rzg2l_wdt_probe()
/linux/include/linux/
H A Dreset.h17 * @rstc: struct reset_control * to store the associated reset control
25 struct reset_control *rstc; member
30 int reset_control_reset(struct reset_control *rstc);
31 int reset_control_rearm(struct reset_control *rstc);
32 int reset_control_assert(struct reset_control *rstc);
33 int reset_control_deassert(struct reset_control *rstc);
34 int reset_control_status(struct reset_control *rstc);
35 int reset_control_acquire(struct reset_control *rstc);
36 void reset_control_release(struct reset_control *rstc);
50 void reset_control_put(struct reset_control *rstc);
[all …]
/linux/drivers/i2c/busses/
H A Di2c-sun6i-p2wi.c90 struct reset_control *rstc; member
256 p2wi->rstc = devm_reset_control_get_exclusive(dev, NULL); in p2wi_probe()
257 if (IS_ERR(p2wi->rstc)) { in p2wi_probe()
259 p2wi->rstc); in p2wi_probe()
260 return PTR_ERR(p2wi->rstc); in p2wi_probe()
263 ret = reset_control_deassert(p2wi->rstc); in p2wi_probe()
307 reset_control_assert(p2wi->rstc); in p2wi_probe()
316 reset_control_assert(p2wi->rstc); in p2wi_remove()
/linux/drivers/phy/starfive/
H A Dphy-jh7110-dphy-rx.c67 struct reset_control *rstc; member
125 reset_control_deassert(dphy->rstc); in stf_dphy_power_on()
134 reset_control_assert(dphy->rstc); in stf_dphy_power_off()
179 dphy->rstc = devm_reset_control_array_get_exclusive(&pdev->dev); in stf_dphy_probe()
180 if (IS_ERR(dphy->rstc)) in stf_dphy_probe()
181 return PTR_ERR(dphy->rstc); in stf_dphy_probe()
/linux/drivers/staging/media/sunxi/cedrus/
H A Dcedrus_hw.c166 reset_control_reset(dev->rstc); in cedrus_watchdog()
179 reset_control_assert(dev->rstc); in cedrus_hw_suspend()
189 ret = reset_control_reset(dev->rstc); in cedrus_hw_resume()
224 reset_control_assert(dev->rstc); in cedrus_hw_resume()
290 dev->rstc = devm_reset_control_get(dev->dev, NULL); in cedrus_hw_probe()
291 if (IS_ERR(dev->rstc)) { in cedrus_hw_probe()
294 ret = PTR_ERR(dev->rstc); in cedrus_hw_probe()
/linux/drivers/phy/sunplus/
H A Dphy-sunplus-usb2.c71 struct reset_control *rstc; member
121 ret = reset_control_deassert(usbphy->rstc); in sp_uphy_init()
162 reset_control_assert(usbphy->rstc); in sp_uphy_init()
219 reset_control_assert(usbphy->rstc); in sp_uphy_exit()
269 usbphy->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in sp_usb_phy_probe()
270 if (IS_ERR(usbphy->rstc)) in sp_usb_phy_probe()
271 return PTR_ERR(usbphy->rstc); in sp_usb_phy_probe()
/linux/arch/arm/mach-rockchip/
H A Dplatsmp.c67 struct reset_control *rstc = rockchip_get_core_reset(pd); in pmu_set_power_domain() local
70 if (IS_ERR(rstc) && read_cpuid_part() != ARM_CPU_PART_CORTEX_A9) { in pmu_set_power_domain()
73 return PTR_ERR(rstc); in pmu_set_power_domain()
81 if (!IS_ERR(rstc) && !on) in pmu_set_power_domain()
82 reset_control_assert(rstc); in pmu_set_power_domain()
103 if (!IS_ERR(rstc)) { in pmu_set_power_domain()
105 reset_control_deassert(rstc); in pmu_set_power_domain()
106 reset_control_put(rstc); in pmu_set_power_domain()
/linux/drivers/phy/st/
H A Dphy-stih407-usb.c36 struct reset_control *rstc; member
44 reset_control_deassert(phy_dev->rstc); in stih407_usb2_pico_ctrl()
104 phy_dev->rstc = devm_reset_control_get_shared(dev, "global"); in stih407_usb2_picophy_probe()
105 if (IS_ERR(phy_dev->rstc)) { in stih407_usb2_picophy_probe()
107 return PTR_ERR(phy_dev->rstc); in stih407_usb2_picophy_probe()
/linux/drivers/thermal/renesas/
H A Drzg2l_thermal.c61 struct reset_control *rstc; member
150 reset_control_assert(priv->rstc); in rzg2l_thermal_reset_assert_pm_disable_put()
177 priv->rstc = devm_reset_control_get_exclusive(dev, NULL); in rzg2l_thermal_probe()
178 if (IS_ERR(priv->rstc)) in rzg2l_thermal_probe()
179 return dev_err_probe(dev, PTR_ERR(priv->rstc), in rzg2l_thermal_probe()
182 ret = reset_control_deassert(priv->rstc); in rzg2l_thermal_probe()

1234567