Help - Search - Members - Calendar
Full Version: Pci Detection Problems
Project OS X Forums > Snow Leopard Guides & Tutorials > DSDT Patching
waringd
I am using the Toshiba Satellite P300 laptop as my "Hackintosh" and I have got my software updated to 10.5.8

Here is my current setup:

Software Version - 10.5.8
Hardware
-----------
Intel GMA 4500 MHD - Working without QE/CI with Chameleon 915 patch
4 x USB ports - All working
Intel HDA - Working
Trackpad - Working

The problem that I have now got is that everything else on my motherboard doesnt work and System Profiler doesnt detect any PCI cards but lspci does.

SD Card Slot - O2 Micro Not Working
Firewire Port - O2 Micro Not Working
Wifi Card - Dell 1505 (Broadcom BCM4321 bought especially) Not working
Modem / S Video / Video Out - Not tried

If anyone could possibly give me some quidance on how to solve this I would be very thankful!

Here is the readout from lspci using OSX86Tools that may be some help:

00:00.0 Host bridge [0600]: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub [8086:2a40] (rev 07)
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07)
00:02.1 Display controller [0380]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a43] (rev 07)
00:1a.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 [8086:2937] (rev 03)
00:1a.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 [8086:2938] (rev 03)
00:1a.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 [8086:2939] (rev 03)
00:1a.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 [8086:293c] (rev 03)
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 [8086:2940] (rev 03)
00:1c.1 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 [8086:2942] (rev 03)
00:1c.3 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 [8086:2946] (rev 03)
00:1d.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 [8086:2934] (rev 03)
00:1d.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 [8086:2935] (rev 03)
00:1d.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 [8086:2936] (rev 03)
00:1d.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 [8086:293a] (rev 03)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev 93)
00:1f.0 ISA bridge [0601]: Intel Corporation ICH9M LPC Interface Controller [8086:2919] (rev 03)
00:1f.2 SATA controller [0106]: Intel Corporation ICH9M/M-E SATA AHCI Controller [8086:2929] (rev 03)
00:1f.3 SMBus [0c05]: Intel Corporation 82801I (ICH9 Family) SMBus Controller [8086:2930] (rev 03)
02:00.0 Network controller [0280]: Broadcom Corporation BCM4328 802.11a/b/g/n [14e4:4328] (rev 03)
03:00.0 Ethernet controller [0200]: Marvell Technology Group Ltd. Unknown device [11ab:4355] (rev 12)
0a:01.0 FireWire (IEEE 1394) [0c00]: O2 Micro, Inc. Firewire (IEEE 1394) [1217:00f7] (rev 02)
0a:01.2 SD Host controller [0805]: O2 Micro, Inc. Integrated MMC/SD Controller [1217:7120] (rev 02)
0a:01.3 Mass storage controller [0180]: O2 Micro, Inc. Integrated MS/xD Controller [1217:7130] (rev 01)

I'll tell you what I have done so far:

Tried Chunnan's IOPCIFamily.kext... finds my devices but hangs just after finding NTFS (Windows is on a diffrerent Hard Drive in Laptop) drives. Nearly always comes up with IntelCPUPowerManagement just after on any patched kext (tried Slice's patch too booted fine but no devices). Without patched Kexts Leopard boots up great except it doesnt find any of my PCI devices.

I did a lot of googling on spec on Macs to try and change my identifier (Currently MacBookPro4,1) but to no avail unfortunately so I tried looking down the DSDT route... thats where my head just about exploded!!!

I have used Everest in Windows to Extract the DSDT from my Mobo as I read somewhere that it is better to extract it from a running system due to memory changes on the fly. I also did a full PCI dump using that program too as it looked as if it gave a lot more information than what lspci gave out.

What I am asking for is: Is it possible for someone to have a look at the DSDT as point me to some specifics that may be wrong so that I can try and get this working. All I want to get working is my WIFI if thats all I can get as I never use FireWire or PCMCIA. I would like to use the Card Reader but I can live without it. I VERY rarely use LAN and occassionally use VGA out.

