tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

acpi without pci, and pci bridges



The ia64 GENERIC kernel won't compile anymore:

[snipped...]
#      link  GENERIC/netbsd
/home/scole/nbsd/src/obj/tooldir.NetBSD-7.0.0_PATCH-i386/bin/ia64--netbsd-ld -Map netbsd.map --cref -T netbsd.ldscript -e start -X -o netbsd ${SYSTEM_OBJ:N*swap*netbsd*} ${EXTRA_OBJ} vers.o swapnetbsd.o
acpi_mcfg.o: In function `acpimcfg_scan_bus':
/home/scole/nbsd/src/sys/dev/acpi/acpi_mcfg.c:518: undefined reference to `pci_enumerate_bus'
*** [netbsd] Error code 1

I think it is related to the set of 1.2 changes for acpi_mcfg.c
 http://nxr.netbsd.org/history/src/sys/dev/acpi/acpi_mcfg.c
which seem to require pci for acpi code to compile.

Would it be worth the effort to make pci optional for acpi?  I know
there is a ton of other stuff to do for ia64 but it would be nice to
avoid that dependency.

The ia64 GENERIC kernel includes acpi but pci is commented out because
it is yet to be implemented for ia64:

######### some of ia64 GENERIC conf ###
# Advanced Configuration and Power Interface

acpi0		at mainbus?

# ACPI devices
acpitz*		at acpi?		# ACPI Thermal Zone
com*		at acpi?		# Serial communications interface

# PCI bus support
#pci*		at mainbus? bus ?
#########

Also, does anyone know the state of state of pci bridges in general?
I saw there was attempt at one for ia64, but I don't think it was ever
checked in:
 http://mail-index.netbsd.org/port-ia64/2010/06/29/msg000116.html

Just for reference, my ia64 rx2600 has several pci bridges:
 http://www.openpa.net/systems/il/rp3400-bus.txt

freebsd runs on it and detects them like:

Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 10.1-RELEASE #0 r274401: Wed Nov 12 00:16:33 UTC 2014
    root%releng1.nyi.freebsd.org@localhost:/usr/obj/ia64.ia64/usr/src/sys/GENERIC ia64
gcc version 4.2.1 20070831 patched [FreeBSD]
CPU: Madison (1400 MHz Itanium 2)
  Origin = "GenuineIntel"  Revision = 5
  Features = 0x1<LB>
