Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 09/21/2020 in Posts

  1. Lo scopo di questa guida è quello di configurare il nostro hack in un modo ancora migliore, senza usare UsbInjectall (escluso per metodo Rehabman) e nessuna patch per port limit attenendoci a ciò che Apple fa e vuole…. Ossia un massimo di 15 porte disponibili e utilizzabili Decisamente molto più qualitativo. …. 😉 Occorrente: IORegistryExplorer.app MaciAsl (lo trovate in download) Procuriamoci una usb sia 2.0 che 3.0 Aggiungiamo la patch per aumentare il port limit sul config Aggiungiamo usbinjectall.kext nella EFI Riavviamo.... Iniziamo con la mappatura… Apriamo IOReg, scorriamo fino a trovare XHC o nel caso XHCI Nota:Nel caso le nostre usb fossero nominate XHC1 vanno rinominate tramite una patch sul config Adesso inseriamo ed espelliamo prima una pendrive usb 2.0 e poi una pendrive 3.0 Nota: Questo procedimento dovrà essere eseguito senza chiudere IOReg e ripetuto su ogni singola porta usb del nostro hack…mobo e case.. Una volta terminato ci ritroveremo ad un esempio di questo tipo Le usb verranno mostrate in rosso dopo averle scollegate Adesso ipotizziamo di aver terminato e basiamoci sulla foto precedente Annotiamoci le porte non usate..per esempio HS02-HS04 Ovviamente questo è un esempio…potreste averne molte di più…con porte SSPx La differenza tra le due nominazioni è: HSxx = USB 2.0 SSPx = USB 3.0 A questo punto è necessario un ssdt per disabilitare le porte non usate Metodo Basato su SSDT generico fatto da Rehabman Apriamo ssdt con MaciASL Adesso dobbiamo eliminare le porte che non usiamo, questo perché ssdt comprende tutte le porte possibili e utilizzabili della scheda madre Per rimuovere le vostre porte non in uso vi basterà rimuovere la parte che vi ho evidenziato…ovviamente è solo un esempio e non è detto che quella specifica porta non sia usata nel vostro hack. Una volta aver rimosso le porte, all’inizio del ssdt definiamo i l numero di porte in uso "port-count", Buffer() { 26, 0, 0, 0 }, 26 è il numero di porte totali disponibili su schede madri Skylake e successivi… ma su osx il limite imposto è per 15 porte al massimo Noi dobbiamo cambiare 26 con il numero delle porte che usiamo e deve essere inferiore o uguale a 15…ma non superiore. Adesso passiamo alla parte "UsbConnector" In questa parte dobbiamo definire il “tipo di porta” .. quindi se è 2.0, 3.0 e se è una usb interna Guardate questo esempio Quindi le usb 2.0 avrà "UsbConnector", 0, la usb 3.0 avrà "UsbConnector", 3, Mentre le usb interne dovranno avere "UsbConnector", 255, ( 0xFF) CREDITS: @ Apple @ ACPICA @ Pokenguyen (primo che all’inizio di El Capitan ha fatto presente l’aggiunta da parte di Apple del limite di porte in uso) @ PJalm @ Piker @ Rehabman Metodo Alternativo Basato sulle proprie ACPI compatibile da Skylake e successivi Questo è il metodo che preferisco e che uso da anni nei miei hack o di amici stretti… Lo ritengo migliore, per il mio modesto parere, perché andiamo a usare e lavorare sul nostro proprio ssdt, senza usarne di aggiuntivi Estrazione ACPI Clover Estraiamo le nostre acpi tramite clover (il dump richiede che sia installato nella ESP) Premiamo F4 quando siamo nella GUI,per sicurezza che il dump sia corretto aspettiamo una trentina di secondi prima di avviare. Montiamo la partizione EFI del dispositivo usato per il boot Rechiamoci in EFI/Clover/acpi/origin Troveremo varie tabelle, noi dobbiamo andare a cercare ed esaminare SSDT in special modo quello che gestisce le usb Nella stragrande maggioranza dei casi sarà la tabella nominata xh_rvp08, xh_rvp10 etc... ma può essere anche semplicemente per esempio SSDT-3.aml oppure SSDT-AMI.aml OpenCore: Per estrarre le proprie acpi con questo bootloader abbiamo bisogno dei bianri in versione Debug Quindi se per esempio avessimo la versione 0.6.1, andremo a scaricare la stessa versione con dicitura DEBUG. Prendiamo poi il file bootx64.efi che troviamo in EFI/BOOT e OpenCore.efi che troviamo in EFI/OC. Sostituiamoli nelle stesse posizioni nella nostra EFI. Modifichiamo il config in Misc/Debug/SysReport mettendo YES. Salviamo e riavviamo. Troveremo le nostre acpi dentro una cartella nella root della partizione EFI. Troveremo varie tabelle, noi dobbiamo andare a cercare ed esaminare SSDT in special modo quello che gestisce le usb Nella stragrande maggioranza dei casi sarà la tabella nominata xh_rvp08, xh_rvp10 etc... ma può essere anche semplicemente per esempio SSDT-3.aml oppure SSDT-AMI.aml Nota: il Nome del relativo ssdt contenente le usb può cambiare da mobo a mobo, quindi dovrete voi controllare le vostre acpi e trovare quello contenente XHC Apriamola con MaciASL Adesso visualizzeremo le porte usb disponibili per la mobo Soffermiamoci su questa parte di codice…ovviamente partiamo dalla prima usb HS01 Scope (\_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { Return (GUPC (One)). } Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device { Return (GPLD (One, 0x02)) } } Bene adesso l’operazione è molto semplice One in questo caso vuol dire Vero/Abilitato La parte di codice da modificare per ogni singola usb è: Return (GUPC (One)) Quindi porta abilitata lasceremo One Porta disabilitata cambieremo sostituendo One con Zero Tornando all’esempio sopra… Il codice rispettivamente per ogni porta disabilitata sarà: Scope (\_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { Return (GUPC (Zero)) } Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device { Return (GPLD (One, 0x02)) } } Nota: Anche il codice relativo può essere diverso, quindi potresti anche avere una cosa di questo tipo: Scope (\_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { If (LEqual (H1TC, Zero)) { Return (GUPC (H1CN)) } Else { Return (\_SB.UBTC.RUCC (H1CR, One)) } } in questo caso la parte interessata sarà contenuta all'interno della prima condizione, quindi avremo la solita sostituzione Scope (\_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { If (LEqual (H1TC, Zero)) { Return (GUPC (One)) // << ----- } Else { Return (\_SB.UBTC.RUCC (H1CR, One)) } } Finito di cambiare il valore per ogni porta basandoci sulla nostra mappatura non ci resta che compilare e salvare Parte finale Collochiamo il nostro SSDT in EFI/Clover/acpi/patched Questo però non sarà sufficiente perché la tabella originale (OEM) verrà sempre caricata e quindi il nostro ssdt non avrà alcun effetto Quindi dobbiamo “Droppare” la relativa tabella OEM Cosa vuol dire? Significa bloccare il caricamento della stessa per permettere al nostro ssdt di lavorare Apriamo il config.plist, rechiamoci nella parte ACPI/Drop Tables Clicchiamo sul simbolo + Selezioniamo SSDT —> TableId ed accanto scriviamo il nome esatto della tabella da bloccare…esempio xh_rvp08 Il risultato sarà questo Come possiamo essere sicuri del corretto TableId? Ecco spiegato nell'imagine sottostante: Nota: Qualora trovassimo per esempio " AMI " questo non dovrà essere usato perchè nel caso del drop usando appunto il TableID, questo deve essere unico per tale ssdt e non uguale su più ssdt. In questo caso dovrete usare Lenght per droppare la tabella. Quindi seguite la relativa spiegazione nella parte della guida inerente a X299. Rimuoviamo o disabilitiamo la patch per port limit e salviamo Rimuoviamo usbinjectall.kext dalla relativa cartella kext in EFI Riavviamo Aprendo ioreg, cercando XHC noteremo che verrano visualizzate solo le porte in uso Questo è l’esempio del mio hack Perfezionamento: Definizione dei connettori. In download, nella sezione ACPI troverete una mia patch. Scaricatela, aprite il file txt copiate e incollate il contenuto nella finestra patch di MaciAsl. Applicate la patch sul relativo ssdt. Adesso possiamo Abilitare/Disabilitare la porta modificando il primo valore mentre con il secondo valore andremo a definire la tipologia del connettore usb. Quindi andiamo nella relativa porta e scriviamo/sostituiamo il contenuto del metodo _UPC con: Return (GENG (One, 0x03)) Esempio: One ovviamente renderà la porta attiva, qualora volessimo disattivarla e vogliamo usare questo metodo, basterà mettere Zero al suo posto. Nota: Per la disattivazione va ugualmente bene il metodo elencato sopra. Seconda parte: 0x03 va a definire la relativa porta come semplice Usb 3.0 Nella mia patch sono elencati i vari connettori che possono essere usati, in primo luogo troviamo diciamo quelli più "comuni" e successivamente quelli diciamo opzionali. Quindi con questa unica patch potete fare di tutto, abilitare/disabilitare e definire... Spero che vi possa aiutare e spero anche che venga apprezzato e non solo copiato senza un credits come già è accaduto! Vii invito a leggere, anche giusto per informazione, questo topic che ha vari riferimenti Buon Hack !
    1 point
  2. quella di mettere mano alle ACPI con macials, non è cosa semplice all'inizio... ma piano piano si impara male no, ma ad esempio se colleghi un HD USB potresti ricevere il messaggio di mancanza di energia avere problemi con lo stop, che tra l'altro, con lo stop è possibile avere problemi anche quando pare tutto perfetto. no problem 🙂 ma essendo queste cose che se fatte a modo, funzionano, come vedi, basta sbagliare di uno spazio e il castello casca.
    1 point
  3. se sono la medesima macchina, stai usando SMBIOS differenti; il che potrebbe essere determinante.... magari se usi con OC lo stesso che stai usando con Clover 🤭
    1 point
  4. I ran these instructions on my clean install and had no problem removing the snapshot in Recovery. Once back in Big Sur ß7, I was then able to change files after executing the "sudo mount -uw /" command. I'm wondering if you had (have) more than one snapshot partition? Did you verify after deleting the first snapshot that none were remaining? The only time I saw the an error something like "no such file or directory", when using the (/System/Library/Filesystems/apfs.fs/Contents/Resources/apfs_systemsnapshot -v /Volumes/BigSur -r "") command, was when I made a typo in the command or file name (esp if there were a space in the name), or, if there are no snapshots to tag. So if not first problem with extra snapshot, then I would guess a typo error. EDIT: The other thing to try is before going into Recovery, add boot-arg (it can later be removed for routine BS bootin): -no_compat_check and amfi_get_out_of_my_way=1 And once in Recovery, run: nvram csr-active-config csr-active-config %7f%08%00%00
    1 point
  5. https://www.amazon.it/dp/B086L1M2R7/ preso a 120,69€ SSD 2TB
    1 point
  6. Attached is a reduced Patch set that still boots Mojave, Catalina and Big Sur ß7 (but not HS) that I used for the speed improvements above. (It is reduced from Pavo's posting.) No Aquantia patches are present. BS-Min-Patches.plist.zip
    1 point
  7. sarebbe? 😁 che io sappia, per clonare BS al momento, solo R-Drive Image funziona egregiamente
    1 point
  8. SMT off in BIOS and there we are. The Catalina installer loaded. Good job guys!
    1 point
  9. già su primo ioreg senza patch e senza injectall non avevi webcam
    1 point
  10. mm ok.. domani ti faccio riprovare
    1 point
  11. 1 point
  12. ok volevo vedere del wifi per capire se effettivamente serviva quel kext, comunque si. Sei ok.. mantieni questa configurazione empticons_thu
    1 point
  13. prova anche se le usb funzionano senza injectall
    1 point
  14. ok, allora potresti spostare il disco su una porta già mappata, quindi finire la mappatura nella portarestante
    1 point
  15. 1 point
  16. ok, prova questo DSDT.aml 2.zip
    1 point
  17. Ottimo non hai bisogno di nulla ne di mappare e tanto meno di injectall :D
    1 point
  18. si si prova nella tua efi senza injectall
    1 point
  19. Quando puoi rifai la mappatura
    1 point
  20. dovrei vedere il DSDT comunque si è possibile, perché è scritto in modo diverso passando doppio argomento.
    1 point
  21. su ioreg precedente avevi delle correzioni e quindi alcuni caricamenti nella clover attuale non hai nulla... quindi questo è molto strano... non ho applicato niente di più al DSDT per i motivi detti sopra.. il blocco che hai è su grafica, quindi non correlato a questo discorso..comunque ti ripasso in giornata proprio clover da provare
    1 point
  22. Allega la cartella clover
    1 point
  23. @Pol[/mention] metti il DSDT in acpi/patched rimuovi usbinjectall riavvia e posta ioreg DSDT.aml.zip
    1 point
  24. non sono su ssdt ma su DSDT, hai un Haswell... nel caso elenca le porte da disattivare o allega ioreg della mappatura, appena riesco ci guardo
    1 point
  25. Buono, le porte non usate sono disattivate, quelle in uso sono riconosciute e con connettori idenei Adesso se vuoi, ottimizzare ulteriormente ti consiglio di provare "ssdt per Hack" C'è il relativo topic sempre in questa sezione Ssdt sono generici ma ognuno specifico in base all'hardware .. sono nominati per la relativa serie :D
    1 point
  26. Aggiorno il topic: Aveva problemi per estrarre le acpi perchè nella sua EFI non era presente la cartella ACPI contenete a sua volta le altre due cartelle @Soul[/mention] Sostituisci il config, metti ssdt in EFI/Clover/acpi/patched Rimuovi usbinjectall.kext dalla efi Riavvia, ripeti la mappatura usando solamente con un dispositivo usb 3.0, questo perchè non avevi messo la patch per port limit e quindi le usb3 non erano presenti e funzionanti. Riallega poi nuovamente ioreg Archivio.zip
    1 point
  27. intanto mappa le usb, poi allega ioreg e acpi estratte con clover
    1 point
  28. Certo ho fatto esattamente quello che ho descritto in questa guida :)
    1 point
  29. metti ssdt in patched sostituisci il config rimuovi usbinjectall se lo stai usando riavvia e fai ioreg Archivio.zip
    1 point
  30. Sicuramente perchè la patch non sta funzionando stai usando mojave attualmente? nel caso il problema è quello...spesso la patch per port limit non funziona quindi: apri ioreg,mappa le usb allega ioreg precedentemente salvato e la cartella origin dopo aver estratto le acpi
    1 point
  31. HS06 è attiva su SSDT devi mettere come da guida Return (GUPC (Zero)) Ha scritto dopo 1 minuto 12 secondi: EDIT: sorry visto ora l'altro ssdt che hai rinominato Ha scritto dopo 1 minuto 6 secondi: Lascia il nome originale del ssdt droppa così https://postimg.cc/y3mm33Rs">
    1 point
  32. Update Per X299 Guida e info al https://www.macos86.it/viewtopic.php?p=346#p346">Post 3 emoticon_festa
    1 point
  33. perchè ho usato un dsdt pulito e solo disattivato le porte adesso ti consiglio di andare su altro topic SSDT test per hackintosh ho scritto un All in One per Haswell ;) ti basta aggiungerlo... con le opportune modifiche al config Ha scritto dopo 1 minuto 36 secondi: lo trovi qui https://www.macos86.it/viewtopic.php?f=45&t=644">viewtopic.php?f=45&t=644">https://www.macos86.it/viewtopic.php?f=45&t=644 ricorda che PCI è solo cosmetico... si può patchare al TOP le acpi lasciando PCI vuoto...;) Questo per farti capire il discorso
    1 point
  34. @LeoVanex[/mention] Sostituisci il config, metti il dsdt in patched (deve esserci solo questo) rimuovi usbinjectall riavvia e rifai ioreg Archivio.zip
    1 point
  35. @LeoVanex[/mention] ssdt uuiac funziona solo con usbijectall... Quindi allega ioreg della mappatura e il dsdt... Ha scritto dopo 4 minuti 21 secondi: EDIT: le acpi in origin sono le tua? se confermi uso quel dsdt.. ma ho comunque bisogno di ioreg con tutta la mappatura che hai eseguito
    1 point
  36. mmm... è qualcosa su clover.. anche perchè attualmente non possiamo droppare nessuna tabella prova a estrarre da windows o linux
    1 point
  37. beh ok.. ma stai usando la patch per port limit? facilmente potresti non averne bisogno già da ora senza disabilitare le usb
    1 point
  38. SS07 conta anche quella perchè come vedi è collegata
    1 point
  39. conta quelle su ioreg, quale usate... mi sembrano 16 porte...
    1 point
  40. Conta un po' quante porte stai usando... ricordati che il limite è a 15....
    1 point
  41. Prova SSDT-3-xh_rvp08-Zark63.zip
    1 point
  42. Hs da 13 a 16? Arrivano fino a HS14 Puoi controllare meglio?
    1 point
  43. Ciao.. si perché personalmente quella patch l'ho scritta basandomi su acpi di Haswell/Broadwell Dovrei vedere dsdt di ivybridge per poter scrivere una patch generica E comunque potrà capitare sempre di avere qualche "situazione"atipica che comunque potrebbe richiedere ulteriori modifiche :)
    1 point
  44. in scrittura velocità, non è gran che, soprattutto se sono usb3.. dovresti provare a testare su altro supporto, meglio se pulito, appena formattato La velocità precedente l'avevi testata?
    1 point
  45. Oppss...ho proprio dimenticato di agire sulla quella porta... emoticon_vergogna Sorry... Comunque corretto..anche per quella, in allegato emoticon_sorriso DSDT.aml.zip
    1 point
  46. https://www.macos86.it/memberlist.php?mode=viewprofile&u=55">Baio77 Ho preso il dsdt dal tuo topic però non so se è l'attuale che usi.. nel caso guarda questo e ricopia sul tuo e poi prova.. Comunque se non usi ne la patch per port limit, ne eventuali kext per far funzionare le usb tipo inject all o FakePCIID... La guida non ti serve...è fatta proprio nel caso per non usare quelle cose DSDT.aml.zip
    1 point
  47. Update X299 La procedura alla fine è la stessa per Skylake e successivi con alcune ulteriori attenzioni e modifiche Estraiamo le tabelle acpi premendo F4 nella gui di clover, rechiamoci in origin e cerchiamo ssdt relativo alle usb Nel mio esempio è SSDT-2-AMI.aml una volta aperto troviamo a partire dalla prima usb Scope (\_SB.PC00.XHCI.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { Return (GUPC (0x01)) } Come per l'altri casi dobbiamo modificare GUPC (0x01) in GUPC (Zero) Da ripetere per ogni porta da disattivare quindi il codice finale sarà Scope (\_SB.PC00.XHCI.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { Return (GUPC (Zero)) } finito di disattivare le nostre porte non in uso su X299 bisogna fare altre modifiche Avendo PC00 finito originalmente nelle acpi, x299 deve e usa un rename acpi sul config PC00 to PCI0 Quale è il problema? Se noi collochiamo il nostro ssdt in patched questo non verrà poi caricato anche se droppata la tabella oem originale perchè "tutte" le acpi hanno a quel punto, grazie al rename di clover PCI0 La nostra tabella patchata e reiniettata invece avrà sempre PC00 e questo non va bene.... quindi Nel nostro compilatore andiamo su Find, mettiamola spunta su "Replace" e modifichiamo il tutto da PC00 in PCI0 come da immagine sottostante Clicchiamo su " All " Compiliamo e salviamo. Collochiamola in EFI/Clover/acpi/Patched Adesso dobbiamo modificare il config e droppare la tabella OEM originale in questo caso ho usato " Length " invece di " table" perchè ci sono altre tabelle con stesso "nome" e quindi usando questo bloccherei non solo la tabella delle usb ma tutte quelle con stesso nome Da dove si ricava Lenght? Lo trovate All'inizio della tabella ssdt su cui lavorate Usando clover configurator per modificare il config, prendete direttamente il valore contenuto dentro le parentesi come evidenziato nell' immagine Adesso sempre dovuto ai rename che si usando su X299 ed a altro occorre diciamo definire un ordine di caricamento delle tabelle evitando così vari problemi Per questo usiamo " SortedOrder " Qui scriviamo il nome esatto della tabella trovata in origin su cui abbiamo lavorato Rimuoviamo o disabilitiamo la patch per port limit Salviamo, riavviamo... Adesso se avete eseguito tutto correttamente avrete attivate solo le usb che usate... NOTA: se dovete in caso rimuove il vostro ssdt da patched ricordate di rimuovere anche il relativo Drop Tables Altrimenti potresti aver problemi al boot oppure nessuna usb funzionante.. perchè ovviamente come detto prima quella funzione blocca il caricamento della tabella OEM e quindi questa tabella non verra mai caricata perchè mancante anche da patched.. NOTA-2: Potete rinominare tale ssdt messo in patched.. per esempio SSDT_DisableUSB.aml Però ricordate che in SortedOrder il nome dovrà essere il medesimo Quindi come cambiate nome al ssdt cambiate anche li... Buon Hack! empticons_thu
    1 point
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.