The boot menu is not displayed over serial even with the following SeaBIOS runtime config set:
Apparently serial console support was not added until a few months after the SeaBIOS revision used in release 20160907. As a result the only way to get a serial console is via SGABIOS (Serial Graphics Adapter BIOS) and setting some runtime configuration in CBFS. Only tested on the KCMA-D8 but should apply to the KGPE-D16 as well.
Instructions for setting up the serial console using SGABIOS are as follows.
Download sgabios hosted on Google Code and unzip:
$ wget https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/sgabios/source-archive.zip
cd to the sgabios/trunk directory and examine the sgabios.h file. Specifically, check that the defined serial port IO address and baud rate matches the one for your machine. By default sgabios assumes it is 0x3f8 and 115200, respectively, but you can easily check by examining dmesg(1) output:
$ dmesg | grep -ie ttyS0
[ 7.782838] 00:02: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
If any changes are necessary, modify the sgabios.h file before building with make all. The only file that's important is sgabios.bin which will be copied to CBFS as a VGA ROM.
$ ./cbfstool yourrom.rom add -f /path/to/sgabios.bin -n vgaroms/sgabios.bin -t optionrom
Remove the VGA ROM already present in the release ROM as it's useless and does nothing (native graphics init does not exist for KCMA-D8/KGPE-D16 at this time).
$ ./cbfstool yourrom.rom remove -n vgaroms/vgabios.bin
Lastly, add the requisite runtime configuration to use the boot menu:
$ ./cbfstool yourrom.rom add-int -i 1 -n etc/show-boot-menu
$ ./cbfstool yourrom.rom add-int -i 5000 -n etc/boot-menu-wait
$ ./cbfstool yourrom.rom add-int -i 0 -n etc/screen-and-debug
Pad the image, if necessary, and reflash.
Closing as the issue is resolved with the instructions above and retained with issue #736