Re: ahc driver: aic7892 no longer supported (conflict with ATA)

2001-03-23 Thread Matthew N. Dodd

On Thu, 22 Mar 2001, Mike Smith wrote:
 The interrupt is shareable; the BIOS knows best, and the ATA driver 
 should sod off in this case.
 
 If we want to argue about it, we can get a dump of the PCI interrupt 
 routing table for this machine. 8)  Soren's concern is that some systems 
 route IRQ 14 and 15 very oddly, but the only region for conflicts is 
 really IRQs assigned to ISA devices.

I'm of the opinion that the ATA driver shouldn't be mucking about with
resources that the PCI device hasn't assigned it but he claims he can't
get the information anywhere else for broken ATA devices that don't
request resources.  I'm pretty sure that hints work for PCI devices too
right?  :)

Damn cheap hardware.

-- 
| Matthew N. Dodd  | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD  |
| [EMAIL PROTECTED] |   2 x '84 Volvo 245DL| ix86,sparc,pmax |
| http://www.jurai.net/~winter |  For Great Justice!  | ISO8802.5 4ever |


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-22 Thread Falco Krepel

"Justin T. Gibbs" wrote:

In aic7xxx_pci.c:ahc_pci_config() the call to ahc_pci_map_int(ahc) is
failing.  bus_alloc_resource() appears to need more time than I have
right now so that will have to wait till tonight :-)  It does look like
a more fundamental problem below the scsi driver is involved.

I have the same problem: the call to ahc_pci_map_int(ahc) is failing.

The following function call returns NULL in ahc_pci.c:

208 ahc-platform_data-irq =
209 bus_alloc_resource(ahc-dev_softc, SYS_RES_IRQ, zero,
2100, ~0, 1, RF_ACTIVE | RF_SHAREABLE);

This function is in pci.c:

1192 static struct resource *
1193 pci_alloc_resource(device_t dev, device_t child, int type, int
*rid,
1194u_long start, u_long end, u_long count, u_int
flags)  
1195 {
1196 struct pci_devinfo *dinfo = device_get_ivars(child);
1197 struct resource_list *rl = dinfo-resources;
1198 pcicfgregs *cfg = dinfo-cfg;
1199
1200 /*
1201  * Perform lazy resource allocation
1202  *
1203  * XXX add support here for SYS_RES_IOPORT and
SYS_RES_MEMORY
1204  */
1205 if (device_get_parent(child) == dev) {
1206  /*
1207  * If device doesn't have an interrupt routed, and
is deserving of
1208  * an interrupt, try to assign it one.
1209  */

...

1219 }
1220
1221 return resource_list_alloc(rl, dev, child, type, rid,
1222start, end, count, flags);
1223 }

The device must have an interrupt routed due to the deleted code
fragment were not executed. So I think this must be a problem within the
the pci resource allocation procedure. Put I don't know how this works.
So it is difficult for me to find the error.

Maybe you have an idea, where the problem is. I try to find out at which
day this error occur to find out which changes were made.

-- 
Falco KrepelPhone:  +49-(0)30 - 34 63 - 7 276
GMD-FOKUS   Fax:+49-(0)30 - 34 63 - 8 276
Kaiserin-Augusta-Allee 31   e-mail: [EMAIL PROTECTED]
10589 BerlinWWW:http://www.fokus.gmd.de/usr/krepel

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported (conflict with ATA)

2001-03-22 Thread Falco Krepel

I think I found the problem. The problem occur since 03/14/2001. The
following files could be infvolved:

P dev/ata/ata-all.c
P dev/ata/ata-all.h
P dev/ata/ata-disk.c
P dev/ata/ata-disk.h
P dev/ata/atapi-all.c
P dev/ata/atapi-all.h
P dev/ata/atapi-cd.c
P dev/ata/atapi-cd.h
P dev/ata/atapi-fd.c
P dev/ata/atapi-fd.h
P dev/ata/atapi-tape.c
P dev/ata/atapi-tape.h

It should be somthing in ata-all.c. Because since 03/14 the ata1 probe
doesn't fail and uses irq 15 same as the ahc. But this shouldn't be a
problem. I am right?

= boot failed (since 03/14/2001)

