From: Glenn H. <gh...@c2...> - 2001-02-10 14:04:12
|
Hi, I found an error in apus_pci.c PCI is sort of working now. /proc/pci exists but is empty. The glint driver for XFree86 runs fine. There is no corruption on the console after exiting X like it was in 2.4.0-test10. The error was in apus_pcibios_##rw##_config_##size(...) can someone (Michel ? ) fix it and put it in the cvs ? here's the fixed code: __apus int \ apus_pcibios_##rw##_config_##size(struct pci_dev *dev, int offset, type val) \ { \ int fnno = FNNO(dev->devfn); \ int devno = DEVNO(dev->devfn); \ if (dev->bus->number > 0 || devno != 1) { \ cfg_##rw##_bad; \ return PCIBIOS_DEVICE_NOT_FOUND; \ } \ /* base address + function offset + offset ^ endianness conversion */ \ cfg_##rw(val, apus_hose->cfg_data + (fnno<<5) + (offset ^ mask), \ type, op); \ \ DPRINTK(#op "b: 0x%x, d: 0x%x, f: 0x%x, o: 0x%x, v: 0x%x\n", \ dev->bus->number, dev->devfn>>3, dev->devfn&7, \ offset, cfg_##rw##_val(val)); \ return PCIBIOS_SUCCESSFUL; \ } Here's the dmesg output I get now: Searching for SAVEKMSG magic... Found 8457 bytes at 0x001e0010 >>>>>>>>>>>>>>>>>>>> Total memory = 127MB; using 512kB for hash table (at c0200000) Linux version 2.4.1 (ro...@gu...d) (gcc version 2.95.2 19991024 (release/franzo)) #34 Sat Feb 10 14:35:05 GMT 2001 Amiga hardware found: [A4000] VIDEO BLITTER AUDIO FLOPPY A4000_IDE KEYBOARD MOUSE SERIAL PARALLEL A3000_CLK CHIP_RAM PAULA LISA ALICE_PAL ZORRO3 On node 0 totalpages: 32512 zone(0): 32512 pages. zone(1): 0 pages. zone(2): 0 pages. Kernel command line: root=/dev/hda7 video=pm2fb:mode:1024x768-75 debug debug=mem apus_pci: apus_setup_pci_ptrs: Phase5 B/CVisionPPC PCI bridge detected. amiga_enable_irq: Trying to enable auto-vector IRQ 1 amiga_enable_irq: Trying to enable auto-vector IRQ 3 amiga_enable_irq: Trying to enable auto-vector IRQ 4 amiga_enable_irq: Trying to enable auto-vector IRQ 5 amiga_enable_irq: Trying to enable auto-vector IRQ 7 amiga_enable_irq: Trying to enable auto-vector IRQ 2 amiga_enable_irq: Trying to enable auto-vector IRQ 6 APUS: BATs=1, BUS=67MHz, RAM=70ns, PCI bridge=1 time_init: decrementer frequency = 16.503734 MHz Console: colour dummy device 80x25 Calibrating delay loop... 460.39 BogoMIPS Memory: 125572k available (1024k kernel code, 432k data, 188k init, 0k highmem) Dentry-cache hash table entries: 16384 (order: 5, 131072 bytes) Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes) Page-cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 8192 (order: 4, 65536 bytes) POSIX conformance testing by UNIFIX PCI: Probing PCI hardware apus_pci: apus_pcibios_read_config_byte: readbb: 0x0, d: 0x1, f: 0x0, o: 0xe, v: 0x0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x0, v: 0x3d07104c apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x8, v: 0x3800001 apus_pci: apus_pcibios_read_config_byte: readbb: 0x0, d: 0x1, f: 0x0, o: 0x3d, v: 0x1 apus_pci: apus_pcibios_read_config_byte: readbb: 0x0, d: 0x1, f: 0x0, o: 0x3c, v: 0x0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0xef000000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0xfffe0000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0xef000000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0xe0000000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0xff800000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0xe0000000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0xe1000000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0xff800000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0xe1000000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x1c, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x1c, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x1c, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x1c, v: 0x0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x20, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x20, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x20, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x20, v: 0x0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x24, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x24, v: 0xffffffff apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x24, v: 0x0 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x24, v: 0x0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xe2000001 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xfffffffe apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xffff0000 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xe2000001 apus_pci: apus_pcibios_read_config_word: readwb: 0x0, d: 0x1, f: 0x0, o: 0x2c, v: 0xe4e4 apus_pci: apus_pcibios_read_config_word: readwb: 0x0, d: 0x1, f: 0x0, o: 0x2e, v: 0xe4e4 PCI: Calling quirk c000b8f0 for 00:01.0 Fixup mem res, dev: 0.1, res_start: ef000000->ef000000 Fixup mem res, dev: 0.1, res_start: e0000000->e0000000 Fixup mem res, dev: 0.1, res_start: e1000000->e1000000 Fixup mem res, dev: 0.1, res_start: e2000000->e2000000 apus_pcibios_fixup_bus: PCI mem resource requested apus_pci: apus_pcibios_read_config_word: readwb: 0x0, d: 0x1, f: 0x0, o: 0x4, v: 0x6 PCI: Resource ef000000-ef01ffff (f=200, d=0, p=0) PCI: Cannot allocate resource region 0 of device 00:01.0 PCI: Resource e0000000-e07fffff (f=200, d=0, p=0) PCI: Cannot allocate resource region 1 of device 00:01.0 PCI: Resource e1000000-e17fffff (f=200, d=0, p=0) PCI: Cannot allocate resource region 2 of device 00:01.0 PCI: Switching off ROM of 00:01.0 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xe2000001 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x30, v: 0xe2000000 apus_pci: apus_pcibios_read_config_word: readwb: 0x0, d: 0x1, f: 0x0, o: 0x4, v: 0x6 apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0x10000000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x10, v: 0x10000000 got res[10000000:1001ffff] for resource 0 of Texas Instruments TVP4020 [Permedia 2] apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0x10800000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x14, v: 0xe1000000 PCI: Error while updating region 00:01.0/1 (10800000 != e1000000) got res[10800000:10ffffff] for resource 1 of Texas Instruments TVP4020 [Permedia 2] apus_pci: apus_pcibios_write_config_dword: writelb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0x11000000 apus_pci: apus_pcibios_read_config_dword: readlb: 0x0, d: 0x1, f: 0x0, o: 0x18, v: 0x11000000 got res[11000000:117fffff] for resource 2 of Texas Instruments TVP4020 [Permedia 2] Zorro: Probing AutoConfig expansion devices: 3 devices Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Starting kswapd v1.8 Unhandled interrupt 18, disabled amiga_disable_irq: Trying to disable auto-vector IRQ 0 Console: switching to colour frame buffer device 128x48 fb0: CVisionPPC/BVisionPPC (Permedia2), using 8192K of video memory. pty: 256 Unix98 ptys configured block: queued sectors max/low 83325kB/27775kB, 256 slots per queue RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize loop: enabling 8 loop devices Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx ide0: Gayle IDE interface (A4000 style) hda: probing with STATUS(0x50) instead of ALTSTATUS(0xe0) hda: WDC AC313000R, ATA DISK drive hdb: probing with STATUS(0x51) instead of ALTSTATUS(0xe0) hdb: probing with STATUS(0x51) instead of ALTSTATUS(0xe0) hdb: probing with STATUS(0x51) instead of ALTSTATUS(0xe0) hdb: CRD-8240B, ATAPI CD/DVD-ROM drive ide0 at 80dd2020 on irq 0x0000000c hda: 25429824 sectors (13020 MB) w/512KiB Cache, CHS=25228/16/63 hdb: ATAPI 24X CD-ROM drive, 128kB Cache Uniform CD-ROM driver Revision: 3.12 Partition check: hda: RDSK hda1 hda2 hda3 hda4 hda5 hda6 hda7 hda8 hda9 hda10 hda11 Amiga-builtin serial driver version 4.30 ttyS00 is the amiga builtin serial port Amiga mouse installed. PPP generic driver version 2.4.1 NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 8192 bind 8192) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. VFS: Mounted root (ext2 filesystem) readonly. Freeing unused kernel memory: 188k init Warning: unable to open an initial console. Restarting system. <<<<<<<<<<<<<<<<<<<< - glenn |