Hi Jian,I have checked G12A and Meson8b, there is a space.The space is missing here, the same as other place. I will fix it in next version.
On Fri, Dec 27, 2019 at 10:46 AM Jian Hu <jian.hu@xxxxxxxxxxx> wrote:
[...]
+ .parent_data = &(const struct clk_parent_data){in the Meson8b and G12A (I assume it's the same on GXBB, I didn't
+ .fw_name = "xtal_fixpll",
+ },
check it) we have a space between " clk_parent_data)" and "{"
this applies to at least one more occurrence below
[...]You are right, it is a mistake here. 'is set' is right.
+ /*nit-pick: I'm not sure about the grammar here: setted -> "is set"?
+ * This clock is used by APB bus which setted in Romcode
and to make sure I understand this correctly: do you mean the "boot
ROM" with "Romcode"?
OK, I will use it directly .
[...]
+static int meson_a1_pll_probe(struct platform_device *pdev)what do you need this "data" variable for?
+{
+ const struct meson_eeclkc_data *data;
+ struct device *dev = &pdev->dev;why can't we use a1_pll_regmaps directly here?
+ struct resource *res;
+ void __iomem *base;
+ struct regmap *map;
+ int ret, i;
+
+ data = of_device_get_match_data(dev);
+ if (!data)
+ return -EINVAL;
+
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+
+ base = devm_ioremap_resource(dev, res);
+ if (IS_ERR(base))
+ return PTR_ERR(base);
+
+ map = devm_regmap_init_mmio(dev, base, &clkc_regmap_config);
+ if (IS_ERR(map))
+ return PTR_ERR(map);
+
+ /* Populate regmap for the regmap backed clocks */
+ for (i = 0; i < data->regmap_clk_num; i++)
+ data->regmap_clks[i]->map = map;
OK, I will use it directly.+and why can't we use a1_pll_hw_onecell_data directly here?
+ for (i = 0; i < data->hw_onecell_data->num; i++) {
+ /* array might be sparse */
+ if (!data->hw_onecell_data->hws[i])
+ continue;
+
+ ret = devm_clk_hw_register(dev, data->hw_onecell_data->hws[i]);
[...]OK, I will remove it and verify it.
+static const struct meson_eeclkc_data a1_pll_data = {if _probe would access these directly then you can drop meson_eeclkc_data
+ .regmap_clks = a1_pll_regmaps,
+ .regmap_clk_num = ARRAY_SIZE(a1_pll_regmaps),
+ .hw_onecell_data = &a1_pll_hw_onecell_data,
+};
that is a good thing in my opinion because I was confused by the
"eeclk" since the patch description says that there's no EE or AO
domain on the A1 SoCs
Martin
.