VoodooSDHC ist zurück

  • Es gibt wieder Hoffnung für die verloren geglaubten Kartenleser in den Notebooks in unserem Forum! Es ist noch nicht Weihnachten, aber ich wollte es euch im Angesicht des Weihnachtsgebäcks vor mir nicht länger vorenthalten :D


    Nach etwas Bastelarbeit ist es mir gelungen, die etwas eingestaubte Voodookunst wiederzubeleben und so den internen PCIe Kartenleser 197b:2391 in meinem HP EliteBook 8460P unter macOS Sierra wieder in Betrieb zu nehmen.


    Leider ist diese Version kaum getestet, sollte aber problemlos funktionieren, wie in den Screenshots ersichtlich. Um deinen Kartenleser einzufügen sollte es reichen, VendorID und DeviceID des Kartenlesers in die VoodooSDHC.kext/Contents/Info.plist unter IONameMatch einzutragen. Wenn dein Kartenleser funktioniert oder du einen aktuellen IOReg Dump (IORegistryExplorer) postest, trage ich dein Gerät im nächsten Release nach. Mit der Zeit sollte diese Kext dadurch immer universeller werden. Wenn deine IDs eingetragen sind kann die Kext einfach in EFI/CLOVER/Kexts/[version]/ eingesetzt oder nach /S*/L*/E*/ oder /L*/E*/ installiert werden.


    Derzeit sollten Kartenleser von JMicron, Ricoh und Texas Instruments unter macOS Sierra unterstützt werden.


    Bitte testen und hier berichten, inklusive:

    • IORegistryExplorer Dump als Anhang (notfalls gezippt)
    • verwendete Karte (Kapazität, Typ: SD, SDHC, SDXC)
    • Konsolen Log (Console.app, Suche nach "VoodooSDHCI")
    • Besondere Vorkommnisse (Freeze, Abstürze, etc.)

    Ein Dank gilt @darkey1991, @griven, @neidersun und @Reprise80 für Inspiration und Unterstützung, und natürlich besonders VoodooLabs für den etwas betagten Sourcecode!


    VoodooSDHC.kext.zip

  • Bei mir mag das irgendwie nicht funktionieren.
    Mein T530 hat "<string>pci1180,e823</string>" als CardReader im DPCI Manager und die Info.plist des VoodooSDHC ist entsprechend eingerichtet.
    Ich lasse den Kext aus der EFI heraus laufen, aber wenn ich eine SD-Karte einschiebe, hängt sich der Finder weg und ich kann nur einen Neustart per Power-Button anleihern...
    Was fehlt mit denn noch?

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Ja stimmt, das gleiche habe ich auch, hängt sich komplett auf...

    SHUTTLE XH61v i5-3570-K HD4000 8GB RAM 256GB SSD macOS Sierra 10.12.6
    LENOVO IdeaPad 3 17IML05 i5-10210U 8GB RAM 512GB SSD HD 620 Monterey 12.5.1 Opencore 0.75
    Lenovo Ideapad 500-15ISK i7 6500U 2,5GHz 12GB RAM Intel HD520 500GB SSD macOS Sierra 10.12.6. Clover 4061

    Acer Swift 5 i7 7500U HD620 8GB Ram 256GB SSD macOS Mojave 10.14.1

  • Der Kext funktioniert nur für Sierra, richtig? Ich hab den jetzt einfach mal bei mir getestet (unter El Capitan) und der Cardreader wurde trotz richtiger IDs nicht einmal erkannt. Wäre natürlich auch zu schön gewesen :D

  • Könnt ihr mal bitte eure IOReg Dumps posten? Wenn möglich mit eingesteckter Karte, wenn es das System soweit zulässt und "nur" der Finder betroffen ist. Das Problem hatte ich auch den ganzen Tag über, aber jetzt funzt es. Vielleicht hilft euch dann ein DSDT Patch weiter, vielleicht fehlt aber auch noch was im Kext. Muss ich schauen...


    Ein Test auf der El Capitan Installation von @darkey1991 ist schon fehlgeschlagen, wobei ich eher sein System selbst als Größtfehler einschätze

    gez. Thogg Niatiz

  • Yosemite? Ich habe leider aktuell keine alten Systeme mehr laufen. Kannst du mal bitte in den System Informationen unter Erweiterungen schauen, welche Versionen IOKit, IOPCIFamily und IOStorageFamily haben?


    Edit: Bei wem es sich aufhängt bitte mal mit der gesprächigen Variante schauen in der Konsole schauen, was VoodooSDHCI erzählt. Und ich würde bitte sehen, was der IORegistryExplorer weiß.

  • Ich kann dir nur den IOREG anbieten...
    Wo sollte ich den vom Voodoo die Verbose Infos finden?

    Dateien

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Ja, also dann auch von mir die IOReg Datei. Ich hab' wie gesagt El Capitan in Verwendung und der DPCIManager listet den Cardreader mit Vendor "10EC" und Device "5209", allerdings wird die Kext nicht geladen (trotz meiner Meinung nach richtiger Bearbeitung).


    ich hoffe du kannst damit etwas anfangen.

  • Erstmal ein FETTES Danke :) das du dich so ins zeug legst dafür :) aber leider kann ich kein erfolg melden, ich habe auch das problem das sich mein finder aufhängt, wenn ich die Karte paar mal raus und rein stecke :(


    EDIT : Hier meine IOREG mit deinem kext :)

    Dateien

    • IOREG.zip

      (3,96 MB, 222 Mal heruntergeladen, zuletzt: )

    Gruß
    Jeroen :)


    Hp ProBook 470G0
    Intel i7-3632QM
    Intel HD Graphics 4000
    AMD Radeon HD8750M
    Samsung 2x4Gb DDR3
    Windows10 ,High Sierra 10.13.1
    Clover

    Einmal editiert, zuletzt von Reprise80 ()

  • von mir auch ein recht herzliches :danke2: auch wenn es bei mir erstmal noch nicht funktioniert.


    Es handelt sich um mein HP Envy mit EC und es tut sich gar nichts, als würde es keinen (PCIe)CardReader geben.
    Im DPCI-Manager wird bei mir aber auch nur ein Realtek Semiconductor angezeigt. Das muss der CardReader sein, da ich keine andere Realtek-Hardware drin oder dran habe...



    ...und hier noch mein IOReg-Auszug mit eingelegter SD-Karte.
    MacBook Air.ioreg.zip


    Nachtrag: in Sierra habe ich die kext nach S/L/E installiert, aber auch hier gibt es keinen Erfolg zu vermelden. Den string hatte ich in Form von Vendor, Device eingetragen, ist doch hoffentlich richtig.

    MfG, docplag



    Einmal editiert, zuletzt von Doctor Plagiat ()

  • Bei @darkey1991, @Doctor Plagiat und @j0nm1 wird VoodooSDHC gar nicht geladen. Entweder sind die IDs falsch eingetragen oder sie kommt einfach nicht damit klar, das Device PXSX zu finden. Ihr könnt mal versuchen, das Gerät in der DSDT in SDXC umzubenennen. darkey1991 findet es unter RP05, j0nm1 unter RP03 und Doctor Plagiat unter RP09. Nutzt auch die Daten aus meinem DSDT Patch für den Kartenleser im 8460P, vor allem den _DSM Teil. Dann im IORegistryExplorer schauen, ob die VoodooSDHC Kext von unten eingebunden wird. Darunter sollte dann auch noch IOBlockStorageDriver geladen werden, ähnlich wie im Screenshot. Ich schaue inzwischen, wie ich eure Realtek Geräte implementiere. Bisher sind nur Ricoh, TI und JMicron Geräte dabei. Leider habe ich selbst keinen Realtek Kartenleser und bin noch recht neu bei der Sache, es ist also etwas kompliziert.


    @al6042 dein Gerät ist zwar implementiert, ist aber anders als die anderen per USB angebunden. Du kannst dich auch gern mal am DSDT Patch bedienen, obwohl du das meiste darin wohl eh schon gemacht hast. Dein Leser heißt SDXC, wie es sich gehört ;) Bei deinem IOReg ist mir aufgefallen, dass in IOBlockStorageDriver > Statistics die Werte alle auf 0 stehen. Das war bei mir anfangs auch so und erst mit etwas experimentieren änderten sich die Werte und damit wurde dann auch die Karte erkannt. Leider weiß ich nicht direkt, wie man die Werte beeinflussen kann...

    Bilder

    • IOReg.png

    Dateien

    gez. Thogg Niatiz

    2 Mal editiert, zuletzt von Thogg Niatiz ()

  • Ich habe in der DSDT unter PR09 PXSX durch SDXC ersetzt. Ebenso bei den anschließenden Compiler-Fehlern. Das Ergebnis ist, dass jetzt im IOReg-Explorer unter PR09 SDXC steht. VoodooSDHC fehlt aber weiterhin.
    Wenn ich den SDXC-Patch anwende, bekomme ich gleich in der ersten Zeile einen Compilerfehler "Input file does not appear to be an ASL or data table source file".

    MfG, docplag



  • Der Patch hatte tatsächlich einen Fehler, du kannst den Patch bei deinem System aber nicht einfach so übernehmen - du hast keinen 8460P. Hab den Fehler im Patch oben behoben. Überlege dir gut, welche Patches bei deiner DSDT Sinn machen - notfalls trägst du die Änderungen händisch an die richtigen Stellen ein.

    gez. Thogg Niatiz

  • Danke Dir. Ja, ich wollte den Patch noch anpassen, so weit wie ich das verstehe. Aber das Problem ist, händisch Änderungen an der richtigen Stelle zu machen, wenn man nicht weiß "was und wo". Na mal schauen.

    MfG, docplag



  • Das ist keine originale, die ist für das HP Envy schon gepatcht. Unter PR09 habe ich schon alle Einträge PXSX durch SDXC ersetzt.
    DSDT_HPEnvy13.zip

    MfG, docplag



  • Vielleicht war ich das, der da was zusammengepfuscht hat. :D


    Jedenfalls vielen Dank für deine Arbeit. Funktioniert aber leider auch nicht. In der VoodooSDHC.kext hane ich Vendor und Device eingetragen und diese dann in Cover/kexts/Other/ hinzugefügt. Im IOReg-Explorer steht unter PR09 nur SDXC@0, VoodooSDHC wird also nicht geladen.


    EDIT: Im Windows Geräte-Manager habe ich eben nochmal nachgesehen. Es ist ein PCIe Realtek Cardreader mit Vendor 10ec und Device 522a


    EDIT2: In Sierra wird VoodooSDHC geladen. wird im IOReg-Explorer unter RP09/SDXC@0 angezeigt. Im Finder und im System-Profiler aber Fehlanzeige.

    MfG, docplag



    2 Mal editiert, zuletzt von Doctor Plagiat ()