Re: [RFC PATCH net-next 0/6] Add support for OPEN Alliance 10BASE-T1x MACPHY Serial Interface

From: Parthiban.Veerasooran
Date: Mon Sep 18 2023 - 02:14:30 EST


Hi Alexander,

Thanks for the information. Please see my reply below.

On 15/09/23 7:26 pm, Alexander Dahl wrote:
> [Some people who received this message don't often get email from ada@xxxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> Hello,
>
> this is interesting, by chance I just looked at a chip claiming
> similar features today, which already has a driver in kernel: Analog
> Devices ADIN1110.
Microchip's LAN865x is a 10BASE-T1S MACPHY and Analog Devices's ADIN1110
is a 10BASE-T1L MACPHY. So as you said 10BASE-T1x MAC_PHY Serial
Interface Specification defined by OPEN Alliance TC6 group can be
applicable for both of the devices. I also noticed that ADI's datasheet
says ADIN1110 supports OPEN Alliance 10BASE-T1x MAC-PHY serial
interface.
https://www.analog.com/media/en/technical-documentation/data-sheets/adin1110.pdf

But in my first glance in their driver code, I don't see any code block
which implements 10BASE-T1x MAC_PHY Serial Interface Specification
defined by OPEN Alliance TC6 group. Or do I miss anything here?. My code
reference is below FYR,
https://elixir.bootlin.com/linux/v6.6-rc2/source/drivers/net/ethernet/adi/adin1110.c

OPEN Alliance 10BASE-T1x MAC_PHY Serial Interface Specification cab be
downloaded from the below link,
https://opensig.org/automotive-ethernet-specifications/

I think Alexandru Tachici from ADI would be able to give us more
information on this direction.
>
> Am Fri, Sep 08, 2023 at 07:59:13PM +0530 schrieb Parthiban Veerasooran:
>> This patch series contain the below updates,
>> - Adds support for OPEN Alliance 10BASE-T1x MACPHY Serial Interface in the
>> net/ethernet/oa_tc6.c.
>
> So this implements the "10BASE-T1x MAC-PHY Serial Interface
> Specification" which is Ethernet over SPI if I understand correctly?
> The above mentioned chip claims do use the same interface and the same
> standard. How does its driver work then? Do you add code for a thing
> already present in the kernel or does the other driver do something
> completely different and I just misunderstood?
As I mentioned above, in my first glance in their driver code, I don't
see any code block which implements 10BASE-T1x MAC_PHY Serial Interface
Specification defined by OPEN Alliance TC6 group. Let's Alexandru
Tachici from ADI gives us more info on this.
>
> Can the drivers for ADIN1110 and for LAN865X share code because they
> use the same specified interface? The patch set does not look like
> it?
Of course, if their device supports OPEN Alliance then we can use this
oa_tc6.c framework to support other 10BASE-T1x MACPHY's as well.
>
> (Added the other driver author to Cc.)
Ok thanks.

Best Regards,
Parthiban V
>
> Greets
> Alex
>
>> - Adds driver support for Microchip LAN8650/1 Rev.B0 10BASE-T1S MACPHY
>> Ethernet driver in the net/ethernet/microchip/lan865x.c.
>>
>> Parthiban Veerasooran (6):
>> net: ethernet: implement OPEN Alliance control transaction interface
>> net: ethernet: add mac-phy interrupt support with reset complete
>> handling
>> net: ethernet: implement OA TC6 configuration function
>> net: ethernet: implement data transaction interface
>> microchip: lan865x: add driver support for Microchip's LAN865X MACPHY
>> microchip: lan865x: add device-tree support for Microchip's LAN865X
>> MACPHY
>>
>> .../bindings/net/microchip,lan865x.yaml | 54 ++
>> Documentation/networking/oa-tc6-framework.rst | 231 +++++
>> MAINTAINERS | 15 +
>> drivers/net/ethernet/microchip/Kconfig | 10 +
>> drivers/net/ethernet/microchip/Makefile | 3 +
>> drivers/net/ethernet/microchip/lan865x.c | 589 +++++++++++++
>> drivers/net/ethernet/oa_tc6.c | 807 ++++++++++++++++++
>> include/linux/oa_tc6.h | 130 +++
>> 8 files changed, 1839 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/net/microchip,lan865x.yaml
>> create mode 100644 Documentation/networking/oa-tc6-framework.rst
>> create mode 100644 drivers/net/ethernet/microchip/lan865x.c
>> create mode 100644 drivers/net/ethernet/oa_tc6.c
>> create mode 100644 include/linux/oa_tc6.h
>>
>> --
>> 2.34.1
>>
>>