Messages in this thread | | | From | Adam Goode <> | Date | Wed, 22 Apr 2015 22:56:45 -0400 | Subject | Re: Thunderbolt hotplug not working on MacMini7,1 |
| |
On Wed, Apr 22, 2015 at 12:05 AM, Adam Goode <adam@spicenitz.org> wrote: > (resending in plain text) > (please CC me on replies, I am not on LKML) > > Hi, > > I have a new Mac Mini (MacMini7,1). This model supports hotplugging of > Thunderbolt on Windows 8 and above. Unfortunately hotplug does not > seem to be working for me under Linux. I get the default behavior of > devices only working if plugged in during boot. > > Also, the changes made to support Darwin for _OSI seems to make it > impossible to override. This makes it hard to test if the ACPI support > for Windows 2012 will just work on Linux. I have not built a kernel > yet with Darwin _OSI patched out. > > Any ideas? I think there are 2 ways forward: > > 1. Fix the thunderbolt code to work with this new Mac. > 2. Limit the Darwin _OSI response to a whitelisted set of Mac > machines. It seems like new Macs going forward may work best with the > standard Windows 2012 response. I don't know if this method would have > advantages over #1. The obvious change might be chained hotplugging > support. I don't have a chained device to test. >
I have fixed the issue on my machine. On the Mac Mini, the 0x156c device has no subvendor or subdevice. When I added the new id to nhi_ids, everything worked without changing anything else in the kernel. This is in the _OSI("Darwin").
Perhaps the driver is overmatching on subvendor/subdevice. Is it necessary to do so on some models?
Can PCI_ANY_ID just be used for subvendor/subdevice?
Thanks,
Adam
| |