linux icon indicating copy to clipboard operation
linux copied to clipboard

aspeed: DRM: Cannot set mode with fb tools

Open shenki opened this issue 7 years ago • 2 comments

# strace fbset 800x600-60
execve("/sbin/fbset", ["fbset", "800x600-60"], 0x7ed71e64 /* 11 vars */) = 0
brk(NULL)                               = 0x1294000
uname({sysname="Linux", nodename="buildroot", ...}) = 0
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/tls/v6l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/v6l", 0x7ed1e678)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat64("/lib/tls", 0x7ed1e678)          = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/v6l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat64("/lib/v6l", 0x7ed1e678)          = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\300k\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1226416, ...}) = 0
mmap2(NULL, 1295724, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76e0c000
mprotect(0x76f34000, 61440, PROT_NONE)  = 0
mmap2(0x76f43000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x127000) = 0x76f43000
mmap2(0x76f46000, 9580, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x76f46000
close(3)                                = 0
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x76f77000
set_tls(0x76f778a0, 0x76f77f98, 0x76f7a058, 0x76f778a0, 0x76f7a058) = 0
mprotect(0x76f43000, 8192, PROT_READ)   = 0
mprotect(0xcd000, 4096, PROT_READ)      = 0
mprotect(0x76f79000, 4096, PROT_READ)   = 0
getuid32()                              = 0
openat(AT_FDCWD, "/dev/fb0", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, FBIOGET_VSCREENINFO, 0x7ed1eb80) = 0
brk(NULL)                               = 0x1294000
brk(0x12b5000)                          = 0x12b5000
openat(AT_FDCWD, "/etc/fb.modes", O_RDONLY|O_LARGEFILE) = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=169, ...}) = 0
read(4, "mode \"800x600-60\"\n    # D: 40.00"..., 4096) = 169
ioctl(3, FBIOPUT_VSCREENINFO, 0x7ed1eb80) = -1 EINVAL (Invalid argument)
write(2, "fbset: FBIOPUT_VSCREENINFO: Inva"..., 45fbset: FBIOPUT_VSCREENINFO: Invalid argument
) = 45
exit_group(1)                           = ?
+++ exited with 1 +++

shenki avatar Apr 16 '18 02:04 shenki

# cat /etc/fb.modes 
mode "800x600-60"
    # D: 40.00 MHz, H: 37.879 kHz, V: 60.32 Hz
    geometry 800 600 800 600 8
    timings 25000 88 40 23 1 128 4
    hsync high
    vsync high
endmode

shenki avatar Apr 16 '18 02:04 shenki

I changed the mode to this (in order to match the expected mode by the drm_fb code) and it worked:

mode "800x600-60"
    # D: 40.00 MHz, H: 37.879 kHz, V: 60.32 Hz
    geometry 800 600 800 600 32
    timings 0 88 40 23 1 128 4
    hsync high
    vsync high
endmode

shenki avatar Apr 16 '18 04:04 shenki