| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
The proper output for the byte-sized output of "setc" is "=qm".
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
| |
The argument to an "m" constraint is an object, not a pointer to an
object. For a void pointer it needs to be cast to an indirectable
type (like char) and then indirected.
Reported-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
The bit test instructions returns the tested bit in CF, not the
inverse of the tested bit in ZF. I don't know how I got that idea...
Reported-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
| |
Add a centralized bitops header <sys/bitops.h> which uses x86 bitops
instructions. This is necessary to keep gcc 4.5 from aborting
compilation due to the inlined code being larger than the non-inlined
version, and well, we should really use the bitops.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Previously, clock_t was 16 bits and counted timer ticks, now make it
32 bits and count milliseconds.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
CPUID functions were apparently broken when made PIC-safe; clean up
and fix.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Do the actual idling in protected mode. This both allows PM code a
more efficient interface, but also handles bugs in HVM implementations
which don't handle HLT in real mode.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
| |
Conversion macros to change between d_type and st_mode values.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Add an enum for the DT_* constants for the d_type field.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
The 16-bit API to opendir/readdir/closedir was confused, had a memory
leak, and was incompatible with Syslinux 3.x anyway. Replace it with
a pure 32-bit API.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolved Conflicts:
com32/Makefile
com32/lib/sys/open.c
com32/modules/Makefile
dos/Makefile
dos/com16.ld
dos/syslinux.c
version
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| |
| |
| |
| |
| |
| | |
Impact: avoid code duplication
This will make code more generic, hdt will need it ;)
|
|\ \
| |/ |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
com32/cmenu/libmenu/com32io.h
com32/gplinclude/dmi/dmi.h
com32/gplinclude/dmi/dmi_base_board.h
com32/gplinclude/dmi/dmi_memory.h
com32/gplinclude/dmi/dmi_system.h
com32/gpllib/dmi/dmi.c
com32/gpllib/dmi/dmi_memory.c
com32/include/sys/pci.h
com32/lib/pci/scan.c
com32/modules/Makefile
Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Impact: Users can now use modules.alias to find kernel modules
get_module_name_from_alias() parses modules.alias to find the
appropriate kernel modules required by the local pci devices.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
With the emacs config given by hpa, which is really powfull, I restyled the
unsytled code.
Signed-off-by: Liu Aleaxander <Aleaxander@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Removes the core/include/dir.h, and put the dir structures to sys/dirent.h to
avoid the compile error.
Signed-off-by: Liu Aleaxander <Aleaxander@gmail.com>
|
|\ \ \
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
com32/include/netinet/in.h
com32/include/sys/cpu.h
dos/argv.c
dos/malloc.c
dos/syslinux.c
extlinux/main.c
libinstaller/setadv.c
libinstaller/syslinux.h
libinstaller/syslxint.h
libinstaller/syslxmod.c
linux/syslinux.c
mtools/syslinux.c
win32/syslinux.c
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/types.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/times.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/stat.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/pci.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/io.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/elfcommon.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/elf64.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/elf32.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically reformat com32/include/sys/cpu.h using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Introduce a new "COM32R" format, which is exactly like COM32 except
that they contain position-independent code. Therefore, the core can
load them at any sufficiently aligned address; by protocol select 4K
as the alignment.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|/
|
|
| |
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
| |
Add pci_for_each_func3() iterator, which produces an address in
addition to the device pointer.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
|
|
| |
Impact: none
Rename get_module_name_from_pci_ids to get_module_name_from_pcimap since
the module names are read from the modules.pcimap and not pci.ids file.
Signed-off-by: Sebastian Herbszt (herbszt@gmx.de)
|
|
|
|
| |
Adding the pci latency information
|
|
|
|
| |
Moving irq stuff to the dev_info structure to keep coherent
|
|
|
|
|
|
|
|
| |
In the cli mode, the pci context feature the following :
pci> show irq
Under cli, "pci> show device <x>" display the IRQ when device features one.
The menu mode behave the same way.
|
|
|
|
|
|
| |
While detecting the pci names, class name & kernel modules, it's
better to let the user choosing the path instead of the harcoded value
"/" is not always the wanted path
|
| |
|
|
|
|
| |
modules per pci device Updating pcitest
|
|
|
|
| |
modules.pcidmap files are missing
|
| |
|
|
|
|
|
|
|
|
| |
Create the concept of a PCI domain, as a hierarcy of busses, devices
and functions. This avoids large static-sized arrays and allows for
geographical addressing of devices.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
The inverse operations of pci_mkaddr()
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
When scanning PCI devices, store the device address for reference.
Based on a patch by Sebastian Herbszt.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
| |
pci_bus->pci_device get's populated with functions so it
should take up to MAX_PCI_DEVICES * MAX_PCI_FUNC elements.
pci_device_list->pci_device get's populated with functions
for every possible pci bus. Therefore it should take up to
MAX_PCI_BUS * MAX_PCI_DEVICES * MAX_PCI_FUNC elements.
Also adjust count variable types.
- Sebastian
|
|
|
|
|
|
| |
Minor asm() formatting cleanup.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Drop "return" for function returning void.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
<sys/cpu.h> already has most of the CPUID inlines, put them all there.
<cpuid.h> still have structures for the code that really should be
librarized at some point.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In include/sys/pci.h we have
#define MAX_PCI_BUSES 255
and
struct pci_bus_list {
struct pci_bus pci_bus[MAX_PCI_BUSES];
uint8_t count;
};
And in lib/pci/scan.c
for (bus = 0; bus <= MAX_PCI_BUSES; bus++) {
pci_bus_list->pci_bus[bus].pci_device_count = 0;
Fix possible overflows and introduce MAX_PCI_FUNC.
- Sebastian
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From : Erwan Velu <erwan.velu@free.fr>
This patch fixes the pci detection stuff demo'd in pcitest.c32
- Fix a wrong type in malloc
- Incorrect use of strdup
- Replacing strncpy by strnlcpy (thx hpa)
This two fixes makes pcitest.c32 working far better, no more crash when
running it twice.
I'd like to thank Sebastian Herbszt for its reports and tests.
This patch was made for 3.62-pre16 but applies fine on 3.63-pre1.
Signed-off-by:Erwan Velu <erwan.velu@free.fr>
--------------------------------------------------------------------------------
Les opinions et prises de position emises par le signataire du present
message lui sont propres et ne sauraient engager la responsabilite de la
societe SEANODES.
Ce message ainsi que les eventuelles pieces jointes constituent une
correspondance privee et confidentielle a l'attention exclusive du
destinataire designe ci-dessus. Si vous n'etes pas le destinataire du
present message ou une personne susceptible de pouvoir le lui delivrer, il
vous est signifie que toute divulgation, distribution ou copie de cette
transmission est strictement interdite. Si vous avez recu ce message par
erreur, nous vous remercions d'en informer l'expediteur par telephone ou de
lui retourner le present message, puis d'effacer immediatement ce message de
votre systeme.
The views and opinions expressed by the author of this message are personal.
SEANODES shall assume no liability, express or implied for such message.
This e-mail and any attachments is a confidential correspondence intended
only for use of the individual or entity named above. If you are not the
intended recipient or the agent responsible for delivering the message to
the intended recipient, you are hereby notified that any disclosure,
distribution or copying of this communication is strictly prohibited. If you
have received this communication in error, please notify the sender by phone
or by replying this message, and then delete this message from your system.
|
|
|
|
|
| |
A bunch of glibc header files were bogusly included. We should not
depend on having a 32-bit glibc installed, since we don't use it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch
- add a new pci_dev_info structure :
It contains additional informations about the pci devices like
the product/vendor name and the associated linux kernel module
- add a get_name_from_pci_ids() function in pci/scan.c
This function reads a pci.ids file from the boot device.
Then it assign for each pci device, its vendor/product name.
You just have to put this file in the root directory of your
isolinux/pxelinux (i.e the root directory of your tfptboot server
if you are using pxelinux).
- add a get_module_name_from_pci_ids() function in pci/scan.c
This function reads a modules.pcimap file from the boot device.
Then it assign for each pci_device its linux kernel module.
You just have to put this file in the root directory of your
isolinux/pxelinux (i.e the root directory of your tfptboot server
if you are using pxelinux).
- Add a call to get_name_from_pci_ids() into the pcitest COM32 module
- Add a call to get_module_name_from_pci_ids() into the pcitest COM32 module
- Fixing typedef struct { ... } s_pci...; by struct pci... {};
- Improving comments
- Fixing the memory allocation to prevent leaks
With this patch, pcitest.c32 act like lspci plus a bonus by displaying
the linux kernel module assiocated to each pci device.
Signed-off-by:Erwan Velu <erwan.velu@free.fr>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|