
14 Aug
2010
14 Aug
'10
12:46 p.m.
On 2010/08/14 12:41 PM, Rogan Dawes wrote:
-#define IDE_BUS(dev) (dev>> 1) +#define IDE_BUS(dev) (dev>> (CONFIG_SYS_IDE_MAXDEVICE / CONFIG_SYS_IDE_MAXBUS - 1))
#define ATA_CURR_BASE(dev) (CONFIG_SYS_ATA_BASE_ADDR+ide_bus_offset[IDE_BUS(dev)])
Ok, I'm an idiot! The reason was staring me in the face! ATA_CURR_BASE(dev) relies on IDE_BUS, which is why the same disk was being enumerated twice.
It seems that the above patch is indeed correct.
Rogan