In this blog, the eBoot menu is modified to to allow user selection of Clearing of the Hive or not. This is implemeneted by adding a further parameter to the BOOT_CG and BSP_ARGS structures to handle the boolean selection. The eBoot code is then extended to pass the selection up to the OS args driver. The OS args driver then is modified to get the value when requested by getting it from the structure passed to it through shared memory. This replaces the use of the dummy variable s_bClearHive as used in args.c in the previous blog.
Read the rest of entry »
The previous blog in this series demonstrated how to add a custom OAL IOCTL to the BSP. In particular it implemented the IOCTL_HAL_GET_HIVE_CLEAN_FLAG IOCTL so that it returns a fixed value to the OS when called. In this blog, that code is extended to call the BSP boot args using a custom boot arg. A fixed value is returned by boot args in this case. A later blog will pass that arg from eboot.