Home
last modified time | relevance | path

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

12345678910

/kernel/linux/linux-5.10/drivers/reset/
Dcore.c57 * @rstc: array of reset controls
62 struct reset_control *rstc[]; member
194 rstc_to_array(struct reset_control *rstc) { in rstc_to_array() argument
195 return container_of(rstc, struct reset_control_array, base); in rstc_to_array()
203 ret = reset_control_reset(resets->rstc[i]); in reset_control_array_reset()
216 ret = reset_control_assert(resets->rstc[i]); in reset_control_array_assert()
225 reset_control_deassert(resets->rstc[i]); in reset_control_array_assert()
234 ret = reset_control_deassert(resets->rstc[i]); in reset_control_array_deassert()
243 reset_control_assert(resets->rstc[i]); in reset_control_array_deassert()
253 err = reset_control_acquire(resets->rstc[i]); in reset_control_array_acquire()
[all …]
Dreset-meson-audio-arb.c15 struct reset_controller_dev rstc; member
64 container_of(rcdev, struct meson_audio_arb_data, rstc); in meson_audio_arb_update()
85 container_of(rcdev, struct meson_audio_arb_data, rstc); in meson_audio_arb_status()
167 arb->rstc.nr_resets = data->reset_num; in meson_audio_arb_probe()
168 arb->rstc.ops = &meson_audio_arb_rstc_ops; in meson_audio_arb_probe()
169 arb->rstc.of_node = dev->of_node; in meson_audio_arb_probe()
170 arb->rstc.owner = THIS_MODULE; in meson_audio_arb_probe()
185 ret = devm_reset_controller_register(dev, &arb->rstc); in meson_audio_arb_probe()
/kernel/linux/linux-6.6/drivers/reset/
Dcore.c58 * @rstc: array of reset controls
63 struct reset_control *rstc[]; member
195 rstc_to_array(struct reset_control *rstc) { in rstc_to_array() argument
196 return container_of(rstc, struct reset_control_array, base); in rstc_to_array()
204 ret = reset_control_reset(resets->rstc[i]); in reset_control_array_reset()
214 struct reset_control *rstc; in reset_control_array_rearm() local
218 rstc = resets->rstc[i]; in reset_control_array_rearm()
220 if (!rstc) in reset_control_array_rearm()
223 if (WARN_ON(IS_ERR(rstc))) in reset_control_array_rearm()
226 if (rstc->shared) { in reset_control_array_rearm()
[all …]
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()
165 arb->rstc.nr_resets = data->reset_num; in meson_audio_arb_probe()
166 arb->rstc.ops = &meson_audio_arb_rstc_ops; in meson_audio_arb_probe()
167 arb->rstc.of_node = dev->of_node; in meson_audio_arb_probe()
168 arb->rstc.owner = THIS_MODULE; in meson_audio_arb_probe()
183 ret = devm_reset_controller_register(dev, &arb->rstc); in meson_audio_arb_probe()
Dreset-rzg2l-usbphy-ctrl.c33 struct reset_control *rstc; member
119 priv->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in rzg2l_usbphy_ctrl_probe()
120 if (IS_ERR(priv->rstc)) in rzg2l_usbphy_ctrl_probe()
121 return dev_err_probe(dev, PTR_ERR(priv->rstc), in rzg2l_usbphy_ctrl_probe()
124 error = reset_control_deassert(priv->rstc); in rzg2l_usbphy_ctrl_probe()
145 reset_control_assert(priv->rstc); in rzg2l_usbphy_ctrl_probe()
165 reset_control_assert(priv->rstc); in rzg2l_usbphy_ctrl_remove()
/kernel/linux/linux-6.6/drivers/clk/hisilicon/
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 …]
/kernel/linux/linux-5.10/drivers/clk/hisilicon/
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 …]
/kernel/linux/linux-5.10/drivers/reset/tegra/
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 …]
/kernel/linux/linux-6.6/drivers/reset/tegra/
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 …]
/kernel/linux/linux-6.6/drivers/clk/meson/
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 …]
/kernel/linux/linux-5.10/drivers/clk/meson/
Dmeson-aoclk.c23 struct meson_aoclk_reset_controller *rstc = in meson_aoclk_do_reset() local
26 return regmap_write(rstc->regmap, rstc->data->reset_reg, in meson_aoclk_do_reset()
27 BIT(rstc->data->reset[id])); in meson_aoclk_do_reset()
36 struct meson_aoclk_reset_controller *rstc; in meson_aoclkc_probe() local
47 rstc = devm_kzalloc(dev, sizeof(*rstc), GFP_KERNEL); in meson_aoclkc_probe()
48 if (!rstc) in meson_aoclkc_probe()
60 rstc->data = data; in meson_aoclkc_probe()
61 rstc->regmap = regmap; in meson_aoclkc_probe()
62 rstc->reset.ops = &meson_aoclk_reset_ops; in meson_aoclkc_probe()
63 rstc->reset.nr_resets = data->num_reset; in meson_aoclkc_probe()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/reset/
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";
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/reset/
Dsirf,rstc.txt8 - compatible: Should be "sirf,prima2-rstc" or "sirf,marco-rstc"
15 rstc: reset-controller@88010000 {
16 compatible = "sirf,prima2-rstc";
24 The reset controller(rstc) manages various reset sources. This module provides
26 reset line on the rstc in their resets property, containing a phandle to the
27 rstc device node and a RESET_INDEX specifying which module to reset, as described
41 resets = <&rstc 6>;
/kernel/linux/linux-5.10/drivers/mmc/host/
Dsdhci-st.c21 struct reset_control *rstc; member
352 struct reset_control *rstc; in sdhci_st_probe() local
365 rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in sdhci_st_probe()
366 if (IS_ERR(rstc)) in sdhci_st_probe()
367 rstc = NULL; in sdhci_st_probe()
369 reset_control_deassert(rstc); in sdhci_st_probe()
380 pdata->rstc = rstc; in sdhci_st_probe()
435 if (rstc) in sdhci_st_probe()
436 reset_control_assert(rstc); in sdhci_st_probe()
446 struct reset_control *rstc = pdata->rstc; in sdhci_st_remove() local
[all …]
/kernel/linux/linux-6.6/arch/arm/boot/dts/sunplus/
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 …]
/kernel/linux/linux-6.6/arch/arm/mach-meson/
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 …]
/kernel/linux/linux-5.10/arch/arm/mach-meson/
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 …]
/kernel/linux/linux-5.10/drivers/soc/amlogic/
Dmeson-gx-pwrc-vpu.c36 struct reset_control *rstc; member
173 ret = reset_control_assert(pd->rstc); in meson_gx_pwrc_vpu_power_on()
180 ret = reset_control_deassert(pd->rstc); in meson_gx_pwrc_vpu_power_on()
227 ret = reset_control_assert(pd->rstc); in meson_g12a_pwrc_vpu_power_on()
234 ret = reset_control_deassert(pd->rstc); in meson_g12a_pwrc_vpu_power_on()
275 struct reset_control *rstc; in meson_gx_pwrc_vpu_probe() local
306 rstc = devm_reset_control_array_get(&pdev->dev, false, false); in meson_gx_pwrc_vpu_probe()
307 if (IS_ERR(rstc)) { in meson_gx_pwrc_vpu_probe()
308 if (PTR_ERR(rstc) != -EPROBE_DEFER) in meson_gx_pwrc_vpu_probe()
310 return PTR_ERR(rstc); in meson_gx_pwrc_vpu_probe()
[all …]
/kernel/linux/linux-6.6/drivers/mmc/host/
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 …]
/kernel/linux/linux-6.6/drivers/pmdomain/amlogic/
Dmeson-gx-pwrc-vpu.c36 struct reset_control *rstc; member
173 ret = reset_control_assert(pd->rstc); in meson_gx_pwrc_vpu_power_on()
180 ret = reset_control_deassert(pd->rstc); in meson_gx_pwrc_vpu_power_on()
227 ret = reset_control_assert(pd->rstc); in meson_g12a_pwrc_vpu_power_on()
234 ret = reset_control_deassert(pd->rstc); in meson_g12a_pwrc_vpu_power_on()
276 struct reset_control *rstc; in meson_gx_pwrc_vpu_probe() local
309 rstc = devm_reset_control_array_get_exclusive(&pdev->dev); in meson_gx_pwrc_vpu_probe()
310 if (IS_ERR(rstc)) in meson_gx_pwrc_vpu_probe()
311 return dev_err_probe(&pdev->dev, PTR_ERR(rstc), in meson_gx_pwrc_vpu_probe()
328 vpu_pd->rstc = rstc; in meson_gx_pwrc_vpu_probe()
/kernel/linux/linux-5.10/include/linux/
Dreset.h15 int reset_control_reset(struct reset_control *rstc);
16 int reset_control_assert(struct reset_control *rstc);
17 int reset_control_deassert(struct reset_control *rstc);
18 int reset_control_status(struct reset_control *rstc);
19 int reset_control_acquire(struct reset_control *rstc);
20 void reset_control_release(struct reset_control *rstc);
28 void reset_control_put(struct reset_control *rstc);
44 static inline int reset_control_reset(struct reset_control *rstc) in reset_control_reset() argument
49 static inline int reset_control_assert(struct reset_control *rstc) in reset_control_assert() argument
54 static inline int reset_control_deassert(struct reset_control *rstc) in reset_control_deassert() argument
[all …]
/kernel/linux/linux-6.6/drivers/clocksource/
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()
218 reset_control_assert(rstc); in ostm_init()
219 reset_control_put(rstc); in ostm_init()
/kernel/linux/linux-6.6/drivers/pci/controller/dwc/
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 …]
/kernel/linux/linux-6.6/drivers/pwm/
Dpwm-hibvt.c39 struct reset_control *rstc; member
222 pwm_chip->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in hibvt_pwm_probe()
223 if (IS_ERR(pwm_chip->rstc)) { in hibvt_pwm_probe()
225 return PTR_ERR(pwm_chip->rstc); in hibvt_pwm_probe()
228 reset_control_assert(pwm_chip->rstc); in hibvt_pwm_probe()
230 reset_control_deassert(pwm_chip->rstc); in hibvt_pwm_probe()
256 reset_control_assert(pwm_chip->rstc); in hibvt_pwm_remove()
258 reset_control_deassert(pwm_chip->rstc); in hibvt_pwm_remove()
/kernel/linux/linux-5.10/drivers/pwm/
Dpwm-hibvt.c39 struct reset_control *rstc; member
226 pwm_chip->rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in hibvt_pwm_probe()
227 if (IS_ERR(pwm_chip->rstc)) { in hibvt_pwm_probe()
229 return PTR_ERR(pwm_chip->rstc); in hibvt_pwm_probe()
232 reset_control_assert(pwm_chip->rstc); in hibvt_pwm_probe()
234 reset_control_deassert(pwm_chip->rstc); in hibvt_pwm_probe()
258 reset_control_assert(pwm_chip->rstc); in hibvt_pwm_remove()
260 reset_control_deassert(pwm_chip->rstc); in hibvt_pwm_remove()

12345678910