public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
@ 2005-11-22 23:00 Stroller
  2005-11-23  2:31 ` Thomas Harold
  0 siblings, 1 reply; 6+ messages in thread
From: Stroller @ 2005-11-22 23:00 UTC (permalink / raw
  To: Gentoo User Mailing List

Hi there,

Has anyone had any joy getting one of these to work under Gentoo, 
please? I bought it on the recommendations of users on 
uk.comp.os.linux, as I was looking for a Linux-compatible card 
available in the UK, but apparently no-one on that group is using the 
card under Gentoo.

Highpoint provide drivers as source; unpacking these & running make 
unfortunately fails on my system, with the following output:

	$ make
	make -C /usr/src/linux SUBDIRS=`pwd` modules
	make[1]: Entering directory `/usr/src/linux-2.6.14-gentoo-r2'
	  CC [M]  /home/stroller/hpt302/hpt.o
	In file included from /home/stroller/hpt302/hpt.c:48:
	drivers/scsi/hosts.h:1:2: warning: #warning "This file is obsolete, 
please use <scsi/scsi_host.h> instead"
	In file included from /home/stroller/hpt302/global.h:16,
	                 from /home/stroller/hpt302/entry.c:5,
	                 from /home/stroller/hpt302/hpt.c:54:
	/home/stroller/hpt302/osheader.h:96:5: warning: "DBG" is not defined
	In file included from /home/stroller/hpt302/hpt.c:54:
	/home/stroller/hpt302/entry.c:8:5: warning: "DBG" is not defined
	In file included from /home/stroller/hpt302/hpt.c:54:
	/home/stroller/hpt302/entry.c: In function `hpt3xx_Abort':
	/home/stroller/hpt302/entry.c:500: error: structure has no member 
named `abort_reason'
	/home/stroller/hpt302/entry.c: In function `fOsBuildSgl':
	/home/stroller/hpt302/entry.c:681: warning: implicit declaration of 
function `scsi_to_pci_dma_dir'
	/home/stroller/hpt302/entry.c: At top level:
	/home/stroller/hpt302/entry.c:828: error: unknown field `abort' 
specified in initializer
	/home/stroller/hpt302/entry.c:828: error: unknown field `reset' 
specified in initializer
	make[2]: *** [/home/stroller/hpt302/hpt.o] Error 1
	make[1]: *** [_module_/home/stroller/hpt302] Error 2
	make[1]: Leaving directory `/usr/src/linux-2.6.14-gentoo-r2'
	make: *** [default] Error 2
	$

Setting the KERNELDIR variable to 
"/lib/modules/2.6.14-gentoo-r2/build/" doesn't make any difference, not 
does editing the makefile so that drivers/scsi/host.h is included 
instead of hosts.h

A poster on the Gentoo forums indicated that he'd managed to get this 
card working using one of the other Highpoint drivers already in the 
Linux kernel, but that doesn't seem to work for me, as I have enabled 
these and the drive connected to the controller is still not shown. (Is 
there any other way to test whether the controller is working or not?)

$ zcat /proc/config.gz | grep -i hpt
# CONFIG_HIGHPTE is not set
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y

The device is shown on the PCI bus thusly:

	# 0000:00:02.0 RAID bus controller: Triones Technologies, Inc. HPT302 
(rev 02)
	        Subsystem: Triones Technologies, Inc.: Unknown device 0001
	        Flags: bus master, 66Mhz, medium devsel, latency 64
	        I/O ports at 1400 [size=8]
	        I/O ports at 1410 [size=4]
	        I/O ports at 1408 [size=8]
	        I/O ports at 1414 [size=4]
	        I/O ports at 1000 [size=256]
	        Expansion ROM at 50000000 [disabled] [size=128K]
	        Capabilities: [60] Power Management version 2

Many thanks in advance for any help or advices. I'm not averse to 
replacing the card if someone can recommend one available in the UK 
with drivers already in the kernel. It doesn't need to do RAID, only 
act as a 133 EIDE controller for the new hard-drive I put in this 
Pentium II server recently.

Stroller.

-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
  2005-11-22 23:00 [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller Stroller
@ 2005-11-23  2:31 ` Thomas Harold
  2005-11-24  6:00   ` Stroller
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Harold @ 2005-11-23  2:31 UTC (permalink / raw
  To: gentoo-user

Stroller wrote:

> Hi there,
> 
> Has anyone had any joy getting one of these to work under Gentoo, 
> please? I bought it on the recommendations of users on uk.comp.os.linux, 
> as I was looking for a Linux-compatible card available in the UK, but 
> apparently no-one on that group is using the card under Gentoo.

Key things to look for in menuconfig for Rocket133 might be:

(D)evice drivers
--> ATA/ATAPI/MFM/RLL support
--> --> SCSI emulation support
--> --> generic/default IDE chipset support
--> --> PCI IDE chipset support
--> --> Generic PCI IDE Chipset Support

Probably the only one that matters is (CONFIG_BLK_DEV_HPT366=y):

--> --> HPT36X/37X chipset support (turn this ON as BUILT-IN)

Yes, the Rocket 133SB (Rocket133SB) HPT302 chip is apparently supported 
by the HPT366.c file. You can find this by grepping the kernel sources:

# cd /usr/src/linux
# find . -print | xargs grep -i 'hpt302'
# grep -i 'hpt366' .config

(snipped from my Nov2005 blog)
-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
  2005-11-23  2:31 ` Thomas Harold
