[U-Boot] [PATCH] fix IDE_BUS(dev) macro

Luka Perkov
2012-05-14T19:29:10Z

Hi Albert,

On Sun, Apr 29, 2012 at 10:19:41PM +0200, Luka Perkov wrote:
> On Thu, Apr 19, 2012 at 08:38:19AM +0200, Albert ARIBAUD wrote:
> > Not my main area of expertise here, but I am not sure how this plays
> > on Marvell non-kirkwood platforms (e.g., orion5x).
> >
> > ISTR it is not the first time we deal with the whole IDE number of
> > bus / number of ports [ / useable ports ] issue, and we may be
> > running in circles here, fixing one platform and breaking another.
> >
> > I'll try this on EDMiniV2 in the coming days, and let people know
> > the results in this thread.
>
> I was just wondering did you have the time to test this patch on your
> board?

Albert, did you maybe have time to test this patch. I have included it
bellow so you dont have to search for it...

Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
Tested-by: Luka Perkov <uboot@lukaperkov.net>
---

Simon discovered this while adding support for new board IB NAS6210.

More info can be found here:

http://lists.denx.de/pipermail/u-boot/2012-April/122525.html

include/ide.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/ide.h b/include/ide.h
index 8ecc9dd..385e909 100644
--- a/include/ide.h
+++ b/include/ide.h
@@ -24,7 +24,7 @@
#ifndef _IDE_H
#define _IDE_H

-#define IDE_BUS(dev) (dev >> 1)
+#define IDE_BUS(dev) (dev / (CONFIG_SYS_IDE_MAXDEVICE / CONFIG_SYS_IDE_MAXBUS))

#define ATA_CURR_BASE(dev) (CONFIG_SYS_ATA_BASE_ADDR+ide_bus_offset[IDE_BUS(dev)])