diff mbox

[v2,1/1] ARM: DTS: dra72-evm: remove cpsw gpio hogging and add mode-gpios

Message ID 1442847231-23637-1-git-send-email-mugunthanvnm@ti.com (mailing list archive)
State New, archived
Headers show

Commit Message

Mugunthan V N Sept. 21, 2015, 2:53 p.m. UTC
With the current implementation of GPIO hogging and with
gpio-pcf857x is built as module, ethernet doesn't work on boot
and doesn't throw any error/warning to user. Ethernet becomes
operational when inserting gpio-pcf857x module, even this time
there is no error/warning logs to user that ethernet is
operational.

When using with NFS rootfs and gpio-pcf857x as module, board
doesn't boot as it doesn't get any ip address and doesn't throw
any error/warning. To over come this, now cpsw driver tries to
get mode-gpios. When gpio-pcf857x is built as module it will
throw error, so that user can decide either to built in
gpio-pcf857x to continue with nfs boot or choose alternate rootfs
filesystem like sd/ramdisk.

When using mmc/ramdisk as root fs, cpsw will probe defer and
re-probes again when gpio-pcf857x module is inserted and ethernet
becomes operational.

Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
---

The driver patch is applied to net-next branch (also present in
linux-next) with commit: '1d147ccbfc35 ("drivers: net: cpsw: Add
support to drive gpios for ethernet to be functional")

Tested on DRA72x EVM, logs [1] and pushed a branch [2] for testing

[1]: http://pastebin.ubuntu.com/12514591/
[2]: git://git.ti.com/~mugunthanvnm/ti-linux-kernel/linux.git cpsw-mode-gpios-dt 

Changes from initial version:
* Modified the commit message to add more information

---
 arch/arm/boot/dts/dra72-evm.dts | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

Comments

Tony Lindgren Oct. 20, 2015, 4:16 p.m. UTC | #1
* Mugunthan V N <mugunthanvnm@ti.com> [150921 07:58]:
> With the current implementation of GPIO hogging and with
> gpio-pcf857x is built as module, ethernet doesn't work on boot
> and doesn't throw any error/warning to user. Ethernet becomes
> operational when inserting gpio-pcf857x module, even this time
> there is no error/warning logs to user that ethernet is
> operational.
> 
> When using with NFS rootfs and gpio-pcf857x as module, board
> doesn't boot as it doesn't get any ip address and doesn't throw
> any error/warning. To over come this, now cpsw driver tries to
> get mode-gpios. When gpio-pcf857x is built as module it will
> throw error, so that user can decide either to built in
> gpio-pcf857x to continue with nfs boot or choose alternate rootfs
> filesystem like sd/ramdisk.
> 
> When using mmc/ramdisk as root fs, cpsw will probe defer and
> re-probes again when gpio-pcf857x module is inserted and ethernet
> becomes operational.

Applying into omap-for-v4.4/dt thanks.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/dra72-evm.dts b/arch/arm/boot/dts/dra72-evm.dts
index 6f6bd98..a12c6f4 100644
--- a/arch/arm/boot/dts/dra72-evm.dts
+++ b/arch/arm/boot/dts/dra72-evm.dts
@@ -353,12 +353,6 @@ 
 		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
 		interrupt-controller;
 		#interrupt-cells = <2>;
-
-		cpsw_sel_s0 {
-			gpio-hog;
-			gpios = <4 GPIO_ACTIVE_HIGH>;
-			output-low;
-		};
 	};
 };
 
@@ -590,6 +584,7 @@ 
 	pinctrl-0 = <&cpsw_default>;
 	pinctrl-1 = <&cpsw_sleep>;
 	slaves = <1>;
+	mode-gpios = <&pcf_gpio_21 4 GPIO_ACTIVE_HIGH>;
 };
 
 &cpsw_emac0 {