I have attached the DSDT.aml, the original output from Everest and the pcidump from it too. Could you possibly have a look at it for me and provide me with some help?

Thanks in advance!

Click to view attachment
lebidou
Hello,

I don't think it comes from a wrong pci detection at all, in fact, on my system, no pci devices are listed in system profiler either and they're recognized. For your wifi, you should patch your DSDT to "trick" Apple drivers (there is some tutorials to do that around here). Indeed the driver won't load for your 4321 id, you should probably use 4320.
You can also modify the Info.plist in AppleAirPortBrcm4311.kext to turn the 4320 id to 4321.

That's for the WiFi, I haven't looked much the other.
waringd
Hi,

thank you for your reply.

When I used eureka's kext it detected my hardware straight away but was always hanging.

Apples drivers detected my wifi and loaded the drivers up and I once got it loaded up in safe mode just after install and let me go through the welcome stuff but booting normal after did the same
smaky
It`s a problem which have many users of acer notebooks, for example users of acer (6930), it`s bad addresing pci devices in acpi. So only two things can fix this problem: 1 good bios with correct acpi or 2 readdresig pci devices in dsdt.
oldnapalm
QUOTE (smaky @ Mar 20 2010, 09:17 PM) *
It`s a problem which have many users of acer notebooks, for example users of acer (6930), it`s bad addresing pci devices in acpi. So only two things can fix this problem: 1 good bios with correct acpi or 2 readdresig pci devices in dsdt.

Hi Smaky,

could you please give more details about method 2 ("readdressing pci devices in dsdt")?

I have this problem with Acer Aspire 5920, have to use Chun-nan's IOPCIFamily to get the wifi card working. The problem is I'm running Snow Leopard and the kext is for Leopard, so I have to use i386 arch.

I would really like to fix this in DSDT.

Thanks a lot.

