seriove porty

Jindra Fucik fulda at seznam.cz
Fri Apr 25 16:05:34 CEST 2008


----- Original Message ----- 

> Ve skutecnosti ale nepotrebujes aby tvuj "attach" probehl pred attachem
> ovladace sio. Jedine co musis udelat je, az nakonfigurujes co mas, rict
> systemu, ze se konfigurace zmenila, mohly se objevit nova zarizeni
> (jejichz zaznamy si nejdriv pridal do interni hints struktury) a chces,
> aby pro vsechna dosud neobsluhovana zarizeni zahajil hledani ovladace.
>
> Coz system umi - vsimni si, ze kdyz budes mit v hintech seriak, ktery
> neexistruje, tak hlaska o tom, ze nebyl nalezen se ti na konzoli objevi
> pokazde, kdyz pripojis nove zarizeni (treba USB).  To prave proto, ze
> USB enumerator si vyzadal novy "probe" vsech zarizeni - no a ten (chybne
> nakonfigurovany) sio dosud ovladac nema, proto se take pokazde znovu
> zkousi. I kdyz se znovu nenajde.
>
> Nakonec, i kdybys to do tech internich hintu mel problem napsat - tak
> to napis do souboru. Maximalne se to v prvnim pruchodu nenajde (kdyz to
> poradi "attach" nebude priznive) - tak to najde pri tom druhem, ktery ty
> iniciujes az to nakonfigurujes.

Takze abych napsal tydenni summary mojeho pruzkumu.
zjistil jsem, ze hinty se suse naparsuji do interni struktury device_t (man 
9 device)
potom - jak pise Dan se na kazdou radku zavola device_probe_and_attach (man 
9 device_probe_and_attach)

pro pripad, ze mame hot-plug/pnp zbernici, tak ovladac zdetekuje a prideli 
potrebne prostredky
(system umoznuje vyhledavani prostredku pomoci funkci resource_list_find, 
resource_list_add, ...)

po prideleni a nebo zdetekovani prostredku ovladac zbernice vyplni device_t 
strukturu
(pomoci funkci device_add_child, device_set_ivars, device_set_desc, 
device_set_flags, ...)

a nakonec vlastni zarizeni pripoji prave pomoci device_probe_and_attach
(kterej se da volat na konkretni device_t radku, takze neni nutne dostat 
chybu od ciziho zarizeni)

Takze v mojem pripade to bude celkem jednoduche:
v hintech bude informace pouze o mojem zarizeni
f81216.0.port1="..."
ktere si muj ovladac precte a nastavi podle nich seriovou karticku.
na zaklade toho nastaveni vyplnim struktury stejne jako bych byl PnP a 
zavolam ctyrikrat attach na sio zarizeni

To je vlastne cele.
Jenom se trochu bojim, ze budu muset modifikovat ovladac sio tak, aby 
akceptoval port pripojenej k moji zbernici f81216 a nebo se budu muset 
naucit sebe prohlasit za isa zbernici.

Jindra




More information about the Users-l mailing list