Skip to contentSkip to conversation

New: driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

Bug 16382 [email protected] 1 participant 7 messages Jul 14, 2010 – Aug 9, 2012 libata

lore
Share & tools
lore
#0 lore raw

https://bugzilla.kernel.org/show_bug.cgi?id=16382

Summary: driver 'pata_hpt37x' attempts to run HPT device x0006
subd x0001. Doesn't work! 'pata_hpt3x2n' works well.
Product: IO/Storage
Version: 2.5
Kernel Version: 2.6.35
Platform: All
OS/Version: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: IDE
AssignedTo: [email protected]
ReportedBy: [email protected]
Regression: No

Mandriva bug #60010. https://qa.mandriva.com/show_bug.cgi?id=60010

I formerly used driver 'hpt366' (NOT pata_366), completely functional. But a totally new installation results in usage of 'pata_hpt37x', with the following result:

ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 19
pata_hpt37x 0000:01:0a.0: PCI INT A -> Link[LNKC] -> GSI 19 (level, low) -> IRQ 19
pata_hpt37x 0000:01:0a.0: PCI INT A disabled

The marketing name of the device is "Highpoint 133SB". Hewre is the PCI ID:
pata_hpt302 : HighPoint Technologies, Inc.|HPT302/302N [STORAGE_RAID]
(vendor:1103 device:0006 subv:1103 subd:0001) (rev: 02)

Rebuilt initrd to include pata_hpt3x2n instead (BOTH drivers claim to support this device, so I didn't need to rebuild the hpt3x2n driver). Blacklisted hpt37x. This driver Successful use of disk and/or DVD/RW per the following follows:

libata version 3.00 loaded.
ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 19
pata_hpt3x2n 0000:01:0a.0: PCI INT A -> Link[LNKC] -> GSI 19 (level, low) -> IRQ 19
pata_hpt37x: bus clock 33MHz, using 66MHz DPLL.
scsi0 : pata_hpt3x2n
scsi1 : pata_hpt3x2n
ata1: PATA max UDMA/133 cmd 0xdc00 ctl 0xd880 bmdma 0xd000 irq 19
ata2: PATA max UDMA/133 cmd 0xd800 ctl 0xd480 bmdma 0xd008 irq 19 ata2.00: ATAPI: Memorex DVD+-RAM 530L v1, 5M64, max UDMA/66 ata2.00: configured for UDMA/66
scsi 1:0:0:0: CD-ROM Memorex DVD+-RAM 530L v1 5M64 PQ: 0 ANSI: 5

works!

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#1 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

https://bugzilla.kernel.org/show_bug.cgi?id=16382

Robert Hancock <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |[email protected]

--- Comment #1 from Robert Hancock <[email protected]> 2010-07-14 01:40:44 --- It looks like pata_hpt37x supports the HPT302 chip, but only revision 1. Revision 2 and higher (which you have) is supported by the pata_hpt3x2n driver (which doesn't support revision 1). The module device table can't contain dependencies on revision number, therefore both devices are considered eligible to drive the device. However, the one that doesn't support that revision of the chip just won't attach to the device. Loading both drivers should therefore be harmless.

The problem in your case seems to be that the distro installer is only trying to load one of the drivers which happens to not be the one that you need. This isn't right - it should try and load ALL drivers that match the PCI IDs and see what sticks.

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#2 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=16382

--- Comment #2 from Rick Stockton <[email protected]> 2010-07-14 02:26:10 --- Thanks, Robert!

But, if pata_3x2n can support all known versions of the chip, why not just use that exclusively? (It is the driver which HighPoint doco makes reference too -- although that doco is from 2001.)

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#3 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=16382

--- Comment #3 from Rick Stockton <[email protected]> 2010-07-14 02:36:53 --- Here's 'lscpi -vvvv':

01:0a.0 RAID bus controller: HighPoint Technologies, Inc. HPT302/302N (rev 02)
Subsystem: HighPoint Technologies, Inc. Device 0001
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-

        Latency: 120 (2000ns min, 2000ns max)
        Interrupt: pin A routed to IRQ 19
        Region 0: I/O ports at dc00 [size=8]
        Region 1: I/O ports at d880 [size=4]
        Region 2: I/O ports at d800 [size=8]
        Region 3: I/O ports at d480 [size=4]
        Region 4: I/O ports at d000 [size=256]
        Expansion ROM at f9fe0000 [disabled] [size=128K]
        Capabilities: [60] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA

PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Kernel driver in use: pata_hpt3x2n
Kernel modules: hpt366, pata_hpt37x, pata_hpt3x2n

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#4 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=16382

--- Comment #4 from Robert Hancock <[email protected]> 2010-07-14 03:31:10 --- (In reply to comment #2)

Quoted 4 lines

Thanks, Robert!

But, if pata_3x2n can support all known versions of the chip, why not just use that exclusively?

It doesn't - revision 1 is not supported by that driver. For that chip rev, pata_hpt37x is required.

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#5 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=16382

--- Comment #5 from Rick Stockton <[email protected]> 2010-07-14 19:50:08 --- OK! There's a comment "check this" in the initialization code of (at line 843 within the current version of pata_hpt37x, V0.6.15), and that made me suspicious.

But, per your suggestion, I rebuilt initrd with BOTH drivers included -- and I installed hpt37x first. This worked exactly as as you said it should: hpt37x was assigned to handle the interrupt, but it bailed out immediately. hpt3x2n was tried next, and was able to grab the interface.

So please feel free to close this as 'invalid'. There's one TINY nitpick which I saw in pata_3x2n, but it would be a different bug (if someone wants to bother): Source code lines 536-537 (in the current version, V0.3.10)are as follows,

536 printk(KERN_INFO "pata_hpt37x: bus clock %dMHz, using 66MHz
DPLL.\n",
537 pci_mhz);

And you saw this in my clip from dmesg (in the bug description, above). Driver "pata_3x2n" should not print a message listing itself as "pata_hpt37x"; there's an old copy/paste mistake in there.

THANKS for hand-holding the newby, you've been awesome.

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#6 lore raw

[Bug 16382] driver 'pata_hpt37x' attempts to run HPT device x0006 subd x0001. Doesn't work! 'pata_hpt3x2n' works well.

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=16382

Alan <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |RESOLVED
                 CC|                            |[email protected]
         Resolution|                            |DOCUMENTED
Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.