⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.txt

📁 sm501 芯片的linux驱动
💻 TXT
字号:

      << Readme.txt for Silicon Motion, Inc. SM501 Linux kernel display driver >>

SM501 (Voyager/GX) kernel display driver on Linux kernel 2.4.20 on PC
=====================================================================
It requires another VGA compatible board to boot on PC since Voyager/GX does not come with a VGA BIOS. 

Driver Configuration:
The kernel should be configured in order to use Voyager/GX frame buffer device driver. The following is the commands.

* Put voyager.c and voyager.h file under the linux/drivers/video
  directory.

* In the linux/drivers/video directory, modify fbmem.c file refer to fbmem.2.4 file.
  Add
        extern int sm501fb_init(void);
  before the fb_drivers structure declared.

  Add

#ifdef CONFIG_FB_SM501_KERNEL_2_4_X
	/*
	 * Silicon Motion, Inc. SM501 (VOYAGER GX)  frame buffer device. 
	 */
	{ "sm501fb", sm501fb_init, NULL },
#endif

  in the fb_drivers structure.

* Modify "Makefile" file in the same directory refer to Makefile.2.4 file.
  Add

  obj-$(CONFIG_FB_SM501_KERNEL_2_4_X)          += voyager.o
  obj-$(CONFIG_FB_SM501_KERNEL_2_4_X)          += smi2d.o
  in the region which declares drivers.

* Modify "Config.in" file in the same directory.
  Add

	 bool '  Silicon Motion, Inc. SM501 graphics console' CONFIG_FB_SM501_KERNEL_2_4_X

* Configure the kernel using the make xconfig command:

    make xconfig

  go into "Character devices"
    turn on "Virtual Terminal" and "Support for console on virtual terminal"

  go into "Console drivers"
    then clik "Frame-buffer support" button
    	turn on "Support for frame buffer devices (EXPERIMENTAL)"
                "Silicon Motion, Inc. VOYAGER graphics console"
                "Virtual Frame Buffer support"
                "Select compiled-in fonts"
                "VGA 8x8 font"

* Build the kernel.

	make depend
	make clean
	make bzImage


SM501 (Voyager/GX) kernel display driver on Linux kernel 2.6.4 on PC
====================================================================
It requires another VGA compatible board to boot on PC since Voyager/GX does not come with a VGA BIOS. 

Configuration:
The kernel should be configured in order to use Voyager/GX frame buffer device driver. The following is the commands.

* Put voyager.c and voyager.h file under the linux/drivers/video
  directory.

* In the linux/drivers/video directory, modify fbmem.c file refer to fbmem.2.6 file.
  Add
        extern int sm501fb_init(void);
  before the fb_drivers structure declared.

  Add

#ifdef CONFIG_FB_SM501_KERNEL_2_6_X
  	{ "sm501fb", sm501fb_init, NULL },
#endif

  in the fb_drivers structure.

* Modify "Makefile" file in the same directory refer to Makefile.2.6 file.
  Add

obj-$(CONFIG_FB_SM501_KERNEL_2_6_X)  += voyager.o smi2d.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o

  in the region which declares drivers.

* Modify "Kconfig" file in the same directory.
  Add

config FB_SM501_KERNEL_2_6_X
	bool "Silicon Motion, Inc. SM501 support"
	depends on FB

* Configure the kernel using the make menuconfig command:

    make menuconfig

  go into "Console drivers"
Select Device Drivers/Graphics support/Silicon Motion VoyagerGX 501 support

* Build the kernel.

	make bzImage


Run the kernel with SM501 display driver
==========================================
* Config testing machine boot loader to use the new kernel just built.

* Change display mode (resolution and color depth)
 Switching modes is done using the vga=... boot parameter. The table for the Kernel mode numbers are:

    | 640x480  800x600  1024x768 1280x1024
----+-------------------------------------
256 |  0x301    0x303    0x305    0x307   
64k |  0x311    0x314    0x317    0x31A   
16M |  0x312    0x315    0x318    0x31B   

* Reboot testing machine, you will have a virtual terminal console on your LCD/CRT display.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -