summaryrefslogtreecommitdiffstats
path: root/arch/x86/cpuid
AgeCommit message (Collapse)AuthorFilesLines
2026-03-28Set architecture bitness in nasm filesAlexey Gavrilov1-0/+1
Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>
2026-03-28Cmake build type at the generation stageAlexey Gavrilov1-0/+4
Fix in *nasm* files - set architecture bitness. Move compiler flags from *toolchain* file to *requirements target* considering cmake files. This solution allows available of multi-configurations generators to pass compiler options without affecting on single-configuration generators. TODO - Debug information - Image creation - Build under window platform (optional) Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>
2026-03-27Cmake build generator support: build stageAlexey Gavrilov3-1/+26
Multi-target architecture implementation: each root source code directory presents the one *INTERFACE* target to it's subdirectory subtargets that link only as *STATIC* library. For instance, *arch* directory presents *Architecture* target then *Architecture* target has *CPUID*, *IO*, *PORT* and etc. dependencies Exact order of linking targets is: boot.o CRTIBUNDLE <TARGETS> CRTNBUNDLE. Sequence destruction cause to UB. Please to pay attention to this. TODO - Debug information - Build type - Toolchain file - Image creation - Build by WinGW compiler on Windows platform (optional) Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>
2025-12-11Put in cpuid some definitions and declarationsAlexey Gavrilov2-311/+110
Declarations: `acquireInformation` for two extended cpuid commands. Overloading `operator&` for enum classes in `VersionInfo` structure to get proper bit value. All declarations from ==Cpuid.h== file are define in the corresponding cpp file. Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>
2025-12-01Refactoring cpuid model interactionAlexey Gavrilov3-0/+602
Patch for support CPU identification feature. Model smash on two pieces: platform-independent and dependent accordingly. The first obtains architecture details from CPU by special registers or execute instruction and filling proper structure. The second piece needs for more universality to use in independent code. Currently, platform-independent part supports only x86 cpuid(0h,01h) leafs. Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>