1Module Parameters in fmc.ko 2*************************** 3 4The core driver receives two module parameters, meant to help debugging 5client modules. Both parameters can be modified by writing to 6/sys/module/fmc/parameters/, because they are used when client drivers 7are devices are registered, not when fmc.ko is loaded. 8 9`dump_eeprom=' 10 If not zero, the parameter asks the bus controller to dump the 11 EEPROM of any device that is registered, using printk. 12 13`dump_sdb=' 14 If not zero, the parameter prints the SDB tree of every FPGA it is 15 loaded by fmc_reprogram(). If greater than one, it asks to dump 16 the binary content of SDB records. This currently only dumps the 17 top-level SDB array, though. 18 19 20EEPROM dumping avoids repeating lines, since most of the contents is 21usually empty and all bits are one or zero. This is an example of the 22output: 23 24 [ 6625.850480] spec 0000:02:00.0: FPGA programming successful 25 [ 6626.139949] spec 0000:02:00.0: Manufacturer: CERN 26 [ 6626.144666] spec 0000:02:00.0: Product name: FmcDelay1ns4cha 27 [ 6626.150370] FMC: mezzanine 0: 0000:02:00.0 on SPEC 28 [ 6626.155179] FMC: dumping eeprom 0x2000 (8192) bytes 29 [ 6626.160087] 0000: 01 00 00 01 00 0b 00 f3 01 0a 00 a5 85 87 c4 43 30 [ 6626.167069] 0010: 45 52 4e cf 46 6d 63 44 65 6c 61 79 31 6e 73 34 31 [ 6626.174019] 0020: 63 68 61 c7 70 72 6f 74 6f 2d 30 cc 45 44 41 2d 32 [ 6626.180975] 0030: 30 32 32 36 37 2d 56 33 da 32 30 31 32 2d 31 31 33 [...] 34 [ 6626.371366] 0200: 66 64 65 6c 61 79 0a 00 00 00 00 00 00 00 00 00 35 [ 6626.378359] 0210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 36 [ 6626.385361] [...] 37 [ 6626.387308] 1800: 70 6c 61 63 65 68 6f 6c 64 65 72 ff ff ff ff ff 38 [ 6626.394259] 1810: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 39 [ 6626.401250] [...] 40 41The dump of SDB looks like the following; the example shows the simple 42golden gateware for the SPEC card, removing the leading timestamps to 43fit the page: 44 45 spec 0000:02:00.0: SDB: 00000651:e6a542c9 WB4-Crossbar-GSI 46 spec 0000:02:00.0: SDB: 0000ce42:ff07fc47 WR-Periph-Syscon (00000000-000000ff) 47 FMC: mezzanine 0: 0000:02:00.0 on SPEC 48 FMC: poor dump of sdb first level: 49 0000: 53 44 42 2d 00 02 01 00 00 00 00 00 00 00 00 00 50 0010: 00 00 00 00 00 00 01 ff 00 00 00 00 00 00 06 51 51 0020: e6 a5 42 c9 00 00 00 02 20 12 05 11 57 42 34 2d 52 0030: 43 72 6f 73 73 62 61 72 2d 47 53 49 20 20 20 00 53 0040: 00 00 01 01 00 00 00 07 00 00 00 00 00 00 00 00 54 0050: 00 00 00 00 00 00 00 ff 00 00 00 00 00 00 ce 42 55 0060: ff 07 fc 47 00 00 00 01 20 12 03 05 57 52 2d 50 56 0070: 65 72 69 70 68 2d 53 79 73 63 6f 6e 20 20 20 01 57