Messages in this thread | | | From | Andreas Noever <> | Date | Thu, 23 Apr 2015 12:08:01 +0200 | Subject | Re: Thunderbolt hotplug not working on MacMini7,1 |
| |
Hi Adam,
On my system (MacBookPro10,1 - 4 channel TB1) the bridges and the controller both use 0x1547 and are only differentiated by subvendor/subdevice.
0x156c is the 4 channel TB2 controller and was originally added by Matthew. Judging from his patch it looks like the subvendor/subdevice is set on his system: http://patchwork.ozlabs.org/patch/354626/
But it also indicates that the bridges already use different ids. If that is the case then we can drop the subvendor/subdevice for 0x156c. Matthew can you confirm that on your system 0x156c is used only for the controller?
Adam, could you check that suspend/resume works properly? Also your bugzilla report suggest that hotplug might now work without the driver. Could you try to revert the _OSI check (and disable the driver) and check whether everything "just works"?
Andreas
On Thu, Apr 23, 2015 at 4:56 AM, Adam Goode <adam@spicenitz.org> wrote: > 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
| |