FAQ: Hledáme parametry modulu xyz (Was: Re: Parametry pro modul rtl8139.o)
Pavel Janik ml.
Pavel.Janik na inet.cz
Pondělí Duben 17 19:44:46 CEST 2000
From: "Ing. Zdenek Havranek" <sea-cv na volny.cz>
Date: Mon, 17 Apr 2000 11:06:51 +0200 (CEST)
Zdravím,
> Jak se nastavuji parametry sitove karty u modulu rtl8139.O ?
> Zajima me hlavne prepinani 10/100 Mbps a prepinani half/full duplex.
> Nebo si modul korektne nacte nastaveni z EEPROM na karte?
některé (většina) ovladačů síťových karet umožňují specifikovat volby při
jejich zavedení. Jak najít, které to jsou, když nerozumím zdrojovým textům?
Všechny parametry u jakéhokoli modulu jsou ve zdrojových textech definovány
pomocí makra MODULE_PARAM. Např. ve zdrojovém textu ovladače rtl8139.c (viz
drivers/net/rtl8139.c) je uvedeno:
MODULE_AUTHOR("Donald Becker <becker na cesdis.gsfc.nasa.gov>");
MODULE_DESCRIPTION("RealTek RTL8129/8139 Fast Ethernet driver");
MODULE_PARM(options, "1-" __MODULE_STRING(MAX_UNITS) "i");
MODULE_PARM(full_duplex, "1-" __MODULE_STRING(MAX_UNITS) "i");
MODULE_PARM(multicast_filter_limit, "i");
MODULE_PARM(max_interrupt_work, "i");
MODULE_PARM(debug, "i");
Tento modul tedy akceptuje volby full_duplex, multicast_filter_limit,
max_interrupt_work a debug. Hodnoty, kterých může volba nabýt, jsou určeny
posledním parametrem makra MODULE_PARM. Např. písmeno "i" znamená, že parametr
očekává celé číslo. Význam dalších písmen je v souboru include/linux/module.h:
/* Used to verify parameters given to the module. The TYPE arg should
be a string in the following format:
[min[-max]]{b,h,i,l,s}
The MIN and MAX specifiers delimit the length of the array. If MAX
is omitted, it defaults to MIN; if both are omitted, the default is 1.
The final character is a type specifier:
b byte
h short
i int
l long
s string
*/
--
Pavel Janík ml.
Pavel.Janik na inet.cz
Další informace o konferenci Linux