atapci0: VIA 82C686 ATA100 controller port 0xd000-0xd00f at device 7.1
on pci0
ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0xd000
ata0: mask=03 status0=50 status1=00
ata0-master: ATAPI probe 14 eb
ata0-slave: ATAPI probe 14 eb
ata0: mask=03 status0=10 status1=00
ata0: devices=0c
ata0: at 0x1f0 irq 14 on atapci0
ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0xd008
ata1: at 0x170 irq 15 on atapci0
pci0: bridge, PCI-unknown at 7.4 (no driver attached)
ahc0: Adaptec 29160 Ultra160 SCSI adapter port 0xdc00-0xdcff mem
0xdf00-0xdf000fff irq 15 at device 9.0 on pci0
ahc0: Platform free
device_probe_and_attach: ahc0 attach returned 12

= boot working (03/13/2001 and before)

atapci0: VIA 82C686 ATA100 controller port 0xd000-0xd00f at device 7.1
on pci0
ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0xd000
ata0: mask=03 status0=50 status1=00
ata0: mask=03 ostat0=50 ostat2=00
ata0-master: ATAPI probe a=14 b=eb
ata0-slave: ATAPI probe a=14 b=eb
ata0: mask=03 status0=10 status1=00
ata0: devices=0c
ata0: at 0x1f0 irq 14 on atapci0
ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0xd008
ata1: mask=00 status0=ff status1=ff
ata1: probe allocation failed
pci0: bridge, PCI-unknown at 7.4 (no driver attached)
ahc0: Adaptec 29160 Ultra160 SCSI adapter port 0xdc00-0xdcff mem
0xdf00-0xdf000fff irq 15 at device 9.0 on pci0
ahc0: Reading SEEPROM...done.
ahc0: BIOS eeprom is present
ahc0: Secondary High byte termination Enabled
ahc0: Secondary Low byte termination Enabled
ahc0: Primary Low Byte termination Enabled
ahc0: Primary High Byte termination Enabled
ahc0: Downloading Sequencer Program... 424 instructions downloaded
aic7892: Wide Channel A, SCSI Id=7, 32/255 SCBs

-- 
Falco KrepelPhone:  +49-(0)30 - 34 63 - 7 276
GMD-FOKUS   Fax:+49-(0)30 - 34 63 - 8 276
Kaiserin-Augusta-Allee 31   e-mail: [EMAIL PROTECTED]
10589 BerlinWWW:http://www.fokus.gmd.de/usr/krepel

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported (conflict with ATA)

2001-03-22 Thread Matthew N. Dodd

On Thu, 22 Mar 2001, Justin T. Gibbs wrote:
 I think I found the problem. The problem occur since 03/14/2001. The
 following files could be infvolved:
 
 You'll have to ask Soren about this.  It looks like one part of
 ata-all (this is in -stable), clears the RF_SHAREABLE flag.  I
 don't know why this would be necessary for a PCI IDE device.

Yea, this bit me in the ass too and Soren mumbled something about how IDE
devices are allowed to violate PCI spec or something (at least thats how
it sounded to me).

I just told the BIOS to use other interrupts for the slots and not assign
either of 14 or 15.

-- 
| Matthew N. Dodd  | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD  |
| [EMAIL PROTECTED] |   2 x '84 Volvo 245DL| ix86,sparc,pmax |
| http://www.jurai.net/~winter |  For Great Justice!  | ISO8802.5 4ever |


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported (conflict with ATA)

2001-03-22 Thread Mike Smith

 On Thu, 22 Mar 2001, Justin T. Gibbs wrote:
  I think I found the problem. The problem occur since 03/14/2001. The
  following files could be infvolved:
  
  You'll have to ask Soren about this.  It looks like one part of
  ata-all (this is in -stable), clears the RF_SHAREABLE flag.  I
  don't know why this would be necessary for a PCI IDE device.
 
 Yea, this bit me in the ass too and Soren mumbled something about how IDE
 devices are allowed to violate PCI spec or something (at least thats how
 it sounded to me).

The interrupt is shareable; the BIOS knows best, and the ATA driver 
should sod off in this case.

If we want to argue about it, we can get a dump of the PCI interrupt 
routing table for this machine. 8)  Soren's concern is that some systems 
route IRQ 14 and 15 very oddly, but the only region for conflicts is 
really IRQs assigned to ISA devices.

