Re: [RFC PATCH v2 11/11] riscv: soc: Allwinner D1 GMAC driver only for temp use
From: Guo Ren <guoren@kernel.org>
Date: 2021-06-06 16:54:02
Also in:
linux-riscv, linux-sunxi, lkml
On Mon, Jun 7, 2021 at 12:32 AM Jernej Škrabec [off-list ref] wrote:
Dne nedelja, 06. junij 2021 ob 18:16:44 CEST je Arnd Bergmann napisal(a):quoted
On Sun, Jun 6, 2021 at 11:04 AM [off-list ref] wrote:quoted
diff --git a/arch/riscv/boot/dts/allwinner/allwinner-d1-nezha-kit.dtsb/arch/riscv/boot/dts/allwinner/allwinner-d1-nezha-kit.dts index cd9f7c9..31b681d 100644--- a/arch/riscv/boot/dts/allwinner/allwinner-d1-nezha-kit.dts +++ b/arch/riscv/boot/dts/allwinner/allwinner-d1-nezha-kit.dts@@ -11,7 +11,7 @@ compatible = "allwinner,d1-nezha-kit"; chosen { - bootargs = "console=ttyS0,115200"; + bootargs = "console=ttyS0,115200 rootwait init=/sbin/initroot=/dev/nfs rw nfsroot=192.168.101.200:/tmp/rootfs_nfs,v3,tcp,nolock ip=192.168.101.23";These are not board specific options, they should be set by the bootloader according to the network environment. It clearly doens't belong into this patch .quoted
stdout-path = &serial0; };diff --git a/arch/riscv/boot/dts/allwinner/allwinner-d1.dtsib/arch/riscv/boot/dts/allwinner/allwinner-d1.dtsi index 11cd938..d317e19 100644--- a/arch/riscv/boot/dts/allwinner/allwinner-d1.dtsi +++ b/arch/riscv/boot/dts/allwinner/allwinner-d1.dtsi@@ -80,5 +80,21 @@ clocks = <&dummy_apb>; status = "disabled"; }; + + eth@4500000 { + compatible = "allwinner,sunxi-gmac"; + reg = <0x00 0x4500000 0x00 0x10000 0x00 0x30000300x00 0x04>; + interrupts-extended = <&plic 0x3e 0x04>; + interrupt-names = "gmacirq"; + device_type = "gmac0"; + phy-mode = "rgmii"; + use_ephy25m = <0x01>; + tx-delay = <0x03>; + rx-delay = <0x03>; + gmac-power0; + gmac-power1; + gmac-power2; + status = "okay"; + };Before you add this in the dts file, the properties need to be documented in the binding file. The "allwinner,sunxi-gmac" identifier does not appear to be specific enough here, and the properties don't match what dwmac uses, which would make it unnecessarily hard to change to the other driver later on without breaking compatibility to old dtb files.quoted
+++ b/drivers/net/ethernet/allwinnertmp/sunxi-gmac-ops.c@@ -0,0 +1,690 @@ +/* + * linux/drivers/net/ethernet/allwinner/sunxi_gmac_ops.c + * + * Copyright © 2016-2018, fuzhaoke + * Author: fuzhaoke <fuzhaoke@allwinnertech.com> + * + * This file is provided under a dual BSD/GPL license. When using or + * redistributing this file, you may do so under either license.Are you sure this is the correct copyright information and "fuzhaoke" is the copyright holder for this file? If this is derived from either the designware code or the Linux stmmac driver, the authors should be mentioned, and the license be compatible with the original license terms. Andre already commented on the driver quality and code duplication, those are also show-stoppers, but the unclear license terms and dt binding compatibility are even stronger reasons to not get anywhere close to this driver.I got impression that this patch is not meant to be merged and it's forward ported from vendor kernel as a stop gap measure for developers until proper mainline ethernet driver is developed.
Yes
Best regards, Jernej
-- Best Regards Guo Ren ML: https://lore.kernel.org/linux-csky/