kmscon icon indicating copy to clipboard operation
kmscon copied to clipboard

Doesn't work with astdrmfb in drm mode or fbdev mode

Open DanaGoyette opened this issue 9 years ago • 1 comments

I'm trying to use kmscon on an ASPEED baseband management controller (astdrmfb), but kmscon won't work with or without --no-drm. With drm, it logs an error every time I press a key, and in both cases, there's no output.

It may be that the driver can't possibly work; if that's true, it would be good to know what features are missing.

lspci -nnk:

03:00.0 VGA compatible controller [0300]: ASPEED Technology, Inc. ASPEED Graphics Family [1a03:2000] (rev 10)
        Subsystem: ASPEED Technology, Inc. ASPEED Graphics Family [1a03:2000]
        Kernel driver in use: ast

fbset -i:


mode "1024x768"
    geometry 1024 768 1024 768 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        : astdrmfb
    Address     : 0
    Size        : 0
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 1
    YPanStep    : 1
    YWrapStep   : 0
    LineLength  : 4096
    Accelerator : No

With drm:

[0000.000000] NOTICE: kmscon Revision kmscon-8-20-g0b34527 May 11 2015 00:17:58 (log_print_init() in src/shl_log.c:509)
[0000.004835] INFO: systemd: system booted with systemd, enabling multi-seat support (uterm_sd_new() in src/uterm_systemd.c:67)
[0000.013502] NOTICE: vt: using tty /dev/tty6 (open_tty() in src/uterm_vt.c:284)
[0000.065983] INFO: ignoring video device /dev/dri/card0 on seat seat0 as it is a DRM device (app_seat_gpu_is_ignored() in src/kmscon_main.c:296)
[0000.066981] INFO: video_fbdev: new device on /dev/fb0 (video_init() in src/uterm_fbdev_video.c:558)
[0000.067013] INFO: video: new device 0x1637060 (uterm_video_new() in src/uterm_video.c:576)
[0000.123050] INFO: video: new display 0x1636ca0 (display_new() in src/uterm_video.c:235)
[0000.123866] INFO: video_fbdev: activating display /dev/fb0 to 1024x768 32 bpp (display_activate_force() in src/uterm_fbdev_video.c:271)
[0000.123882] WARNING: video_fbdev: cannot read monitor refresh rate, forcing 60 Hz (display_activate_force() in src/uterm_fbdev_video.c:281)
[0000.123913] ERROR: video_fbdev: cannot mmap device /dev/fb0 (22): Invalid argument (display_activate_force() in src/uterm_fbdev_video.c:305)

With fbdev (--no-drm):

[0000.000000] NOTICE: kmscon Revision kmscon-8-20-g0b34527 Aug 20 2015 20:30:32 (log_print_init() in src/shl_log.c:509)
[0000.007521] INFO: systemd: system booted with systemd, enabling multi-seat support (uterm_sd_new() in src/uterm_systemd.c:67)
[0000.017567] NOTICE: vt: using tty /dev/tty6 (open_tty() in src/uterm_vt.c:284)
[0000.018974] WARNING: vt: VT KBMODE was K_OFF, using K_UNICODE instead (real_open() in src/uterm_vt.c:360)
[0000.075734] INFO: ignoring video device /dev/dri/card0 on seat seat0 as it is a DRM device (app_seat_gpu_is_ignored() in src/kmscon_main.c:296)
[0000.078864] INFO: video_fbdev: new device on /dev/fb0 (video_init() in src/uterm_fbdev_video.c:558)
[0000.081405] INFO: video: new device 0x9be060 (uterm_video_new() in src/uterm_video.c:576)
[0000.284800] INFO: video: new display 0x9bdca0 (display_new() in src/uterm_video.c:235)
[0000.329954] INFO: video_fbdev: activating display /dev/fb0 to 1024x768 32 bpp (display_activate_force() in src/uterm_fbdev_video.c:271)
[0000.339209] WARNING: video_fbdev: cannot read monitor refresh rate, forcing 60 Hz (display_activate_force() in src/uterm_fbdev_video.c:281)
[0000.339257] ERROR: video_fbdev: cannot mmap device /dev/fb0 (22): Invalid argument (display_activate_force() in src/uterm_fbdev_video.c:305)
[0013.125196] INFO: pty: child exited: pid: 20560 status: 2 (sig_child() in src/pty.c:517)
^C[0015.313860] INFO: terminating due to caught signal 2 (app_sig_generic() in src/kmscon_main.c:513)
[0015.343345] INFO: video: free device 0x9be060 (uterm_video_unref() in src/uterm_video.c:604)
[0015.343397] INFO: video: free display 0x9bdca0 (uterm_display_unref() in src/uterm_video.c:281)
[0015.343416] INFO: video_fbdev: free device on /dev/fb0 (video_destroy() in src/uterm_fbdev_video.c:593)
[0015.343438] WARNING: seat: destroying seat seat0 while still awake: -16 (kmscon_seat_free() in src/kmscon_seat.c:772)
[0015.402823] INFO: exiting (main() in src/kmscon_main.c:667)

DanaGoyette avatar Aug 21 '15 03:08 DanaGoyette

It looks like fbdev mode not working was due to this issue, which has now been fixed: http://lists.freedesktop.org/archives/dri-devel/2015-October/093190.html ("ast driver doesn't initialize smem_len")

It would still be nice to get the DRM mode working, if possible.

DanaGoyette avatar Jan 19 '16 20:01 DanaGoyette