-- 
... every activity meets with opposition, everyone who acts has his
rivals and unfortunately opponents also.  But not because people want
to be opponents, rather because the tasks and relationships force
people to take different points of view.  [Dr. Fritz Todt]
   V I C T O R Y   N O T   V E N G E A N C E



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-21 Thread Mark Hittinger

 
 Looks like I've got a similar problem only its aic7880/wide
 I've got a Dell optiplex 450 with an Adaptec 2940uw controller which can 
 boot but can't "mountroot".
 
 Perhaps something happend recently that makes it difficult to get
 "largish" chuncks of contiguous memory?  You'll have to instrument
 the driver to find out where the attach is failing.  Start by going
 into aic7xxx.c:ahc_init() and adding a printf to all of the early
 returns.  If that doesn't catch it, do the same for
 aic7xxx_pci.c:aic7xxx_config().

In aic7xxx_pci.c:ahc_pci_config() the call to ahc_pci_map_int(ahc) is
failing.  bus_alloc_resource() appears to need more time than I have
right now so that will have to wait till tonight :-)  It does look like
a more fundamental problem below the scsi driver is involved.

Thanks Justin.

Later

Mark Hittinger
Earthlink
[EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-20 Thread Justin T. Gibbs

Dear Justin,

Since the update around the middle of feb of the ahc driver the aic7892
chip is no longer supported correctly. The same card with aic7870 is
working as usual. So I think that this is the problem. The snapshot
(2001/02/10) of the current version is OK.

Can you give me the revision IDs of the files you are testing?
There was a short window where the probe had some issues, but
I don't recall if this is one of them.  A "pciconf -l" from
the working system would be useful too.  I have lots of 29160s
here so I should be able to reproduce this locally if there is
still an issue.

--
Justin

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-20 Thread Falco Krepel

### 29160 BIOS v.2.57.2

### pciconf

aries# pciconf -l
hostb0@pci0:0:0:class=0x06 card=0x chip=0x03051106
rev=0x02 hdr=0x00
pcib1@pci0:1:0: class=0x060400 card=0x0080 chip=0x83051106 rev=0x00
hdr=0x01
isab0@pci0:7:0: class=0x060100 card=0x1106 chip=0x06861106 rev=0x40
hdr=0x00
atapci0@pci0:7:1:   class=0x01018a card=0x05711106 chip=0x05711106
rev=0x06 hdr=0x00
none0@pci0:7:4: class=0x068000 card=0x30571106 chip=0x30571106 rev=0x40
hdr=0x00
ahc0@pci0:9:0:  class=0x01 card=0xe2a09005 chip=0x00809005 rev=0x02
hdr=0x00
xl0@pci0:11:0:  class=0x02 card=0x100010b7 chip=0x920010b7 rev=0x74
hdr=0x00
xl1@pci0:13:0:  class=0x02 card=0x100010b7 chip=0x920010b7 rev=0x74
hdr=0x00
none1@pci1:0:0: class=0x03 card=0x40151043 chip=0x011010de rev=0xa1
hdr=0x00
aries# 

### cvs status

File: ahc_eisa.cStatus: Up-to-date

   Working revision:1.21
   Repository revision: 1.21   
/usr/ncvs/src/sys/dev/aic7xxx/ahc_eisa.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: ahc_pci.c Status: Up-to-date

   Working revision:1.41
   Repository revision: 1.41   
/usr/ncvs/src/sys/dev/aic7xxx/ahc_pci.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7770.c Status: Up-to-date

   Working revision:1.4
   Repository revision: 1.4
/usr/ncvs/src/sys/dev/aic7xxx/aic7770.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

=
==
File: aic7xxx.c Status: Up-to-date

   Working revision:1.71
   Repository revision: 1.71   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx.h Status: Up-to-date
 
   Working revision:1.37
   Repository revision: 1.37   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx.h,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx.reg   Status: Up-to-date

   Working revision:1.35
   Repository revision: 1.35   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx.reg,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx.seq   Status: Up-to-date

   Working revision:1.113
   Repository revision: 1.113  
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx.seq,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_93cx6.c   Status: Up-to-date

   Working revision:1.13
   Repository revision: 1.13   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_93cx6.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_93cx6.h   Status: Up-to-date

   Working revision:1.9
   Repository revision: 1.9
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_93cx6.h,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_freebsd.c Status: Up-to-date

   Working revision:1.23
   Repository revision: 1.23   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_freebsd.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_freebsd.h Status: Up-to-date

   Working revision:1.8
   Repository revision: 1.8
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_freebsd.h,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_inline.h  Status: Up-to-date

   Working revision:1.14
   Repository revision: 1.14   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_inline.h,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)

