Open mpe opened 8 years ago
@mikey's tiny config:
CONFIG_PPC64=y
CONFIG_POWER8_CPU=y
CONFIG_ALTIVEC=y
CONFIG_VSX=y
CONFIG_NR_IRQS=128
# CONFIG_CROSS_MEMORY_ATTACH is not set
CONFIG_NO_HZ=y
CONFIG_LOG_BUF_SHIFT=16
CONFIG_BLK_DEV_INITRD=y
# CONFIG_RD_GZIP is not set
# CONFIG_RD_BZIP2 is not set
# CONFIG_RD_LZMA is not set
# CONFIG_RD_LZO is not set
# CONFIG_RD_LZ4 is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# CONFIG_MULTIUSER is not set
# CONFIG_SYSFS_SYSCALL is not set
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS_ALL=y
# CONFIG_TIMERFD is not set
# CONFIG_EVENTFD is not set
# CONFIG_AIO is not set
# CONFIG_ADVISE_SYSCALLS is not set
# CONFIG_PCI_QUIRKS is not set
# CONFIG_MEMBARRIER is not set
CONFIG_EMBEDDED=y
# CONFIG_COMPAT_BRK is not set
CONFIG_SLAB=y
CONFIG_JUMP_LABEL=y
# CONFIG_BLOCK is not set
# CONFIG_PPC_PSERIES is not set
# CONFIG_PPC_PMAC is not set
# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
CONFIG_HZ_100=y
# CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE is not set
# CONFIG_COMPACTION is not set
# CONFIG_MIGRATION is not set
CONFIG_PPC_64K_PAGES=y
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE="dhash_entries=16 ihash_entries=16"
CONFIG_CMDLINE_FORCE=y
# CONFIG_SECCOMP is not set
CONFIG_NET=y
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
# CONFIG_WIRELESS is not set
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_EEPROM_AT24=y
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO_SERPORT is not set
# CONFIG_HW_RANDOM is not set
CONFIG_GEN_RTC=y
CONFIG_I2C=y
# CONFIG_I2C_COMPAT is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_ALGOBIT=y
CONFIG_POWER_SUPPLY=y
# CONFIG_VGA_ARB is not set
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_OF=y
CONFIG_FB_MATROX=y
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G=y
# CONFIG_VGA_CONSOLE is not set
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
# CONFIG_HID is not set
# CONFIG_USB_SUPPORT is not set
# CONFIG_IOMMU_SUPPORT is not set
# CONFIG_FILE_LOCKING is not set
# CONFIG_DNOTIFY is not set
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
# CONFIG_MISC_FILESYSTEMS is not set
# CONFIG_XZ_DEC_X86 is not set
# CONFIG_XZ_DEC_IA64 is not set
# CONFIG_XZ_DEC_ARM is not set
# CONFIG_XZ_DEC_ARMTHUMB is not set
# CONFIG_XZ_DEC_SPARC is not set
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_FS=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_LOCKUP_DETECTOR=y
CONFIG_SCHEDSTATS=y
# CONFIG_FTRACE is not set
CONFIG_XMON=y
CONFIG_XMON_DEFAULT=y
Here's a start at an arch/powerpc/configs/tiny.config
, based on yours.
You use it like:
$ make whatever_defconfig
$ make tiny.config
# CONFIG_842_DECOMPRESS is not set
# CONFIG_ADVISE_SYSCALLS is not set
# CONFIG_AIO is not set
# CONFIG_AUDIT is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
# CONFIG_BINFMT_MISC is not set
# CONFIG_BLOCK is not set
# CONFIG_BRIDGE is not set
# CONFIG_BUILD_BIN2C is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# CONFIG_CGROUPS is not set
# CONFIG_CMA is not set
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE="dhash_entries=16 ihash_entries=16"
CONFIG_CMDLINE_FORCE=y
# CONFIG_CODE_PATCHING_SELFTEST is not set
# CONFIG_COMPACTION is not set
# CONFIG_COMPAT_BRK is not set
# CONFIG_CPU_FREQ is not set
# CONFIG_CPU_IDLE is not set
# CONFIG_CRC16 is not set
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC_ITU_T is not set
# CONFIG_CRC_T10DIF is not set
# CONFIG_CROSS_MEMORY_ATTACH is not set
# CONFIG_CRYPTO is not set
# CONFIG_CXL_BASE is not set
# CONFIG_CXL_EEH is not set
# CONFIG_CXL_KERNEL_API is not set
# CONFIG_DEBUG_MEMORY_INIT is not set
# CONFIG_DEBUG_STACK_USAGE is not set
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_DEVTMPFS=y
# CONFIG_DNOTIFY is not set
# CONFIG_DRM is not set
# CONFIG_DST_CACHE is not set
CONFIG_EMBEDDED=y
# CONFIG_EVENTFD is not set
# CONFIG_FB is not set
# CONFIG_FILE_LOCKING is not set
CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_FREEZER is not set
# CONFIG_FTRACE is not set
# CONFIG_FTR_FIXUP_SELFTEST is not set
# CONFIG_FUSE_FS is not set
CONFIG_GEN_RTC=y
# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
# CONFIG_HID is not set
# CONFIG_HIGH_RES_TIMERS is not set
# CONFIG_HOTPLUG_PCI is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_I2C is not set
# CONFIG_IKCONFIG is not set
# CONFIG_INET is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_MISC is not set
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_IOMMU_SUPPORT is not set
# CONFIG_IPMI_HANDLER is not set
# CONFIG_IRQ_DOMAIN_DEBUG is not set
# CONFIG_IRQ_POLL is not set
# CONFIG_KEXEC is not set
# CONFIG_KEYS is not set
# CONFIG_KSM is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_LIBCRC32C is not set
CONFIG_LOG_BUF_SHIFT=16
# CONFIG_LOGO is not set
# CONFIG_LZO_COMPRESS is not set
# CONFIG_LZO_DECOMPRESS is not set
# CONFIG_MEMBARRIER is not set
# CONFIG_MIGRATION is not set
# CONFIG_MISC_FILESYSTEMS is not set
# CONFIG_MODULES is not set
# CONFIG_MSI_BITMAP_SELFTEST is not set
# CONFIG_MTD is not set
# CONFIG_MULTIUSER is not set
# CONFIG_NETDEVICES is not set
# CONFIG_NETFILTER is not set
# CONFIG_NET_KEY is not set
# CONFIG_NET_PTP_CLASSIFY is not set
CONFIG_NET=y
# CONFIG_NEW_LEDS is not set
# CONFIG_NLS is not set
CONFIG_NR_CPUS=16
CONFIG_NR_IRQS=32
# CONFIG_NUMA is not set
# CONFIG_OPAL_PRD is not set
# CONFIG_OVERLAY_FS is not set
# CONFIG_PACKET is not set
# CONFIG_PARPORT is not set
# CONFIG_PCI_MSI is not set
# CONFIG_PCI_QUIRKS is not set
# CONFIG_PCSPKR_PLATFORM is not set
# CONFIG_PERF_EVENTS is not set
# CONFIG_PM is not set
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_POWER_SUPPLY is not set
# CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE is not set
# CONFIG_PPC_COPRO_BASE is not set
# CONFIG_PPC_ICP_HV is not set
# CONFIG_PPC_ICS_RTAS is not set
# CONFIG_PPC_SUBPAGE_PROT is not set
# CONFIG_PPS is not set
# CONFIG_PROFILING is not set
# CONFIG_PTP_1588_CLOCK is not set
# CONFIG_RCU_STALL_COMMON is not set
# CONFIG_RD_BZIP2 is not set
# CONFIG_RD_GZIP is not set
# CONFIG_RD_LZ4 is not set
# CONFIG_RD_LZMA is not set
# CONFIG_RD_LZO is not set
# CONFIG_RELAY is not set
# CONFIG_RTC_CLASS is not set
# CONFIG_SCHED_HRTICK is not set
# CONFIG_SECCOMP is not set
# CONFIG_SERIAL_8250 is not set
# CONFIG_SERIAL_JSM is not set
# CONFIG_SERIO_SERPORT is not set
CONFIG_SLAB=y
# CONFIG_SMP is not set
# CONFIG_SPARSEMEM_MANUAL is not set
# CONFIG_STACKTRACE is not set
CONFIG_SYSCTL_SYSCALL=y
# CONFIG_SYSFS_SYSCALL is not set
# CONFIG_SYSVIPC_COMPAT is not set
# CONFIG_SYSVIPC is not set
# CONFIG_TIMERFD is not set
CONFIG_TINY_RCU=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS=y
# CONFIG_TRANSPARENT_HUGEPAGE is not set
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
# CONFIG_UIO is not set
CONFIG_UNIX_DIAG=y
CONFIG_UNIX=y
# CONFIG_USB_SUPPORT is not set
# CONFIG_VGA_ARB is not set
# CONFIG_VGA_CONSOLE is not set
# CONFIG_VIRTIO_PCI is not set
# CONFIG_VIRTUALIZATION is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_WIRELESS is not set
# CONFIG_XZ_DEC_ARM is not set
# CONFIG_XZ_DEC_ARMTHUMB is not set
# CONFIG_XZ_DEC_IA64 is not set
# CONFIG_XZ_DEC_SPARC is not set
# CONFIG_XZ_DEC_X86 is not set
# CONFIG_ZLIB_DEFLATE is not set
# CONFIG_ZLIB_INFLATE is not set
Comparing the result of the tiny.config
to an allnoconfig
, there's still a bunch of things that could be disabled I think.
Which perhaps is pointing us to an easier solution. We start with allnoconfig
and then we have a simulator.config
(or whatever name), which turns on just the things you need to boot in sim.
On another issue @mikey said:
And posted his tiny config which I'll post below.
IMHO this is probably best done as a config fragment, which can then be merged into whichever base config the user is using.