linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Pata support for SIS180
@ 2005-06-11 13:35 Wes Newell
  2005-06-12 20:31 ` Uwe Koziolek
  0 siblings, 1 reply; 6+ messages in thread
From: Wes Newell @ 2005-06-11 13:35 UTC (permalink / raw)
  To: linux.ide

Can anyone tell me if/how one could add device support for the sis180 
chipset pata ports to the sis5513 module? I've tried adding this as 
others have said it works for the 965 southbridge,

if ((trueid == 0x5518) || (trueid == 0x0180)) {

 but it stll doesn't see a real sis180 on a Jetway S755MAX MB.

Here's the device info.

00:0c.0 RAID bus controller: Silicon Integrated Systems [SiS] RAID bus 
controller 180 SATA/PATA  [SiS] (prog-if 85)
        Subsystem: Silicon Integrated Systems [SiS] RAID bus controller 
180 SATA/PATA  [SiS]
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 128
        Interrupt: pin A routed to IRQ 19
        Region 0: I/O ports at dc00 [size=8]
        Region 1: I/O ports at e000 [size=4]
        Region 2: I/O ports at e400 [size=8]
        Region 3: I/O ports at e800 [size=4]
        Region 4: I/O ports at ec00 [size=16]
        Region 5: I/O ports at <unassigned>
        Expansion ROM at <unassigned> [disabled] [size=64K]

00:0c.0 RAID bus controller: Silicon Integrated Systems [SiS] RAID bus 
controller 180 SATA/PATA  [SiS]
00: 39 10 80 01 07 04 20 02 00 85 04 01 00 80 00 00
10: 01 dc 00 00 01 e0 00 00 01 e4 00 00 01 e8 00 00
20: 01 ec 00 00 01 00 00 00 00 00 00 00 39 10 80 01
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 00 00
40: 56 23 06 04 56 23 06 04 00 00 00 00 00 00 00 00
50: 82 20 82 00 2a 96 00 03 00 00 00 00 00 00 00 00
60: ff aa 00 00 d9 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: bd 33 72 40 bd 33 72 40 00 00 00 00 00 00 00 00
90: 34 00 00 03 6f 05 00 00 cc 04 0c 10 c0 05 c0 05
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 01 00 18 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 01 00 18 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00



-- 
Abit KT7-Raid (KT133) Tbred B core CPU @2400MHz (24x100FSB)
My server http://wesnewell.no-ip.com/cpu.php
Verizon server http://mysite.verizon.net/res0exft/cpu.htm


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

* Re: Pata support for SIS180
  2005-06-11 13:35 Pata support for SIS180 Wes Newell
@ 2005-06-12 20:31 ` Uwe Koziolek
  2005-06-12 21:50   ` Wes Newell
  0 siblings, 1 reply; 6+ messages in thread
From: Uwe Koziolek @ 2005-06-12 20:31 UTC (permalink / raw)
  To: Wes Newell; +Cc: linux.ide

Wes Newell schrieb:

> Can anyone tell me if/how one could add device support for the sis180
> chipset pata ports to the sis5513 module? I've tried adding this as
> others have said it works for the 965 southbridge,
>
> if ((trueid == 0x5518) || (trueid == 0x0180)) {
>
> but it stll doesn't see a real sis180 on a Jetway S755MAX MB.


you must include the chip into the pci_device_id table

static *struct* pci_device_id sis5513_pci_tbl[] = {
	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5518, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_180, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
	{ 0, },
};


regards
Uwe Koziolek

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

* Re: Pata support for SIS180
  2005-06-12 20:31 ` Uwe Koziolek
@ 2005-06-12 21:50   ` Wes Newell
  2005-06-13  3:34     ` Jeff Garzik
  0 siblings, 1 reply; 6+ messages in thread
From: Wes Newell @ 2005-06-12 21:50 UTC (permalink / raw)
  To: Uwe Koziolek; +Cc: linux.ide

Uwe Koziolek wrote:

