When setting
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200"
in /etc/default/grub
and running update-grub
Everything works fine so long as the terminal is still connected but if its disconnected and then you try to {re}boot then it sticks on the grub screen. If a terminal is later connected then you can continue the boot just fine manually selecting an entry.
I have been told its definately fixed in grub/trunk which I have verified.
I queried #grub on irc.freenode.org and was told to see Commit 2884 but it may need some time infrastructure that is not yet present in the Debian package.