@ 2005-11-24  6:00   ` Stroller
  2005-11-24  6:42     ` Richard Fish
  0 siblings, 1 reply; 6+ messages in thread
From: Stroller @ 2005-11-24  6:00 UTC (permalink / raw
  To: gentoo-user


On Nov 23, 2005, at 2:31 am, Thomas Harold wrote:
>
> Key things to look for in menuconfig for Rocket133 might be:
>
> (D)evice drivers
> --> ATA/ATAPI/MFM/RLL support
> --> --> SCSI emulation support
> --> --> generic/default IDE chipset support
> --> --> PCI IDE chipset support
> --> --> Generic PCI IDE Chipset Support
>
> Probably the only one that matters is (CONFIG_BLK_DEV_HPT366=y):
>
> --> --> HPT36X/37X chipset support (turn this ON as BUILT-IN)
>
> Yes, the Rocket 133SB (Rocket133SB) HPT302 chip is apparently 
> supported by the HPT366.c file.

Ah! My bad. It seems that all those options WERE configured in my 
kernel and the Highpoint IS being recognised. But there is a problem:

    HPT302: IDE controller at PCI slot 0000:00:02.0
    PCI: Enabling device 0000:00:02.0 (0000 -> 0003)
    PCI: No IRQ known for interrupt pin A of device 0000:00:02.0. 
Probably buggy MP table.
    HPT302: chipset revision 2 HPT302: bad irq (0): will probe later
    HPT37X: using 33MHz PCI clock PCI: Setting latency timer of device 
0000:00:02.0 to 64
        ide2: BM-DMA at 0x1000-0x1007, BIOS settings: hde:pio,
        hdf:pio
    HPT37X: using 33MHz PCI clock
        ide3: BM-DMA at 0x1008-0x100f, BIOS settings: hdg:pio,
        hdh:pio
    Probing IDE interface ide2...
    hde: WDC WD2500BB-22GUA0, ATA DISK drive
    hde: IRQ probe failed (0xfffff6f8)
    hdf: IRQ probe failed (0xfffff6f8)
    hdf: IRQ probe failed (0xfffff6f8)
    ide2: DISABLED, NO IRQ
    ide2: failed to initialize IDE interface

I suspect this is because I've disabled the device in the machine's 
BIOS, in the belief that Linux would issue it an IRQ & so on. When I 
re-enable the controller in BIOS & boot from the LiveCD the drive 
attached to the controller shows up & I am able to mount it:

    HPT302: IDE controller at PCI slot 0000:00:02.0 HPT302: chipset
    revision 2 HPT37X: using 33MHz PCI clock HPT302: 100% native mode
    on irq 11
        ide2: BM-DMA at 0x2400-0x2407, BIOS settings: hde:DMA,
        hdf:pio ide3: BM-DMA at 0x2408-0x240f, BIOS settings:
        hdg:pio, hdh:pio
    Probing IDE interface ide2...  input: AT Translated Set 2
    keyboard on isa0060/serio0
    hde: WDC WD2500BB-22GUA0, ATA DISK
    drive ide2 at 0x2000-0x2007,0x200a on irq 11

Unfortunately, if I leave the controller enabled in BIOS then the PC 
will attempt to boot from it, and not from the built-in RAID array on 
which the operating-system is installed... thus I get a "non-sytem disk 
or disk error". The CD drive is on an internal EIDE controller which I 
can boot from whether the Highpoint is enabled or not. The system 
itself is a 5 year-old Compaq Proliant server which was never intended 
to have an EIDE hard-drives alongside its SCSI array, so I seem to be 
unable to tell it to boot from the array rather than the Highpoint.

I believe I may be able to install GRUB on the boot sector of the EIDE 
drive & point that at the /boot partition on the RAID array, but I 
thought I'd check in here first. Is there any way to get the kernel to 
choose an IRQ for the HPT302? I thought this was what plug & play 
operating systems were about. Can the kernel be invoked with an append 
which will assign it the IRQ11 recognised by the LiveCD?  I've tried 
furtling with the interrupts of the various controllers, but it's not a 
very intuitive interface on this machine - might I be able to change 
the boot order this way?

Many thanks in advance for any advices,

Stroller.

-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
  2005-11-24  6:00   ` Stroller
@ 2005-11-24  6:42     ` Richard Fish
  2005-11-24 21:13       ` Stroller
  2005-11-28  2:41       ` Stroller
  0 siblings, 2 replies; 6+ messages in thread
From: Richard Fish @ 2005-11-24  6:42 UTC (permalink / raw
  To: gentoo-user

On 11/23/05, Stroller <stroller@stellar.eclipse.co.uk> wrote:
> Unfortunately, if I leave the controller enabled in BIOS then the PC
> will attempt to boot from it, and not from the built-in RAID array on
> which the operating-system is installed... thus I get a "non-sytem disk
> or disk error". The CD drive is on an internal EIDE controller which I
> can boot from whether the Highpoint is enabled or not. The system
> itself is a 5 year-old Compaq Proliant server which was never intended
> to have an EIDE hard-drives alongside its SCSI array, so I seem to be
> unable to tell it to boot from the array rather than the Highpoint.
>
> I believe I may be able to install GRUB on the boot sector of the EIDE
> drive & point that at the /boot partition on the RAID array, but I
> thought I'd check in here first. Is there any way to get the kernel to
> choose an IRQ for the HPT302? I thought this was what plug & play
> operating systems were about. Can the kernel be invoked with an append
> which will assign it the IRQ11 recognised by the LiveCD?  I've tried
> furtling with the interrupts of the various controllers, but it's not a
> very intuitive interface on this machine - might I be able to change
> the boot order this way?

My guess is that mucking with interrupts is not going to help.  There
is usually an option to affect the boot order, typically named
something like "Boot Off-Board controllers first".  If you can give
the model number of the server, we can probably lookup the BIOS manual
online and maybe give better advice.

It should also be possible to write a boot sector to the IDE disk that
will boot from the SCSI disk.  If your /boot partition is /dev/sda1,
something like this might work:

#echo "(hd0) /dev/hda" >/boot/grub/device.map.ide
#echo "(hd1) /dev/sda" >>/boot/grub/device.map.ide
# grub --device-map=/boot/grub/device.map.ide
grub> setup (hd0) (hd1,1)
...
grub> quit

But, fair warning, I've never tried this, so I'm not sure how well it will work.

-Richard

-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
  2005-11-24  6:42     ` Richard Fish
@ 2005-11-24 21:13       ` Stroller
  2005-11-28  2:41       ` Stroller
  1 sibling, 0 replies; 6+ messages in thread
From: Stroller @ 2005-11-24 21:13 UTC (permalink / raw
  To: gentoo-user


On 24 Nov 2005, at 6:42, Richard Fish wrote:
>
> My guess is that mucking with interrupts is not going to help.

To be honest, I thought that, too, but I thought it might be worth a go.

> There
> is usually an option to affect the boot order, typically named
> something like "Boot Off-Board controllers first".

I can't see an option like that. I reckon I'm usually pretty good at  
furtling around & finding relevant options but I'd be delighted to be  
proved wrong.

> If you can give
> the model number of the server, we can probably lookup the BIOS manual
> online and maybe give better advice.

It's a Compaq Proliant 6500.

> It should also be possible to write a boot sector to the IDE disk that
> will boot from the SCSI disk.  If your /boot partition is /dev/sda1,
> something like this might work:
>
> #echo "(hd0) /dev/hda" >/boot/grub/device.map.ide
> #echo "(hd1) /dev/sda" >>/boot/grub/device.map.ide
> # grub --device-map=/boot/grub/device.map.ide
> grub> setup (hd0) (hd1,1)
> ...
> grub> quit
>
> But, fair warning, I've never tried this, so I'm not sure how well  
> it will work.

I'll have a tinker with this next, probably over the weekend. Thanks  
for the pointer.

Stroller.

-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller
  2005-11-24  6:42     ` Richard Fish
  2005-11-24 21:13       ` Stroller
@ 2005-11-28  2:41       ` Stroller
  1 sibling, 0 replies; 6+ messages in thread
From: Stroller @ 2005-11-28  2:41 UTC (permalink / raw
  To: gentoo-user


On Nov 24, 2005, at 6:42 am, Richard Fish wrote:
> On 11/23/05, Stroller <stroller@stellar.eclipse.co.uk> wrote:
>>
>> ... Is there any way to get the kernel to
>> choose an IRQ for the HPT302? I thought this was what plug & play
>> operating systems were about. Can the kernel be invoked with an append
>> which will assign it the IRQ11 recognised by the LiveCD?
>
> It should also be possible to write a boot sector to the IDE disk that
> will boot from the SCSI disk.  If your /boot partition is /dev/sda1,
> something like this might work:
>
> #echo "(hd0) /dev/hda" >/boot/grub/device.map.ide
> #echo "(hd1) /dev/sda" >>/boot/grub/device.map.ide
> # grub --device-map=/boot/grub/device.map.ide
> grub> setup (hd0) (hd1,1)
> ...
> grub> quit

After numerous attempts I've had no joy installing GRUB on the EIDE 
drive & getting the Highpoint to boot from it - this is surely a quirk 
of the server BIOS. If anyone has any other suggestions (please refer 
to my earlier posts) I would be EXTREMELY grateful.

Stroller.

-- 
gentoo-user@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2005-11-28  2:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-11-22 23:00 [gentoo-user] Highpoint Rocket HPT302 PATA EIDE controller Stroller
2005-11-23  2:31 ` Thomas Harold
2005-11-24  6:00   ` Stroller
2005-11-24  6:42     ` Richard Fish
2005-11-24 21:13       ` Stroller
2005-11-28  2:41       ` Stroller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox