pumidru Posted October 3, 2021 Share Posted October 3, 2021 In merito alla discussione precedente, avvio lento, ho rigerenato OC da (quasi zero) Mi potete verificare il file allegato Ho 2 porte usb 3 che non funzionano La grafica di OC non viene visualizzata. Grazie sempre Vincenzo OC_0.7.4.zip 1 Link to comment Share on other sites More sharing options...
Support Team Anto65 Posted October 3, 2021 Support Team Share Posted October 3, 2021 Per la gui PickerMode = External PickerAttributes = 144 per le usb hai USBMap.kext hai fatto la mappatura ? tuttavia hai drop SSDT usb oem ? in Acpi forse devi rifare la mappatura meglio https://www.macos86.it/topic/9-mappatura-porte-usb/ Link to comment Share on other sites More sharing options...
pumidru Posted October 3, 2021 Author Share Posted October 3, 2021 Picker Sistemati. Ora prova la mappatura, partendo dal mio OC, ho recuperato ACPI precedenti debbo cancellare il contenuto della cartella e pulire il config.plist? Grazie di tutto Link to comment Share on other sites More sharing options...
pumidru Posted October 3, 2021 Author Share Posted October 3, 2021 Come modifico questo, Scope (\_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities { If (((HUBC & One) == One)) { Return (GUPC (Zero)) } Else { Return (GUPC (One)) } } Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device { If (((HUBC & One) == One)) { Return (GPLD (Zero, Zero)) } Else { Return (GPLD (One, One)) } } } 1 Link to comment Share on other sites More sharing options...
marco.pisellonio80 Posted October 3, 2021 Share Posted October 3, 2021 Scusa l'intromissione, come hai fatto a rigenerare OC da zero, c'è qualche tool o strumento? Io mi sono "ridotto" a cercare le EFI online perché passare di versione di OC dalla 0.65 alla 0.7 mi comportava un lavoro immane. Farei prima a farmelo da zero. Link to comment Share on other sites More sharing options...
Support Team Anto65 Posted October 3, 2021 Support Team Share Posted October 3, 2021 28 minuti fa, marco.pisellonio80 ha scritto: Scusa l'intromissione, come hai fatto a rigenerare OC da zero, c'è qualche tool o strumento? Io mi sono "ridotto" a cercare le EFI online perché passare di versione di OC dalla 0.65 alla 0.7 mi comportava un lavoro immane. Farei prima a farmelo da zero. 🙃 Perche' cercare in giro se hai la tua ? ( funzionante 🤔 ) scarichi la nuova release , metti i kext (aggiornati ,driver,tool che usi ) fai OCsnapshoot con ProperTree ,dopo riporti dal tuo config.plist sul sample.plist la tua configurazione seriali,boot-args,quicks,etc.. verifica con ocvalidate 1 Link to comment Share on other sites More sharing options...
pumidru Posted October 3, 2021 Author Share Posted October 3, 2021 28 minuti fa, marco.pisellonio80 ha scritto: Scusa l'intromissione, come hai fatto a rigenerare OC da zero, c'è qualche tool o strumento? Io mi sono "ridotto" a cercare le EFI online perché passare di versione di OC dalla 0.65 alla 0.7 mi comportava un lavoro immane. Farei prima a farmelo da zero. Ho usato la guida, indicata nel post di antuneddu per le usb hai USBMap.kext hai fatto la mappatura ? tuttavia hai drop SSDT usb oem ? in Acpi forse devi rifare la mappatura meglio https://www.macos86.it/topic/9-mappatura-porte-usb/ 1 Link to comment Share on other sites More sharing options...
marco.pisellonio80 Posted October 3, 2021 Share Posted October 3, 2021 13 minuti fa, antuneddu ha scritto: 🙃 Perche' cercare in giro se hai la tua ? ( funzionante 🤔 ) scarichi la nuova release , metti i kext (aggiornati ,driver,tool che usi ) fai OCsnapshoot con ProperTree ,dopo riporti dal tuo config.plist sul sample.plist la tua configurazione seriali,boot-args,quicks,etc.. verifica con ocvalidate L'ho fatto, ma OCvalidate mi ha dato errore (o forse mi dava ok, ma poi non bootava, non ricordo), così ho presunto che fosse perchè passavo da una versione 0.65 a un'altra troppo distante, la 0.7. Rifare la procedura 6 o 7 volte non è fattibile, per me. Troppo poco tempo libero. 8 minuti fa, pumidru ha scritto: Ho usato la guida, indicata nel post di antuneddu Non l'ho trovata, mi puoi dare il link? Grazie Link to comment Share on other sites More sharing options...
pumidru Posted October 3, 2021 Author Share Posted October 3, 2021 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 Link to comment Share on other sites More sharing options...
Holux Posted October 9, 2021 Share Posted October 9, 2021 Il 3/10/2021 at 19:28, marco.pisellonio80 ha scritto: Scusa l'intromissione, come hai fatto a rigenerare OC da zero, c'è qualche tool o strumento? Io mi sono "ridotto" a cercare le EFI online perché passare di versione di OC dalla 0.65 alla 0.7 mi comportava un lavoro immane. Farei prima a farmelo da zero. Scaricati EFI MAKER dal download. Fa tutto da solo 1 Link to comment Share on other sites More sharing options...
marco.pisellonio80 Posted October 9, 2021 Share Posted October 9, 2021 1 ora fa, Holux ha scritto: Scaricati EFI MAKER dal download. Fa tutto da solo Grazie mille, Holux Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now