This PR changes sdist() command to include a special marker file that, when present, automatically sets skip_driver flag to True. This way, when installing from an sdist-produced distribution (i.e. from PyPI), no kernel driver is built. This is useful for cases when a project depends on chipsec's Python code (and thus would like to reference the dependency in its setup.py) but expects the kernel driver to be shipped separately.
Remove dependency for win32helper to find .sys file within init
Fixup logic to better display when driver file cannot be found
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
The module is currently not stable and causing issues. Given it is an Informational Check, it is being removed for the time being.
Similar functionality exists within chipsec util.
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
Add self.name and self.driverpath to Helper baseclass
Add get_info function into Helper baseclass which returns self.name and self.driverpath
Modify helpers to have proper name and driver location for driver loaded
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
Add reqs_pch to configuration attributes within template.xml
Add reqs_pch as field for WHL as example
Update logic within chipset.py to check if reqs_pch attribute exists
Update logic within chipset.py to raise error if pch is required and driver needs to be loaded
Note can still work around with the -i flag
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
Use the Flash Descriptor Observability registers to OR in the settings
from the flash descriptor to the existing FRAP register fields.
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
Updated mock_helper to use BaseHelper
Updated util harness to correctly override helper with testhelper
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
changed Chipset_Dictionary and pch_dictionary to default_dict
update logic to create chipset_code and pch_codes
add get_cpuid command to use for additional detection of chipset
updated init logic to match cpuid value if populated within Chipset_Dictionary and multiple entries exist
Signed-off-by: BrentHoltsclaw <brent.holtsclaw@intel.com>
When flushing to a log file the handler is removed but was not added
back. Added code to restore the handler.
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
PaX implements valid_mmap_phys_addr_range in the kernel, and the
(return 1) hack in chipsec_km.c has a name collision with it.
Add another conditional for exposing the definition predicated on
whether __HAVE_ARCH_PAX_OPEN_USERLAND is defined in the kernel
headers. If it is, dont redefine the original function.
S3 bootscript patching was broken because of incorrect format string
used in __str__ method of class op_io_pci_mem, which was raising KeyError.
Signed-off-by: Evgeny Zinoviev <me@ch1p.io>
* No need to convert to bytes
This led to creation of b'' characters in the file names.
* Correct get_nvar_name (was wrong on python 3)
* Fix NVAR variable store parsing
Fixes wrong guids and python3 compatibility. Working with bytes using python 2/3 compatible `_ord` function.
* Really fix python3 EVSA variable issue
* Fix blank header check (python 3)
* Initial SMBIOS HAL and Command
- Only searches for the Entry Point structure
- Currently only detects 2.x structures correctly
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Added support for 64bit 3.x entry point
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Updated command processing
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Added ability to parse structures based on header
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Updated command processing
- Made command processing a bit more flexible
- Improved logging messages
- Added place holders for future functionality
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Added ability to get structures by type
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Added string extraction support
- Also added some initial code for decoding type 0 structure information
- Updated interface to make things cleaner
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Added decode support
- Only supports partial decode of Type 0 (2.0) structure
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Removed unused variable
- Also fixed tool name in timing string
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Adding basic BIOS Information module
- Adding module to get the BIOS Information SMBIOS data
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>
* Python 3 updates
- Requires additional Python 3 UEFI HAL changes
Signed-off-by: Erik Bjorge <erik.c.bjorge@intel.com>