Jump to content

Mapping USB Ports Discussions


Guest 5T33Z0
 Share

74 posts in this topic

Recommended Posts

The source for the methods is the motherboard ACPI is not mald, geng, etc. Is just duplicating one OEM method(GUPC in this case) and applying connectors type. If u have a basic ACPI knowledge u know. All credits for it is for Piker Alpha HERE and previous chipsets like 7, 8, 9, X79, x99 HERE.  This method of mapping has existed for many, many years and is not my credit or gengik or texem or 5t33z0. Think about it before wrong words. We stole method GUPC from intel and apply the Piker ofc. lol

Some correct words

nIxV7mF.png

 

Talking about stolen? Let's check on the net. Gotta love the internet…

https://www.insanelymac.com/forum/topic/321434-help-correct-dsdt-gigabayte-h97-d3h/#comment-2372715

The first repo is HERE and all from this guy stolen from there with no credits to the king, master chief, etc. and this guy is from which country? we know who is pjalm's "friends" and have many many others like script for chameleon activate partition too in clover topic, etc

We've got a long history of love and hate lol

 

Keep up the good discussion. Enjoy!

 

Just one question.. If people use this way(a real vanilla way) why not one real vanilla way with full DSDT patch? Sounds incomplete to me only USB vanilla way. 😀

The topic has been cleared.

Link to comment
Share on other sites

@miliucofor what? lies is lies ever. If people like lies and intrigue go to "paradise" on discord. Talking about a subject without knowledge always causes problems. We know what people talking there.😆

 

Just focus on topic. off topic or spam is deleted, this is a bad practice.

Link to comment
Share on other sites

@MaLd0n Hi

In the guide I wrote some time ago (2018 years) there are listed all the credits maybe you haven't seen this but it doesn't matter. :)

Discovery of Piker Alpha but he hadn't defined the connectors, at the time it was not a required thing.

I added to this method  the definition for usb connector type, obviously based on ACPIC documentation.

Without ACPICA no one would ever have done anything :hysterical:

11 hours ago, MaLd0n said:

The first repo is HERE 

You know that you wrote the guide later, this is because an Italian user, who is also present on this forum, came to your forum and you saw the work ... SSDT modified .... etc I remember you initially criticized me for this method, just see a few posts here on Insanely / Italian where you did it. You criticized me saying "it doesn't work" and obviously it didn't work if you don't drop the original OEM table

 You wrote your guide at Octorber 2019 but have do some time before... it's one simple example:https://www.insanelymac.com/forum/topic/336515-mojave-usb-30-gigabyte-z370-aorus-gaming-wifi-rev-1/page/2/#comment-2648418 but there are others both here and on my forum

 

About P.Jalm :

Sir do you still have a grudge for that? I just said his patches worked fine. From there you said that he stole them from you but I can't know what happened between you, do you understand? These are your things, things from many years ago and I cannot judge...I hope you understand this. 

I wasn't there at the time, I can only believe one or another based on what he says

If you want to clarify more with me feel free to write me in PM 🙂

However, I believe that after years it would be better to stop this hatred.

hackintosh is a passion but it is not life.

Having i said that, in the end... in this bad time for everyone I can only wish you all the best.

Peace & Love 😘;)

 

Link to comment
Share on other sites

27 minutes ago, gengik84 said:

@MaLd0nhackintosh is a passion but it is not life.

😅 Your friends don't think so. They spread so many lies. "Use this, don't use that. Have virus. Not vanilla." Nowadays the value of a real vanilla is in createinstallmedia instead of a good fine tune. ;) 

 

I think u forgot comments about connectors. All is there. This credit is not for u and me or other. We just duplicated one OEM method and renamed.

https://pikeralpha.wordpress.com/2016/11/10/two-port-usb-3-1-gen-ii-pci-express-card/

q3hZu1l.png

 

