août 18, 2008 Archives

lundi 18 août 2008, 11:16:21 (UTC+0200)

request_firmware() and add_timer()

Bon aujourd'hui un peu de code noyau...
Pour ceux qui aurait besoin de faire des trucs tout pa beau que la moral réprouve.
C'est à dire des firmwares binaires à son code tout propre GPL toussa, il faut utiliser :

int
request_firmware(const struct firmware **firmware_p, const char *name,
                 struct device *device)
{
[...]
}
Le problème de cette fonction, c'est qu'il met en place un timer dont le temps par défaut est de 60s. C'est assez pénible.
Il est possible de changer ce temps par :
echo 2 > /sys/class/firmware/timeout
M'enfin, il est aussi possible d'utiliser des choses comme :
int
request_firmware_nowait(
        struct module *module, int uevent,
        const char *name, struct device *device, void *context,
        void (*cont)(const struct firmware *fw, void *context))
Bref, rien de super passionnant vous allez me dire. Et bien cela est vrai :-) C'est encore une période estivale, non ?!

18 août:
18 août == Saint Hélène == Saint Laëtitia

Bonne fête !!!!!