kernel panic happened inside method AppleSMCPDRC::Start (I was expected on probe, but...)
it reports "unrecognized controller type"
which I believe (and I've seen some hardcoded text strings inside ACPI_SMC...)
due to mismatch with 27d0 identities.
patch might be a good idea, also SMBus isn't a complex I2C bus protocol
however, due to latest reading IONDRVSupport code, found NUB name could be important also
NUB name of macbookpro = SBUS:
| | +-o SBUS@1F,3 <class IOPCIDevice, registered, matched, active, busy 0, retain count 7>
| | | {
| | | "built-in" = <00>
| | | "IODeviceMemory" = ({"offset"=0xefa0,"parent"=({"address"=0x0,"length"=0x10000}),"length"=0x20})
| | | "device-id" = <da270000>
| | | "name" = "pci8086,27da"
| | | "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/SBUS@1f0003"
| | | "acpi-device" = "IOACPIPlatformDevice is not serializable"
| | | "vendor-id" = <86800000>
| | | "revision-id" = <02000000>
| | | "IOName" = "pci8086,27da"
| | | "IOPCIResourced" = Yes
| | | "subsystem-vendor-id" = <86800000>
| | | "Power Management private data" = "{ this object = 038e2a00, interested driver = 038e2a00, driverDesire
= 0, deviceDesire = 0, ourDesiredPowerState = 2, previousRequest = 2 }"
| | | "IOInterruptControllers" = ("io-apic-0")
| | | "Power Management protected data" = "{ theNumberOfPowerStates = 3, version 1, power state 0 = { capabili
tyFlags 00000000, outputPowerCharacter 00000000, inputPowerRequirement 00000000, staticPower 0, unbudgetedPower 0, power
ToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, power state 1 = { ca
pabilityFlags 00000000, outputPowerCharacter 00000400, inputPowerRequirement 00000400, staticPower 0, unbudgetedPower 0,
powerToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, power state 2
= { capabilityFlags 00000000, outputPowerCharacter 00000002, inputPowerRequirement 00000002, staticPower 0, unbudgetedPo
wer 0, powerToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, aggressi
veness = 0, myCurrentState = 2, parentsCurrentPowerFlags = 00000002, maxCapability = 2 }"
| | | "class-code" = <00050c00>
| | | "compatible" = <"pci8086,7270","pci8086,27da","pciclass,0c0500">
| | | "assigned-addresses" = <20fb008100000000a0ef00000000000020000000>
| | | "subsystem-id" = <"pr">
| | | "reg" = <00fb00000000000000000000000000000000000020fb000100000000000000000000000020000
00>
| | | "IOInterruptSpecifiers" = (<1300000007000000>)
| | | }
NUB name of appleUnknown (aka Samsung R20) = SMB:
| | +-o SMB@14 <class IOPCIDevice, registered, matched, active, busy 0, retain count 7>
| | | {
| | | "device-id" = <85430000>
| | | "vendor-id" = <02100000>
| | | "IOName" = "pci1002,4385"
| | | "subsystem-vendor-id" = <4d140000>
| | | "Power Management protected data" = "{ theNumberOfPowerStates = 3, version 1, power state 0 = { capabili
tyFlags 00000000, outputPowerCharacter 00000000, inputPowerRequirement 00000000, staticPower 0, unbudgetedPower 0, power
ToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, power state 1 = { ca
pabilityFlags 00000000, outputPowerCharacter 00000400, inputPowerRequirement 00000400, staticPower 0, unbudgetedPower 0,
powerToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, power state 2
= { capabilityFlags 00000000, outputPowerCharacter 00000002, inputPowerRequirement 00000002, staticPower 0, unbudgetedPo
wer 0, powerToAttain 0, timeToAttain 0, settleUpTime 0, timeToLower 0, settleDownTime 0, powerDomainBudget 0 }, aggressi
veness = 0, myCurrentState = 2, parentsCurrentPowerFlags = 00000002, maxCapability = 2 }"
| | | "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/SMB@140000"
| | | "reg" = <00a000000000000000000000000000000000000010a0000100000000000000000000000010000
00>
| | | "revision-id" = <14000000>
| | | "IOPCIResourced" = Yes
| | | "IODeviceMemory" = ({"offset"=0x8410,"parent"=({"address"=0x0,"length"=0x10000}),"length"=0x10})
| | | "class-code" = <00050c00>
| | | "acpi-device" = "IOACPIPlatformDevice is not serializable"
| | | "subsystem-id" = <11c50000>
| | | "Power Management private data" = "{ this object = 02d0d880, interested driver = 02d0d880, driverDesire
= 0, deviceDesire = 0, ourDesiredPowerState = 2, previousRequest = 2 }"
| | | "assigned-addresses" = <10a0008100000000108400000000000010000000>
| | | "compatible" = <"pci144d,c511","pci1002,4385","pciclass,0c0500">
| | | "name" = "pci1002,4385"
| | | }
but PCIClasses are same - pciclass,0c0500
any ideas on how to fix NUB naming? which kext/field has to be fixed for this?