lspci diff ("<" = using Chun-nan's 10.5.6, ">" = using vanilla 10.6.2 IOPCIFamily)
CODE
20,21c20,21
< 01:00.0 Ethernet controller [0200]: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express [14e4:1693] (rev 02)
< 02:00.0 Network controller [0280]: Broadcom Corporation BCM4311 802.11b/g WLAN [14e4:4311] (rev 01)
---
> 06:00.0 Network controller [0280]: Broadcom Corporation BCM4311 802.11b/g WLAN [14e4:4311] (rev 01)
> 08:00.0 Ethernet controller [0200]: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express [14e4:1693] (rev 02)


ioreg diff
CODE

1997c1995
< | | +-o RP04@1C,3 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (573 ms), retain 9>
---
> | | +-o RP04@1C,3 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (659 ms), retain 27>
1999c1997
< | | | | "AAPL,slot-name" = <"PCI Slot">
---
> | | | | "IOInterruptSpecifiers" = (<1300000007000000>)
2001d1998
< | | | | "IOInterruptSpecifiers" = (<1300000007000000>,<0300000000000100>)
2013c2010
< | | | | "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")
---
> | | | | "IOInterruptControllers" = ("io-apic-0")
2019c2016
< | | | | "IODTPersist" = <2c966f2e90966f2e>
---
> | | | | "IODTPersist" = <a2f1542ea200552e>
2023c2020
< | | | | "ranges" = <0000008200000000000020800000008200000000000020800000000000001000>
---
> | | | | "ranges" = <000000c20000000000000000000000c2000000000000000000000000000010000000008100000
000000000000000008100000000000000000000000000100000>
2026c2023
< | | | +-o IOPCI2PCIBridge <class IOPCI2PCIBridge, id 0x0, registered, matched, active, busy 0 (525 ms), retain 7>
---
> | | | +-o IOPCI2PCIBridge <class IOPCI2PCIBridge, id 0x0, registered, matched, active, busy 0 (445 ms), retain 7>
2032c2029
< | | | | "Bridge Memory Ranges" = (18446744071564181504,18446744071565213695,18446744073708503040,1048575)
---
> | | | | "Bridge Memory Ranges" = (0,1048575)
2036c2033
< | | | | "Bridge IO Ranges" = (61440,4095)
---
> | | | | "Bridge IO Ranges" = (0,4095)
2039,2153c2036,2059
< | | | +-o network@0 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (525 ms), retain 9>
< | | | | {
< | | | | "built-in" = <00>
< | | | | "IODeviceMemory" = (({"address"=18446744071564165120,"length"=16384}))
< | | | | "device-id" = <11430000>
< | | | | "IOChildIndex" = 1
< | | | | "name" = "network"
< | | | | "IOName" = "network"
< | | | | "vendor-id" = <e4140000>
< | | | | "revision-id" = <01000000>
< | | | | "acpi-wake-type" = 2
< | | | | "IOPCIResourced" = Yes
< | | | | "subsystem-vendor-id" = <3c100000>
< | | | | "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")
< | | | | "IOPCIExpressLinkCapabilities" = 222225
< | | | | "IOPCIExpressLinkStatus" = 4113
< | | | | "IOPowerManagement" = {"ChildrenPowerState"=2,"CurrentPowerState"=2}
< | | | | "class-code" = <00800200>
< | | | | "IOPCIMSIMode" = Yes
< | | | | "compatible" = <"pci103c,1363","pci14e4,4311","pciclass,028000">
< | | | | "subsystem-id" = <63130000>
< | | | | "assigned-addresses" = <1000028200000000000020800000000000400000>
< | | | | "IOPCIExpressASPMDefault" = 1
< | | | | "reg" = <00000200000000000000000000000000000000001000020200000000000000000000000000400
000>
< | | | | "IOInterruptSpecifiers" = (<1300000007000000>,<0600000000000100>)
< | | | | }
< | | | |
< | | | +-o AirPort_Brcm43xx <class AirPort_Brcm43xx, id 0x0, registered, matched, active, busy 0 (9 ms), retain 9>
< | | | | {
< | | | | "IONameMatch" = ("pci106b,4e","pci14e4,4311","pci14e4,4312","pci14e4,4313","pci14e4,4318",
"pci14e4,4319","pci14e4,431a","pci14e4,4320","pci14e4,4324","pci14e4,4325","pci14e4,4328","pci14e4,432b","pci14e4,432c","pci14e4,432d")
< | | | | "IOFeatures" = 8
< | | | | "IOMediumDictionary" = {"00000080"={"Flags"=0,"Index"=0,"Speed"=11000000,"Type"=128}}
< | | | | "IOMatchCategory" = "IODefaultMatchCategory"
< | | | | "CFBundleIdentifier" = "com.apple.driver.AirPortBrcm43xx"
< | | | | "IOMinPacketSize" = 64
< | | | | "IOPacketFilters" = {"IONetworkFilterGroup"=275,"IOEthernetWakeOnLANFilterGroup"=0}
< | | | | "IOModel" = "Wireless Network Adapter (802.11 b/g)"
< | | | | "IOFirmwareVersion" = "Broadcom BCM43xx 1.0 (5.10.91.26)"
< | | | | "IONameMatched" = "pci14e4,4311"
< | | | | "IOVendor" = "Unknown"
< | | | | "IOLinkStatus" = 3
< | | | | "APChipRev" = 1
< | | | | "TruePowerOff" = Yes
< | | | | "IOProbeScore" = 0
< | | | | "IOGeneralInterest" = "IOCommand is not serializable"
< | | | | "IOMaxPacketSize" = 1518
< | | | | "IOClass" = "AirPort_Brcm43xx"
< | | | | "IOProviderClass" = "IOPCIDevice"
< | | | | "IOSelectedMedium" = "00000080"
< | | | | "IOMACAddress" = <001a73530970>
< | | | | "IOPowerManagement" = {"CurrentPowerState"=2}
< | | | | "IOLinkSpeed" = 54000000
< | | | | "APFeatures" = 1
< | | | | "IOActiveMedium" = "00000080"
< | | | | }
< | | | |
< | | | +-o AirPort_Brcm43xxInterface <class AirPort_Brcm43xxInterface, id 0x0, registered, matched, active, busy 0 (8 ms), retain 10>
< | | | | {
< | | | | "IONetworkData" = {"IOEthernetStatsKey"={"Data"=<0000000000000000000000000000000000000
0000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000
0
00000000000000000000000000000000000000000000000000000000000000000000000000000000
0
00000000000000000000000000000000000000000000000000000000000000000000000000000000
0
00000000000000000000000000000000000000000000000000000000000000000000000000000000
0
0000000000000000000000000000000>,"Access Types"=9,"Size"=216},"IONetworkStatsKey"={"Data"=
<3100000000000000790000000000000000000000>,"Access Types"=9,"Size"=20},"IOOutputQueueStatsKey"={"Data"=
<00010000000000000000000000000000000000000000000000000000000000000000000000000
00000000000>,"Access Types"=9,"Size"=44}}
< | | | | "IOInterfaceState" = 3
< | | | | "IO80211DriverVersion" = "Broadcom BCM43xx 1.0 (5.10.91.26)"
< | | | | "IOInterfaceUnit" = 1
< | | | | "IOActivePacketFilters" = {"IONetworkFilterGroup"=19,"IOEthernetWakeOnLANFilterGroup"=0}
< | | | | "IOInterfaceType" = 6
< | | | | "IO80211Locale" = "FCC"
< | | | | "IOMulticastAddressList" = <01005e0000fb3333000000fb01005e0000013333f8cdf8033333000000013333ff53097001039
3df0b92>
< | | | | "IOLocation" = ""
< | | | | "IOInterfaceNamePrefix" = "en"
< | | | | "IOInterfaceFlags" = 34915
< | | | | "IOInterfaceExtraFlags" = 1073744192
< | | | | "IO80211CountryCode" = "US"
< | | | | "IOControllerEnabled" = Yes
< | | | | "IO80211SSID" = "outlawcowboy"
< | | | | "IO80211BSSID" = <001cf039ebe7>
< | | | | "IO80211RSNDone" = Yes
< | | | | "BSD Name" = "en1"
< | | | | "IOMediaHeaderLength" = 14
< | | | | "IOBuiltin" = Yes
< | | | | "IO80211Channel" = 6
< | | | | "IOMaxTransferUnit" = 1500
< | | | | "IORequiredPacketFilters" = {"IONetworkFilterGroup"=19,"IOEthernetWakeOnLANFilterGroup"=0}
< | | | | "IOMediaAddressLength" = 6
< | | | | "IO80211Band" = "2.4 GHz"
< | | | | "IO80211HardwareVersion" = "vendorid: 0x14e4
< deviceid: 0x4311
< radiorev: 0x22050000
< chipnum: 0x4311
< chiprev: 0x1
< corerev: 0xa
< boardid: 0x1363
< boardvendor: 0x103c
< boardrev: 0x42
< driverrev: 0x50a5b1a
< ucoderev: 0x1fc0506
< bus: 0x1
< "
< | | | | "IOPrimaryInterface" = No
< | | | | }
< | | | |
< | | | +-o IONetworkStack <class IONetworkStack, id 0x0, registered, matched, active, busy 0 (3 ms), retain 9>
< | | | | {
< | | | | "IOResourceMatch" = "IOBSD"
< | | | | "IOMatchCategory" = "IONetworkStack"
< | | | | "CFBundleIdentifier" = "com.apple.iokit.IONetworkingFamily"
< | | | | "IOProbeScore" = 0
< | | | | "IOClass" = "IONetworkStack"
< | | | | "IOProviderClass" = "IOResources"
< | | | | }
< | | | |
< | | | +-o IONetworkStackUserClient <class IONetworkStackUserClient, id 0x0, !registered, !matched, active, busy 0, retain 5>
< | | | {
< | | | "IOUserClientCreator" = "pid 15, configd"
< | | | }
< | | |
< | | +-o RP06@1C,5 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (184 ms), retain 9>
---
> | | | +-o pci14e4,4311@0 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (445 ms), retain 26>
> | | | {
> | | | "device-id" = <11430000>
> | | | "vendor-id" = <e4140000>
> | | | "IOName" = "pci14e4,4311"
> | | | "subsystem-vendor-id" = <3c100000>
> | | | "IOPCIExpressLinkStatus" = 4113
> | | | "revision-id" = <01000000>
> | | | "reg" = <00000600000000000000000000000000000000001000060200000000000000000000000000400
000>
> | | | "acpi-wake-type" = 2
> | | | "IOPCIResourced" = Yes
> | | | "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")
> | | | "class-code" = <00800200>
> | | | "subsystem-id" = <63130000>
> | | | "IOChildIndex" = 1
> | | | "compatible" = <"pci103c,1363","pci14e4,4311","pciclass,028000">
> | | | "IOInterruptSpecifiers" = (<1300000007000000>,<0300000000000100>)
> | | | "IOPCIExpressASPMDefault" = 1
> | | | "name" = "pci14e4,4311"
> | | | "IOPCIExpressLinkCapabilities" = 222225
> | | | "IOPowerManagement" = {"CurrentPowerState"=2}
> | | | }
> | | |
> | | +-o RP06@1C,5 <class IOPCIDevice, id 0x0, registered, matched, active, busy 0 (221 ms), retain 27>


