Current kernel image is >32 MiB which seems to be the limit of the bootloader of my Chromebook (Asus C101PA).
See here where I posted my findings - including a PKGBUILD patch as a workaround that reduces kernel size but may make the kernel no longer work on other systems: viewtopic.php?f=65&t=14682
I'd suggest starting with something more generic, like, just those changes:
Disable file systems that likely nobody boots their laptop from:
```
+ scripts/config --module FAT_FS
+ scripts/config --module MSDOS_FS
+ scripts/config --module NFS_FS
+ scripts/config --module VFAT_FS
+ scripts/config --module XFS_FS
```
(XFS is technically good enough to boot Linux from but rather unlikely anyone's using that today on a laptop; NFS maybe is handy to have but not sure if anyone uses that)
Disable KVM because that's no fun on aarch64 anyway:
```
+ scripts/config --disable VIRTUALIZATION
```
Speed up kernel build time by disabling some graphics drivers that are unlikely used on anything aarch64:
```
+ scripts/config --disable DRM_AMDGPU
+ scripts/config --disable DRM_NOVEAU
+ scripts/config --disable DRM_RADEON
```
Tell the compiler to sacrifice some performance for size:
```
+ scripts/config --disable CC_OPTIMIZE_FOR_PERFORMANCE
+ scripts/config --enable CC_OPTIMIZE_FOR_SIZE
```
This subset of my changes should be rather safe for Chromebooks and should get the kernel to a working size again - for now.
Disabling whole architectures also does a lot but I can't tell which architectures other devices have (this specific Chromebook is rockchip).
Likely other related issue (also hitting a 32 MiB wall for kernel size): viewtopic.php?f=65&t=14727