[U-Boot-Users] DM9000 on PXA

Detlef Vollmann dv at vollmann.ch
Thu Aug 11 00:39:16 CEST 2005


Hinko Kocevar wrote:
> I'm half way (probably less) through porting u-boot to trizeps3 K&K cpu module
> that has PXA255, 32MB flash, 64MB sdram, OTG TD242Lp, DM9000 ETh and UCB1400
> onboard.
> 
> I'm stuck with DM9000 ethernet chip. Every packet that is recieved by the chip
> is supposed to be errornous. My DM9000 is at 0x08000000 and its IO port is at
> 0x08000000, while data port is at 0x08008000 (confirmed and working under
> supplied bootloader and linux).

> Any comments?
We use U-Boot with our Colibri module (which is somewhat compatible
to the Trizeps IV).
The only relevant change we did in the DM9000 driver was:
Index: drivers/dm9000x.c
===================================================================
RCS file: /source/toradex/colibri/u-boot-1.1.2/drivers/dm9000x.c,v
retrieving revision 1.1.1.1
retrieving revision 1.5
diff -u -r1.1.1.1 -r1.5
--- drivers/dm9000x.c   30 Mar 2005 22:10:10 -0000      1.1.1.1
+++ drivers/dm9000x.c   12 May 2005 10:02:27 -0000      1.5
@@ -317,7 +323,7 @@
 
        /* Activate DM9000 */
        DM9000_iow(DM9000_RCR, RCR_DIS_LONG | RCR_DIS_CRC | RCR_RXEN); 
/* RX enable */
-       DM9000_iow(DM9000_IMR, IMR_PAR);        /* Enable TX/RX
interrupt mask */
+       DM9000_iow(DM9000_IMR, IMR_PAR | IMR_PTM | IMR_PRM);    /*
Enable TX/RX interrupt mask */
        i = 0;
        while (!(phy_read(1) & 0x20)) { /* autonegation complete bit */
                udelay(1000);
@@ -436,6 +442,9 @@
        u8 rxbyte, *rdptr = (u8 *) NetRxPackets[0];
        u16 RxStatus, RxLen = 0;
        u32 tmplen, i;
+#ifdef CONFIG_DM9000_USE_32BIT
+       u32 tmpdata;
+#endif
 
        /* Check packet ready or not */
        DM9000_ior(DM9000_MRCMDX);      /* Dummy read */

You can find all the changes from our website:
http://www.toradex.com/colibri_downloads/Linux/colibri-bsp-1.1/src/u-boot-1.1.2-col.tar.gz

HTH
 Detlef

-- 
Detlef Vollmann   vollmann engineering gmbh
Linux and C++ for Embedded Systems    http://www.vollmann.ch/
Linux for PXA270 Colibri module: www.toradex.com/e/products.html




More information about the U-Boot mailing list