Skocz do zawartości

haMac.pl używa cookie. Przeczytaj Privacy Policy aby dowiedzieć się więcej. Aby usunąć tę wiadomość, proszę kliknąć w przycisk po prawej:    Akceptuję użycie cookie

Zdjęcie

USBInjectAll


  • Zaloguj się, aby dodać odpowiedź
13 odpowiedzi w tym temacie

#1 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 10 lipiec 2018 - 22:11

Przeglądam konfiguracje dostępne w UnibootX i widzę, że w prawie każdej znajduje się kext: USBInjectAll.kext. Byłem ciekaw co ten kext właściwie robi, zajrzałem na Github: https://github.com/R...-USB-Inject-All

 

Zainteresował mnie ten fragment w readme:

 

Without a custom configuration, it is not intended that this kext be used long term. It is best to create a custom injector containing only the ports that are active on the target machine, or to create an SSDT that customizes the port injection done by USBInjectAll.kext. Customizing USBInjectAll.kext with an SSDT is covered later in this README.

 

Z opisu wynika więc że ten kext nie powinien być używany cały czas. Powinien być użyty jedynie do wykrycia portów, które mają być wstrzyknięte. Następnie należy wygenerować SSDT i pozbyć się kexta albo dostosować konfig (rozumiem, że chodzi o edycję pliku USBInjectAll-Info.plist ?). W innym wypadku kext wstrzykuje wszystkie porty.

 

Ciekawe, że ani tutaj ani na InsanelyMac nikt o tym nie pisze. Znalazłem za to wątek napisany przez RehabMan na tonymacx86 

 

Tam znajdziemy następującą informację:

 

 

Many tend to over-simplify the problem, and, for example, believe they can simply apply the port-limit patch and install USBInjectAll.kext and be done with it. In fact, the port limit patch is known to cause problems (it causes access outside a fixed array bounds). Somewhat alarming is the fact that Multibeast includes the port limit patch without mention of its problems.

 
The fact: Using the port limit patch is not a long term solution. For reliable USB (assuming your ACPI implementation of _PLD and _UPC is broken... and you don't want to fix it), you must implement a custom SSDT for USBInjectAll.kext that configures your ports on XHC such that the port limit patch is not needed, and each UsbConnnector value is correct for each port.
 
Not only does a custom SSDT allow you to avoid the port limit patch, disabling USB ports that are not used, can have some power saving properties, and can avoid bugs with sleep, restart, or shutdown.

 

 

---

Zaznaczam, że moja wiedza jest tutaj znikoma. Powtarzam w zasadzie tylko to co na temat kexta pisze autor. Najbardziej interesujący wydaje się być ostatnio cytowany fragment, w którum autor wpomina, że niepoprawne odpalenie USB może mieć wpływ na zarządzanie zasilaniem - co jest bolączką wielu płyt głównych.


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#2 oswaldini

oswaldini
  • Moderators
  • 10960 postów
  • LocationBrzeszcze / Kraków

Napisano 11 lipiec 2018 - 12:08

W uniwersalnym rozwiązaniu nie ma możliwości zrobienia tabel SSDT pod USB dla każdej możliwej mobo, do tego każdy może chcieć wyłączyć inne porty USB - ten poradnik ma na celu pomóc userowi odpalić macOS na swoim PC, kwestia szlifowania jest już po waszej stronie. Podsumowując Hack to nie Mac, tu nic nie działa samo OOTB, trzeba trochę się pobawić.


MacBook Pro 2012 MD103 15" | i7-3615QM | 8 GB RAM | HD4000 + GT650M | Samsung 830 256 GB
Hack Gigabyte H81N | i5-4460 | 8 GB RAM | HD4600 | mSATA SSD 32GB + SSD 120GB + SSHD 500 GB | Raijintek Metis | SFX-L 500W | WiFi

HomeSerwer: HP G7 N54L | 2.2GHz (800-2200Mhz) | 8GB RAM | 2x WD RED 2TB | Synology DSM 6.1.6 @ Jun's bootloader | Time Machine + PLEX + CouchPotato + SickRage + masa innych

iPhone 7 32GB Black
FlagaPL.gif Piszę poprawnie po polsku! | CloverEFI | Nie pomagam na PRIV


#3 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 11 lipiec 2018 - 13:46

@oswaldini

 

Zdaję sobie z tego sprawę. Myślę więc, że warto dodać tę informację do poradnika, szczególnie, że nie jest to rzecz o której się mówi na forum. 


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#4 oswaldini

oswaldini
  • Moderators
  • 10960 postów
  • LocationBrzeszcze / Kraków

Napisano 11 lipiec 2018 - 17:31

Nie mniej w większości przypadków wystarczy USBInjectAll i patch do limitu USB. Jakby ktoś szukał tutaj podałem patch do 10.13.6: http://hamac.pl/topi...ch/#entry136225


MacBook Pro 2012 MD103 15" | i7-3615QM | 8 GB RAM | HD4000 + GT650M | Samsung 830 256 GB
Hack Gigabyte H81N | i5-4460 | 8 GB RAM | HD4600 | mSATA SSD 32GB + SSD 120GB + SSHD 500 GB | Raijintek Metis | SFX-L 500W | WiFi

HomeSerwer: HP G7 N54L | 2.2GHz (800-2200Mhz) | 8GB RAM | 2x WD RED 2TB | Synology DSM 6.1.6 @ Jun's bootloader | Time Machine + PLEX + CouchPotato + SickRage + masa innych

iPhone 7 32GB Black
FlagaPL.gif Piszę poprawnie po polsku! | CloverEFI | Nie pomagam na PRIV


#5 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 11 lipiec 2018 - 18:52

Nie mniej w większości przypadków wystarczy USBInjectAll i patch do limitu USB. Jakby ktoś szukał tutaj podałem patch do 10.13.6: http://hamac.pl/topi...ch/#entry136225

 

Właśnie ten wątek skłonił mnie do drążenia tego tematu :)

 

