Jump to content

[Aiuto] Installazione ML su Optiplex 9010


cili0
 Share

60 posts in this topic

Recommended Posts

SSDT basta piazzarli in Extra, ci pensa il bootloader a caricarseli; il DSDT anche a me fa lo stesso scherzo, ma avevo notato che (importata sul mio la parte di codice per la HD4000) mi dava un warning strano che non sono riuscito a risolvere.

Per la flag PCIRoot non so dirti, la devo usare obbligatoriamente se uso GE=Yes altrimenti non arrivo al desktop... non ti resta che provare.

EDIT: potresti postare il tuo DSDT vergine e ocbp che ti dà la risoluzione OK?

Link to comment
Share on other sites

SSDT basta piazzarli in Extra, ci pensa il bootloader a caricarseli; il DSDT anche a me fa lo stesso scherzo, ma avevo notato che (importata sul mio la parte di codice per la HD4000) mi dava un warning strano che non sono riuscito a risolvere.

Per la flag PCIRoot non so dirti, la devo usare obbligatoriamente se uso GE=Yes altrimenti non arrivo al desktop... non ti resta che provare.

EDIT: potresti postare il tuo DSDT vergine e ocbp che ti dà la risoluzione OK?

 

Domani provo a mettere le tue SSDT in /E/ e vediamo se boota :)

Per il DSDT faccio un ragionamento abbastanza pragmatico. Immagino che il bootloader autopatchi il DSDT per far funzionare la scheda. Ragione per cui mi chiedo se non potessi avere un approccio di ingegneria inversa: avvio con GraphicsEnabler=Yes e senza DSDT.aml così che la scheda funzioni; a quel punto estraggo il DSDT così da capire cosa ha iniettato. Questo DSDT.aml si potrebbe poi usare come base per far funzionare la ATI. Può andare?

Link to comment
Share on other sites

Mah, forse si vede una differenza estraendo ioreg in 2 momenti diversi, con e senza GE; non credo che Enoch vada ad agire sul DSDT (o sbaglio?).

Questa è una domanda per Fabio

  • Like 1
Link to comment
Share on other sites

Enoch (come il papà Chameleon)

al momento le uniche modifiche a livello di codice aml vengono fatte come patch per gli alias delle CPU,

ho da tempo implementato e ampliato i metodi di creazione di varianti, ma sono momentaneamente tutti privi di funzionalità (è uno dei tanti TODO che devo completare)

 

Ritornando alla domanda di cili0, purtroppo non vedresti differenze estarendo il DSDT...

quello del GraphicsEnabler e le relative sottofunzioni sono l'equivalente delle EFI string (oppure Device-properties nel o.c.B.p)

 

cili0 potresti anche puntare ad una soluzione "ibrida" ad esempio (è un esempio) lasciare ad Enoch la parte della HD4000 (togliendola dal DSDT)

e attivare "l'attivabile" della ATi tramite DSDT...

 

Cosa che sconsiglio è avere la grafica iniettata nel DSDT e avere il GraphicsEnabler attivo... (poi ognuno ha la sua opinione...)

 

Fabio (ErmaC)

Link to comment
Share on other sites

Grazie per la spiegazione. Credevo che l'approccio fosse alla Clover, dove da quanto ho capito per molte cose si va a patchare automaticamente il DSDT. Manco purtroppo dei fondamenti teorici delle stringhe EFI. Come dice carbo ero a conoscenza del fatto che la stringa inniettata sia estraibile con ioreg, ma non ho i dettagli. Penso che estrarla possa comunque darci qualche indicazione, quale stringa cerco in IORegistryExplorer? Una curiosità, vedo che Apple pubblica i sorgenti di IORegistryExplorer ma non un binario...devo compilarmelo da solo?

 

Mi pare di capire che il consiglio sia di togliere da un DSDT.aml il toto la parte relativa alla HD4000 (la parte Method, DSM etc..) e iniziare a vedere se così boota con GraphicsEnabler=Yes.

 

Grazie.

Link to comment
Share on other sites

Una curiosità, vedo che Apple pubblica i sorgenti di IORegistryExplorer ma non un binario...devo compilarmelo da solo?

 

Mi pare di capire che il consiglio sia di togliere da un DSDT.aml il toto la parte relativa alla HD4000 (la parte Method, DSM etc..) e iniziare a vedere se così boota con GraphicsEnabler=Yes.

 

IORegistryExplorer in formato applicazione ompilata l trovi in bundle con Xcode (se non erro)

 

Ti posto il solito DSDT al quale ho commentato la parte relativa all'HD4000, quindi puoi usare il bootloader con la chiave per l'ig che preferisci, ho lasciato la ATi,

perchè onestamente non so come gestire la cosa, quindi GraphicsEnabler=Yes HD4K-ig= "un valore", SkipAtiGfx=Yes (Quest'ultimo proprio per il fatto che resta l'iniezione nel DSDT della ATi.

 

Archive.zip

 

Fabio

Link to comment
Share on other sites

Grazie Fabio, gentilissimo. Ho XCode installato su tutte le macchine, ma qui sul fisso non trovo IORegistryExplorer. Non l'ho cercato molto, al massimo lo compilo ;)

 

Domani provo con tutti i valori e vediamo cosa succede :D

 

EDIT: oggi "purtroppo" la macchina stava eseguendo una simulazione sotto Windows. Appena si libera faccio una prova

Link to comment
Share on other sites

  • 3 weeks later...

Allora. Oggi ho aperto system profiler e ho notato che la scheda era vista come una Radeon HD 6xxx (non ricordo purtroppo la sigla esatta). A fronte di un riavvio non partiva più l'ambiente grafico. Il monitor è sempre stato attaccato alla HD4000. Ho notato da -v il seguente:

 

 


AMDCaicosGraphicsAccelerator: ** Device in slot: SLOT--1 **

 

Da quanto ho visto in giro questo vuol dire che il dispositivo nella porta PCIe in questione non è riconosciuto. Ciò mi ha portato a pensare che l'injection che è stata fatta in AMDRadeonAccelerator.kext fosse improvvisamente stata riconosciuta (non ho spiegazioni plausibili sul perchè prima la modifica non avesse sortito effetto).

 

Effettivamente ad ogni reboot, per un attimo partiva la schermata bianca e poi si tornava in verbose, come se un tentativo di avvio dell'ambiente grafico fosse stato immediatamente abortito. Il che fa pensare che il driver di OS X per la serie ATI 6000 non fosse in grado di pilotare correttamente la Radeon HD7450.

 

Per risolvere ho staccato fisicamente la scheda, ho bootato con la HD4000 e aggiornato a 10.8.4, sovrascrivendo così i vecchi driver (e conseguentemente rimuovendo l'injection). Ho aggiornato Chameleon alla 2.2 rev 2240 (apparentemente non c'è un modo di switchare sul branch di Enoch). Ora la scheda è vista come Radeon HD 7450 (così come specificato da ati.c), e nessun driver di accelerazione è caricato:

 

 

$ kextstat | grep -i AMD

   89    0 0xffffff7f819f6000 0x67000    0x67000    com.apple.kext.AMDSupport (8.1.2)

 

Credo però che (non so per quale strano motivo) siamo andati vicini a far riconoscere correttamente la scheda. La HD7450 è infatti un rebrand della HD6450. Qualche idea?

 

Grazie.

Link to comment
Share on other sites

 Share

×
×
  • Create New...