DSDT
CODE

Device (RP04)
{
Name (_ADR, 0x001C0003)
OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0x10),
, 4,
LKDS, 1,
Offset (0x12),
, 13,
LASX, 1,
Offset (0x1A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x1B),
LSCX, 1,
Offset (0x20),
Offset (0x22),
PSPX, 1,
Offset (0x98),
, 30,
HPEX, 1,
PMEX, 1,
, 30,
HPSX, 1,
PMSX, 1
}

Method (_PRT, 0, NotSerialized)
{
If (\GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
0x00,
0x13
},

Package (0x04)
{
0xFFFF,
0x01,
0x00,
0x10
},

Package (0x04)
{
0xFFFF,
0x02,
0x00,
0x11
},

Package (0x04)
{
0xFFFF,
0x03,
0x00,
0x12
}
})
}
Else
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
\_SB.PCI0.LPCB.LNKD,
0x00
},

Package (0x04)
{
0xFFFF,
0x01,
\_SB.PCI0.LPCB.LNKA,
0x00
},

Package (0x04)
{
0xFFFF,
0x02,
\_SB.PCI0.LPCB.LNKB,
0x00
},

Package (0x04)
{
0xFFFF,
0x03,
\_SB.PCI0.LPCB.LNKC,
0x00
}
})
}
}
}