I właśnie o tym patchu wspomina autor USBInjectAll w tekście, który cytowałem w moim poprzednim poście. Mowa o tym fragmencie (wytłuściłem najistotniejsze rzeczy):

 

 

Many tend to over-simplify the problem, and, for example, believe they can simply apply the port-limit patch and install USBInjectAll.kext and be done with it. In fact, the port limit patch is known to cause problems (it causes access outside a fixed array bounds). Somewhat alarming is the fact that Multibeast includes the port limit patch without mention of its problems.

 
The fact: Using the port limit patch is not a long term solution. For reliable USB (assuming your ACPI implementation of _PLD and _UPC is broken... and you don't want to fix it), you must implement a custom SSDT for USBInjectAll.kext that configures your ports on XHC such that the port limit patch is not needed, and each UsbConnnector value is correct for each port.
 
Not only does a custom SSDT allow you to avoid the port limit patch, disabling USB ports that are not used, can have some power saving properties, and can avoid bugs with sleep, restart, or shutdown.

 

Ale to tylko teoria. Rozumiem, że autor USBInjectAll, profilaktycznie przestrzega, że USBInjectAll + patch zwiększający limit nie jest uniwersalnym rozwiązaniem.

 

Przejdśmy jednak do praktyki. Uważasz, że w praktyce, jeśli nie ma żadnych widocznych problemów, to tworzenie własnego SSDT to czysta kosmetyka?


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#6 AlPaczino

AlPaczino
  • Members
  • 53 postów
  • LocationWarszawa

Napisano 13 lipiec 2018 - 15:49

Na gigabyte ga-z97-hd3, USBInjectAll porty się wywalają. Natomiast bez działają idealnie.

gigabyte Z170X-Gaming 7, działają z i bez USBInjectAll.


1. GA-Z170X-Gaming7. i7 6700. G.Skill 32GB 2800 MHz DDR4. Case G5. Sierra 10.12.6.
2. H55M-USB3. i3. GT275. 12GB 1600 MHz DDR3. Case G3. Sierra 10.12.6.
3. SONY SVT131A11M. Sierra 10.12.6.

4. MacBook Pro 4.1.

 
 

#7 314TeR

314TeR

    Administrator

  • Administrators
  • 17661 postów
  • LocationWarszawa

Napisano 13 lipiec 2018 - 19:56

Wszystko zależy ile jest portów, jaka jest wersja macOS, USBInjectAll, jaka płyta itp itd.

 

Uniwersalność UniBootX jaki przygotowałem polega na tym, aby zestaw "startowy" pozwolił uruchomić i zainstalować macOS na jak największej ilości komputerów, z uwzględnieniem jednaj najważniejszej rzeczy - ZERO modyfikacji w systemie/instalatorze. Jeśli coś nie działa jak należy to trzeba drążyć dalej samemu i poprawić konfigurację pod swój sprzęt.


ASUS MAXIMUS VII IMPACT | Core i7-4790K | 16GB DDR3 2400 CL10 | GTX 980 Ti | FiiO E10 | OS X Retail via UniBootX Clover

ASUS Z87M-PLUS | Core i5-4590T | 8GB DDR3L 1333 | HD4600 | OS X Retail via UniBootX Cloverbyłe haMac'i: ASUS P5W DH DeluxeASUS P7P55 WS Supercomputer | ASUS P8Z68 Deluxe/GEN3 | ASUS P8Z77-V PRO THUNDERBOLTJak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh | Piszę poprawnie po polsku!

Co daje kalibracja monitora - zobacz jak można poprawić jakość obrazu.

 

Najszybszy hackintosh na świecie za procesorem 12C identyfikujący się jako Mac Pro (Late 2013) wg rankingu Geekbench: 37000 pkt

 

Pomogliśmy Tobie - pomóż nam - przekaż darowiznę na utrzymanie forum.

 


#8 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 20 lipiec 2018 - 15:06

Pytam z czystej ciekawości, bo widzę, że ten temat w ogóle nie jest poruszany na forum, a wydaje się być dość ciekawy a co najważniejsze może być przyczyną jednej z największych bolączek hackintosha - czyli zarządzania energią. Zainteresowałem się tym ponieważ sam autor twierdzi że nie powinno się używać tego kexta na stałe, a jedynie w celu przygotowania dedykowanego rozwiązania dla posiadanej płyty głównej.

 

U mnie na przykład wszystkie porty USB działają bez customowych łatek. Nie używam ani USBInjectAll ani patcha w Cloverze na limit portów.

 

Abstrajując od tematu. Czy to nie jest tak, że na naszym forum płyty Asusa są tak popularne, bo wyżej wymieniony problem na nich nie występuje? Niewiele wiem na ten temat, ale intuicja mi podpowiada, że problematyczność np. Gigabajtów może być powiązana właśnie z USB. Mam rację?


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#9 314TeR

314TeR

    Administrator

  • Administrators
  • 17661 postów
  • LocationWarszawa

Napisano 21 lipiec 2018 - 13:58

Temat ciekawy. Niestety wynika z niechlujstwa Apple, które zamiast prawidłowo oprogramować tabele ACPI, to postanowili łatać działanie ich za pomocą sztywnych patchy w kextach USB.

Na PM raczej poza „wybudzaniem” nie ma to wpływu. Sprawa Gigabyte vs reszta płyt to też temat na inny wątek i był wielokrotnie wałkowany. Problemy z gigabyte występowały od samego początku haMaców, kiedy to limit portów USB jeszcze nie istaniał.

ASUS MAXIMUS VII IMPACT | Core i7-4790K | 16GB DDR3 2400 CL10 | GTX 980 Ti | FiiO E10 | OS X Retail via UniBootX Clover

ASUS Z87M-PLUS | Core i5-4590T | 8GB DDR3L 1333 | HD4600 | OS X Retail via UniBootX Cloverbyłe haMac'i: ASUS P5W DH DeluxeASUS P7P55 WS Supercomputer | ASUS P8Z68 Deluxe/GEN3 | ASUS P8Z77-V PRO THUNDERBOLTJak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh | Piszę poprawnie po polsku!

Co daje kalibracja monitora - zobacz jak można poprawić jakość obrazu.

 

Najszybszy hackintosh na świecie za procesorem 12C identyfikujący się jako Mac Pro (Late 2013) wg rankingu Geekbench: 37000 pkt

 

Pomogliśmy Tobie - pomóż nam - przekaż darowiznę na utrzymanie forum.

 


#10 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 25 lipiec 2018 - 09:44

Myślę że warto się tym pobawić. RehabMan przygotował poradnik orasz szablon SSDT, za pomocą którego można przygotować własne SSDT.

IMO to bardzo eleganckie rozwiązanie ponieważ po zastosowaniu własnego SSDT nie są konieczne patche w Cloverze, które zależne są od wersji macOS.

 

W wolnym czasie pobawię się tym i zaktualizuję temat.


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#11 314TeR

314TeR

    Administrator

  • Administrators
  • 17661 postów
  • LocationWarszawa

Napisano 25 lipiec 2018 - 10:16

@wujek_bogdan - zgadzam się z Tobą - przede wszystkim trzeba poeksperymentować i zobaczyć jak działa w praktyce. Natomiast nie jestem pewien co do patcha na limit portów, jeśli na płycie masz więcej niż 10 portów (jak pamiętam taki jest limit) to i tak będziesz musiał go stosować. 


ASUS MAXIMUS VII IMPACT | Core i7-4790K | 16GB DDR3 2400 CL10 | GTX 980 Ti | FiiO E10 | OS X Retail via UniBootX Clover

ASUS Z87M-PLUS | Core i5-4590T | 8GB DDR3L 1333 | HD4600 | OS X Retail via UniBootX Cloverbyłe haMac'i: ASUS P5W DH DeluxeASUS P7P55 WS Supercomputer | ASUS P8Z68 Deluxe/GEN3 | ASUS P8Z77-V PRO THUNDERBOLTJak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh | Piszę poprawnie po polsku!

Co daje kalibracja monitora - zobacz jak można poprawić jakość obrazu.

 

Najszybszy hackintosh na świecie za procesorem 12C identyfikujący się jako Mac Pro (Late 2013) wg rankingu Geekbench: 37000 pkt

 

Pomogliśmy Tobie - pomóż nam - przekaż darowiznę na utrzymanie forum.

 


#12 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 25 lipiec 2018 - 10:39

@wujek_bogdan - zgadzam się z Tobą - przede wszystkim trzeba poeksperymentować i zobaczyć jak działa w praktyce. Natomiast nie jestem pewien co do patcha na limit portów, jeśli na płycie masz więcej niż 10 portów (jak pamiętam taki jest limit) to i tak będziesz musiał go stosować. 

 

Właśnie w tym rzecz, że nie jest potrzebny. Patch jest potrzebny jest tylko do przygotowania SSDT, ale po zaaplikowaniu SSDT patch na limit portów można (a nawet trzeba) usunąć.

 

Cytat z poradnika RehabMana: 

 

 

The fact: Using the port limit patch is not a long term solution. For reliable USB (assuming your ACPI implementation of _PLD and _UPC is broken... and you don't want to fix it), you must implement a custom SSDT for USBInjectAll.kext that configures your ports on XHC such that the port limit patch is not needed, and each UsbConnnector value is correct for each port.

 
Not only does a custom SSDT allow you to avoid the port limit patch, disabling USB ports that are not used, can have some power saving properties, and can avoid bugs with sleep, restart, or shutdown.

(...)
 
Once your SSDT is working, you can remove or disable the port limit patch.

Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB


#13 314TeR

314TeR

    Administrator

  • Administrators
  • 17661 postów
  • LocationWarszawa

Napisano 25 lipiec 2018 - 11:44

disabling USB ports that are not used

 

 

Zakładając, że ilość portów jaką używasz nie przekracza ilości portów zakodowanych na szybko w kextach Apple = 10szt jak pamiętam. Zdecydowana większość płyt ma tych portów więcej niż 10szt, stąd jest potrzebny patch na limit portów.

 

Mamy razem tę samą płytę - ASUS Z87M-Plus,  na niej masz:

6 x port USB 3.0/2.0 (4 z tyłu obudowy, niebieski, 2 na płycie)
8 x port USB 2.0/1.1 (2 z tyłu obudowy, czarny, 6 na płycie)

 

Razem 6 + 8 = 14 - wg mojej wiedzy (aczkolwiek zastrzegam, że mogę się mylić) tabelą SSDT nie załatwisz tematu aby wszystkie 14 portów działało. A to stara płyta na Z87, każdy nowszy chipset tych portów ma coraz więcej.

 

Ale nie ma co biadolić - w ramach edukacji, chętnie z Tobą przetestuję i możemy wspólnie zrobić tabelę SSD do tej płyty i przekonać się w praktyce. Możemy temat pociągnąć tu, lub założyć osobny temat tylko do dyskusji nad Z87M-plus i USB.


ASUS MAXIMUS VII IMPACT | Core i7-4790K | 16GB DDR3 2400 CL10 | GTX 980 Ti | FiiO E10 | OS X Retail via UniBootX Clover

ASUS Z87M-PLUS | Core i5-4590T | 8GB DDR3L 1333 | HD4600 | OS X Retail via UniBootX Cloverbyłe haMac'i: ASUS P5W DH DeluxeASUS P7P55 WS Supercomputer | ASUS P8Z68 Deluxe/GEN3 | ASUS P8Z77-V PRO THUNDERBOLTJak uruchomić na wypasie ALC 882/888/889/1200 | STOP Gigafail | P5W DH Deluxe - perfekcyjny hackintosh | Piszę poprawnie po polsku!

Co daje kalibracja monitora - zobacz jak można poprawić jakość obrazu.

 

Najszybszy hackintosh na świecie za procesorem 12C identyfikujący się jako Mac Pro (Late 2013) wg rankingu Geekbench: 37000 pkt

 

Pomogliśmy Tobie - pomóż nam - przekaż darowiznę na utrzymanie forum.

 


#14 wujek_bogdan

wujek_bogdan
  • Members
  • 892 postów

Napisano 25 lipiec 2018 - 12:22

Zakładając, że ilość portów jaką używasz nie przekracza ilości portów zakodowanych na szybko w kextach Apple = 10szt jak pamiętam. Zdecydowana większość płyt ma tych portów więcej niż 10szt, stąd jest potrzebny patch na limit portów. (...) wg mojej wiedzy (aczkolwiek zastrzegam, że mogę się mylić) tabelą SSDT nie załatwisz tematu aby wszystkie 14 portów działało

 

To co napisałem wyżej to tylko moje wnioski na podstawie wpisu RehabMan, nie są poparte żadną wiedzą, więc nie jest wykluczone, że to Ty masz rację. Warto to sprawdzić.

 

 

Ale nie ma co biadolić - w ramach edukacji, chętnie z Tobą przetestuję i możemy wspólnie zrobić tabelę SSD do tej płyty i przekonać się w praktyce. Możemy temat pociągnąć tu, lub założyć osobny temat tylko do dyskusji nad Z87M-plus i USB.

 

Z chęcią to przetestuję, muszę tylko się zaopatrzyć w adapter USB wpinany do płyty, bo inaczej nie przetestuję wszystkich portów, a jedynie 6 portów, które wychodzą z płyty głównej + 2 porty USB 3.0, które mam na front panelu, czyli razem tylko 8 portów.

 

Odświeżę temat gdy będę miał czym testować.


Obecny: 10.13.6, Asus Z87M-PLUS, i7-4790k, 16GB DDR3@1600, MSI GTX 960

Poprzedni:  10.12.6, Asrock Z87 Pro4, i7-4790k, 16GB DDR3@1600, MSI GTX 960, Audigy 2 ZS

Poprzedni: 10.10.4, ASUS P7P55D-E LX, i7-870, 8GB DDR3@1600, Saphire HD5770 1GB





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych