[edk2-platforms PATCH 0/4] ACPI MDIO support for Marvell SoCs


Marcin Wojtas
 

Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree, hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.

Best regards,
Marcin

Marcin Wojtas (4):
SolidRun/Armada80x0McBin: Add ACPI MDIO description
Marvell/Cn913xDb: Add ACPI MDIO description
Marvell/Armada70x0Db: Add ACPI MDIO description
Marvell/Armada80x0Db: Add ACPI MDIO description

Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/Dsdt.asl | 24 +++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0Db/Dsdt.asl | 38 ++++++++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0McBin/Dsdt.asl | 53 ++++++++++++++++++++
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn9131DbA/Ssdt.asl | 1 +
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn913xDbA/Dsdt.asl | 24 +++++++++
5 files changed, 140 insertions(+)

--
2.29.0


Leif Lindholm
 

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?

hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.

Best Regards,

Leif

Best regards,
Marcin

Marcin Wojtas (4):
SolidRun/Armada80x0McBin: Add ACPI MDIO description
Marvell/Cn913xDb: Add ACPI MDIO description
Marvell/Armada70x0Db: Add ACPI MDIO description
Marvell/Armada80x0Db: Add ACPI MDIO description

Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/Dsdt.asl | 24 +++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0Db/Dsdt.asl | 38 ++++++++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0McBin/Dsdt.asl | 53 ++++++++++++++++++++
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn9131DbA/Ssdt.asl | 1 +
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn913xDbA/Dsdt.asl | 24 +++++++++
5 files changed, 140 insertions(+)

--
2.29.0


Jon Nettleton
 

On Mon, Jun 14, 2021 at 11:55 PM Leif Lindholm <leif@nuviainc.com> wrote:

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?

hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I will get the ACPI changes from Marcin and put a Tested-By on
from SolidRun's side.

Jon


Best Regards,

Leif

Best regards,
Marcin

Marcin Wojtas (4):
SolidRun/Armada80x0McBin: Add ACPI MDIO description
Marvell/Cn913xDb: Add ACPI MDIO description
Marvell/Armada70x0Db: Add ACPI MDIO description
Marvell/Armada80x0Db: Add ACPI MDIO description

Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/Dsdt.asl | 24 +++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0Db/Dsdt.asl | 38 ++++++++++++++
Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0McBin/Dsdt.asl | 53 ++++++++++++++++++++
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn9131DbA/Ssdt.asl | 1 +
Silicon/Marvell/OcteonTx/AcpiTables/T91/Cn913xDbA/Dsdt.asl | 24 +++++++++
5 files changed, 140 insertions(+)

--
2.29.0


Marcin Wojtas
 

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#

Best regards,
Marcin


Marcin Wojtas
 

Hi,

wt., 29 cze 2021 o 16:17 Marcin Wojtas <mw@semihalf.com> napisał(a):

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#
Both platforms were have been additionally tested by Greg, do you have
any comments/objections to merging this patchset?

Thanks,
Marcin


Jon Nettleton
 

On Mon, Jul 12, 2021 at 12:52 PM Marcin Wojtas <mw@semihalf.com> wrote:

Hi,

wt., 29 cze 2021 o 16:17 Marcin Wojtas <mw@semihalf.com> napisał(a):

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#
Both platforms were have been additionally tested by Greg, do you have
any comments/objections to merging this patchset?

Thanks,
Marcin
You can add my Tested-by as well. Finally got time over the weekend
to verify on all my Marvell platforms this effects.

-Jon


Ard Biesheuvel
 

On Mon, 12 Jul 2021 at 13:17, Jon Nettleton <jon@solid-run.com> wrote:

On Mon, Jul 12, 2021 at 12:52 PM Marcin Wojtas <mw@semihalf.com> wrote:

Hi,

wt., 29 cze 2021 o 16:17 Marcin Wojtas <mw@semihalf.com> napisał(a):

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#
Both platforms were have been additionally tested by Greg, do you have
any comments/objections to merging this patchset?

Thanks,
Marcin
You can add my Tested-by as well. Finally got time over the weekend
to verify on all my Marvell platforms this effects.
Thanks all. I will get to this shortly - apologies for the delay.


Ard Biesheuvel
 

On Fri, 16 Jul 2021 at 19:32, Ard Biesheuvel <ardb@kernel.org> wrote:

On Mon, 12 Jul 2021 at 13:17, Jon Nettleton <jon@solid-run.com> wrote:

On Mon, Jul 12, 2021 at 12:52 PM Marcin Wojtas <mw@semihalf.com> wrote:

Hi,

wt., 29 cze 2021 o 16:17 Marcin Wojtas <mw@semihalf.com> napisał(a):

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#
Both platforms were have been additionally tested by Greg, do you have
any comments/objections to merging this patchset?

Thanks,
Marcin
You can add my Tested-by as well. Finally got time over the weekend
to verify on all my Marvell platforms this effects.
Thanks all. I will get to this shortly - apologies for the delay.
Pushed as bfabeef4c9a6..955187a12a8b

Thanks all.


Marcin Wojtas
 

Hi Ard,

pon., 19 lip 2021 o 09:28 Ard Biesheuvel <ardb@kernel.org> napisał(a):