===
File: aic7xxx_pci.c Status: Up-to-date

   Working revision:1.13
   Repository revision: 1.13   
/usr/ncvs/src/sys/dev/aic7xxx/aic7xxx_pci.c,v
   Sticky Tag:  (none)
   Sticky Date: 2001.03.18.23.00.00
   Sticky Options:  (none)


Re: ahc driver: aic7892 no longer supported

2001-03-20 Thread Justin T. Gibbs

I've just tested both -current and -stable on a card with identical
specs.  Can you provide more inforamtion on where the attach fails
(e.g. add printfs)?

### 29160 BIOS v.2.57.2

### pciconf

aries# pciconf -l
ahc0@pci0:9:0:  class=0x01 card=0xe2a09005 chip=0x00809005 rev=0x02

--
Justin

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-20 Thread Mark Hittinger


Looks like I've got a similar problem only its aic7880/wide

I've got a Dell optiplex 450 with an Adaptec 2940uw controller which can 
boot but can't "mountroot".

A kernel from last week can see the aic7880/wide but a kernel from the past
couple days cannot.

OK dmesg:

FreeBSD 5.0-CURRENT #10: Mon Mar 12 12:17:02 CST 2001
pcib0: Intel 82443BX (440 BX) host to PCI bridge at pcibus 0 on motherboard
pci0: PCI bus on pcib0
pcib1: PCI-PCI bridge at device 1.0 on pci0
pci1: PCI bus on pcib1
pci1: display, VGA at 0.0 (no driver attached)
...
pci0: bridge, PCI-unknown at 7.3 (no driver attached)
pcib2: PCI-PCI bridge at device 15.0 on pci0
pci2: PCI bus on pcib2
ahc0: Adaptec 2940 Pro Ultra SCSI adapter port 0xdc00-0xdcff mem 
0xfafff000-0xfaff irq 14 at device 10.0 on pci2
aic7880: Wide Channel A, SCSI Id=7, 16/255 SCBs

Bad dmesg: same thing but:

"ahc0 Platform free" instead of aic7880 line.

Here is pciconf -l

hostb0@pci0:0:0:class=0x06 card=0x chip=0x71908086 rev=0x03 
hdr=0x00
pcib1@pci0:1:0: class=0x060400 card=0x chip=0x71918086 rev=0x03 hdr=0x01
isab0@pci0:7:0: class=0x060100 card=0x chip=0x71108086 rev=0x02 hdr=0x00
atapci0@pci0:7:1:   class=0x010180 card=0x chip=0x71118086 rev=0x01 
hdr=0x00
uhci0@pci0:7:2: class=0x0c0300 card=0x chip=0x71128086 rev=0x01 hdr=0x00
none0@pci0:7:3: class=0x068000 card=0x chip=0x71138086 rev=0x02 hdr=0x00
pcib2@pci0:15:0:class=0x060400 card=0x00dc chip=0x00241011 rev=0x03 
hdr=0x01
xl0@pci0:17:0:  class=0x02 card=0x00821028 chip=0x905510b7 rev=0x24 hdr=0x00
none1@pci1:0:0: class=0x03 card=0x40821028 chip=0x47421002 rev=0x5c hdr=0x00
ahc0@pci2:10:0: class=0x01 card=0x78879004 chip=0x87789004 rev=0x01 hdr=0x00

Later

Mark Hittinger
Earthlink
[EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: ahc driver: aic7892 no longer supported

2001-03-20 Thread Justin T. Gibbs


Looks like I've got a similar problem only its aic7880/wide

I've got a Dell optiplex 450 with an Adaptec 2940uw controller which can 
boot but can't "mountroot".

Perhaps something happend recently that makes it difficult to get
"largish" chuncks of contiguous memory?  You'll have to instrument
the driver to find out where the attach is failing.  Start by going
into aic7xxx.c:ahc_init() and adding a printf to all of the early
returns.  If that doesn't catch it, do the same for
aic7xxx_pci.c:aic7xxx_config().  I'll add this logging the next
time I touch the driver.

--
Justin

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message