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

Vágó Tibor oreggin at niif.hu
Sun Jun 3 17:03:03 CEST 2012


Hi,

I've tested this IDE patch on my NAS6220 and it works.

U-boot detect both HDD correctly and boot from them.

Cheers,
Tibor


-------- Original message --------
IDE_BUS assumes that each bus has two devices and thus returns the first
bus even when the second one should be probed.

Signed-off-by: Simon Baatz <gmbnomis at gmail.com>
Tested-by: Luka Perkov <uboot at 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

When this is commited I will do a coding style cleanup. There are tabs
after few "#define" parts in include/ide.h.

  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)])


More information about the U-Boot mailing list