Re: RFC: Advice on adding support for Qualcomm IPQ9574 SoC Ethernet
From: Andrew Lunn
Date: Fri Oct 04 2024 - 09:33:02 EST
On Fri, Oct 04, 2024 at 06:36:59PM +0530, Kiran Kumar C.S.K wrote:
>
>
> On 10/4/2024 12:12 AM, Andrew Lunn wrote:
> >> Agree that switchdev is the right model for this device. We were
> >> planning to enable base Ethernet functionality using regular
> >> (non-switchdev) netdevice representation for the ports initially,
> >> without offload support. As the next step, L2/VLAN offload support using
> >> switchdev will be enabled on top. Hope this phased approach is fine.
> >
> > Since it is not a DSA switch, yes, a phased approach should be O.K.
> >
>
> Ok.
>
> >>>> 3) PCS driver patch series:
> >>>> Driver for the PCS block in IPQ9574. New IPQ PCS driver will
> >>>> be enabled in drivers/net/pcs/
> >>>> Dependent on NSS CC patch series (2).
> >>>
> >>> I assume this dependency is pure at runtime? So the code will build
> >>> without the NSS CC patch series?
> >>
> >> The MII Rx/Tx clocks are supplied from the NSS clock controller to the
> >> PCS's MII channels. To represent this in the DTS, the PCS node in the
> >> DTS is configured with the MII Rx/Tx clock that it consumes, using
> >> macros for clocks which are exported from the NSS CC driver in a header
> >> file. So, there will be a compile-time dependency for the dtbindings/DTS
> >> on the NSS CC patch series. We will clearly call out this dependency in
> >> the cover letter of the PCS driver. Hope that this approach is ok.
> >
> > Since there is a compile time dependency, you might want to ask for
> > the clock patches to be put into a stable branch which can be merged
> > into netdev.
> >
>
> Sure. We will request for such a stable branch merge once the NSS CC
> patches are accepted by the reviewers. Could the 'net' tree be one such
> stable branch option to merge the NSS CC driver?
Given Bjorn reply, maybe you should explain in detail why you have a
build dependency.
A stable branch has some overhead. We should not create it just to
find out you have your architecture wrong when we start reviewing the
code, and it is not actually needed when you fix your architecture.
So, details please.
Andrew