Subject: Re: change proposal sys/arch/arm/ep93xx
To: None <port-arm@NetBSD.org,>
From: Jesse Off <joff@embeddedARM.com>
List: port-arm
Date: 10/18/2005 10:46:40
>I port NetBSD to an EP9315-based board.  And I want to some changes of
> sys/arch/arm/ep93xx.

Great!  Is this board available for purchase?  Links?

>
> A. order priority of attaching device (attach.diff)
> MAC address is stored in seeprom via GPIO(I^2C) on this board. I want
> to find GPIO more before than epe0.

I wrote the epe driver for the TS-7200 board.  This board has the MAC set by 
the RedBoot firmware and IIRC, I just leave the value untouched.  Just keep 
in mind if you overwrite the MAC using some method specific to your board, 
it will break the TS-7200 unless you make sure it happens only for your 
board.

>
> B. modify MDCDIV (mdcdiv.diff)
> MDCDIV is fixed with 32 in epe.c.  I want to change it in config file.

Yes, this is a conservative, slow clock, but I don't think anything really 
speed-critical happens with that clock, why do you think it needs to be sped 
up/modified?  A faster clock actually causes problems with the Micrel PHY on 
the TS-7200.  Anyway, your change to make it a #define is harmless, but like 
Martin suggested, making it a #define draws more attention to it in source 
code so it probably needs a good comment about what exactly it is. (MII 
management clock divisor)

>
> C. write to PHY (phy.diff)
> It is written with EP9315 manual in this way.
>        (omitted 1-3)
>        4. Put the PHY data into the PHY Data register
>        5. Issue the write command to write data to the register with
>          the PHY
>        6. Wait until the write command is completed. Determine this
>          by polling the MIIStatus_Busy Bit in MIIStatus Register.
> I think current code is 5->4->6. It doesn't work on this board.

This sounds reasonable.  Honestly, I hardly remember writing that code and I 
doubt I noticed there was an approved procedure in the datasheet.  If I 
understand the issue correctly, I'm surprised it worked at all on the 
TS-7200.  Good catch.

//Jesse Off