>Wes Newell schrieb:
>
>  
>
>>Can anyone tell me if/how one could add device support for the sis180
>>chipset pata ports to the sis5513 module? I've tried adding this as
>>others have said it works for the 965 southbridge,
>>
>>if ((trueid == 0x5518) || (trueid == 0x0180)) {
>>
>>but it stll doesn't see a real sis180 on a Jetway S755MAX MB.
>>    
>>
>
>
>you must include the chip into the pci_device_id table
>
>static *struct* pci_device_id sis5513_pci_tbl[] = {
>	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
>	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5518, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
>+	{ PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_180, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
>	{ 0, },
>};
>
>
>regards
>Uwe Koziolek
>
>  
>
Won't compile. I copied the sis180 line above into the code (- the + 
sign of course). I tried both 0x180 and 0x0180 as a trueid. Didn't 
matter. Keep in mind I'm not a C programmer.:-)

This is the error I get;

  CC      drivers/ide/pci/sis5513.o
drivers/ide/pci/sis5513.c:955: error: `PCI_DEVICE_ID_SI_180' undeclared 
here (not in a function)
drivers/ide/pci/sis5513.c:955: error: initializer element is not constant
drivers/ide/pci/sis5513.c:955: error: (near initialization for 
`sis5513_pci_tbl[2].device')
drivers/ide/pci/sis5513.c:955: error: initializer element is not constant
drivers/ide/pci/sis5513.c:955: error: (near initialization for 
`sis5513_pci_tbl[2]')
drivers/ide/pci/sis5513.c:956: error: initializer element is not constant
drivers/ide/pci/sis5513.c:956: error: (near initialization for 
`sis5513_pci_tbl[3]')



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

* Re: Pata support for SIS180
  2005-06-12 21:50   ` Wes Newell
@ 2005-06-13  3:34     ` Jeff Garzik
  2005-06-13  6:34       ` Wes Newell
  0 siblings, 1 reply; 6+ messages in thread
From: Jeff Garzik @ 2005-06-13  3:34 UTC (permalink / raw)
  To: Wes Newell; +Cc: Uwe Koziolek, linux.ide

Wes Newell wrote:
> Uwe Koziolek wrote:
> 
>> Wes Newell schrieb:
>>
>>  
>>
>>> Can anyone tell me if/how one could add device support for the sis180
>>> chipset pata ports to the sis5513 module? I've tried adding this as
>>> others have said it works for the 965 southbridge,
>>>
>>> if ((trueid == 0x5518) || (trueid == 0x0180)) {
>>>
>>> but it stll doesn't see a real sis180 on a Jetway S755MAX MB.
>>>   
>>
>>
>>
>> you must include the chip into the pci_device_id table
>>
>> static *struct* pci_device_id sis5513_pci_tbl[] = {
>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, PCI_ANY_ID, PCI_ANY_ID, 
>> 0, 0, 0},
>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5518, PCI_ANY_ID, PCI_ANY_ID, 
>> 0, 0, 0},
>> +    { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_180, PCI_ANY_ID, PCI_ANY_ID, 
>> 0, 0, 0},
>>     { 0, },
>> };
>>
>>
>> regards
>> Uwe Koziolek
>>
>>  
>>
> Won't compile. I copied the sis180 line above into the code (- the + 
> sign of course). I tried both 0x180 and 0x0180 as a trueid. Didn't 
> matter. Keep in mind I'm not a C programmer.:-)
> 
> This is the error I get;
> 
>  CC      drivers/ide/pci/sis5513.o
> drivers/ide/pci/sis5513.c:955: error: `PCI_DEVICE_ID_SI_180' undeclared 
> here (not in a function)

You need to add this #define to include/linux/pci_ids.h.

	Jeff




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

* Re: Pata support for SIS180
  2005-06-13  3:34     ` Jeff Garzik
@ 2005-06-13  6:34       ` Wes Newell
  2005-06-13 17:19         ` Wes Newell
  0 siblings, 1 reply; 6+ messages in thread
From: Wes Newell @ 2005-06-13  6:34 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Uwe Koziolek, linux.ide

Jeff Garzik wrote:

> Wes Newell wrote:
>
>> Uwe Koziolek wrote:
>>
>>> Wes Newell schrieb:
>>>
>>>  
>>>
>>>> Can anyone tell me if/how one could add device support for the sis180
>>>> chipset pata ports to the sis5513 module? I've tried adding this as
>>>> others have said it works for the 965 southbridge,
>>>>
>>>> if ((trueid == 0x5518) || (trueid == 0x0180)) {
>>>>
>>>> but it stll doesn't see a real sis180 on a Jetway S755MAX MB.
>>>>   
>>>
>>>
>>>
>>>
>>> you must include the chip into the pci_device_id table
>>>
>>> static *struct* pci_device_id sis5513_pci_tbl[] = {
>>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, PCI_ANY_ID, 
>>> PCI_ANY_ID, 0, 0, 0},
>>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5518, PCI_ANY_ID, 
>>> PCI_ANY_ID, 0, 0, 0},
>>> +    { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_180, PCI_ANY_ID, 
>>> PCI_ANY_ID, 0, 0, 0},
>>>     { 0, },
>>> };
>>>
>>>
>>> regards
>>> Uwe Koziolek
>>>
>>>  
>>>
>> Won't compile. I copied the sis180 line above into the code (- the + 
>> sign of course). I tried both 0x180 and 0x0180 as a trueid. Didn't 
>> matter. Keep in mind I'm not a C programmer.:-)
>>
>> This is the error I get;
>>
>>  CC      drivers/ide/pci/sis5513.o
>> drivers/ide/pci/sis5513.c:955: error: `PCI_DEVICE_ID_SI_180' 
>> undeclared here (not in a function)
>
>
> You need to add this #define to include/linux/pci_ids.h.
>
>     Jeff
>
OK, seeing some light. Added this to pci_ids.h;
#define PCI_DEVICE_ID_SI_180        0x0180
Compiles OK now. Sees controller on boot, but lost interrrupt problem. 
Disabling apic doesn't fix it. Here's where I'm at now, and I'm about to 
call it a night. Will try and get back on it tomorrow. Any thoughts?

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller at PCI slot 0000:00:02.5
SIS5513: chipset revision 0
SIS5513: not 100% native mode: will probe irqs later
SIS5513: SiS 962/963 MuTIOL IDE UDMA133 controller
    ide0: BM-DMA at 0x4000-0x4007, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x4008-0x400f, BIOS settings: hdc:DMA, hdd:pio
Probing IDE interface ide0...
hda: WDC WD800JB-00FMA0, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
hdc: _NEC DVD_RW ND-3500AG, ATAPI CD/DVD-ROM drive
hdd: LS-120 CSMO 05 UHD Floppy, ATAPI FLOPPY drive
hdd: set_drive_speed_status: status=0x51 { DriveReady SeekComplete Error }
hdd: set_drive_speed_status: error=0x04 { AbortedCommand }
ide1 at 0x170-0x177,0x376 on irq 15
SIS5513: IDE controller at PCI slot 0000:00:0c.0
SIS5513: chipset revision 0
SIS5513: SiS 962/963 MuTIOL IDE UDMA133 controller
SIS5513: Switching to 5513 register mapping
SIS5513: 100% native mode on irq 19
Probing IDE interface ide2...
hde: WDC WD800JB-00JJC0, ATA DISK drive
ide2 at 0xdc00-0xdc07,0xe002 on irq 19
Probing IDE interface ide3...
hda: max request size: 128KiB
hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=65535/16/63, 
UDMA(100)
hda: cache flushes supported
 /dev/ide/host0/bus0/target0/lun0: p1 p2 < p5 p6 p7 p8 p9 p10 p11 >
hde: max request size: 128KiB
hde: lost interrupt
hde: lost interrupt
hde: lost interrupt
hde: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=65535/16/63
hde: lost interrupt
hde: lost interrupt
hde: cache flushes supported
 /dev/ide/host2/bus0/target0/lun0:<4>hde: lost interrupt
 p1 p2 <<4>hde: lost interrupt
 p5<4>hde: lost interrupt
 p6<4>hde: lost interrupt
 p7<4>hde: lost interrupt
 p8<4>hde: lost interrupt
 p9<4>hde: lost interrupt
 p10<4>hde: lost interrupt
 p11 >
hde: lost interrupt
mice: PS/2 mouse device common for all mice

Continues to boot ok, but drive access is flacky. More lost interrupts

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

* Re: Pata support for SIS180
  2005-06-13  6:34       ` Wes Newell
@ 2005-06-13 17:19         ` Wes Newell
  0 siblings, 0 replies; 6+ messages in thread
From: Wes Newell @ 2005-06-13 17:19 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Uwe Koziolek, linux.ide

Wes Newell wrote:

> Jeff Garzik wrote:
>
>> Wes Newell wrote:
>>
>>> Uwe Koziolek wrote:
>>>
>>>> Wes Newell schrieb:
>>>>
>>>>  
>>>>
>>>>> Can anyone tell me if/how one could add device support for the sis180
>>>>> chipset pata ports to the sis5513 module? I've tried adding this as
>>>>> others have said it works for the 965 southbridge,
>>>>>
>>>>> if ((trueid == 0x5518) || (trueid == 0x0180)) {
>>>>>
>>>>> but it stll doesn't see a real sis180 on a Jetway S755MAX MB.
>>>>>   
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> you must include the chip into the pci_device_id table
>>>>
>>>> static *struct* pci_device_id sis5513_pci_tbl[] = {
>>>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, PCI_ANY_ID, 
>>>> PCI_ANY_ID, 0, 0, 0},
>>>>     { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5518, PCI_ANY_ID, 
>>>> PCI_ANY_ID, 0, 0, 0},
>>>> +    { PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_180, PCI_ANY_ID, 
>>>> PCI_ANY_ID, 0, 0, 0},
>>>>     { 0, },
>>>> };
>>>>
>>>>
>>>> regards
>>>> Uwe Koziolek
>>>>
>>>>  
>>>>
>>> Won't compile. I copied the sis180 line above into the code (- the + 
>>> sign of course). I tried both 0x180 and 0x0180 as a trueid. Didn't 
>>> matter. Keep in mind I'm not a C programmer.:-)
>>>
>>> This is the error I get;
>>>
>>>  CC      drivers/ide/pci/sis5513.o
>>> drivers/ide/pci/sis5513.c:955: error: `PCI_DEVICE_ID_SI_180' 
>>> undeclared here (not in a function)
>>
>>
>>
>> You need to add this #define to include/linux/pci_ids.h.
>>
>>     Jeff
>>
> OK, seeing some light. Added this to pci_ids.h;
> #define PCI_DEVICE_ID_SI_180        0x0180
> Compiles OK now. Sees controller on boot, but lost interrrupt problem. 
> Disabling apic doesn't fix it. Here's where I'm at now, and I'm about 
> to call it a night. Will try and get back on it tomorrow. Any thoughts?
>
> SIS5513: IDE controller at PCI slot 0000:00:0c.0
> SIS5513: chipset revision 0
> SIS5513: SiS 962/963 MuTIOL IDE UDMA133 controller
> SIS5513: Switching to 5513 register mapping
> SIS5513: 100% native mode on irq 19

This part concerns me.  Is the 5513 register mapping really what we 
want? I think this may not be right, From what i can tell from the code 
(keeping in mind I'm not a C programmer), it defaults to this if it 
doesn't find what it wants in this part of sis5513.c

                /* Check for 5513 compability mapping
                 * We must use this, else the port enabled code will fail,
                 * as it expects the enablebits at 0x4a.
                 */
                if ((idemisc & 0x40000000) == 0) {
                    pci_write_config_dword(dev, 0x54, idemisc | 0x40000000);
                    printk(KERN_INFO "SIS5513: Switching to 5513 
register mapping\n");
       
But is whatever this is doing right?

> Probing IDE interface ide2...
> hde: WDC WD800JB-00JJC0, ATA DISK drive
> ide2 at 0xdc00-0xdc07,0xe002 on irq 19

And are these addresses right? I'm not sure, that's region 0 of the chispet.

00:0c.0 RAID bus controller: Silicon Integrated Systems [SiS] RAID bus 
controller 180 SATA/PATA  [SiS] (prog-if 85)
        Subsystem: Silicon Integrated Systems [SiS] RAID bus controller 
180 SATA/PATA  [SiS]
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 128
        Interrupt: pin A routed to IRQ 19
        Region 0: I/O ports at dc00 [size=8]
        Region 1: I/O ports at e000 [size=4]
        Region 2: I/O ports at e400 [size=8]
        Region 3: I/O ports at e800 [size=4]
        Region 4: I/O ports at ec00 [size=16]
        Region 5: I/O ports at <unassigned>
        Expansion ROM at <unassigned> [disabled] [size=64K]

> Probing IDE interface ide3...
> hda: max request size: 128KiB
> hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=65535/16/63, 
> UDMA(100)
> hda: cache flushes supported
> /dev/ide/host0/bus0/target0/lun0: p1 p2 < p5 p6 p7 p8 p9 p10 p11 >
> hde: max request size: 128KiB
> hde: lost interrupt
> hde: lost interrupt
> hde: lost interrupt
> hde: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=65535/16/63
> hde: lost interrupt
> hde: lost interrupt
> hde: cache flushes supported
> /dev/ide/host2/bus0/target0/lun0:<4>hde: lost interrupt
> p1 p2 <<4>hde: lost interrupt
> p5<4>hde: lost interrupt
> p6<4>hde: lost interrupt
> p7<4>hde: lost interrupt
> p8<4>hde: lost interrupt
> p9<4>hde: lost interrupt
> p10<4>hde: lost interrupt
> p11 >
> hde: lost interrupt
> mice: PS/2 mouse device common for all mice
>
> Continues to boot ok, but drive access is flacky. More lost interrupts
>
I also disabled the ethernet controller (sharing interrupt) and that 
didn't work either. Still getting lost interrrupts and I'm stumped. 
Where do you think I should go from here?  And hell isn't an option.:-)


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

end of thread, other threads:[~2005-06-13 17:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-11 13:35 Pata support for SIS180 Wes Newell
2005-06-12 20:31 ` Uwe Koziolek
2005-06-12 21:50   ` Wes Newell
2005-06-13  3:34     ` Jeff Garzik
2005-06-13  6:34       ` Wes Newell
2005-06-13 17:19         ` Wes Newell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).