Using the PXA matrix keypad driver from the LifeDrive Linux port, I managed to get full keyboard support for the Treo 650. It took a lot of manual keyboard matrix decoding, but you can now type into the Busybox shell!
I need to figure out why Busybux isn’t accepting the
KP_ENTER key as a proper return. I’ll bet it’s some sort of userspace keyboard mapping, but I’ve never played with that sort of thing.