| 1 | Parameters for modprobe and insmod |
|---|
| 2 | ================================== |
|---|
| 3 | ================================== |
|---|
| 4 | SUMMARY |
|---|
| 5 | |
|---|
| 6 | [modprobe,insmod] module [parameter...] |
|---|
| 7 | Parameters: |
|---|
| 8 | force=bus,address |
|---|
| 9 | force_addr=address |
|---|
| 10 | force_[chipname]=bus,address |
|---|
| 11 | ignore=bus,address |
|---|
| 12 | ignore_range=bus,startaddress,endaddress |
|---|
| 13 | probe=bus,address |
|---|
| 14 | probe_range=bus,startaddress,endaddress |
|---|
| 15 | |
|---|
| 16 | All arguments are in decimal unless prefixed by "0x". |
|---|
| 17 | |
|---|
| 18 | ================================== |
|---|
| 19 | OVERVIEW |
|---|
| 20 | |
|---|
| 21 | All chip drivers have a few modprobe module parameters in common. |
|---|
| 22 | (Insmod can also be used, but we recommend modprobe so that |
|---|
| 23 | other required modules are automatically loaded.) These |
|---|
| 24 | parameters can be used when a module is inserted, to give some additional |
|---|
| 25 | information about how it should function. In this case, they tell where |
|---|
| 26 | the module should look for what chips. Usually, you don't need them, and |
|---|
| 27 | if you do, you are often told by sensors-detect which ones you need. |
|---|
| 28 | |
|---|
| 29 | If a module doesn't load with no parameters, you may need to |
|---|
| 30 | add parameters. Check 'dmesg' for clues to what went wrong. |
|---|
| 31 | |
|---|
| 32 | I2C/SMBus adapters are numbered in the order they are inserted. If you want |
|---|
| 33 | to know what number an adapter has, please make sure module `i2c-proc' is |
|---|
| 34 | inserted, and look at file /proc/bus/i2c. The ISA bus always has the |
|---|
| 35 | symbolic number 9191 (`I' is the ninth letter of the alphabet, `S' the |
|---|
| 36 | nineteenth and `A' the first). If you want 'any I2C bus', use '-1' |
|---|
| 37 | (or 65535). |
|---|
| 38 | |
|---|
| 39 | Each adapter has a number of addresses on I2C/SMBus adapters and/or the |
|---|
| 40 | ISA bus that are always scanned if no modprobe parameters are given. The |
|---|
| 41 | parameters below override those addresses that are scanned by default. |
|---|
| 42 | |
|---|
| 43 | All modprobe parameters described below take lists of positive integers |
|---|
| 44 | (unsigned, in the range of 0 to 65535) as their arguments. Integers |
|---|
| 45 | are separated by comma's, and may be given as ordinary decimal numbers, |
|---|
| 46 | as octal numbers (by starting them with a `0') or as hexadecimal numbers |
|---|
| 47 | (by starting them with a `0x'). More information can be found by |
|---|
| 48 | entering `man modprobe' or `man insmod'. |
|---|
| 49 | |
|---|
| 50 | ================================== |
|---|
| 51 | PARAMETER DETAILS |
|---|
| 52 | |
|---|
| 53 | `force', `force_*', `ignore' and `probe' parameters take pairs of numbers. |
|---|
| 54 | Each first (odd) number is a bus number, each second (even) number is |
|---|
| 55 | an (I2C or ISA) address. |
|---|
| 56 | |
|---|
| 57 | `ignore_range' and `probe_range' parameters take triples of numbers. |
|---|
| 58 | Each first number is a bus number, each second number is the start address |
|---|
| 59 | of a range, and each third number is the end address of a range. Ranges |
|---|
| 60 | are always inclusive. |
|---|
| 61 | |
|---|
| 62 | `probe' and `probe_range' parameters tell the module to scan additional |
|---|
| 63 | addresses for a specific bus. These are treated just as the ordinary |
|---|
| 64 | addresses scanned. This is useful for some chips that can be anywhere; |
|---|
| 65 | to keep loading time (and false detections) down, only the most common |
|---|
| 66 | addresses are scanned by default. |
|---|
| 67 | |
|---|
| 68 | `ignore' and `ignore_range' parameters tell the module not to scan |
|---|
| 69 | specific addresses. They overrule the default addresses and any |
|---|
| 70 | addresses specified by `probe' and `probe_range' statements. |
|---|
| 71 | |
|---|
| 72 | The `force' parameter tells the module a supported chip is found at |
|---|
| 73 | a specific address. It overrules all previously mentioned parameters. |
|---|
| 74 | Sometimes, a chip can be in a specific internal state that makes |
|---|
| 75 | detection impossible. If you specify it with the `force' parameter, |
|---|
| 76 | it is first put into a recognizable state. Also, some detection routines |
|---|
| 77 | are skipped. If the module supports several chips, it will still try |
|---|
| 78 | to determine what chip is found on that address. If it can't determine |
|---|
| 79 | this, the address will still not be used. |
|---|
| 80 | |
|---|
| 81 | There is a `force_*' parameter for each type of chip supported by a |
|---|
| 82 | module. This is the strongest statement possible - it says that a |
|---|
| 83 | specific type of chip is found on a specific address, and the module |
|---|
| 84 | will skip all detection and recognition routines. This can lead to |
|---|
| 85 | very strange results... |
|---|
| 86 | |
|---|
| 87 | `force_addr' is a parameter used for PCI sensor adapters. |
|---|
| 88 | It is used to program the base address of the sensor registers. |
|---|
| 89 | This is required if the BIOS does not initialize the base address. |
|---|
| 90 | |
|---|
| 91 | ================================== |
|---|
| 92 | EXAMPLE |
|---|
| 93 | |
|---|
| 94 | modprobe lm78 force_lm79=9191,0x390 ignore=0,0x2d,1,0x20 probe_range=-1,0,0x7f |
|---|
| 95 | # ISA address 0x390 contains a LM79 |
|---|
| 96 | # Scan all I2C addresses (from 0 to 0x7f) for all I2C adapters |
|---|
| 97 | # But skip address 0x2d on adapter 0, and address 0x20 on adapter 1 |
|---|