Hi YanHong, Torsten, Matthias,

On Thu, Apr 13, 2023 at 06:05:56PM +0800, yanhong wang wrote:
> 
> 
> On 2023/4/13 17:03, Torsten Duwe wrote:
> > On Thu, 13 Apr 2023 10:05:28 +0800
> > yanhong wang <yanhong.w...@starfivetech.com> wrote:
> > 
> >> the definition of DT refers to Linux and is consistent with the definition 
> >> framework of Linux.
> > 
> > This is one of the desired goals, to avoid confusion, usually. But note 
> > there are already the
> > -u-boot.dtsi files; in this case it would be vice-versa: U-Boot could be 
> > simple, the kernel
> > required a different treatment. As long as the resulting tree matches the 
> > hardware!
> > 
> >> The difference between 1.2A and 1.3B is the PHY type and phy clock delay 
> >> configuration, 
> >> which are reflected in DT, and the difference in defconfig is the 
> >> configuration of the DT file.
> >> 
> >> Is defconfig defined separately or merged?
> > 
> > You are the implementer, this is your decision. You make a proposal, and it 
> > will get accepted
> > or not. We only make suggestions, with the intention to improve the code.
> > 
> 
> Thanks. A defconfig matches a piece of hardware, which is more 
> developer-friendly and less confusing, 
> so defconfig is better defined separately.
> 
> >> The EEPROM is being prepared and will be submitted as soon as possible. Is 
> >> it necessary to 
> >> incorporate EEPROM into this submission?
> >>
> >> When eeprom is supported, the MAC address will be read from eeprom. The 
> >> board reversion 
> >> can be read from eeprom, but phy clock delay configuration cannot be read 
> >> from eeprom, only in DT.
> > 
> > But the board revision number in EEPROM can be used to differentiate 
> > between 1.2 and 1.3, right?
> > 
> 
> Yes, board reversion read from eeprom can distinguish between 1.2A and 1.3B.
> 
> 1.2A and 1.3B are two sets of hardware, and the differences between the 
> hardware are defined
> by DT, which is more concise and clear.
> 
> > When I look at the code and my test results, this is my proposal to pull 
> > this in, in order to
> > simplify things and avoid duplication. Whether you do so is up to you, see 
> > above. Let me recap:
> > 
> > * the device tree *must* match the hardware at hand.
> > 
> > * the differences are minor and could be patched, Copy&Waste is error prone 
> > and causes extra work.
> > 
> > It is my firm conviction that this patch set does not introduce hardware 
> > variants, and it would be
> > the task of the ethernet driver patch set to split the code (DT+defconfig) 
> > OR to provide a patching
> > method. Maybe I find a few cycles to look at the EEPROM.
> > 
> >     Torsten

Agree with Torsten.

I too IMHO think it makes much sense that 
whether "to split the (DT + defconfig)" or "patching DT"
should be the task of ethernet driver patch.

However, this patch set is rather complete and stay on the ML
for quite a time. And also Torsten has sent out the RFC patch 
that is going for the patching method.

In that sense, I think I could probably merge this v5 patch set
with [v4 17/17] patch that only introduces a single defconfig,
and wait for Torsten's DT patches if you guys agree.

Any thoughts?

Best regards,
Leo

Reply via email to