안녕하세요....

static struct map_desc ezboard_io_desc[] __initdata = {
/* virtual physical length domain r w c b */
{ 0xe8000000, 0x00000000, 0x01000000, DOMAIN_IO, 1, 1, 0, 0 }, /* Flash bank 0 */
{ 0xf0000000, 0x10000000, 0x00100000, DOMAIN_IO, 1, 1, 0, 0 }, /* Crystal Chip */
{ 0xf0100000, 0x18000000, 0x00100000, DOMAIN_IO, 1, 1, 0, 0 }, /* nCS3 */
{ 0xf0200000, 0x40000000, 0x00100000, DOMAIN_IO, 1, 1, 0, 0 }, /* nCS4 Ethernet*/
{ 0xf0300000, 0x48000000, 0x00100000, DOMAIN_IO, 1, 1, 0, 0 }, /* nCS5 */
LAST_DESC
};

위와 같이 수정하시면 됩니다.. eth1, eth2 따로 가상 주소를 매핑할 필요없습니다...


[참고]

현재 보드에는 nCS4(보드 R9)에 0Ω이 연결되어 있을 것입니다.

따라서 가상주소는 0xf0200000 물리적주소는0x40000000에 연결되어 있습니다..


[mc91111_cfg.h]

// 각칩의 베이스 주소 --------------------------------------------------
static unsigned long smc_portlist[] __initdata = {
0xf0200000+0x300,
0xf0220000+0x300,
};

에서 보시면 현재 eth1은 0xf0200000의 가상주소를 사용하였습니다..

그리고 eth2는 0xf0200000의 가상주소에 어드레스 A16,A17,A18중 0x20000번지에 연결되어 있습니다..

따라서 eth2는 0xf0200000(nCS4) + 0x20000(A16) = 0xf0220000 이 됩니다...


그럼 수고하세요....