real memory  = 3221225472 (3072 MB)
avail memory = 3124625408 (2979 MB)
FPSWA Revision = 0x10012, Entry = 0xe0000040bfe60050
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
cpu0: ACPI Id=0, SAPIC Id=0, SAPIC Eid=0 (BSP)
cpu1: ACPI Id=1, SAPIC Id=1, SAPIC Eid=0
random: <Software, Yarrow> initialized
Event timer "ITC" frequency 1400000000 Hz quality 1000
ACPI BIOS Warning (bug): 32/64X length mismatch in FADT/Gpe0Block: 32/16 (20130823/tbfadt-603)
ACPI BIOS Warning (bug): 32/64X length mismatch in FADT/Gpe1Block: 32/16 (20130823/tbfadt-603)
acpi0: <HP> on motherboard
acpi0: Power Button (fixed)
acpi0: Sleep Button (fixed)
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <32-bit timer at 3.579545MHz> iomem 0xff5c1004-0xff5c1007 on acpi0
acpi_tz0: <Thermal Zone> on acpi0
pcib0: <ACPI Host-PCI bridge> on acpi0
pcib0: could not evaluate _ADR - AE_NOT_FOUND
pci0: <ACPI PCI bus> on pcib0
ohci0: <NEC uPD 9210 USB controller> mem 0x80023000-0x80023fff irq 16 at device 1.0 on pci0
usbus0 on ohci0
ohci1: <NEC uPD 9210 USB controller> mem 0x80022000-0x80022fff irq 17 at device 1.1 on pci0
usbus1 on ohci1
ehci0: <NEC uPD 720100 USB 2.0 controller> mem 0x80021000-0x800210ff irq 18 at device 1.2 on pci0
usbus2: EHCI version 0.95
usbus2 on ehci0
atapci0: <SiI (CMD) 649 UDMA100 controller> port 0xd58-0xd5f,0xd64-0xd67,0xd50-0xd57,0xd60-0xd63,0xd40-0xd4f irq 21 at device 2.0 on pci0
atapci0: HW has secondary channel disabled
ata2: <ATA channel> at channel 0 on atapci0
fxp0: <Intel 82550C Pro/100 Ethernet> port 0xd00-0xd3f mem 0x80020000-0x80020fff,0x80000000-0x8001ffff irq 20 at device 3.0 on pci0
miibus0: <MII bus> on fxp0
inphy0: <i82555 10/100 media interface> PHY 1 on miibus0
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto, auto-flow
fxp0: Ethernet address: 00:30:6e:f3:eb:46
pcib1: <ACPI Host-PCI bridge> on acpi0
pcib1: could not evaluate _ADR - AE_NOT_FOUND
pci32: <ACPI PCI bus> on pcib1
mpt0: <LSILogic 1030 Ultra4 Adapter> port 0x2100-0x21ff mem 0x90840000-0x9084ffff,0x90830000-0x9083ffff irq 27 at device 1.0 on pci32
mpt0: MPI Version=1.2.12.0
mpt1: <LSILogic 1030 Ultra4 Adapter> port 0x2000-0x20ff mem 0x90820000-0x9082ffff,0x90810000-0x9081ffff irq 28 at device 1.1 on pci32
mpt1: MPI Version=1.2.12.0
bge0: <Broadcom NetXtreme Gigabit Ethernet Controller, ASIC rev. 0x000105> mem 0x90800000-0x9080ffff irq 29 at device 2.0 on pci32
bge0: CHIP ID 0x00000105; ASIC REV 0x00; CHIP REV 0x01; PCI on PCI-X 66 MHz; 64bit
miibus1: <MII bus> on bge0
brgphy0: <BCM5701 1000BASE-T media interface> PHY 1 on miibus1
brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, auto, auto-flow
bge0: Ethernet address: 00:30:6e:f3:5b:59
pcib2: <ACPI Host-PCI bridge> on acpi0
pcib2: could not evaluate _ADR - AE_NOT_FOUND
pci64: <ACPI PCI bus> on pcib2
pcib3: <ACPI Host-PCI bridge> on acpi0
pcib3: could not evaluate _ADR - AE_NOT_FOUND
pci96: <ACPI PCI bus> on pcib3
pcib4: <ACPI Host-PCI bridge> on acpi0
pcib4: could not evaluate _ADR - AE_NOT_FOUND
pci128: <ACPI PCI bus> on pcib4
pcib5: <ACPI Host-PCI bridge> on acpi0
pcib5: could not evaluate _ADR - AE_NOT_FOUND
pci192: <ACPI PCI bus> on pcib5
pcib6: <ACPI Host-PCI bridge> on acpi0
pcib6: could not evaluate _ADR - AE_NOT_FOUND
pci224: <ACPI PCI bus> on pcib6
uart0: <HP Auxiliary Diva Serial Port> mem 0xf4051000-0xf405100f irq 82 at device 1.0 on pci224
puc0: <HP Diva Serial [GSP] Multiport UART - Everest SP2> mem 0xf4050000-0xf4050fff,0xf4020000-0xf403ffff irq 82 at device 1.1 on pci224
uart1: <Non-standard ns8250 class UART with FIFOs> at port 1 on puc0
uart1: console (9600,n,8,1)
uart2: <Non-standard ns8250 class UART with FIFOs> at port 2 on puc0
uart3: <Non-standard ns8250 class UART with FIFOs> at port 3 on puc0
vgapci0: <VGA-compatible display> port 0xe000-0xe0ff mem 0xf0000000-0xf3ffffff,0xf4040000-0xf404ffff at device 2.0 on pci224
vgapci0: Boot video device
uart4: <16550 or compatible> iomem 0xff5e0000-0xff5e0007 irq 34 on acpi0
uart5: <16550 or compatible> iomem 0xff5e2000-0xff5e2007 irq 35 on acpi0
Timecounters tick every 1.000 msec
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 480Mbps High Speed USB v2.0
ugen1.1: <NEC> at usbus1
ugen0.1: <NEC> at usbus0
uhub0: <NEC OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
uhub1: <NEC OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen2.1: <NEC> at usbus2
uhub2: <NEC EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
uhub0: 2 ports with 2 removable, self powered
uhub1: 3 ports with 3 removable, self powered
uhub2: 5 ports with 5 removable, self powered
random: unblocking device.
da0 at mpt0 bus 0 scbus1 target 0 lun 0
da0: <HP 36.4G MAS3367NC HPC3> Fixed Direct Access SCSI-3 device 
da0: Serial Number KT043898    0422
da0: 320.000MB/s transfers (160.000MHz, offset 127, 16bit)
da0: Command Queueing enabled
da0: 34732MB (71132960 512 byte sectors: 255H 63S/T 4427C)
da1 at mpt0 bus 0 scbus1 target 1 lun 0
da1: <HP 36.4G MAS3367NC HPC3> Fixed Direct Access SCSI-3 device 
da1: Serial Number KT043838    0422
da1: 320.000MB/s transfers (160.000MHz, offset 127, 16bit)
da1: Command Queueing enabled
da1: 34732MB (71132960 512 byte sectors: 255H 63S/T 4427C)
cd0 at ata2 bus 0 scbus0 target 0 lun 0
cd0: <TEAC DV-28E-C C.4D> Removable CD-ROM SCSI-0 device 
cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)
cd0: Attempt to query device size failed: NOT READY, Medium not present
Trying to mount root from ufs:/dev/da0p1 []...

Thanks



Home | Main Index | Thread Index | Old Index