디바이스 드라이버
글 수 70
2015.10.18 22:05:26 (*.121.226.154)
16883
fbset 는 프레입버퍼의 해상도를 변경합니다.
fbset의 사용법에 대해서 알아보기로 하겠습니다.
우분투에서는 fbset 설치는 다음과 같이 합니다.
$ sudo apt-get install fbset
임베디드 시스템에서는 buildroot 또는 직접 소스를 받아서 빌드하셨어 사용하시면 됩니다.
만일 busybox에 있는 fbset을 사용할 경우에는 일부 옵션들이 생략되어 있어 제한적으로 사용할 수 있습니다.
----------------------------------------------------------------------------------------
1. fbset 도움말
# fbset --help
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven
Usage: fbset [options] [mode]
Valid options:
General options:
-h, --help : display this usage information
--test : don't change, just test whether the mode is valid
-s, --show : display video mode settings
-i, --info : display all frame buffer information
-v, --verbose : verbose mode
-V, --version : print version information
-x, --xfree86 : XFree86 compatibility mode
-a, --all : change all virtual consoles on this device
Frame buffer special device nodes:
-fb <device> : processed frame buffer device
(default is /dev/fb0)
Video mode database:
-db <file> : video mode database file
(default is /etc/fb.modes)
Display geometry:
-xres <value> : horizontal resolution (in pixels)
-yres <value> : vertical resolution (in pixels)
-vxres <value> : virtual horizontal resolution (in pixels)
-vyres <value> : virtual vertical resolution (in pixels)
-depth <value> : display depth (in bits per pixel)
-nonstd <value> : select nonstandard video mode
-g, --geometry ... : set all geometry parameters at once
-match : set virtual vertical resolution by virtual resolution
Display timings:
-pixclock <value> : pixel clock (in picoseconds)
-left <value> : left margin (in pixels)
-right <value> : right margin (in pixels)
-upper <value> : upper margin (in pixel lines)
-lower <value> : lower margin (in pixel lines)
-hslen <value> : horizontal sync length (in pixels)
-vslen <value> : vertical sync length (in pixel lines)
-t, --timings ... : set all timing parameters at once
Display flags:
-accel <value> : hardware text acceleration enable (false or true)
-hsync <value> : horizontal sync polarity (low or high)
-vsync <value> : vertical sync polarity (low or high)
-csync <value> : composite sync polarity (low or high)
-gsync <value> : synch on green (false or true)
-extsync <value> : external sync enable (false or true)
-sync <value> : custom (driver specific) sync value
-bcast <value> : broadcast enable (false or true)
-laced <value> : interlace enable (false or true)
-double <value> : doublescan enable (false or true)
-rgba <r,g,b,a> : recommended length of color entries
-grayscale <value> : grayscale enable (false or true)
Display positioning:
-move <direction> : move the visible part (left, right, up or down)
-step <value> : step increment (in pixels or pixel lines)
----------------------------------------------------------------------------------------
2. 현재 설정되어 있는 프레입버퍼 정보 보기
$ fbset -i
mode "1920x1080"
geometry 1920 1080 3840 2160 32
timings 0 0 0 0 0 0 0
accel true
rgba 8/16,8/8,8/0,0/0
endmode
Frame buffer device information:
Name : inteldrmfb
Address : 0xd0096000
Size : 33177600
Type : PACKED PIXELS
Visual : TRUECOLOR
XPanStep : 1
YPanStep : 1
YWrapStep : 0
LineLength : 15360
Accelerator : No
----------------------------------------------------------------------------------------
fbset의 정보는 /sys/class/graphics/fb0/modes와 video 모드 데이타베이스 파일인 /etc/fb.modes를 참조합니다.
입베디드 시스템에서는 /etc/fb.modes 위의 파일이 존재하지 않을 수 있으므로 추가해 주셔야 합니다.
----------------------------------------------------------------------------------------
3. 해상도 변경
$ fbset -g 1600 1200 1600 1200 16 -t 6111 112 280 3 38 168 4
-g 는 위의 fbset -i 에서 출력된 geometry 이며, -t 옵션은 timings 입니다.
-g와 -t의 옵션 값들은 /etc/fb.modes를 참조하시면 됩니다.
-g <xres> <yres> <vxres> <vyres> <depth>
-t <pixclock> <left margin> <right margin> <upper margin> <lower margin> <horizontal sync length> <vertical sync length>
----------------------------------------------------------------------------------------
4. 화면 이동 옵션
$ fbset -move right -step 50
$ fbset -move right -step 50
$ fbset -move down -step 36
fbset의 사용법에 대해서 알아보기로 하겠습니다.
우분투에서는 fbset 설치는 다음과 같이 합니다.
$ sudo apt-get install fbset
임베디드 시스템에서는 buildroot 또는 직접 소스를 받아서 빌드하셨어 사용하시면 됩니다.
만일 busybox에 있는 fbset을 사용할 경우에는 일부 옵션들이 생략되어 있어 제한적으로 사용할 수 있습니다.
----------------------------------------------------------------------------------------
1. fbset 도움말
# fbset --help
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven
Usage: fbset [options] [mode]
Valid options:
General options:
-h, --help : display this usage information
--test : don't change, just test whether the mode is valid
-s, --show : display video mode settings
-i, --info : display all frame buffer information
-v, --verbose : verbose mode
-V, --version : print version information
-x, --xfree86 : XFree86 compatibility mode
-a, --all : change all virtual consoles on this device
Frame buffer special device nodes:
-fb <device> : processed frame buffer device
(default is /dev/fb0)
Video mode database:
-db <file> : video mode database file
(default is /etc/fb.modes)
Display geometry:
-xres <value> : horizontal resolution (in pixels)
-yres <value> : vertical resolution (in pixels)
-vxres <value> : virtual horizontal resolution (in pixels)
-vyres <value> : virtual vertical resolution (in pixels)
-depth <value> : display depth (in bits per pixel)
-nonstd <value> : select nonstandard video mode
-g, --geometry ... : set all geometry parameters at once
-match : set virtual vertical resolution by virtual resolution
Display timings:
-pixclock <value> : pixel clock (in picoseconds)
-left <value> : left margin (in pixels)
-right <value> : right margin (in pixels)
-upper <value> : upper margin (in pixel lines)
-lower <value> : lower margin (in pixel lines)
-hslen <value> : horizontal sync length (in pixels)
-vslen <value> : vertical sync length (in pixel lines)
-t, --timings ... : set all timing parameters at once
Display flags:
-accel <value> : hardware text acceleration enable (false or true)
-hsync <value> : horizontal sync polarity (low or high)
-vsync <value> : vertical sync polarity (low or high)
-csync <value> : composite sync polarity (low or high)
-gsync <value> : synch on green (false or true)
-extsync <value> : external sync enable (false or true)
-sync <value> : custom (driver specific) sync value
-bcast <value> : broadcast enable (false or true)
-laced <value> : interlace enable (false or true)
-double <value> : doublescan enable (false or true)
-rgba <r,g,b,a> : recommended length of color entries
-grayscale <value> : grayscale enable (false or true)
Display positioning:
-move <direction> : move the visible part (left, right, up or down)
-step <value> : step increment (in pixels or pixel lines)
----------------------------------------------------------------------------------------
2. 현재 설정되어 있는 프레입버퍼 정보 보기
$ fbset -i
mode "1920x1080"
geometry 1920 1080 3840 2160 32
timings 0 0 0 0 0 0 0
accel true
rgba 8/16,8/8,8/0,0/0
endmode
Frame buffer device information:
Name : inteldrmfb
Address : 0xd0096000
Size : 33177600
Type : PACKED PIXELS
Visual : TRUECOLOR
XPanStep : 1
YPanStep : 1
YWrapStep : 0
LineLength : 15360
Accelerator : No
----------------------------------------------------------------------------------------
fbset의 정보는 /sys/class/graphics/fb0/modes와 video 모드 데이타베이스 파일인 /etc/fb.modes를 참조합니다.
입베디드 시스템에서는 /etc/fb.modes 위의 파일이 존재하지 않을 수 있으므로 추가해 주셔야 합니다.
----------------------------------------------------------------------------------------
3. 해상도 변경
$ fbset -g 1600 1200 1600 1200 16 -t 6111 112 280 3 38 168 4
-g 는 위의 fbset -i 에서 출력된 geometry 이며, -t 옵션은 timings 입니다.
-g와 -t의 옵션 값들은 /etc/fb.modes를 참조하시면 됩니다.
-g <xres> <yres> <vxres> <vyres> <depth>
-t <pixclock> <left margin> <right margin> <upper margin> <lower margin> <horizontal sync length> <vertical sync length>
----------------------------------------------------------------------------------------
4. 화면 이동 옵션
$ fbset -move right -step 50
$ fbset -move right -step 50
$ fbset -move down -step 36