On 21/09/12 09:30, Sascha Hauer wrote: > On Fri, Sep 21, 2012 at 10:06:58AM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote: >> On 08:34 Fri 21 Sep , Sascha Hauer wrote: >>> On Thu, Sep 20, 2012 at 08:23:32PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote: >>>> On 17:31 Thu 20 Sep , Renaud Barbier wrote: >>>>> Added an entry point for a bus reset function. >>>>> >>>>> Signed-off-by: Renaud Barbier <renaud.barbier@xxxxxx> >>>>> --- >>>>> drivers/net/phy/phy.c | 3 +++ >>>>> include/miidev.h | 1 + >>>>> 2 files changed, 4 insertions(+), 0 deletions(-) >>>>> >>>>> diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c >>>>> index 5406ea3..d9f5409 100644 >>>>> --- a/drivers/net/phy/phy.c >>>>> +++ b/drivers/net/phy/phy.c >>>>> @@ -129,6 +129,9 @@ int phy_device_connect(struct eth_device *edev, struct mii_device *bus, int addr >>>>> unsigned int i; >>>>> int ret = -EINVAL; >>>>> >>>>> + if (bus->reset) >>>>> + bus->reset(bus); >>>>> + >>>> I do not like this we should not touch the bus at phy connect >>> >>> Then please make a suggestion where it should be then. I also have some >>> drivers where this function could be used. >> I have too the need of a reset >> >> I get a big issue on reset the mii bus at eth open >> >> my only idea was to move the phy detect awqy from the eth_open to the mii bus >> probe >> >> but this will increase the boot time as we do not need to probe the phy if we >> do not use the network > > Before we start adding quirks for do-the-reset-only-when necessary, > access-the-phy-pnly-when necessary can we have a statement on which > timescales we talk about here? A quick test on a i.MX board shows that > detecting the phy takes 186us when its address is specified and 1.7ms > when the whole bus is scanned for phys. This is really not worth adding > quirks for. > > BTW the reset function for the mii *bus* really should be done when the > bus is registered. Doing it when a new phy is registered will break phys > already present. In summary, we agree that we need a bus reset function and that it should be called at present by the function mii_register. > > Sascha > _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox