ide-dma bei Toshiba-Notebook/Treiberentwicklung

Jan 'RedBully' Seiffert redbully at cc.fh-luh.de
Tue May 16 16:40:35 CEST 2006


Ron Lange wrote:
> Jan 'RedBully' Seiffert schrieb:
> ...
> 
>> Wie heisst denn die Datei?
> 
> IDE.pdr
> ...
> 
Das war genau das richtige, guter Gurgel-Suchbegriff ;)

>> Eine wichtige Sache wenn man ein Dissaemblat erstellt ist, Code von
>> Daten zu Trennen, das ist erstmal eine Vorarbeit, quasi schon mal den
>> Source wieder zu bekommen.
> 
> RecStudio überführt das Disassemblat netterweise in einen
> C-Zwischencode, wo Prozeduren und Systemcalls bereits separiert werden.
> Es ist natürlich nur mehr eine visuelle Hilfe, aber es hilft dem
> "Hochsprachler" schon ein kleines bisschen beim Verstehen...
> ...
> 
Aha, oho.

>> Da musst du mal ehrlich sein, das Interesse fuer so einen Treiber ist,
>> oehm, abnehmend.
> 
> Leider ACK. Wobei ich z.Zt. mit einem Leidensgenossen in Kontakt stehe
> und mir mehr als nur eine Handvoll Leute bekannt sind, die so einen
> Treiber begrüßen würden. Dieser Chip ist in vielen Modellen der
> Pre-98-Ära von Toshiba verbaut(danach wurden Intel-generische Chipsets
> verwendet).
> ...
> 
Nungut, der Vorteil ist da wohl, das Toshiba viel ueber den Ladentisch
gegangen ist.

>> Hmmm, ide-commons? Welcher Kernel? Welche Config-option?
> 
> debian etch 2.6.12-1-386, alle DMA-relevanten
> 
>> "Generic PCI IDE Chipset Support" tut es nicht?
> 
> Offenbar nicht.
> 
Oehh, mir ist jetzt nur immer noch nich ganz klar, welchen IDE treiber
ide-commons ist. Ist das der Modulname? Ein extra Patch?
-v bitte.

Ein "cat /proc/ioports" und ein lspci der Systemkomponenten waer auch
mal nicht schlecht.

>> Nachdem ich das Post geschrieben hab, viel mir noch eine andere Methode
>> ein, die aber schwierig ist.
>>
>> Du besorgst dir eine Art lspci fuer Win. Wo man auch den pci-mem dumpen
>> kann (da sollten die config register von dem Biest liegen).
>> Nun spielst du alle moeglichkeiten durch:
>> Kein Device (mit PCMCIA-Controler BartPE booten???), ein Device, zwei
>> Devices, DMA an, DMA aus, jedesmal einen Dump machan, am besten mehrmals.
>> Nun gilt es, zufaellige aenderungen (Wat weiss ich, einen Counter), von
>> den entscheidenen zu Trennen. (Und genau da kann man sich bei der
>> Methode auf die Schnauze legen).
> 
> Ich habe auch schon an BartPE gedacht, allerdings -neben der Tatsache,
> dass ich gar kein Windows mehr besitze-
Ok, das macht es natuerlich schwieriger mal eben unter Win98 mit
Orgianltreiber den PCI-Space sich anzuschauen.
Dann koennte man auch sehen, ob da mehr PCI-Devices auftauchen.

> läuft das ja wohl nur mit XP-SP1+.
Stimmt, vergessen wir das...

> Alles in allem hört sich das aber auch irgendwie nach planlosem
> Gewurschtel an ;-)
> 
Hmmm, geht so. Wenn man schon mal sieht, das unter Windows ein Device
mehr auftaucht, dann weiss man, das da was im Busch ist. Einige Devices
sind dann uninterresant (ein Bit in der GraKa wird nicht den IDE-Chip im
PCI-Space verstecken, normalerweise...) kann man mit Diff, ein wenig
logik und etwas experimentieren _vielleicht_ schnell zu einem Ergebniss
kommen (gut, etwas Glueck auch noch). (Wenn es wirklich ein
BIOS-Versteckspielchen ist, und du sagtest ja was von Intel-TX kompatibel)

