From a1db4eb2173db4552b9162b43bad521ff22dc0ea Mon Sep 17 00:00:00 2001 From: "rick.chan" Date: Mon, 10 Jul 2023 14:18:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=B5=84=E6=96=99=E4=BF=A1?= =?UTF-8?q?=E6=81=AF,=E8=B0=83=E6=95=B4=E6=96=87=E4=BB=B6=E5=A4=B9?= =?UTF-8?q?=E7=BB=93=E6=9E=84.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: rick.chan --- .../Modules/FrameBuffer/Frame_Buffer_说明.md | 21 ++++++ .../Modules/FrameBuffer/Frame_Buffer_说明.md | 4 -- .../Modules/Display/DirectFb/DirectFb_说明.md | 3 + .../Modules/Display/Weston/Weston_基本配置.md | 67 +++++++++++++++++++ 4 files changed, 91 insertions(+), 4 deletions(-) create mode 100644 Software/Development/System/Linux/Kernel/Modules/FrameBuffer/Frame_Buffer_说明.md delete mode 100644 Software/Development/System/Linux/Modules/FrameBuffer/Frame_Buffer_说明.md create mode 100644 Software/Development/System/Linux/User/Modules/Display/DirectFb/DirectFb_说明.md diff --git a/Software/Development/System/Linux/Kernel/Modules/FrameBuffer/Frame_Buffer_说明.md b/Software/Development/System/Linux/Kernel/Modules/FrameBuffer/Frame_Buffer_说明.md new file mode 100644 index 0000000..ac05ea0 --- /dev/null +++ b/Software/Development/System/Linux/Kernel/Modules/FrameBuffer/Frame_Buffer_说明.md @@ -0,0 +1,21 @@ +# Frame Buffer 说明 + +Linux Frame Buffer(LinuxFb) 是内核驱动。在用户态有一个 Direct Frame Buffer(DirectFb) 为扩展 Linux Frame Buffer 的功能库。 + +## The Framebuffer Console + +The framebuffer console (fbcon), as its name implies, is a text console running on top of the framebuffer device. It has the functionality of any standard text console driver, such as the VGA console, with the added features that can be attributed to the graphical nature of the framebuffer. + +### 参数 + +- nohwcursor:disables hardware cursor (use software cursor instead). +- hwcursor:enables hardware cursor. It is default. If you are using non-accelerated mode(noaccel or fbset -accel false), software cursor is used (except for text mode). +- noblink:disables cursor blinking. Cursor in text mode always blinks (hw limitation). +- blink:enables cursor blinking. It is default. + +### 常见问题 + +1. 当 Framebuffer Console 和其他图形系统同时开启时(如 weston),Framebuffer Console 的闪烁光标容易叠加到图形系统。 + 1. 可关闭 Framebuffer Console,或将光标设置为 noblink。 + 2. 可以修改 \/drivers/video/fbdev/core/fbcon.c,将函数 static void fbcon_cursor(struct vc_data *vc, int mode) 改为空函数。 + 3. 可修改设备树 Framebuffer Console 中的 cursor_blink(具体值参考 fbcon.c 代码)。 diff --git a/Software/Development/System/Linux/Modules/FrameBuffer/Frame_Buffer_说明.md b/Software/Development/System/Linux/Modules/FrameBuffer/Frame_Buffer_说明.md deleted file mode 100644 index 95823c4..0000000 --- a/Software/Development/System/Linux/Modules/FrameBuffer/Frame_Buffer_说明.md +++ /dev/null @@ -1,4 +0,0 @@ -# Frame Buffer 说明 - -Linux Frame Buffer(LinuxFb) 是内核驱动。Direct Frame Buffer(DirectFb) 为扩展 Linux Frame Buffer 功能创建的库。 - diff --git a/Software/Development/System/Linux/User/Modules/Display/DirectFb/DirectFb_说明.md b/Software/Development/System/Linux/User/Modules/Display/DirectFb/DirectFb_说明.md new file mode 100644 index 0000000..7464009 --- /dev/null +++ b/Software/Development/System/Linux/User/Modules/Display/DirectFb/DirectFb_说明.md @@ -0,0 +1,3 @@ +# DirectFb 说明 + +Direct Frame Buffer(DirectFb) 为用户态扩展 FreamBuffer 功能库,可提供鼠标、键盘等的支持。 diff --git a/Software/Development/System/Linux/User/Modules/Display/Weston/Weston_基本配置.md b/Software/Development/System/Linux/User/Modules/Display/Weston/Weston_基本配置.md index e610869..54283c0 100644 --- a/Software/Development/System/Linux/User/Modules/Display/Weston/Weston_基本配置.md +++ b/Software/Development/System/Linux/User/Modules/Display/Weston/Weston_基本配置.md @@ -20,3 +20,70 @@ device-module=vsp2 weston-terminal 为 Weston 的终端程序。 有些情况下必须为 display 指定至少一个 input device,此时需要外接一个鼠标或者键盘才能正确启动 weston-launch。 + +## 参考配置和说明 + +```ini +[core] +# ask Weston to load the XWayland module (boolean). +# xwayland=true + +# specifies a shell to load (string). This can be used to load your own implemented +# shell or one with Weston as default. Available shells in the /usr/lib/weston. +# shell=desktop-shell.so + +# 显示后端设置,有:drm-backend、fbdev-backend、wayland-backend 等。 +# 可在 /usr/lib/libweston[-version]/ 中找到对应的支持插件。 +backend=fbdev-backend.so + +# specifies the modules to load(string). Available modules in the /usr/lib/weston. +# modules=screen-share.so + +# Allow running without input devices +require-input=false + +# Disable screen idle timeout by default +idle-time=0 + +# 1. The repaint window should be longer than the compositor's repaint time to +# avoid missing the very next vblank. +# 2. The repaint delay(frame period - repaint window) should be longer than +# the client's repaint time in the Presentation case. +# 3. The repaint window should be as small as possible to reduce the display +# latency. +repaint-window=15 + +# Allow blending with lower drm planes +# gbm-format=argb8888 + +[shell] +# top(default)|bottom|left|right|none, none to disable panel +# 任务栏位置设置:top(default)|bottom|left|right|none, 设置为 none 关闭任务栏。 +panel-position=none +# cursor-size=24 +# background-color=0x00FFFFFF + + +# none|minutes(default)|seconds +# clock-format=seconds + +# Disable screen locking +locking=false + +[libinput] +# Uncomment below to enable touch screen calibrator(weston-touch-calibrator) +# touchscreen_calibrator=true +# calibration_helper=/bin/weston-calibration-helper.sh + +[keyboard] +# Comment this to enable vt switching +vt-switching=false + +# Configs for auto key repeat +# repeat-rate=40 +# repeat-delay=400 +``` + +## 外部参考资料 + +1. [focal (5) weston.ini.5.gz](https://manpages.ubuntu.com/manpages/focal/en/man5/weston.ini.5.html) \ No newline at end of file