Thread (24 messages) 24 messages, 6 authors, 2017-03-15

Re: [PATCH net-next 4/4] net-next: dsa: add dsa support for Mediatek MT7530 switch

From: Andrew Lunn <hidden>
Date: 2017-03-13 16:41:40
Also in: linux-devicetree, lkml, netdev

Hi Sean

Just looking at the GPIO handling at the moment.
+	/* Reset whole chip through gpio pin or
+	 * memory-mapped registers for different
+	 * type of hardware
+	 */
+	if (priv->mcm) {
+		regmap_update_bits(priv->ethsys, SYSC_REG_RSTCTRL,
+				   RESET_MCM, RESET_MCM);
+		usleep_range(1000, 1100);
+		regmap_update_bits(priv->ethsys, SYSC_REG_RSTCTRL,
+				   RESET_MCM, ~RESET_MCM);
+	} else {
+		gpio_direction_output(priv->reset, 0);
+		usleep_range(1000, 1100);
+		gpio_set_value(priv->reset, 1);
+	}
....
+	/* Not MCM that indicates switch works as the remote standalone
+	 * integrated circuit so the GPIO pin would be used to complete
+	 * the reset, otherwise memory-mapped register accessing used
+	 * through syscon provides in the case of MCM.
+	 */
+	if (!priv->mcm) {
+		priv->reset = of_get_named_gpio(dn, "mediatek,reset-pin", 0);
+		if (!gpio_is_valid(priv->reset))
+			return priv->reset;
+
+		ret = devm_gpio_request_one(&mdiodev->dev,
+					    priv->reset, GPIOF_OUT_INIT_LOW,
+					    "mediatek,reset-pin");
+		if (ret < 0) {
+			dev_err(&mdiodev->dev,
+				"fail to devm_gpio_request reset\n");
+			return ret;
+		}
+	}
You are not handling the flags part of the GPIO binding. It is better
to use devm_gpiod_ API calls, which will handle the active low flags
for you.

    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