summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [build] Include ipxe.lkrn in default buildMichael Brown2011-03-261-2/+2
| | | | | | | bin/ipxe.lkrn is built anyway in order to create bin/ipxe.iso, so there is no additional cost to including it within the default build. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [monojob] Avoid overflow when calculating percentage progressMichael Brown2011-03-261-3/+7
| | | | | | | | Normalise the progress figures to ensure that multiplication by 100 (to produce a percentage) cannot result in integer overflow. Reported-by: Sven Dreyer <sven@dreyer-net.de> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Match terminology in online documentationMichael Brown2011-03-236-12/+12
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Avoid memory leak when unregistering autovivified settings blocksMichael Brown2011-03-231-3/+27
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Refer to online documentation for settings helpMichael Brown2011-03-231-2/+9
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Match terminology used elsewhereMichael Brown2011-03-231-1/+1
| | | | | | | iPXE documentation tends to refer to "settings" rather than "options", since settings can be more general than DHCP options. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [undi] Cope with devices that erroneously claim not to use interruptsMichael Brown2011-03-231-21/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some PXE stacks advertise that interrupts are not supported, despite requiring the use of interrupts. Attempt to cope with such cards without breaking others by always hooking the interrupt, and using the "interrupts supported" flag only to decide whether or not to wait for an interrupt before calling PXENV_UNDI_ISR_IN_PROCESS. The possible combinations are therefore: 1. Card generates interrupts and claims to support interrupts iPXE will call PXENV_UNDI_ISR_IN_PROCESS only after an interrupt has been observed. (This is required to avoid lockups in some PXE stacks, which spuriously sulk if called before an interrupt has been generated.) Such a card should work correctly. 2. Card does not generate interrupts and does not claim to support interrupts iPXE will call PXENV_UNDI_ISR_IN_PROCESS indiscriminately, matching the observed behaviour of at least one other PXE NBP (winBoot/i). Such a card should work correctly. 3. Card generates interrupts but claims not to support interrupts iPXE will call PXENV_UNDI_ISR_IN_PROCESS indiscriminately. An interrupt will still result in a call to PXENV_UNDI_ISR_IN_START. Such a card may work correctly. 4. Card does not generate interrupts but claims to support interrupts Such a card will not work at all. Reported-by: Jerry Cheng <jaspers.cheng@msa.hinet.net> Tested-by: Jerry Cheng <jaspers.cheng@msa.hinet.net> Reported-by: Mauricio Silveira <mauricio@livreti.com.br> Tested-by: Mauricio Silveira <mauricio@livreti.com.br> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Impose a fixed order on settingsMichael Brown2011-03-2313-46/+64
| | | | | | | Improve the appearance of the "config" user interface by ensuring that settings appear in some kind of logical order. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Fix setting expansionMichael Brown2011-03-231-3/+4
| | | | | | | | | | | Commit 5fbd020 ("[settings] Display canonical setting name in output of "show" command") introduced a regression causing all setting expansions (e.g. "${net0/mac}") to expand to an empty string. Fix by returning the formatted value length from fetchf_named_setting(), as expected by the caller. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Return to first row on navigating to a new settings blockMichael Brown2011-03-231-4/+6
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Add hierarchy navigation in "config" user interfaceMichael Brown2011-03-231-199/+260
| | | | | | | Allow the user to browse through the settings block hierarchy. Originally-implemented-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Reject attempts to change a network device's bus IDMichael Brown2011-03-231-0/+2
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Display locally-originated settings in boldMichael Brown2011-03-221-1/+11
| | | | | Originally-implemented-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Display canonical setting name in "config" user interfaceMichael Brown2011-03-223-9/+40
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Display only applicable settings in "config" user interfaceMichael Brown2011-03-221-10/+18
| | | | | | | | | Display only settings relevant to the current scope. For example, "config net0" no longer displays SMBIOS settings, and "config smbios" displays only SMBIOS settings. Originally-implemented-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Display canonical setting name in output of "show" commandMichael Brown2011-03-223-22/+50
| | | | | | | | | | | | | | | | | | Enable the "show" command to display the full, canonicalised name of the fetched setting. For example: iPXE> show mac net0/mac:hex = 52:54:00:12:34:56 iPXE> dhcp && show ip DHCP (net0 52:54:00:12:34:56)... ok net0.dhcp/ip:ipv4 = 10.0.0.168 iPXE> show net0/6 net0.dhcp/dns:ipv4 = 10.0.0.6 Inspired-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Provide fetch_setting_origin()Michael Brown2011-03-222-5/+49
| | | | | Inspired-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Expose settings_name()Glenn Brown2011-03-222-8/+7Star
| | | | | | | | Expose settings_name(), shrink the unnecessarily large static buffer, properly name root settings block, and simplify. Modified-by: Michael Brown <mcb30@ipxe.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Use concat_args() in "set" commandMichael Brown2011-03-222-24/+21Star
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [settings] Formalise notion of setting applicabilityMichael Brown2011-03-2212-17/+235
| | | | | | | | | | | | | | | Expose a function setting_applies() to allow a caller to determine whether or not a particular setting is applicable to a particular settings block. Restrict DHCP-backed settings blocks to accepting only DHCP-based settings. Restrict network device settings blocks to accepting only DHCP-based settings and network device-specific settings such as "mac". Inspired-by: Glenn Brown <glenn@myri.com> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [forcedeth] Clear the MII link status register on link status changesYann Cézard2011-03-201-0/+6
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [console] Try to avoid problems caused by keycode 86Michael Brown2011-03-1619-11/+29
| | | | | | | | | | | | | | | | | The "us" keyboard layout contains a mapping for keycode 86 (which seems not to correspond to any physical key on many US keyboards) to the ASCII character '<'. This mapping causes conflicts with the mapping for keycode 51, which also maps (with shift) to '<'. Change the keyboard mapping generator to choose the lowest keycode for each ASCII character as indicating the relevant mapping to use, on the basis that a lower keycode roughly indicates a "more normal" key. On a German keyboard, which has keys for both keycode 51 and keycode 86 present, this causes '<' to be remapped to ';', which is a closer match to typical user expectations. Reported-by: Sven Dreyer <sven@dreyer-net.de> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [uri] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-4/+2Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [qib7322] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-4/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [hermon] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [arbel] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-1/+1
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [vxge] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-162-11/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [ath5k] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-163-12/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [eepro] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-0/+1
| | | | | | | | | | From a cursory examination, it appears as though the calculation of tx_available is redundant, since eepro_transmit() waits for transmit completion before returning anyway. Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [w89c840] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+2
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [smc9000] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-3/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [etherfabric] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-6/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [sis190] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [epic100] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [sky2] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-5/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [forcedeth] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+2
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [ns83820] Update to standard debugging infrastructureMichael Brown2011-03-161-26/+19Star
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [atl1e] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-5/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [via-velocity] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-16/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [sis900] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-2/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [e1000] Remove unused variable when ICR register is simply clearedMichael Brown2011-03-1612-30/+24Star
| | | | | | | | | | | | | On reset and close, the ICR register is read to clear any pending interrupts, but the value is simply ignored. Avoid assigning the value to a variable, to inhibit a warning from gcc 4.6. Also fix a potential race condition in reset routines which clear interrupts before disabling them. Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [igbvf] Remove some unused Linux-specific portions of igbvf.hMichael Brown2011-03-161-2/+4
| | | | | | | | | These unused portions trigger a compiler warning under gcc 4.6, due to the ambiguity over the "page" field in struct igbvf_buffer. Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [phantom] Remove unused variable in phantom_dmesg()Michael Brown2011-03-161-2/+0Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Avoid spurious address comparison warnings in gcc 4.6Michael Brown2011-03-161-0/+9
| | | | | | | | | | | A construction such as "assert ( ptr != NULL )" seems to trigger a false positive warning in gcc 4.6 if the value of "ptr" is known at compile-time to be non-NULL. Use -Wno-address to inhibit this warning. Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Avoid spurious unused-but-set-variable warnings in gcc 4.6Michael Brown2011-03-161-1/+2
| | | | | | | | | | The __table_entries() construction seems to trigger a false positive warning in gcc 4.6 relating to variables which are set but never used. Add __attribute__((unused)) to inhibit this warning. Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Allow workaround-specific flags to override default flagsMichael Brown2011-03-161-7/+11
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Fix building with latest binutilsBastian Blank2011-03-162-2/+2
| | | | | Signed-off-by: Bastian Blank <waldi@debian.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Avoid rebuilding keymap files automaticallyMichael Brown2011-03-161-1/+1
| | | | | | | | The keymap files, though autogenerated, are checked in to version control and should be considered as source files. They should never be automatically rebuilt. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [console] Add keyboard map selectionMichael Brown2011-03-162-0/+9
| | | | | | | The active keyboard map may be selected by editing KEYBOARD_MAP in config/console.h. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [console] Add keymap generatorMichael Brown2011-03-1635-0/+1160
| | | | | | | | Inspired by LILO's keytab-lilo.pl, genkeymap.pl uses "loadkeys -b" to obtain a Linux keyboard map, and generates a file keymap_xx.c in hci/keymap. Signed-off-by: Michael Brown <mcb30@ipxe.org>