[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bsd-nomads:13572] 4.0-kernel patch for 16 bpp video with Libretto 30
- Subject: [bsd-nomads:13572] 4.0-kernel patch for 16 bpp video with Libretto 30
- From: "K. MAEJIMA" <kmaejima@oak.ocn.ne.jp>
- Date: Fri, 5 May 2000 20:25:42 +0900
はじめまして。前島と申します。
[bsd-nomads:12120]を読んで、Libretto 30にインストールしたFreeBSD
4.0-RELEASEで16bppのグラフィック表示ができるようにカーネルを修正し
てみました。
これについて、RELEASE-4.0用のパッチは既に公開されていますか? 公開さ
れていれば、以下の内容は無用です。
カーネルのバージョンが違うのでパッチもそのままでは当たらないと思っ
て手作業でソースを書き換えたところ、それらしく動いているのですが、
カーネルのコンパイルさえ初めてなので、これでいいものなのか甚だ不安
です。一応、パッチを添付しますが、使用するには危険窮まりありません...。
boot -vで調べてみると、一応所定の場所にVRAMアクセス用の領域が確保
されているようです。
FreeBSD 4.0-RELEASE #0: Fri May 5 18:55:58 JST 2000
......
real memory = 21168128 (20672K bytes)
Physical memory chunk(s):
0x00001000 - 0x0009efff, 647168 bytes (158 pages)
0x0033c000 - 0x00dfffff, 11288576 bytes (2756 pages)
0x00f00000 - 0x01427fff, 5406720 bytes (1320 pages)
--
Kazuyuki Maejima <kmaejima@oak.ocn.ne.jp>
*** /usr/src/sys/i386/i386/machdep.c.orig Tue Feb 29 04:48:51 2000
--- /usr/src/sys/i386/i386/machdep.c Fri May 5 16:42:58 2000
***************
*** 1727,1732 ****
--- 1727,1748 ----
*/
*(int *)ptr = tmp;
+ #ifdef LIB30_X_MEMMAP
+ /*
+ * Force memory map hole for Toshiba Libretto 20/30
+ * to enable XFree86 SVGA (cirrus) linear addressing
+ * to enjoy 16 bpp video display.
+ * You should set the following options at the Section
+ * "Device" in /etc/XF86Config:
+ * MemBase 0x00e00000
+ * Option "linear"
+ * Option "fast_dram" # to eliminate noise
+ */
+ if (pa >= 0x00e00000 && pa < 0x00f00000) {
+ page_bad = TRUE;
+ }
+ #endif /* LIB30_X_MEMMAP */
+
/*
* Adjust array of valid/good pages.
*/
*** /usr/src/sys/conf/options.i386.orig Fri Jan 14 09:17:49 2000
--- /usr/src/sys/conf/options.i386 Fri May 5 16:45:17 2000
***************
*** 57,62 ****
--- 57,63 ----
CYRIX_CACHE_WORKS opt_cpu.h
CYRIX_CACHE_REALLY_WORKS opt_cpu.h
NO_MEMORY_HOLE opt_cpu.h
+ LIB30_X_MEMMAP opt_cpu.h
# The CPU type affects the endian conversion functions all over the kernel.
I386_CPU opt_global.h