_ [unicon] 続・UNICON 2.6 対応調査

手直しできそうなものをちょっといじってみた。

  • drivers/char/vt.c … 2/24 FAILED。本当に単純な変数名変更のために問題なく修正完了。
  • drivers/char/consolemap.c … 問題なし。
  • drivers/char/fb_doublebyte.h … 新規追加ファイル。
  • drivers/char/pc_keyb.c … 2.5.32 より削除。見なかったことにした。
  • drivers/video/Kconfig … Kconfig は中身を見るのも初めてだったが大して難しいこともなくすぐに作成完了。ただ、m/n 選択の仕方がよくわからなかった。tristate にして depends on m にするようだ。また、CONFIG_UNICON を y にした場合は CONFIG_FRAMEBUFFER_CONSOLE も選択するようにした。
  • drivers/video/Makefile … もはや include Rules.make の必要がないようなので、その部分は削除。
  • drivers/video/console/fbcon.c … 17/19 FAILED。変更になった変数名をすり合わせ。また、p->dispsw->put[cs|s] を accel_putc[cs|s] に書き変え。
  • drivers/video/unicon/ … 新規追加ディレクトリ。
  • include/linux/console_struct.h … 変更不要。
  • include/linux/fb_doublebyte.h … 新規追加ファイル。
  • include/linux/nls.h … 問題なし。
  • include/linux/tty_flip.h … 問題なし。

さて、だいたいねじ込むことに成功したので、make してみる。drivers/video/unicon/ はほとんど触ってないし、案の定、修正漏れが多数。

  • 構造体の内容が変わってしまっている。
  • ディレクトリが変わってしまっている。
  • extern されなくなった変数がある。
  • 削除された header を include している。

など多数。これをその都度修正し、なんと make 完了まで持ってくることができた。途中、大量に警告が出ていたが、それは今は見なかったことにしておく。 そして install & reboot。どうなるか。fb に切り換わった直後に画面がカラフルになってハングアップ。確認のため、fb 未使用、UNICON 未使用の kernel を作ってみたが、そちらでは問題なかった。ということは完全に UNICON の問題だな。 まあ大量の警告を潰してやんないと駄目だろうなあ。 大量の警告個所、二重の include/export、UNICON=n だと compile できない個所を修正。 とかやっていると、ハングはしなくなったものの、unikey.ko に Undefined Symbol が 3 つ残った。これを直せばいけるか? と今日はここまで。