On Thu, Nov 25, 2021 at 10:14 PM Jesse Taube <mr.bossman075@xxxxxxxxx> wrote: > > From: Giulio Benetti <giulio.benetti@xxxxxxxxxxxxxxxxxxxxxx> > > Add generic i.MXRT family defconfig. > > Signed-off-by: Giulio Benetti <giulio.benetti@xxxxxxxxxxxxxxxxxxxxxx> > Signed-off-by: Jesse Taube <Mr.Bossman075@xxxxxxxxx> I see a lot of things in here that probably should not be part of the kernel, either because they are rather obscure, or they take valuable memory: > --- > arch/arm/configs/imxrt_defconfig | 157 +++++++++++++++++++++++++++++++ > 1 file changed, 157 insertions(+) > create mode 100644 arch/arm/configs/imxrt_defconfig > > diff --git a/arch/arm/configs/imxrt_defconfig b/arch/arm/configs/imxrt_defconfig > new file mode 100644 > index 000000000000..d673745a5462 > --- /dev/null > +++ b/arch/arm/configs/imxrt_defconfig > @@ -0,0 +1,157 @@ > +# CONFIG_LOCALVERSION_AUTO is not set > +CONFIG_SYSVIPC=y > +CONFIG_USELIB=y You almost certainly won't want USELIB, and SYSVIPC support would only be useful for certain applications that you probably won't run. > +CONFIG_BSD_PROCESS_ACCT=y > +CONFIG_BSD_PROCESS_ACCT_V3=y > +CONFIG_PSI=y > +CONFIG_IKCONFIG=y > +CONFIG_IKCONFIG_PROC=y Probably nonen of these are helpful here. > +CONFIG_MEMCG=y > +CONFIG_BLK_CGROUP=y > +CONFIG_CFS_BANDWIDTH=y > +CONFIG_CGROUP_PIDS=y > +CONFIG_CGROUP_RDMA=y > +CONFIG_CGROUP_FREEZER=y > +CONFIG_CGROUP_DEVICE=y > +CONFIG_CGROUP_CPUACCT=y > +CONFIG_CGROUP_PERF=y > +CONFIG_CGROUP_BPF=y > +CONFIG_NAMESPACES=y > +CONFIG_USER_NS=y > +CONFIG_CHECKPOINT_RESTORE=y Same for control groups overall as well as checkpoint_restore > +CONFIG_RELAY=y There are a few drivers using CONFIG_RELAY, but I don't see you enable any of them, so this is not actually used. > +CONFIG_EXPERT=y Are you losing anything without EXPERT? If not, remove that > +CONFIG_SGETMASK_SYSCALL=y > +# CONFIG_FUTEX is not set Futex is probably one of the things you /do/ want. > +CONFIG_KALLSYMS_ALL=y > +CONFIG_PC104=y Turning off KALLSYMS_ALL may save a noticeable amount of RAM. PC104 isn't actually that big, but it seems unlikely that you have that hardware. > +CONFIG_PARAVIRT=y You don't seem to enable XEN, so I don't think PARAVIRT is useful by itself. > +# CONFIG_ATAGS is not set > +CONFIG_CMDLINE="console=ttyS0 root=/dev/mmcblk0p2 rw earlycon rootwait" The command line should come from the boot loader, users probably have a different root device. > +CONFIG_BLK_DEV_BSGLIB=y > +CONFIG_BLK_DEV_INTEGRITY=y > +CONFIG_BLK_DEV_ZONED=y > +CONFIG_BLK_DEV_THROTTLING=y > +CONFIG_BLK_WBT=y > +CONFIG_BLK_SED_OPAL=y > +CONFIG_PARTITION_ADVANCED=y > +CONFIG_BSD_DISKLABEL=y > +CONFIG_MINIX_SUBPARTITION=y > +CONFIG_SOLARIS_X86_PARTITION=y > +CONFIG_UNIXWARE_DISKLABEL=y > +CONFIG_LDM_PARTITION=y I don't see you using OPAL or any of the 1990's partition formats. ot set > +CONFIG_BINFMT_FLAT=y For the defconfig, you should probably have ELF_FDPIC enabled, not just FLAT. > +CONFIG_CLEANCACHE=y > +CONFIG_ZPOOL=y > +CONFIG_ZBUD=y > +CONFIG_Z3FOLD=y Do these work as expected on NOMMU? > +CONFIG_BLK_DEV_LOOP=y > +CONFIG_BLK_DEV_RAM=y > +CONFIG_BLK_DEV_RAM_COUNT=1 > +CONFIG_BLK_DEV_RAM_SIZE=65536 I don't think you can have a ramdisk larger than RAM ;-) > +CONFIG_MEMORY=y No need to enable the subsystem when you don't enable any of its drivers. > +CONFIG_EXT2_FS=y > +CONFIG_EXT2_FS_XATTR=y > +CONFIG_EXT2_FS_POSIX_ACL=y > +CONFIG_EXT2_FS_SECURITY=y > +CONFIG_EXT3_FS=y > +CONFIG_EXT3_FS_POSIX_ACL=y > +CONFIG_EXT3_FS_SECURITY=y Never use EXT3 on eMMC, just use EXT4 instead to make the device actually live longer. You probably don't need to enable EXT2 support separately. > +# CONFIG_FILE_LOCKING is not set > +# CONFIG_DNOTIFY is not set > +CONFIG_QUOTA=y dnotify and locking seem more useful than quota here > +# CONFIG_PRINT_QUOTA_WARNING is not set > +CONFIG_AUTOFS4_FS=y > +CONFIG_CONFIGFS_FS=y I don't see anything using configfs > +CONFIG_LSM="yama,loadpin,integrity,apparmor" None of these are actually enabled as far as I can tell. > +CONFIG_DEBUG_INFO=y > +CONFIG_DEBUG_INFO_DWARF4=y If you use DWARF4, you probably want DEBUG_INFO_SPLIT as well, to reduce the vmlinux size. Arnd