[PATCH] [v2] Nios2: Add Altera TSE MAC driver
Franck JULLIEN
franck.jullien at gmail.com
Sun Apr 10 14:21:26 EDT 2011
2011/4/10 Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
> > > index 0000000..2687377
> > > --- /dev/null
> > > +
> > > +static int tse_get_ethaddr(struct eth_device *edev, unsigned char
> *m)
> > > +{
> > > + /* There is no eeprom */
> > so return the content of the register no?
> >
> > Well, the register is reseted to 0 when the MAC starts so there is no
> > Ethernet address
> > to get.
> >
> except this function is supposed to return the mac address of the device at
> any time so after a set of it it will not be true any more
>
If I implement the function I get a "eth at eth0: got MAC address from EEPROM:
00:00:00:00:00:00" at startup.
That why I returned -1 as what I could find int at91_ether.c......
Or, I could find something to return -1 as long as the MAC address hasn't
been set.
> >
> > > + return -1;
> > > +}
> > > +
> > > +static int tse_eth_send(struct eth_device *edev, void *packet,
> int
> > length)
> > > +{
> > > +
> > > + struct altera_tse_priv *priv = edev->priv;
> > > + struct alt_sgdma_registers *tx_sgdma = priv->sgdma_tx;
> > > + struct alt_sgdma_descriptor *tx_desc = (struct
> > alt_sgdma_descriptor *)priv->tx_desc;
> > > +
> > > + struct alt_sgdma_descriptor *tx_desc_cur = (struct
> > alt_sgdma_descriptor *)&tx_desc[0];
> > > +
> > > + flush_dcache_range((uint32_t)packet, (uint32_t)packet +
> length);
> > > + alt_sgdma_construct_descriptor_burst(
> > > + (struct alt_sgdma_descriptor *)&tx_desc[0],
> > > + (struct alt_sgdma_descriptor *)&tx_desc[1],
> > > + (uint32_t *)packet, /* read addr */
> > > + (uint32_t *)0, /* */
> > > + length, /* length or EOP ,will change
> for
> > each tx */
> > > + 0x1, /* gen eop */
> > > + 0x0, /* read fixed */
> > > + 0x1, /* write fixed or sop */
> > > + 0x0, /* read burst */
> > > + 0x0, /* write burst */
> > > + 0x0 /* channel */
> > please use tab for indent I see other in the patch please check
> >
> > I use tab for indent, spaces for alignment. I checked the patch with
> > checkpatch and it
> > didn't find errors.....
> try to use tab when u can even for alignment please
>
OK........
> >
> >
> > > +
> > why this?
> >
> > Because sometimes (often ?), hardware doesn't run first time. So I
> like to
> > have some information on MII bus running correctly....One day I had a
> PHY
> > getting the address 1 and sometimes this f***ing PHY got 31 and this
> > kind of auto scan helped me to immediately find the problem......
> > I could remove those function if it is a problem....
> so it's no the right place as it's phy specific and not ehtern drivers
> specific
>
We could put this in the MII code ? Or should I simply remove it ?
>
> Best Regards,
> J.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/barebox/attachments/20110410/a77e34e6/attachment.html>
More information about the barebox
mailing list