Thread (16 messages) 16 messages, 3 authors, 2022-11-16

Re: [PATCH 2/4] net: stmmac: dwc-qos: Add FSD EQoS support

From: Andrew Lunn <andrew@lunn.ch>
Date: 2022-11-04 15:26:33
Also in: linux-arm-kernel, lkml

+static int dwc_eqos_setup_rxclock(struct platform_device *pdev)
+{
+	struct device_node *np = pdev->dev.of_node;
+
+	if (np && of_property_read_bool(np, "rx-clock-mux")) {
+		unsigned int reg, val;
+		struct regmap *syscon = syscon_regmap_lookup_by_phandle(np,
+			"rx-clock-mux");
+
+		if (IS_ERR(syscon)) {
+			dev_err(&pdev->dev, "couldn't get the rx-clock-mux syscon!\n");
+			return PTR_ERR(syscon);
+		}
+
+		if (of_property_read_u32_index(np, "rx-clock-mux", 1, &reg)) {
+			dev_err(&pdev->dev, "couldn't get the rx-clock-mux reg. offset!\n");
+			return -EINVAL;
+		}
+
+		if (of_property_read_u32_index(np, "rx-clock-mux", 2, &val)) {
+			dev_err(&pdev->dev, "couldn't get the rx-clock-mux reg. val!\n");
+			return -EINVAL;
+		}
+
+		regmap_write(syscon, reg, val);
This appears to be one of those binds which allows any magic value to
be placed into any register. That is not how DT should be used.

   Andrew
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help