Есть такой класс драйверов - memory_hotplug (см. /mm/memory_hotplug.c).
Он предоставляет API для добавления/удаления подобных устройств (в частности, см. функцию add_memory()).
Пример драйвера - /drivers/acpi/acpi_memhotplug.c.
Также, можно статически добавить в нулевую ноду все необходимые регионы памяти на этапе загрузки с помощью add_active_range (см. zone_sizes_init() в /arch/x86/kernel/setup_32.c). По идее, должно работать