TNUM_PORT

doc/config.txtにはTNUM_PORTを宣言せよと書いてあるのですが、TNUM_SIOPを使っている実装などがあって混乱していました。MLで聞いたところ、TNUM_SIOPはGDICにあたるシリアル・インターフェース・ドライバ用、TNUM_SIOPはPDIC用とのこと。ただ、TNUM_SIOPは異なる種類のデバイスごとに数を累計するようなので、実際にはTNUM_SIOP_XXXとして使うべきなのでしょう。
ざっと見たた範囲では、複数種類のシリアルを使っているものはありませんでしたが、当然そのようなケースはあるでしょう。そうした場合、たとえばSH3/ms7727cp01において成立するようなsio_xxxxサービスコールとst16c250_xxxの間の一対一対応は成立しなくなります。つまり、sio_xxxxがyyy_xxxxやzzz_xxxxを束ねる役目を負うことになります。
なお、TNUM_PORTが2以上のときの割込みハンドラは、m68kでは単一のハンドラがすべてのポートを担っています。ただ、こうしろという規定はないようなので、分離できるならしたほうが便利でしょう。また、送受の割込み処理はm68kではひとつのルーチンにまとめられていますが、分けられるなら分けても良いようです。