Contribute
Register

USB-C Hotplug not working

Status
Not open for further replies.

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,477
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
I have now tested your AppleIntelSKLGraphicsFramebuffer

No idea what you're referring to.

and the HDMI Output is only working in the Adapter when it gets replugged in the OS itself.

It is typical/expected with the Skylake graphics kexts...
 
Joined
Sep 2, 2011
Messages
173
Motherboard
Dell XPS 9550
CPU
i7 6700
Graphics
HD 530, GTX 960M
Mobile Phone
  1. iOS
I mean the Clover Kext Patch which you have written on page 1:
Code:
Although there are several ways to do it, I would first try swapping 0204 for 0306:
Name: AppleIntelSKLGraphicsFramebuffer
Find: 02 04 0A 00 00 04 00 00 C7 01 00 00
Replace: 03 06 0A 00 00 04 00 00 C7 01 00 00

When I use my internal HDMI Port then I get an picture on my external monitor after the OS has booted without replugging.

I have also checked the ACPI Specification on this Link http://www.uefi.org/sites/default/files/resources/ACPI_6_1.pdf
and on Page 540 there I have found something about USB-C maybe is there an way to create from this example an SSDT Patch to integrate the USB-C Port in an other Way that it is not seen as an PCI Device?
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,477
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
I mean the Clover Kext Patch which you have written on page 1:
Code:
Although there are several ways to do it, I would first try swapping 0204 for 0306:
Name: AppleIntelSKLGraphicsFramebuffer
Find: 02 04 0A 00 00 04 00 00 C7 01 00 00
Replace: 03 06 0A 00 00 04 00 00 C7 01 00 00

That is not a "AppleIntelSKLGraphicsFramebuffer". It is a "patch for AppleIntelSKLGraphicsFramebuffer".

When I use my internal HDMI Port then I get an picture on my external monitor after the OS has booted without replugging.

I don't know what you mean by "internal HDMI Port".

I have also checked the ACPI Specification on this Link http://www.uefi.org/sites/default/files/resources/ACPI_6_1.pdf
and on Page 540 there I have found something about USB-C maybe is there an way to create from this example an SSDT Patch to integrate the USB-C Port in an other Way that it is not seen as an PCI Device?

Why?
Do you believe something is wrong with the USB part already in your DSDT with regards to the USB ports on the Thunderbolt controller?
Note that _UPC has nothing to do with HDMI.
 
Joined
Sep 2, 2011
Messages
173
Motherboard
Dell XPS 9550
CPU
i7 6700
Graphics
HD 530, GTX 960M
Mobile Phone
  1. iOS
I know that this is an patch for AppleIntelSKLGraphicsFramebuffer. I also applied it in Clover as this.

With the internal HDMI Port I mean the HDMI Port which is builtin in my Laptop where the HDMI Output is working when I boot the Laptop and the picture is there without that I have to re-plug my HDMI Cable.

I know that the USB Part with _UPC has nothing to do with the HDMI Problem. I mean only that with this example that there is maybe an way to make the USB-C Port working with Hotplug instead to boot with the device attached overtime.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,477
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
I know that this is an patch for AppleIntelSKLGraphicsFramebuffer. I also applied it in Clover as this.

I was just trying to explain why I didn't know what you meant by "tested your AppleIntelSKLGraphicsFramebuffer".
If you had written "tested your AppleIntelSKLGraphicsFramebuffer patch"...

With the internal HDMI Port I mean the HDMI Port which is builtin in my Laptop where the HDMI Output is working when I boot the Laptop and the picture is there without that I have to re-plug my HDMI Cable.

Sometimes that requires hotplug, sometimes not. I think it depends on how BIOS initializes things...

I know that the USB Part with _UPC has nothing to do with the HDMI Problem. I mean only that with this example that there is maybe an way to make the USB-C Port working with Hotplug instead to boot with the device attached overtime.

I have a couple of computers here with TB3. But I have not started experimenting with them.
For the ones I have, I don't see anything wrong with the _UPC implementation provided by BIOS.
I think the hotplug issues are likely TB3 firmware differences, and other ACPI differences (eg. difference in naming between PCs and Macs).
 
Joined
Sep 2, 2011
Messages
173
Motherboard
Dell XPS 9550
CPU
i7 6700
Graphics
HD 530, GTX 960M
Mobile Phone
  1. iOS
Yes this the the AppleIntelSKLGraphicsFramebuffer was an typo by me on the first time. Sorry for that.

In IOReg I see that the USB-C Port is seen as an PCI Device and when you remove the Device out of the USB-C Port then it looks like you disattach an PCI Device and I think OS X can't handle an PCI replug and then I think that is the Problem why Hotplugging isn't working. I have seen an Method where someone has remapped this that it looks like that the USB-C Port is an Express Card and Hotplug should work then.
 
Last edited:

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,477
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
In IOReg I see that the USB-C Port is seen as an PCI Device

No idea what you mean. A USB port is a USB port... not a PCI device itself. It may be connected via a PCI device (xHCI controller or TB controller).

and when you remove the Device out of the USB-C Port then it looks like you disattach an PCI Device

Yes... it is typical. On a real Mac this PCIe hotplug is not employed and the TB controller shows up even if nothing is attached at boot.
 
Joined
Sep 2, 2011
Messages
173
Motherboard
Dell XPS 9550
CPU
i7 6700
Graphics
HD 530, GTX 960M
Mobile Phone
  1. iOS
I also have noticed when I do an replug of the Dell DA 200 the Device isn't shown in the Systeminformation but the HDMI Port is still working. The HDMI Output also worked at boot when I removed the USBInjectAll.kext but then the other Devices are not seen anymore.

Then I think it is connected via an PCI Controller and that's reason why I thought to inject this as an other Device which is supporting hotplug. I don't know if this is possible.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,477
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
I also have noticed when I do an replug of the Dell DA 200 the Device isn't shown in the Systeminformation but the HDMI Port is still working. The HDMI Output also worked at boot when I removed the USBInjectAll.kext but then the other Devices are not seen anymore.

Then I think it is connected via an PCI Controller and that's reason why I thought to inject this as an other Device which is supporting hotplug. I don't know if this is possible.

Thunderbolt is not 100% working on hacks... It is a work in progress...
 
Joined
Sep 2, 2011
Messages
173
Motherboard
Dell XPS 9550
CPU
i7 6700
Graphics
HD 530, GTX 960M
Mobile Phone
  1. iOS
Then I have to wait if someone maybe finds a real solution to this or maybe it is working in next Version of OS X with 10.13. The rest is working for my Laptop. Thank you.
 
Status
Not open for further replies.
Top