>> Schwierig macht es dabei die "Multifunktion". Viele weitere
>> Configregister, die man verstellen kann und die einem den Blick
>> vernebeln. Weisst du, was da noch alles drauf liegt?
> 
> Leider nicht konkret, da alles andere (APIC,FIR,PCMCIA,SOUND) erkannt
> und eingebunden wird. Wie erwähnt wurde dieser Chip in vielen anderen
> Baureihen verbaut, wo man leider nicht weiß, ob bei meinem nicht einfach
> on-chip-Funktionen durch weitere Bauteile ersetzt wurden. Produktdesign
> ist eine Spielwiese für Spekulationen ;-)
> 
Stoehn...
Ja, Notebookhardware. Gleiche Modelbezeichnung, anderes Innenleben...

>> Bist du eigenlich sicher das es diese "Host-to-Cpu-Bridge" ist? 
> 
> ...
> Auch nicht ;-). Diese Vermutung basiert auf meinen Recherchen, nach
> denen z.B. die PCI_ID in früheren Kernelversionen auch mal als
> PCI-IDE-Controller kommentiert war,
Aber das fuehrt zu/half nix?

> zudem ist in den
> Register-Spezifikationen des Piccolo-S-Chipsatzes auch von diversen
> Vorgängern die Rede,
Es gibt Spezifikationen zu einem Piccolo-S? Wo?

> vielleicht handelt es sich auch um einen Piccolo-T,
> der Intel-TX-kompatible Konfigurationsregister besitzt...wer weiß...
>
Schon mal deine PCI-ID in den Inteltreiber geknallt?

>> Nicht,
>> dass das wirklich nur eine Bridge ist und ueber entsprechende Eintrage
>> im PCI-Space (BARs etc.) noch der Blick auf den Chip freigeknipst werden
>> muss, er nach dem booten (danke BIOS) einfach in einen DOS-Kompatibel
>> Modus geknipst ist und sich versteckt? (Vielleicht tut es dann sogar der
>> generische IDE-DMA-Treiber?).
> 
> Das ist sogar ziemlich wahrscheinlich. Da glücklicherweise jemand
> bereits die Toshiba-Utils(habe zwar nichts mit dem DMA-Modus zu tun) für
> Windows reengineered hat, und die entsprechenden Register auch noch
> dokumentiert hatte,
Wo Wo Wo?

> lässt sich hieraus vielleicht ein Anhaltspunkt
> gewinnen, ob BIOS-Routinen verwendet werden.
> ...
>
BIOS-Routinen wird Linux nicht verwenden.
Mir ist halt noch nicht ganz klar mit hilfe welches Treibers dein IDE
momentan laeuft (siehe oben).
Einfach Legacy ueber 0x170? Oder doch schon ueber PCI, nur der Kernel
weiss nicht, wie er an deinem Controller DMA anmachen soll.
Das BIOS hab ich in dieses Spiel gebracht, da diese beim booten so
einige Sachen hardwarespezifisch einstellen, und dabei eben (auch
nachdem was du im BIOS-Setup eingestellt hast) auschalten, fixen,
umbiegen kann. Zur not im vertrauen darauf, der Wintreiber wirds schon
richten...
Wenn man diese "Fixes" wieder rueckgaengig macht, kann vielleicht ein
anderer generischer Treiber in Linux endlich seine Arbeit verrichten.

> Gruß
> Ron
> 
Gruss
	Jan

> PS: Da du nicht über die Liste geantwortet hast, habe ich mir dieses
> "fast"-full-quote erlaubt. Wenn ich damit in die falsche Kiste gegriffen
> habe, dann sagt es mir bitte ;-)
> 
Du hattest damit angefangen ;) Ich dachte du wolltest das Privat
durchdiskutieren, da es schon etwas speziell fuer die Liste ist, aber
andereseits, da sitzen die Gurus.
Nebenbei, wenn du es auf die Liste schickst reicht das bei mir, ich lese
sie.

-- 
Morgens schoen erstmal nen Kopf aus geraspelten man-pages rauchen,
das entspannt ;)



More information about the Linux mailing list