U-boot-2014.10 transplant 17th days ---- add DM9000 Nic support (1), holiday arrangements
Many readers should have DM9000 NICs for 2440 of their boards. Take a look at these documents before porting:
DM9000 Chinese manual (details)
This article tells us some knowledge about DM9000 hardware.
In-depth understanding of DM9000 and MINI2440
This article shows how 2440 implements access to DM9000.
How can I determine the IP address of 2440 dm9000?
This article tells us how to determine the address and data port address.
DM9000 datasheet
In datasheet, dm9000 has 4 K Dword (that is, 4 K dual-word, that is, 16 Kbytes ).
The driver of the DM9000 Nic is located in drivers/net/dm9000x. c. It can be seen in the drivers/net/Makefile file:
obj-$(CONFIG_DRIVER_DM9000) += dm9000x.o
CONFIG_DRIVER_DM9000 is a macro definition. If it has a definition, the file will be compiled. Therefore, we define this macro in the include/configs/tq2440.h file:
#define NONE_FLAG 0#if NONE_FLAG #define CONFIG_CS8900 /* we have a CS8900 on-board */#define CONFIG_CS8900_BASE 0x19000300#define CONFIG_CS8900_BUS16 /* the Linux driver does accesses as shorts */#else#define CONFIG_DRIVER_DM9000#endif
On the tq2440 baseboard schematic, the card-selecting signal line of DM9000 is connected to nGCS4 of 2440. In chapter 5. Memory Controller of 2440datasheet, the base address of nGCS4 is 0x2000 0000.
Continue tomorrow!