[U-Boot-Users] Boot Linux kernel from external HDD, connected to PCI interface.

Hi:
I have AMCC PPC440EP card with Silicon Image 680 PCI-IDE chip, external HDD is connected to it as IDE1 - see snapshot from Linux booting log:
SiI680: IDE controller at PCI slot 0000:01:06.0
SiI680: chipset revision 2
SiI680: BASE CLOCK == 133
SiI680: 100% native mode on irq 25
ide0: MMIO-DMA , BIOS settings: hda:pio, hdb:pio
ide1: MMIO-DMA , BIOS settings: hdc:pio, hdd:pio
hdc: Maxtor 6L100P0, ATA DISK drive
ide1 at 0xd105cfc0-0xd105cfc7,0xd105cfca on irq 25
hdc: max request size: 64KiB
hdc: 195813072 sectors (100256 MB) w/8192KiB Cache, CHS=65535/16/63, UDMA(133)
hdc: cache flushes supported
hdc: hdc1 hdc2 hdc3
However this HDD is visible only because Linux kernel happened to have drivers for Silicon Image chip. I boot Linux kernel either from the flash or from RAM.
The question is does u-boot itself support Silicon Image or, by other words, can I boot kernel from some partition on HDD (behind this PCI-IDE chip) and if yes - how?
Thanks,
Leonid.

In message 406A31B117F2734987636D6CCC93EE3C043924@ehost011-3.exch011.intermedia.net you wrote:
The question is does u-boot itself support Silicon Image or, by other
No,it does not (yet).
words, can I boot kernel from some partition on HDD (behind this PCI-IDE chip) and if yes - how?
You can do this - by writing a driver for it.
Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable
And please never post HTML here!
Best regards,
Wolfgang Denk

On Sunday, December 03, 2006 11:51 PM Wolfgang Denk wrote:
The question is does u-boot itself support Silicon Image or, by
other
No,it does not (yet).
words, can I boot kernel from some partition on HDD (behind this
PCI-IDE
chip) and if yes - how?
You can do this - by writing a driver for it.
[Leonid] Yes, that what I have figured out just wanted to be sure.
And please never post HTML here!
[Leonid] I'm awfully sorry, I know the rules of course it was an accident.
Thanks,
Leonid.

On Mon, 4 Dec 2006, Wolfgang Denk wrote:
In message 406A31B117F2734987636D6CCC93EE3C043924@ehost011-3.exch011.intermedia.net you wrote:
The question is does u-boot itself support Silicon Image or, by other
No,it does not (yet).
Hm, ok, I should have noticed your reply before posting. Strange, just looked - the linkstation / kurobox patch adds a ide.c file, which is labeled
+ * (C) Copyright 2000 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
So, is it some older driver that later has been abandonned or what? and why?
Thanks Guennadi --- Guennadi Liakhovetski

In message Pine.LNX.4.60.0612042132540.6042@poirot.grange you wrote:
Hm, ok, I should have noticed your reply before posting. Strange, just looked - the linkstation / kurobox patch adds a ide.c file, which is labeled
It's difficult for me to comment on code I've never seen...
What's the full path name of that file? Standard U-Boot has only two such files:
-> find * -name ide.c board/esd/cpci750/ide.c cpu/mpc5xxx/ide.c
cpu/mpc5xxx/ide.c is for the MPC5200 IDE controller, and board/esd/cpci750/ide.c seems to deal with some old Highpoint IDE controller (HPT366) only.
- (C) Copyright 2000
- Wolfgang Denk, DENX Software Engineering, wd@denx.de.
So, is it some older driver that later has been abandonned or what? and why?
Probably somebody copies code from somewhere without adding his own copyright note. I have no idea of how much code from me might be left in the file you're talking about, if any.
Best regards,
Wolfgang Denk

On Tue, 5 Dec 2006, Wolfgang Denk wrote:
In message Pine.LNX.4.60.0612042132540.6042@poirot.grange you wrote:
Hm, ok, I should have noticed your reply before posting. Strange, just looked - the linkstation / kurobox patch adds a ide.c file, which is labeled
It's difficult for me to comment on code I've never seen...
Hmmm... Ok, sorry, I thought you would know... Ok, np, it's certainly publicly available:
http://homepage2.nifty.com/nijino/library/u-boot-1.1.4_kurobox-20060715.patc...
Just search for the ide.c file there. Warning - I didn't write it and those who did, probably, didn't consider this patch ready for upstream:-)
Thanks Guennadi --- Guennadi Liakhovetski

On Sun, 3 Dec 2006, Leonid wrote:
I have AMCC PPC440EP card with Silicon Image 680 PCI-IDE chip, external HDD is connected to it as IDE1 - see snapshot from Linux booting log:
At least it works on Kurobox with this one:
0000:00:0c.0 IDE interface: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0680 Ultra ATA-133 Host Controller (rev 02) (prog-if 85 [Master SecO PriO]) Subsystem: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0680 Ultra ATA-133 Host Controller
so, at least inprinciple, it might also work for you...
The question is does u-boot itself support Silicon Image or, by other words, can I boot kernel from some partition on HDD (behind this PCI-IDE chip) and if yes - how?
Don't know, maybe it's just generic PCI IDE support. Look at the "ide" command. u-boot supports ext2. To load a file from hda1 /boot, e.g.,
ext2load ide 0:1 <addr> boot/uImage
where "0" means hda, and :1 the first partition.
HTH Guennadi --- Guennadi Liakhovetski

On Monday, December 04, 2006 12:29 PM Guennadi Liakhovetski wrote:
I have AMCC PPC440EP card with Silicon Image 680 PCI-IDE chip,
external
HDD is connected to it as IDE1 - see snapshot from Linux booting
log:
At least it works on Kurobox with this one:
0000:00:0c.0 IDE interface: Silicon Image, Inc. (formerly CMD
Technology
Inc) PCI0680 Ultra ATA-133 Host Controller (rev 02) (prog-if 85
[Master
SecO PriO]) Subsystem: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0680 Ultra ATA-133 Host Controller
so, at least inprinciple, it might also work for you...
[Leonid] Sorry, I didn't follow up since I thought the question is closed. Now I see it's possible indeed, I'll try.
Guennadi, I appreciate information you've supplied. I also got reference to kurobox driver you suggest to use.
Thanks,
Leonid.

-----Original Message----- From: Leonid
I have AMCC PPC440EP card with Silicon Image 680 PCI-IDE chip, external HDD is connected to it as IDE1 - see snapshot from Linux booting log:
The question is does u-boot itself support Silicon Image or, by other words, can I boot kernel from some partition on HDD (behind this PCI-IDE chip) and if yes - how?
Yes. Easilly. The 680 chip is a standard IDE controller.
just enable IDE support (COMMAND_IDE), and set
#define CFG_ATA_BASE_ADDR set this to BAR5 on the 0680 chip #define CFG_ATA_REG_OFFSET 0x80 #define CFG_ATA_DATA_OFFSET 0x80 #define CFG_ATA_ALT_OFFSET 0x80
Then the normal IDE commands just works
participants (4)
-
Guennadi Liakhovetski
-
Leonid
-
Rune Torgersen
-
Wolfgang Denk