Pretty sure this is a go-serial bug (due to TCSETS2 being hard coded ? ) :
On OpenWRT, I get
error opening port:%!(EXTRA *os.SyscallError=SYS_IOCTL: inappropriate ioctl for device)
... could be because OpenWRT uses musl (not glibc).
More details , doing "strace" on OpenWRT, shows :
ioctl(5, _IOC(_IOC_READ, 0x54, 0x2b, 0x2c), 0x9116c90) = -1 ENOTTY (Not a tty)
FYI, to cross compile for MIPS (Atheros Soc) on OpenWRT, do :
export GOARCH=mips
export GOMIPS=softfloat # requires the recently released go1.10 to get the softfloat code generator