
1 Dec
2021
1 Dec
'21
8:25 p.m.
On Wed, Dec 1, 2021 at 1:11 PM Sean Anderson seanga2@gmail.com wrote:
Hi Adam,
On 6/4/21 1:26 PM, Adam Ford wrote:
+/*
- The device references to the Versaclock point to the head, so xlate needs to
- redirect it to clk_out[idx]
- */
+static int vc5_clk_out_xlate(struct clk *hw, struct ofnode_phandle_args *args) +{
unsigned int idx = args->args[0];
if (args->args_count != 1) {
debug("Invaild args_count: %d\n", args->args_count);
return -EINVAL;
}
hw->id = idx;
return 0;
+}
Can you explain a bit more why this is needed? I looked it over a few times, and I'm not sure what it does differently from clk_of_xlate_default.
If memory serves, the indices were starting at 0 instead of 1. To match what Lniux does we I need to switch the index to be 1,2,3,4 instead of 0,1,2,3 since there is an OUT0. It's been a while since I did this, so I don't fully remember. If you have good success removing it and using the clk_of_xlate_default, I'm willing to test it to make sure it doesn't break my board so we can remove it.
adam
--Sean