aboutsummaryrefslogtreecommitdiffstats
path: root/inc
AgeCommit message (Collapse)Author
2017-03-30rmc: fix copyright noticesTodor Minchev
Attribute copyright to Intel and add MIT license headers Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com>
2017-03-17rmc: add database extraction functionalityTodor Minchev
The contents of an existing database file can be extracted with the -E option. By default the top level of the directory tree is rmc_db_dump, an alternative path can be specified with the -o option. The file blobs corresponding to a given record will be saved in a separate sub-directory. The sub-directory name for each record is the hex representation of the signature corresponding to the fingerprint for that record. Example: ./src/rmc -E -d rmc.db -o output/directory/ Successfully extracted rmc.db Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com>
2016-11-21remove kernel command line usage and blob typeJianxun Zhang
rmc works as a generic file-based solution now. There is no need to keep a special case for kernel command line type which was designed in early days. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-11-21use internal definitions for types in projectJianxun Zhang
EFI Clients linked to rmc may or may not include standard header files, and these definitions could be different too. The existing macros like 'WORD' also bring ambiguity among processor architectures, so we replace them with the new internal data types. This change takes whatever defined for types in user space since we need standard header files anyway, but defines data types for EFI context. Everything inside rmc uses internal data types as consolidation. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-11-20refactoring work (APIs, build dependency, ... etc)Jianxun Zhang
This is a major re-work in rmc with several key changes: To query board-specific data in a rmc database, developers now can take advantage of new defined APIs, either using single-action APIs for a better performance of multiple queries or simply calling a double-action API, which is sufficient to perform a query in one step, to reduce the footprint in code at client side. (Refer to inc/rmc_api.h.) rmc tool itself is modified to use new APIs. Memory map and allocated data can be released after use in user space. In EFI context, rmc doesn't allocate memory for anything returned. In EFI build, necessary data types are defined in rmc in order to get rid of dependency on any EFI implementation. Miscellaneous fixes are also included when we move the pieces around. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-11-18fix include path and type definitionsJianxun Zhang
Add detection of current path for -I option, also update type definitions for EFI compiling. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-08-17rmc: fix allocating buffer issue in read_file() (32 bit)Jianxun Zhang
Runtime test script failed on T100TA (32 bit) machine because read_file() function in rmc.c gets a wrong value of st_size from the buffer returned by stat(). We include rmc header files prior to the rest of standard header files in rmc.c, so standard data subsequently defined could be affected by "#pragma pack(1)" in rmc header files. We save and restore the previous pragma pack setting in rmc header files to fix this issue. Runtime test passes on T100TA and other two boards with this change. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-05-21efi: Build rmcl and rsmp libraries for UEFI contextJianxun Zhang
() Provide Makefile.efi to split conventional build and UEFI compiling. The later one doesn't rely on std lib and headers () Libraries have new names as librsmpefi.a and librmclefi.a () Provide basic C functions () RMC_EFI is the config macro to tell build type () change header installation path in EFI () RMC_EFI_ARCH [ia32, x86_64] must be provided for EFI build: eg: make RMC_EFI_ARCH=x86_64 -f Makefile.efi make RMC_EFI_ARCH=x86_64 -f Makefile.efi install () RMC_EFI_HEADER_PREFIX to specify gnu-efi header file locations () clean up memory allocation and free stubs Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-05-19rmc: cleanup header filesJianxun Zhang
Including std header files in libraries is moved to rmc_type.h to make coming uefi build easier. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-05-17rmcl: Add stddef.h in header fileJianxun Zhang
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-05-17rsmp: fix wrong macro name in header fileJianxun Zhang
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
2016-03-07Initial implementation of RMC projectJianxun Zhang
Basical test has been performed on two 64bit targets NUC Gen 6 and Lenovo X220. Refer to README for more information. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>