Lines Matching +full:sun8i +full:- +full:r40 +full:- +full:ccu
1 // SPDX-License-Identifier: GPL-2.0-only
7 #include <linux/clk-provider.h>
18 #include "ccu-sun8i-de2.h"
20 static SUNXI_CCU_GATE(bus_mixer0_clk, "bus-mixer0", "bus-de",
22 static SUNXI_CCU_GATE(bus_mixer1_clk, "bus-mixer1", "bus-de",
24 static SUNXI_CCU_GATE(bus_wb_clk, "bus-wb", "bus-de",
26 static SUNXI_CCU_GATE(bus_rot_clk, "bus-rot", "bus-de",
29 static SUNXI_CCU_GATE(mixer0_clk, "mixer0", "mixer0-div",
31 static SUNXI_CCU_GATE(mixer1_clk, "mixer1", "mixer1-div",
33 static SUNXI_CCU_GATE(wb_clk, "wb", "wb-div",
35 static SUNXI_CCU_GATE(rot_clk, "rot", "rot-div",
38 static SUNXI_CCU_M(mixer0_div_clk, "mixer0-div", "de", 0x0c, 0, 4,
40 static SUNXI_CCU_M(mixer1_div_clk, "mixer1-div", "de", 0x0c, 4, 4,
42 static SUNXI_CCU_M(wb_div_clk, "wb-div", "de", 0x0c, 8, 4,
44 static SUNXI_CCU_M(rot_div_clk, "rot-div", "de", 0x0c, 0x0c, 4,
47 static SUNXI_CCU_M(mixer0_div_a83_clk, "mixer0-div", "pll-de", 0x0c, 0, 4,
49 static SUNXI_CCU_M(mixer1_div_a83_clk, "mixer1-div", "pll-de", 0x0c, 4, 4,
51 static SUNXI_CCU_M(wb_div_a83_clk, "wb-div", "pll-de", 0x0c, 8, 4,
53 static SUNXI_CCU_M(rot_div_a83_clk, "rot-div", "pll-de", 0x0c, 0x0c, 4,
290 ccu_desc = of_device_get_match_data(&pdev->dev); in sunxi_de2_clk_probe()
292 return -EINVAL; in sunxi_de2_clk_probe()
295 reg = devm_ioremap_resource(&pdev->dev, res); in sunxi_de2_clk_probe()
299 bus_clk = devm_clk_get(&pdev->dev, "bus"); in sunxi_de2_clk_probe()
302 if (ret != -EPROBE_DEFER) in sunxi_de2_clk_probe()
303 dev_err(&pdev->dev, "Couldn't get bus clk: %d\n", ret); in sunxi_de2_clk_probe()
307 mod_clk = devm_clk_get(&pdev->dev, "mod"); in sunxi_de2_clk_probe()
310 if (ret != -EPROBE_DEFER) in sunxi_de2_clk_probe()
311 dev_err(&pdev->dev, "Couldn't get mod clk: %d\n", ret); in sunxi_de2_clk_probe()
315 rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL); in sunxi_de2_clk_probe()
318 if (ret != -EPROBE_DEFER) in sunxi_de2_clk_probe()
319 dev_err(&pdev->dev, in sunxi_de2_clk_probe()
327 dev_err(&pdev->dev, "Couldn't enable bus clk: %d\n", ret); in sunxi_de2_clk_probe()
333 dev_err(&pdev->dev, "Couldn't enable mod clk: %d\n", ret); in sunxi_de2_clk_probe()
340 dev_err(&pdev->dev, in sunxi_de2_clk_probe()
345 ret = sunxi_ccu_probe(pdev->dev.of_node, reg, ccu_desc); in sunxi_de2_clk_probe()
362 .compatible = "allwinner,sun8i-a83t-de2-clk",
366 .compatible = "allwinner,sun8i-h3-de2-clk",
370 .compatible = "allwinner,sun8i-r40-de2-clk",
374 .compatible = "allwinner,sun8i-v3s-de2-clk",
378 .compatible = "allwinner,sun50i-a64-de2-clk",
382 .compatible = "allwinner,sun50i-h5-de2-clk",
386 .compatible = "allwinner,sun50i-h6-de3-clk",
395 .name = "sunxi-de2-clks",