X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/ebb55b7e5f0b8f31328950ec383b77b208ffbb64..2bfb909dde1241111ab5568f30c45d2644bdaf25:/lunaix-os/hal/LConfig diff --git a/lunaix-os/hal/LConfig b/lunaix-os/hal/LConfig index 35385c9..b2e00fa 100644 --- a/lunaix-os/hal/LConfig +++ b/lunaix-os/hal/LConfig @@ -1,9 +1,31 @@ -include("char") -include("bus") -include("ahci") +from . import char, bus, ahci -@Collection +@"Devices & Peripherials" def hal(): """ Lunaix hardware asbtraction layer """ - pass \ No newline at end of file + @"Devicetree for hardware discovery" + def use_devicetree() -> bool: + """ + Decide whether to use Devicetree for platform + resource topology sensing. + + On some architecture, Lunaix will fallback to use + devicetree when ran out of options. For others, such + as those designed with embedded support in mind, + devicetree might be mandatory and perhaps the only + way. + """ + require(not arch_x86) + + return False + + @"Maximum size of device tree blob (in KiB)" + @readonly + def dtb_maxsize() -> int: + """ + Maximum size for a firmware provided device tree blob + """ + require(use_devicetree) + + return 256 \ No newline at end of file