tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]


On Sat, Dec 19, 2009 at 03:52:11AM +0900, Izumi Tsutsui wrote:
> > > I wonder what should we do in wdc driver in bootloader..
> > > (wd.c and wdc.c in sys/arch/cobalt/stand/boot/)
> > 
> > Could we assume that the boot partition is within the first 128Gb ?
> Probably no. Firmware loads bootloader from Ext2fs partition
> (I guess it should be within first 8GB or so), but our bootloader
> loads /netbsd kernel from NetBSD root partition, which could be
> larger than 128GB because nowadays sysinst doesn't split partitions
> for root and others.
> > Also, I guess the IDE controller in cobalt is well know ?
> Yes.
> ---
> viaide0 at pci0 dev 9 function 1
> viaide0: VIA Technologies VT82C586 (Apollo VP) ATA33 controller
> viaide0: bus-master DMA support present
> viaide0: primary channel configured to compatibility mode
> viaide0: primary channel interrupting at irq 14
> atabus0 at viaide0 channel 0
> viaide0: secondary channel configured to compatibility mode
> viaide0: secondary channel interrupting at irq 15
> atabus1 at viaide0 channel 1
> ---
> I'm not sure if we can use LBA48 commands on such old
> controllers, though.

The only way to know is to try ...
Has anyone used a >128Gb drive on a cobalt ?

> > or can it boot from add-on IDE adapters too ?
> No, but it might be possible to load bootloader from on-board viaide
> and then load /netbsd from add-on IDE once we add support for add-on IDE
> adapters to our bootloader...

So the best option could be to use the same logic as in the kernel's
wd driver. You have to test for LBA48 support from the drive anyway,
so the check against the result from IDENTIFY (60-61) should be cheap

Manuel Bouyer <>
     NetBSD: 26 ans d'experience feront toujours la difference

Home | Main Index | Thread Index | Old Index