Lines Matching refs:data
45 struct cdns_starfive *data)
49 regmap_update_bits(data->stg_syscon, data->stg_usb_mode,
58 regmap_update_bits(data->stg_syscon,
59 data->stg_usb_mode,
62 regmap_update_bits(data->stg_syscon,
63 data->stg_usb_mode,
69 regmap_update_bits(data->stg_syscon, data->stg_usb_mode,
71 regmap_update_bits(data->stg_syscon, data->stg_usb_mode,
79 static int cdns_clk_rst_init(struct cdns_starfive *data)
83 ret = clk_bulk_prepare_enable(data->num_clks, data->clks);
85 return dev_err_probe(data->dev, ret,
88 ret = reset_control_deassert(data->resets);
90 dev_err(data->dev, "failed to reset clocks\n");
97 clk_bulk_disable_unprepare(data->num_clks, data->clks);
101 static void cdns_clk_rst_deinit(struct cdns_starfive *data)
103 reset_control_assert(data->resets);
104 clk_bulk_disable_unprepare(data->num_clks, data->clks);
110 struct cdns_starfive *data;
114 data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
115 if (!data)
118 data->dev = dev;
120 data->stg_syscon =
124 if (IS_ERR(data->stg_syscon))
125 return dev_err_probe(dev, PTR_ERR(data->stg_syscon),
128 data->stg_usb_mode = args;
130 data->num_clks = devm_clk_bulk_get_all(data->dev, &data->clks);
131 if (data->num_clks < 0)
132 return dev_err_probe(data->dev, -ENODEV,
135 data->resets = devm_reset_control_array_get_exclusive(data->dev);
136 if (IS_ERR(data->resets))
137 return dev_err_probe(data->dev, PTR_ERR(data->resets),
140 cdns_mode_init(pdev, data);
141 ret = cdns_clk_rst_init(data);
148 cdns_clk_rst_deinit(data);
155 platform_set_drvdata(pdev, data);
172 struct cdns_starfive *data = dev_get_drvdata(dev);
179 cdns_clk_rst_deinit(data);
186 struct cdns_starfive *data = dev_get_drvdata(dev);
188 return clk_bulk_prepare_enable(data->num_clks, data->clks);
193 struct cdns_starfive *data = dev_get_drvdata(dev);
195 clk_bulk_disable_unprepare(data->num_clks, data->clks);
203 struct cdns_starfive *data = dev_get_drvdata(dev);
205 return cdns_clk_rst_init(data);
210 struct cdns_starfive *data = dev_get_drvdata(dev);
212 cdns_clk_rst_deinit(data);