[U-Boot] IDE_BUS unconditionally expects 2 devices per bus

Rogan Dawes
2010-08-14T10:46:09Z

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