Click to view attachment
waringd
What I really need is for someone to tell me what to do!

I have no idea on what to do with this but I am prepared to learn with guidance and tutoring!

Can someone please please please help me with my problem?
gatix
i have the same issue with my acer laptop
waringd
Hi Everyone,

I seem to have got a little further in investigating but no further in fixing. I've given up hope on most of the other things and concentrating on wifi. I have got the Broadcom 4328 chipset which should be automatically detected by OS X but isnt. Device and Vendor Id in plist are there but it still doesnt detect.

I downloaded xCode so that I could use IORegistryExplorer to obtain some more information and I found my device (I think)

Click to view attachment

Now as far as I can see this is the relevant entry in DSDT:

CODE
Device (PXS1)
{
Name (_ADR, Zero)
Name (WPRW, Package (0x02)
{
0x09,
0x05
})
Method (_PRW, 0, NotSerialized)
{
If (LEqual (WOLI, Zero))
{
Store (Zero, Index (WPRW, One))
}
Else
{
Store (0x05, Index (WPRW, One))
}

Return (WPRW)


Can anyone see where the problem lies within these. Im pretty sure that the device-id should probably not be<"(C"> or maybe it should.

This is where your help comes in. Please take the time to have a look at these and give me some advice!

Thanks

Danny
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2012 Invision Power Services, Inc.