if i think like ur comment above...PMCR is my credit? Im using it since 2018 u can check HERE and in 2020 one guy(i don't remember name) post here "My discovery". The credits is for apple i just discovery. Other case is EC device mandatory for boot, i post it in some beta release(idk if fantomas delete it). This is my credit? 

The line for these "my credits" cases is short. Understand my point? 

Link to comment
Share on other sites

8 minutes ago, MaLd0n said:

Your friends don't think so. They spread so many lies. "Use this, don't use that. Have virus. Not vanilla." Nowadays the value of a real vanilla is in createinstallmedia instead of a good fine tune. ;) 

...... and what do I do in this? I am not responsible for what the next one does! Are you referring to your macos ISO? I only know that it is forbidden to talk about them and distribute them here

You are free to do whatever you want out of here.

9 minutes ago, MaLd0n said:

if i think like ur comment above...PMCR is my credit? Im using it since 2018 u can check HERE and in 2020 one guy(i don't remember name) post here "My discovery". The credits is for apple i just discovery. Other case is EC device mandatory for boot, i post it in some beta release(idk if fantomas delete it). This is my credit? 

The line for these "my credits" cases is short. Understand my point? 

Yes, the first PMCR is out with Skylake and it's changed later (HID instead ADR)

As far as I remember the first to use EC (fake device) and not the classic rename used for many years, it was made by RM

I probably missed something.... I repeat feel free to write to me in PM

15 minutes ago, MaLd0n said:

i post it in some beta release(idk if fantomas delete it). This is my credit? 

I don't know whats happened and why..

Link to comment
Share on other sites

51 minutes ago, gengik84 said:

 

You are free to do whatever you want out of here.

i don't talking about it. read my last post

 

51 minutes ago, gengik84 said:

Yes, the first PMCR is out with Skylake and it's changed later (HID instead ADR)

First is x99. EVMR device.

rfNsbl0.png

52 minutes ago, gengik84 said:

I don't know whats happened and why..

👌

 

Enjoy and stay safe.

Link to comment
Share on other sites

3 minutes ago, MaLd0n said:

First is x99. EVMR device.

 

Sorry sir, before we talked about pmcr and i meant Skylake and later for real mac series...(acpi,ioreg)

 

4 minutes ago, MaLd0n said:

Enjoy and stay safe.

Thx, same to you

Link to comment
Share on other sites

  • 1 month later...

Back on the initial topic: I read through the method of moving the USB port mapping to ACPI but on my machine, the USB ports are defined in the DSDT, which means I cannot block the USB table only.

In the meantime, my hack also doesn't have more than 15 ports so it doesn't need any port disabling. I tried booting without my USBMap.kext and everything seems fine except for my native BT card.

Oddly it is also the only port which is configured correctly by default since the DSDT makes every USB A port an internal port and only the USB-C ports correctly.

 

I then tried the trick described by the author of this post: https://github.com/dortania/OpenCore-Post-Install/pull/54

to disable the _UPC method and then recreating it in the SSDT but this leads to disabling of every USB port... sigh. Could be that my SSDT did not take. Not sure...

 

If anyone has any better suggestions, I am all ears.

 

 

Link to comment
Share on other sites

Guest 5T33Z0

@miliuco 255 is for internal CONNECTORS without the usual physical ports. But an integrated USB Hub is not an INTERNAL connector. It has physical ports attached to it which are located on the outside of the system so you can attach devices to it (or pull them). Seee "Port 3":

https://camo.githubusercontent.com/7318e2e9a569fa1b8c2925fc059eafe4f354dd1acfe319adcd44b59204e52803/68747470733a2f2f756566692e6f72672f73706563732f414350492f362e342f5f696d616765732f41435049646566696e65645f446576696365735f616e645f44657669636553706563696669634f626a656374732d352e706e67

 

Internal connectors are not meant to be disconnected physically. That's the difference. And that's why I wouldn't suggest to define the USB port of an integrated Hub as internal. I don't know if it makes a difference in terms of the way the system works, but I wouldn't run a hub as 255.

Edited by 5T33Z0
Link to comment
Share on other sites

2 hours ago, rafale77 said:

So I am now attempting to STA out the RHUB and rebuild the USB ports. I have attached my SSDT attempt. It is still not working. What am I doing wrong?

 

 

SSDT-USB.aml.zip 1.03 kB · 1 download

@rafale77 Here are My SSDT-XHC with RHUB ,First i Used a USBToolBox on windows to identify the ports then configure these ports using @5T33Z0Mapping Guide https://github.com/5T33Z0/OC-Little-Translated/tree/main/03_USB_Fixes/ACPI_Mapping_USB_Ports 

USB_Map_Dell_7050_Skylake.png

SSDT-XHC.aml

  • Like 2
Link to comment
Share on other sites

12 hours ago, 5T33Z0 said:

... Internal connectors are not meant to be disconnected physically. That's the difference. And that's why I wouldn't suggest to define the USB port of an integrated Hub as internal. I don't know if it makes a difference in terms of the way the system works, but I wouldn't run a hub as 255.

Yes, you are right, I also think the internal hub distributing to 4 external ports doesn't have to be 255. 

I've put 3.

Apparently afaik the system works the same but your explanation is convincing.

Link to comment
Share on other sites

@datafeedexpert, Thank you for sharing! It's very interesting that you are actually STAing out not just RHUB but the entire XHC... I suppose that's how your SSDT was structured. Taking inspiration from it, I will try to adapt a version for my rig and go from there.

 

Edit: Well no luck. I must be doing something wrong again.

I can see that the XHC got renamed and I have most ports open and working but I am missing 3 ports and the names do not match the input of the SSDT... Weird. My DSDT has a ton of methods under XHC and RHUB which I did not copy over. They are mostly around power state and sleep states. Sigh... my unit doesn't appear to be too friendly to this method.

Edited by rafale77
Link to comment
Share on other sites

12 hours ago, rafale77 said:

@datafeedexpert, Thank you for sharing! It's very interesting that you are actually STAing out not just RHUB but the entire XHC... I suppose that's how your SSDT was structured. Taking inspiration from it, I will try to adapt a version for my rig and go from there.

 

Edit: Well no luck. I must be doing something wrong again.

I can see that the XHC got renamed and I have most ports open and working but I am missing 3 ports and the names do not match the input of the SSDT... Weird. My DSDT has a ton of methods under XHC and RHUB which I did not copy over. They are mostly around power state and sleep states. Sigh... my unit doesn't appear to be too friendly to this method.

You can Verify my USBToolBox Mapped Image With My SSDT , There is a Ports info mentioned in Every ports, after that you can use USBToolBox on Windows and get Same Image for the All ports and after that describe that ports on your new SSDT 

  • Like 1
Link to comment
Share on other sites

Thanks, unfortunately, I don't think it's a port mapping issue. I already have it mapped and working using a kext. I am just trying to migrate the mapping from kext to SSDT method. I am quite puzzled by the outcome though.

Link to comment
Share on other sites

27 minutes ago, rafale77 said:

Thanks, unfortunately, I don't think it's a port mapping issue. I already have it mapped and working using a kext. I am just trying to migrate the mapping from kext to SSDT method. I am quite puzzled by the outcome though.

Kext Mapped Ports have a serial numbers Like HS01,HS02 to -> Whatever number of ports you have & SSDT have actual Ports which is like example you have HS01 to HS07 after that 3 ports are in not use like HS08,HS09,HS10 after that HS11,HS12 are in use so you have to declare that ports with types in your SSDT, still you have problem configuring the same than you can post your USBToolBox Image from Windows & actual SSDT-USB Tables from your machine i can defiantly make ssdt for you   

 

Notice : While Using SSDT-XHC you have to drop usage of USBPorts.kext 

Edited by datafeedexpert
Link to comment
Share on other sites

Great discussion!  Thank you!

 

I have a single physical Type C port that has different switching/orientation behavior for USB2 and USB3 connected devices as follows:

  • With a USB2 device, if I flip the orientation, the logical port remains unchanged as HS10.
  • With a USB3 device, if I flip the orientation, the logical port switches between SS03 and SS04.

Does this mean that HS10 is Type 0x09 (Flipping the device does not change the ACPI port) and SS03/SS04 are Type 0x0A (Flipping the device does change the ACPI port).

 

I'm asking because I wasn't sure if a single physical USB port could be associated with two different switching types depending on whether a USB2 or USB3 device was inserted in the port. 

 

Thank you.

Edited by deeveedee
Link to comment
Share on other sites

@deeveedee, You can look at how it is defined in your ACPI (DSDT or SSDT). I have the exact same situation on my Lenovo and my DSDT defines this physical port as three ports HS04, SS04 and SS08 and all three of them are defined as type 0x0A = 10.

 

@datafeedexpert, I agree with everything you said and believe it is already what I am doing. I must really be blind to something. I will take your generous offer. I have even increased the number of methods in XHC and RHUB to reproduce what I found in my DSDT. See attached.

 

SSDT-USB.aml

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

1 minute ago, deeveedee said:

@rafale77 My OEM SSDT defines ports SS03, SS04 and HS10 as Type 0x03, so they offer no help for me.  Is Type 0x0A the OEM definition, or did you assign that type?

It is the OEM definition. I am not patching my DSDT. See below. It's interesting that HP defined it that way...

image.png.d8029b35076bd10f217d0ee0ed6c56be.png

  • Thanks 1
Link to comment
Share on other sites

Guest 5T33Z0
1 minute ago, rafale77 said:

It is the OEM definition. I am not patching my DSDT. See below. It's interesting that HP defined it that way...

image.png.d8029b35076bd10f217d0ee0ed6c56be.png

 

Did you do this?  https://github.com/5T33Z0/OC-Little-Translated/tree/main/03_USB_Fixes/ACPI_Mapping_USB_Ports#preparing-the-replacement-ssdt

 

Because if I look at the return values used in your code is nothing that resembles what I am doing.

Link to comment
Share on other sites

@5T33Z0 I had followed your guide (well done!) and changed all instances of  Method _UPC (except USR1 and USR2) to 

 

Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
	{
		Return (GUPC (0xFF, 0x03))
	}

I then reviewed each port to identify its type and where applicable proceeded to change "Return (GUPC (0xFF, 0x03))" to "Return (GUPC (0xFF, 0xXX))" where 0xXX is the type from the table you provided.  This is why I asked my question here.  As rafale77 said, my OEM SSDT defines the HS10, SS03 and SS04 types as 0x0A.  Since my HS10 port does not change  when flipping orientation, I wasn't sure if I should change my HS10 type to 0x09 or leave it as 0x0A.

Edited by deeveedee
Link to comment
Share on other sites

@5T33Z0, Yes I have read your guide but as I said in a previous post, my USB is defined in the DSDT, not in one of the SSDTs. As a result, I am having to STA out the original RHUB from the DSDT and rename it as @datafeedexpert has done. This forces me to redefined both the XHC and RHUB device from scratch in an SSDT. My file is (attempting) to copy the relevant content of my DSDT into an SSDT.

 

See the result: XHC are the kext version which Hackintool kept in memory. XHC1 is when I boot with the SSDT. I am finding strange that some of the enabled port do not show up and one disabled port, HS03 is showing up. The port connector type are also not as I have defined them in the SSDT. If I only boot with the SSDT-RHUB, all the connectors would get defined as internal but the port names and number would be correct so I am finding it very bizarre.

image.thumb.png.ce2543d3140bfbf2c0f8c32d3f776d77.png

 

 

As an example of differences, enabling a port on my machine uses a value of "One" instead of "0xff" for the first value of GUPC in your guide and it seems to be also what @datafeedexpert has.

 

Edited by rafale77
Link to comment
Share on other sites

 Share

×
×
  • Create New...