On Fri, 16 Jul 2021 at 19:32, Ard Biesheuvel <ardb@kernel.org> wrote:

On Mon, 12 Jul 2021 at 13:17, Jon Nettleton <jon@solid-run.com> wrote:

On Mon, Jul 12, 2021 at 12:52 PM Marcin Wojtas <mw@semihalf.com> wrote:

Hi,

wt., 29 cze 2021 o 16:17 Marcin Wojtas <mw@semihalf.com> napisał(a):

Hi Leif,

pon., 14 cze 2021 o 23:55 Leif Lindholm <leif@nuviainc.com> napisał(a):

Hi Marcin,

On Sun, Jun 13, 2021 at 20:16:27 +0200, Marcin Wojtas wrote:
Hi,

The MDIO ACPI binding has been established and merged to the
Linux tree,
Congratulations! :)

Is FreeBSD expected to follow suit?
There's no driver yet, but once it's finally created I will make sure
it supports ACPI properly.


hence it is now possible to update the ACPI
description of the platforms that base on the Marvell SoCs.

For convenience, the code is exposed in the public github branch:
https://github.com/semihalf-wojtas-marcin/edk2-platforms/commits/acpi-mdio-r20210613
There is also MacchiatoBin firmware binary avaialable for testing:
https://drive.google.com/file/d/1eigP_aeM4wYQpEaLAlQzs3IN_w1-kQr0

I'm looking forward to the comments or remarks.
The patches themselves look straightforward enough.
I *would* prefer some tested-by, for these sources rather than the
binary, before merging though.
I have some our patches queued, that are blocked by this patchset. In
case no time is found for external testers - if this may help to get
it pushed through, please see below logs from the next-20210628 tag
and unchanged firmware. All network ports of MacchiatoBin and
CN913x-DB work properly, with full 1G/10G PHY support via X/MDIO
interfaces:

MacchiatoBin
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0101
[ 1.829659] mv88x3340 MRVL0101:00-mii:00: Firmware version 0.3.3.0
[ 1.839622] mv88x3340 MRVL0101:00-mii:08: Firmware version 0.3.3.0
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
# dmesg | grep MRVL0100
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.748351] mvpp2 MRVL0110:00 eth1: PHY [MRVL0101:00-mii:00] driver
[mv88x3340] (irq=POLL)
[ 2.756701] mvpp2 MRVL0110:00 eth1: configuring for phy/10gbase-r link mode
[ 2.767479] mvpp2 MRVL0110:01 eth2: PHY [MRVL0101:00-mii:08] driver
[mv88x3340] (irq=POLL)
[ 2.775834] mvpp2 MRVL0110:01 eth2: configuring for phy/10gbase-r link mode
[ 2.919424] mvpp2 MRVL0110:01 eth3: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.928285] mvpp2 MRVL0110:01 eth3: configuring for phy/sgmii link mode
[ 2.936351] mvpp2 MRVL0110:01 eth4: configuring for
inband/2500base-x link mode
[ 5.987259] mvpp2 MRVL0110:01 eth3: Link is Up - 1Gbps/Full - flow
control off
#

CN913x-DB
# uname -a
Linux buildroot 5.13.0-rc7-next-20210628 #6 SMP PREEMPT Tue Jun 29
09:14:07 CEST 2021 aarch64 GNU/Linux
# dmesg | grep MRVL0100
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
# dmesg | grep mvpp2
[...]
[ 2.544917] mvpp2 MRVL0110:00 eth1: configuring for
inband/10gbase-r link mode
[ 2.552480] mvpp2 MRVL0110:00 eth1: Link is Up - 10Gbps/Full - flow
control rx
[ 2.621201] mvpp2 MRVL0110:00 eth2: PHY [MRVL0100:00-mii:00] driver
[Marvell 88E1510] (irq=POLL)
[ 2.630060] mvpp2 MRVL0110:00 eth2: configuring for phy/rgmii-id link mode
[ 2.741199] mvpp2 MRVL0110:00 eth3: PHY [MRVL0100:00-mii:01] driver
[Marvell 88E1510] (irq=POLL)
[ 2.750056] mvpp2 MRVL0110:00 eth3: configuring for phy/rgmii-id link mode
[ 2.810169] mvpp2 MRVL0110:01 eth4: configuring for
inband/10gbase-r link mode
[ 2.817471] mvpp2 MRVL0110:01 eth4: Link is Up - 10Gbps/Full - flow
control rx
[ 5.693231] mvpp2 MRVL0110:00 eth2: Link is Up - 1Gbps/Full - flow
control off
[ 10.840942] mvpp2 MRVL0110:00 eth1: Link is Down
[ 10.864124] mvpp2 MRVL0110:01 eth4: Link is Down
#
Both platforms were have been additionally tested by Greg, do you have
any comments/objections to merging this patchset?

Thanks,
Marcin
You can add my Tested-by as well. Finally got time over the weekend
to verify on all my Marvell platforms this effects.
Thanks all. I will get to this shortly - apologies for the delay.
Pushed as bfabeef4c9a6..955187a12a8b

Thanks all.
Thanks a lot! I'd appreciate if you were able to take a look at our
new patchset I just submitted on top of the merged changes.

Best regards,
Marcin