+static const int rx_clock_skew_val[] = {0x2, 0x0};
+static int dwc_eqos_setup_rxclock(struct platform_device *pdev, int ins_num)
+{
+ struct device_node *np = pdev->dev.of_node;
+ struct regmap *syscon;
+ unsigned int reg;
+
+ if (np && of_property_read_bool(np, "fsd-rx-clock-skew")) {
+ syscon = syscon_regmap_lookup_by_phandle_args(np,
+ "fsd-rx-clock-skew",
+ 1, ®);
+ if (IS_ERR(syscon)) {
+ dev_err(&pdev->dev,
+ "couldn't get the rx-clock-skew syscon!\n");
+ return PTR_ERR(syscon);
+ }
+
+ regmap_write(syscon, reg, rx_clock_skew_val[ins_num]);
Please could you explain what this is doing.
Andrew