WPARの歴史(たぶん下の方が古い)
#navi(contents-page-name): No such page: WpaCONTENTS
Problem
# insmod /lib/modules/2.4.24-sh/ks5k_cb.o Using /lib/modules/2.4.24-sh/ks5k_cb.o ks5k_read_config_file: BeaconLostCount=20 ks5k_read_config_file: Channel=46 ks5k_read_config_file: FragmentThreshold=2346 ks5k_read_config_file: OperationMode=802.11-Ad-Hoc ks5k_read_config_file: PowerManagementMode=POWER_ACTIVE ks5k_read_config_file: ReceiveDTIMs=OFF ks5k_read_config_file: RTSThreshold=2347 ks5k_read_config_file: SSID="default46" ks5k_read_config_file: TxRate=Auto ks5k_read_config_file: Wep=OFF ks5k_read_config_file: WepType=STRING ks5k_read_config_file: AuthenticationAlgorithm=OPEN_SYSTEM ks5k_read_config_file: PREAMBLE_TYPE=LONG ks5k_read_config_file: ROM_FILE="/etc/pcmcia/ks5910cb.rom" ks5k_cb: read romfile failed !! retern code = 5 insmod: init_module: ks5k_cb: No such device
Before
[root@wpar00 /root]# cat /proc/pci PCI devices found: Bus 0, device 2, function 0: RF controller: PCI device 18be:5910 (rev 0). IRQ 8. Master Capable. No bursts. Min Gnt=13.Max Lat=28. I/O at 0xfd100000 [0xfd1000ff]. Non-prefetchable 32 bit memory at 0xfd003000 [0xfd003fff]. Non-prefetchable 32 bit memory at 0x2000 [0x2fff]. Non-prefetchable 32 bit memory at 0xfd004000 [0xfd004fff].
After
Bus 0, device 2, function 0: RF controller: PCI device 18be:5910 (rev 0). IRQ 8. Master Capable. Latency=64. Min Gnt=13.Max Lat=28. I/O at 0x2400 [0x24ff]. Non-prefetchable 32 bit memory at 0xfd100000 [0xfd100fff]. Non-prefetchable 32 bit memory at 0xfd101000 [0xfd101fff]. Non-prefetchable 32 bit memory at 0xfd102000 [0xfd102fff].
Ethernet controller: PCI device 1259:a11e (rev 16). make ARCH=sh CROSS_COMPILE=sh4-linux- zImage
is realized as follows:
is realized as follows:
レイヤの構成
fb0 -> fb1 -> fb2 -> fb3 ->
fb3とfb1による疑似オーバーレイ
fb0とfb1によるオーバーレイ
/drivers/char/console.c L167 static int blankinterval の値を0に変更。
FE2001C0 | FE200220 |
80001000 | AC56104C |
80000800 | 800016F4 |
解像度@ビットレート | フルフル | ブロックひずみ |
704x480@3.0Mbps | × | ○ |
704x480@1.5Mbps | × | × |
704x480@1.0Mbps | △ | × |
352x240@3.0Mbps | ○ | ○ |
352x240@1.5Mbps | ○ | ○ |
352x240@1.0Mbps | ○ | ○ |
要するに,MPEG-1 704x480の場合,ブロックひずみが気にならない程度にビットレートを上げるとフルフルが観測され, フルフルがなくなるまでビットレートを下げるとブロックひずみがひどい。
結論としてはMPEG-1の場合は352x240でエンコードする。1.5Mbpsで十分に綺麗な映像が得られる。 TS, SS, ESの中ではTSを推奨。なぜならSS, ESだと電波状況によってガクガクが観測されるから。
#ref(): File not found: "videoalpha0903.pdf" at page "WPAR/History"
MMIO+00000010 | 2ed547c0 | DRAM ControlでCASレイテンシを変更 |
MMIO+00000014 | 05126734 | Arbitration ControlでZVPortのプライオリティを上げる |
MMIO+00000044 | 01090101 | Power Mode 0 ClockでSDRAMのPLLソースを変更 |
MMIO+0000004c | 01090101 | Power Mode 1 ClockでSDRAMのPLLソースを変更 |
[0xa7e80040] 0x00016207 : 0000 0000 0000 0001 0110 0010 0000 0111 [0xa7e90000] 0x060022b1 : 0000 0110 0000 0000 0010 0010 1011 0001 ./mod 80058 08000000
結論としては垂直方向の分解能とコーミングのトレードオフを考慮して以下のモードを用意します。
mode | 垂直分解能 | コーミング |
vga_weave0.sh | ◎ | × |
vga_weave.sh | ○ | △ |
vga_bob.sh | △ | ○ |
svga_weave.sh | ○ | △ |
svga_bob.sh | △ | ○ |
xga_weave.sh | ○ | △ |
xga_bob.sh | △ | ○ |
煩雑なのでデフォルトでブラー有効のWeaveとします。
多少のコーミングも気に入らない場合はbobに切り替えるスクリプトを使ってください。