* [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC
@ 2021-12-09 2:12 Dylan Hung
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
` (4 more replies)
0 siblings, 5 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
This patch series adds support of Ethernet for Aspeed AST2600 SoC. There
are 4 MAC controllers (ftgmac100) in AST2600 that can support
10/100/1000T Ethernet. 4 MDIO controllers are used to connect to PHY
chips. The MDIO controller has stand-alone hardware block so we
introduce DM_MDIO so that we can use external MDIO driver (aspeed_mdio)
instead of integrated MDIO drier in ftgmac100.c. The patch series also
revises the MII interface delay for better RMII/RGMII timing margin.
Dylan Hung (5):
net: ftgmac100: Add DM_MDIO support
net: ftgmac100: Add Aspeed AST2600 support
ARM: dts: ast2600: Add MDIO devices
configs: ast2600: enable DM_MDIO and MDIO driver
clk: ast2600: Revise MII interface delay
arch/arm/dts/ast2600-evb.dts | 68 ++++++++++++++++++++++++++++++++
arch/arm/dts/ast2600.dtsi | 46 ++++++++++++++++++---
configs/evb-ast2600_defconfig | 2 +
drivers/clk/aspeed/clk_ast2600.c | 10 ++---
drivers/net/ftgmac100.c | 21 +++++++---
5 files changed, 132 insertions(+), 15 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 16+ messages in thread
* [next 1/5] net: ftgmac100: Add DM_MDIO support
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
@ 2021-12-09 2:12 ` Dylan Hung
2021-12-10 23:08 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 2/5] net: ftgmac100: Add Aspeed AST2600 support Dylan Hung
` (3 subsequent siblings)
4 siblings, 2 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
Add support for DM_MDIO to connect to PHY. For the systems that have a
stand-alone MDIO hardware block, enable CONFIG_DM_MDIO to use driver
model for MDIO devices.
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
---
drivers/net/ftgmac100.c | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
index 0687230b4bb4..b6e9526c3b9f 100644
--- a/drivers/net/ftgmac100.c
+++ b/drivers/net/ftgmac100.c
@@ -220,7 +220,11 @@ static int ftgmac100_phy_init(struct udevice *dev)
struct phy_device *phydev;
int ret;
- phydev = phy_connect(priv->bus, priv->phy_addr, dev, priv->phy_mode);
+ if (IS_ENABLED(CONFIG_DM_MDIO))
+ phydev = dm_eth_phy_connect(dev);
+ else
+ phydev = phy_connect(priv->bus, priv->phy_addr, dev, priv->phy_mode);
+
if (!phydev)
return -ENODEV;
@@ -589,10 +593,16 @@ static int ftgmac100_probe(struct udevice *dev)
if (ret)
goto out;
- ret = ftgmac100_mdio_init(dev);
- if (ret) {
- dev_err(dev, "Failed to initialize mdiobus: %d\n", ret);
- goto out;
+ /*
+ * If DM MDIO is enabled, the MDIO bus will be initialized later in
+ * dm_eth_phy_connect
+ */
+ if (!IS_ENABLED(CONFIG_DM_MDIO)) {
+ ret = ftgmac100_mdio_init(dev);
+ if (ret) {
+ dev_err(dev, "Failed to initialize mdiobus: %d\n", ret);
+ goto out;
+ }
}
ret = ftgmac100_phy_init(dev);
--
2.25.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [next 2/5] net: ftgmac100: Add Aspeed AST2600 support
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
@ 2021-12-09 2:12 ` Dylan Hung
2021-12-10 23:09 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 3/5] ARM: dts: ast2600: Add MDIO devices Dylan Hung
` (2 subsequent siblings)
4 siblings, 2 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
Add support of the MAC controller of Aspeed AST2600 SOC. The MAC
controller is the same with AST2500, except it has stand-alone MDIO
hardware block.
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
---
drivers/net/ftgmac100.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
index b6e9526c3b9f..aa719d295f3d 100644
--- a/drivers/net/ftgmac100.c
+++ b/drivers/net/ftgmac100.c
@@ -644,6 +644,7 @@ static const struct eth_ops ftgmac100_ops = {
static const struct udevice_id ftgmac100_ids[] = {
{ .compatible = "faraday,ftgmac100", .data = FTGMAC100_MODEL_FARADAY },
{ .compatible = "aspeed,ast2500-mac", .data = FTGMAC100_MODEL_ASPEED },
+ { .compatible = "aspeed,ast2600-mac", .data = FTGMAC100_MODEL_ASPEED },
{ }
};
--
2.25.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [next 3/5] ARM: dts: ast2600: Add MDIO devices
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
2021-12-09 2:12 ` [next 2/5] net: ftgmac100: Add Aspeed AST2600 support Dylan Hung
@ 2021-12-09 2:12 ` Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver Dylan Hung
2021-12-09 2:12 ` [next 5/5] clk: ast2600: Revise MII interface delay Dylan Hung
4 siblings, 2 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
There are 4 MDIO bus controllers in AST2600 SOC. Each of them can
connect to one or more PHY chips and is flexible to work with the 4 MAC
devices in AST2600. On AST2600 EVB, MDIO 0,1,2,3 connect to the PHY
chips used by MAC 0,1,2,3 respectively.
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
---
arch/arm/dts/ast2600-evb.dts | 68 ++++++++++++++++++++++++++++++++++++
arch/arm/dts/ast2600.dtsi | 46 +++++++++++++++++++++---
2 files changed, 109 insertions(+), 5 deletions(-)
diff --git a/arch/arm/dts/ast2600-evb.dts b/arch/arm/dts/ast2600-evb.dts
index 2abd31341c11..4e256d1e2b4e 100644
--- a/arch/arm/dts/ast2600-evb.dts
+++ b/arch/arm/dts/ast2600-evb.dts
@@ -163,6 +163,74 @@
pinctrl-0 = <&pinctrl_i2c9_default>;
};
+&mdio0 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ethphy0: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
+&mdio1 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ethphy1: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
+&mdio2 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ethphy2: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
+&mdio3 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ethphy3: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
+&mac0 {
+ status = "okay";
+ phy-mode = "rgmii-rxid";
+ phy-handle = <ðphy0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rgmii1_default>;
+};
+
+&mac1 {
+ status = "okay";
+ phy-mode = "rgmii-rxid";
+ phy-handle = <ðphy1>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rgmii2_default>;
+};
+
+&mac2 {
+ status = "okay";
+ phy-mode = "rgmii";
+ phy-handle = <ðphy2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rgmii3_default>;
+};
+
+&mac3 {
+ status = "okay";
+ phy-mode = "rgmii";
+ phy-handle = <ðphy3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rgmii4_default>;
+};
+
&scu {
mac0-clk-delay = <0x1d 0x1c
0x10 0x17
diff --git a/arch/arm/dts/ast2600.dtsi b/arch/arm/dts/ast2600.dtsi
index f121f547e6d4..bdcca69e060d 100644
--- a/arch/arm/dts/ast2600.dtsi
+++ b/arch/arm/dts/ast2600.dtsi
@@ -193,11 +193,47 @@
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
};
- mdio: ethernet@1e650000 {
- compatible = "aspeed,aspeed-mdio";
- reg = <0x1e650000 0x40>;
- resets = <&rst ASPEED_RESET_MII>;
- status = "disabled";
+ mdio: bus@1e650000 {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0 0x1e650000 0x100>;
+
+ mdio0: mdio@0 {
+ compatible = "aspeed,ast2600-mdio";
+ reg = <0 0x8>;
+ resets = <&rst ASPEED_RESET_MII>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_mdio1_default>;
+ status = "disabled";
+ };
+
+ mdio1: mdio@8 {
+ compatible = "aspeed,ast2600-mdio";
+ reg = <0x8 0x8>;
+ resets = <&rst ASPEED_RESET_MII>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_mdio2_default>;
+ status = "disabled";
+ };
+
+ mdio2: mdio@10 {
+ compatible = "aspeed,ast2600-mdio";
+ reg = <0x10 0x8>;
+ resets = <&rst ASPEED_RESET_MII>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_mdio3_default>;
+ status = "disabled";
+ };
+
+ mdio3: mdio@18 {
+ compatible = "aspeed,ast2600-mdio";
+ reg = <0x18 0x8>;
+ resets = <&rst ASPEED_RESET_MII>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_mdio4_default>;
+ status = "disabled";
+ };
};
mac0: ftgmac@1e660000 {
--
2.25.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
` (2 preceding siblings ...)
2021-12-09 2:12 ` [next 3/5] ARM: dts: ast2600: Add MDIO devices Dylan Hung
@ 2021-12-09 2:12 ` Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 5/5] clk: ast2600: Revise MII interface delay Dylan Hung
4 siblings, 2 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
Enable DM_MDIO and Aspeed MDIO driver for AST2600 EVB.
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
---
configs/evb-ast2600_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/evb-ast2600_defconfig b/configs/evb-ast2600_defconfig
index 5f00d6a944a6..21af905a047a 100644
--- a/configs/evb-ast2600_defconfig
+++ b/configs/evb-ast2600_defconfig
@@ -54,7 +54,9 @@ CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_ASPEED=y
CONFIG_PHY_REALTEK=y
CONFIG_DM_ETH=y
+CONFIG_DM_MDIO=y
CONFIG_FTGMAC100=y
+CONFIG_ASPEED_MDIO=y
CONFIG_PHY=y
CONFIG_PINCTRL=y
CONFIG_RAM=y
--
2.25.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [next 5/5] clk: ast2600: Revise MII interface delay
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
` (3 preceding siblings ...)
2021-12-09 2:12 ` [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver Dylan Hung
@ 2021-12-09 2:12 ` Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:10 ` Tom Rini
4 siblings, 2 replies; 16+ messages in thread
From: Dylan Hung @ 2021-12-09 2:12 UTC (permalink / raw)
To: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot
Cc: BMC-SW
The clock delay of the RMII/RGMII interface is controlled by SCU340~35C.
These values are obtained by measurement and experiments so we simply
use macro to define them.
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
---
drivers/clk/aspeed/clk_ast2600.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/clk/aspeed/clk_ast2600.c b/drivers/clk/aspeed/clk_ast2600.c
index 3a92739f5cf5..6441fcbbbd4c 100644
--- a/drivers/clk/aspeed/clk_ast2600.c
+++ b/drivers/clk/aspeed/clk_ast2600.c
@@ -19,11 +19,11 @@ DECLARE_GLOBAL_DATA_PTR;
#define CLKIN_25M 25000000UL
/* MAC Clock Delay settings */
-#define MAC12_DEF_DELAY_1G 0x0041b75d
-#define MAC12_DEF_DELAY_100M 0x00417410
-#define MAC12_DEF_DELAY_10M 0x00417410
-#define MAC34_DEF_DELAY_1G 0x0010438a
-#define MAC34_DEF_DELAY_100M 0x00104208
+#define MAC12_DEF_DELAY_1G 0x0028a410
+#define MAC12_DEF_DELAY_100M 0x00410410
+#define MAC12_DEF_DELAY_10M 0x00410410
+#define MAC34_DEF_DELAY_1G 0x00104208
+#define MAC34_DEF_DELAY_100M 0x00104208
#define MAC34_DEF_DELAY_10M 0x00104208
/*
--
2.25.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [next 1/5] net: ftgmac100: Add DM_MDIO support
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
@ 2021-12-10 23:08 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Ramon Fried @ 2021-12-10 23:08 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, Lukasz Majewski, Sean Anderson, ryan_chen,
Joe Hershberger, U-Boot Mailing List, BMC-SW
On Thu, Dec 9, 2021 at 4:12 AM Dylan Hung <dylan_hung@aspeedtech.com> wrote:
>
> Add support for DM_MDIO to connect to PHY. For the systems that have a
> stand-alone MDIO hardware block, enable CONFIG_DM_MDIO to use driver
> model for MDIO devices.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> ---
> drivers/net/ftgmac100.c | 20 +++++++++++++++-----
> 1 file changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
> index 0687230b4bb4..b6e9526c3b9f 100644
> --- a/drivers/net/ftgmac100.c
> +++ b/drivers/net/ftgmac100.c
> @@ -220,7 +220,11 @@ static int ftgmac100_phy_init(struct udevice *dev)
> struct phy_device *phydev;
> int ret;
>
> - phydev = phy_connect(priv->bus, priv->phy_addr, dev, priv->phy_mode);
> + if (IS_ENABLED(CONFIG_DM_MDIO))
> + phydev = dm_eth_phy_connect(dev);
> + else
> + phydev = phy_connect(priv->bus, priv->phy_addr, dev, priv->phy_mode);
> +
> if (!phydev)
> return -ENODEV;
>
> @@ -589,10 +593,16 @@ static int ftgmac100_probe(struct udevice *dev)
> if (ret)
> goto out;
>
> - ret = ftgmac100_mdio_init(dev);
> - if (ret) {
> - dev_err(dev, "Failed to initialize mdiobus: %d\n", ret);
> - goto out;
> + /*
> + * If DM MDIO is enabled, the MDIO bus will be initialized later in
> + * dm_eth_phy_connect
> + */
> + if (!IS_ENABLED(CONFIG_DM_MDIO)) {
> + ret = ftgmac100_mdio_init(dev);
> + if (ret) {
> + dev_err(dev, "Failed to initialize mdiobus: %d\n", ret);
> + goto out;
> + }
> }
>
> ret = ftgmac100_phy_init(dev);
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 2/5] net: ftgmac100: Add Aspeed AST2600 support
2021-12-09 2:12 ` [next 2/5] net: ftgmac100: Add Aspeed AST2600 support Dylan Hung
@ 2021-12-10 23:09 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Ramon Fried @ 2021-12-10 23:09 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, Lukasz Majewski, Sean Anderson, ryan_chen,
Joe Hershberger, U-Boot Mailing List, BMC-SW
On Thu, Dec 9, 2021 at 4:12 AM Dylan Hung <dylan_hung@aspeedtech.com> wrote:
>
> Add support of the MAC controller of Aspeed AST2600 SOC. The MAC
> controller is the same with AST2500, except it has stand-alone MDIO
> hardware block.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> ---
> drivers/net/ftgmac100.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
> index b6e9526c3b9f..aa719d295f3d 100644
> --- a/drivers/net/ftgmac100.c
> +++ b/drivers/net/ftgmac100.c
> @@ -644,6 +644,7 @@ static const struct eth_ops ftgmac100_ops = {
> static const struct udevice_id ftgmac100_ids[] = {
> { .compatible = "faraday,ftgmac100", .data = FTGMAC100_MODEL_FARADAY },
> { .compatible = "aspeed,ast2500-mac", .data = FTGMAC100_MODEL_ASPEED },
> + { .compatible = "aspeed,ast2600-mac", .data = FTGMAC100_MODEL_ASPEED },
> { }
> };
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 3/5] ARM: dts: ast2600: Add MDIO devices
2021-12-09 2:12 ` [next 3/5] ARM: dts: ast2600: Add MDIO devices Dylan Hung
@ 2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Ramon Fried @ 2021-12-10 23:10 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, Lukasz Majewski, Sean Anderson, ryan_chen,
Joe Hershberger, U-Boot Mailing List, BMC-SW
On Thu, Dec 9, 2021 at 4:12 AM Dylan Hung <dylan_hung@aspeedtech.com> wrote:
>
> There are 4 MDIO bus controllers in AST2600 SOC. Each of them can
> connect to one or more PHY chips and is flexible to work with the 4 MAC
> devices in AST2600. On AST2600 EVB, MDIO 0,1,2,3 connect to the PHY
> chips used by MAC 0,1,2,3 respectively.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> ---
> arch/arm/dts/ast2600-evb.dts | 68 ++++++++++++++++++++++++++++++++++++
> arch/arm/dts/ast2600.dtsi | 46 +++++++++++++++++++++---
> 2 files changed, 109 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/dts/ast2600-evb.dts b/arch/arm/dts/ast2600-evb.dts
> index 2abd31341c11..4e256d1e2b4e 100644
> --- a/arch/arm/dts/ast2600-evb.dts
> +++ b/arch/arm/dts/ast2600-evb.dts
> @@ -163,6 +163,74 @@
> pinctrl-0 = <&pinctrl_i2c9_default>;
> };
>
> +&mdio0 {
> + status = "okay";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + ethphy0: ethernet-phy@0 {
> + reg = <0>;
> + };
> +};
> +
> +&mdio1 {
> + status = "okay";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + ethphy1: ethernet-phy@0 {
> + reg = <0>;
> + };
> +};
> +
> +&mdio2 {
> + status = "okay";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + ethphy2: ethernet-phy@0 {
> + reg = <0>;
> + };
> +};
> +
> +&mdio3 {
> + status = "okay";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + ethphy3: ethernet-phy@0 {
> + reg = <0>;
> + };
> +};
> +
> +&mac0 {
> + status = "okay";
> + phy-mode = "rgmii-rxid";
> + phy-handle = <ðphy0>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rgmii1_default>;
> +};
> +
> +&mac1 {
> + status = "okay";
> + phy-mode = "rgmii-rxid";
> + phy-handle = <ðphy1>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rgmii2_default>;
> +};
> +
> +&mac2 {
> + status = "okay";
> + phy-mode = "rgmii";
> + phy-handle = <ðphy2>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rgmii3_default>;
> +};
> +
> +&mac3 {
> + status = "okay";
> + phy-mode = "rgmii";
> + phy-handle = <ðphy3>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rgmii4_default>;
> +};
> +
> &scu {
> mac0-clk-delay = <0x1d 0x1c
> 0x10 0x17
> diff --git a/arch/arm/dts/ast2600.dtsi b/arch/arm/dts/ast2600.dtsi
> index f121f547e6d4..bdcca69e060d 100644
> --- a/arch/arm/dts/ast2600.dtsi
> +++ b/arch/arm/dts/ast2600.dtsi
> @@ -193,11 +193,47 @@
> interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
> };
>
> - mdio: ethernet@1e650000 {
> - compatible = "aspeed,aspeed-mdio";
> - reg = <0x1e650000 0x40>;
> - resets = <&rst ASPEED_RESET_MII>;
> - status = "disabled";
> + mdio: bus@1e650000 {
> + compatible = "simple-bus";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0 0x1e650000 0x100>;
> +
> + mdio0: mdio@0 {
> + compatible = "aspeed,ast2600-mdio";
> + reg = <0 0x8>;
> + resets = <&rst ASPEED_RESET_MII>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_mdio1_default>;
> + status = "disabled";
> + };
> +
> + mdio1: mdio@8 {
> + compatible = "aspeed,ast2600-mdio";
> + reg = <0x8 0x8>;
> + resets = <&rst ASPEED_RESET_MII>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_mdio2_default>;
> + status = "disabled";
> + };
> +
> + mdio2: mdio@10 {
> + compatible = "aspeed,ast2600-mdio";
> + reg = <0x10 0x8>;
> + resets = <&rst ASPEED_RESET_MII>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_mdio3_default>;
> + status = "disabled";
> + };
> +
> + mdio3: mdio@18 {
> + compatible = "aspeed,ast2600-mdio";
> + reg = <0x18 0x8>;
> + resets = <&rst ASPEED_RESET_MII>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_mdio4_default>;
> + status = "disabled";
> + };
> };
>
> mac0: ftgmac@1e660000 {
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver
2021-12-09 2:12 ` [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver Dylan Hung
@ 2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Ramon Fried @ 2021-12-10 23:10 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, Lukasz Majewski, Sean Anderson, ryan_chen,
Joe Hershberger, U-Boot Mailing List, BMC-SW
On Thu, Dec 9, 2021 at 4:12 AM Dylan Hung <dylan_hung@aspeedtech.com> wrote:
>
> Enable DM_MDIO and Aspeed MDIO driver for AST2600 EVB.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> ---
> configs/evb-ast2600_defconfig | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/configs/evb-ast2600_defconfig b/configs/evb-ast2600_defconfig
> index 5f00d6a944a6..21af905a047a 100644
> --- a/configs/evb-ast2600_defconfig
> +++ b/configs/evb-ast2600_defconfig
> @@ -54,7 +54,9 @@ CONFIG_MMC_SDHCI=y
> CONFIG_MMC_SDHCI_ASPEED=y
> CONFIG_PHY_REALTEK=y
> CONFIG_DM_ETH=y
> +CONFIG_DM_MDIO=y
> CONFIG_FTGMAC100=y
> +CONFIG_ASPEED_MDIO=y
> CONFIG_PHY=y
> CONFIG_PINCTRL=y
> CONFIG_RAM=y
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 5/5] clk: ast2600: Revise MII interface delay
2021-12-09 2:12 ` [next 5/5] clk: ast2600: Revise MII interface delay Dylan Hung
@ 2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:10 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Ramon Fried @ 2021-12-10 23:10 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, Lukasz Majewski, Sean Anderson, ryan_chen,
Joe Hershberger, U-Boot Mailing List, BMC-SW
On Thu, Dec 9, 2021 at 4:12 AM Dylan Hung <dylan_hung@aspeedtech.com> wrote:
>
> The clock delay of the RMII/RGMII interface is controlled by SCU340~35C.
> These values are obtained by measurement and experiments so we simply
> use macro to define them.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> ---
> drivers/clk/aspeed/clk_ast2600.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/clk/aspeed/clk_ast2600.c b/drivers/clk/aspeed/clk_ast2600.c
> index 3a92739f5cf5..6441fcbbbd4c 100644
> --- a/drivers/clk/aspeed/clk_ast2600.c
> +++ b/drivers/clk/aspeed/clk_ast2600.c
> @@ -19,11 +19,11 @@ DECLARE_GLOBAL_DATA_PTR;
> #define CLKIN_25M 25000000UL
>
> /* MAC Clock Delay settings */
> -#define MAC12_DEF_DELAY_1G 0x0041b75d
> -#define MAC12_DEF_DELAY_100M 0x00417410
> -#define MAC12_DEF_DELAY_10M 0x00417410
> -#define MAC34_DEF_DELAY_1G 0x0010438a
> -#define MAC34_DEF_DELAY_100M 0x00104208
> +#define MAC12_DEF_DELAY_1G 0x0028a410
> +#define MAC12_DEF_DELAY_100M 0x00410410
> +#define MAC12_DEF_DELAY_10M 0x00410410
> +#define MAC34_DEF_DELAY_1G 0x00104208
> +#define MAC34_DEF_DELAY_100M 0x00104208
> #define MAC34_DEF_DELAY_10M 0x00104208
>
> /*
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 2/5] net: ftgmac100: Add Aspeed AST2600 support
2021-12-09 2:12 ` [next 2/5] net: ftgmac100: Add Aspeed AST2600 support Dylan Hung
2021-12-10 23:09 ` Ramon Fried
@ 2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Tom Rini @ 2022-01-18 21:09 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot, BMC-SW
[-- Attachment #1: Type: text/plain, Size: 383 bytes --]
On Thu, Dec 09, 2021 at 10:12:25AM +0800, Dylan Hung wrote:
> Add support of the MAC controller of Aspeed AST2600 SOC. The MAC
> controller is the same with AST2500, except it has stand-alone MDIO
> hardware block.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Applied to u-boot/master, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 1/5] net: ftgmac100: Add DM_MDIO support
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
2021-12-10 23:08 ` Ramon Fried
@ 2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Tom Rini @ 2022-01-18 21:09 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot, BMC-SW
[-- Attachment #1: Type: text/plain, Size: 398 bytes --]
On Thu, Dec 09, 2021 at 10:12:24AM +0800, Dylan Hung wrote:
> Add support for DM_MDIO to connect to PHY. For the systems that have a
> stand-alone MDIO hardware block, enable CONFIG_DM_MDIO to use driver
> model for MDIO devices.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Applied to u-boot/master, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 3/5] ARM: dts: ast2600: Add MDIO devices
2021-12-09 2:12 ` [next 3/5] ARM: dts: ast2600: Add MDIO devices Dylan Hung
2021-12-10 23:10 ` Ramon Fried
@ 2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Tom Rini @ 2022-01-18 21:09 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot, BMC-SW
[-- Attachment #1: Type: text/plain, Size: 484 bytes --]
On Thu, Dec 09, 2021 at 10:12:26AM +0800, Dylan Hung wrote:
> There are 4 MDIO bus controllers in AST2600 SOC. Each of them can
> connect to one or more PHY chips and is flexible to work with the 4 MAC
> devices in AST2600. On AST2600 EVB, MDIO 0,1,2,3 connect to the PHY
> chips used by MAC 0,1,2,3 respectively.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Applied to u-boot/master, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver
2021-12-09 2:12 ` [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver Dylan Hung
2021-12-10 23:10 ` Ramon Fried
@ 2022-01-18 21:09 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Tom Rini @ 2022-01-18 21:09 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot, BMC-SW
[-- Attachment #1: Type: text/plain, Size: 282 bytes --]
On Thu, Dec 09, 2021 at 10:12:27AM +0800, Dylan Hung wrote:
> Enable DM_MDIO and Aspeed MDIO driver for AST2600 EVB.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Applied to u-boot/master, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [next 5/5] clk: ast2600: Revise MII interface delay
2021-12-09 2:12 ` [next 5/5] clk: ast2600: Revise MII interface delay Dylan Hung
2021-12-10 23:10 ` Ramon Fried
@ 2022-01-18 21:10 ` Tom Rini
1 sibling, 0 replies; 16+ messages in thread
From: Tom Rini @ 2022-01-18 21:10 UTC (permalink / raw)
To: Dylan Hung
Cc: chiawei_wang, lukma, seanga2, ryan_chen, joe.hershberger,
rfried.dev, u-boot, BMC-SW
[-- Attachment #1: Type: text/plain, Size: 402 bytes --]
On Thu, Dec 09, 2021 at 10:12:28AM +0800, Dylan Hung wrote:
> The clock delay of the RMII/RGMII interface is controlled by SCU340~35C.
> These values are obtained by measurement and experiments so we simply
> use macro to define them.
>
> Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Applied to u-boot/master, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2022-01-18 21:10 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-09 2:12 [next 0/5] Add support of Ethernet for Aspeed AST2600 SoC Dylan Hung
2021-12-09 2:12 ` [next 1/5] net: ftgmac100: Add DM_MDIO support Dylan Hung
2021-12-10 23:08 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 2/5] net: ftgmac100: Add Aspeed AST2600 support Dylan Hung
2021-12-10 23:09 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 3/5] ARM: dts: ast2600: Add MDIO devices Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 4/5] configs: ast2600: enable DM_MDIO and MDIO driver Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:09 ` Tom Rini
2021-12-09 2:12 ` [next 5/5] clk: ast2600: Revise MII interface delay Dylan Hung
2021-12-10 23:10 ` Ramon Fried
2022-01-18 21:10 ` Tom Rini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.