I have two physical chips on my board, 1 and 3 is their physical address respectively. I try to detect them through mac0 and mac1.
When I use the MAC0's io base: 0x800F_0000, I can successfully detect both the physical chips on address 1 and 3. The MMFR register's data field returns the physical id correctly. And all network function goes well.
But when I use the MAC1's io base: 0x800F_4000, the MMFR register's data field returns all zero on address 0 and 1.
Same configurations set to MAC0 and MAC1.
Why is the difference? Anyone knows or ever thought about this?