701d2054fa
Add Kconfig option CONFIG_FB_DEVICE and make the virtual fbdev device optional. If the new option has not been selected, fbdev does not create files in devfs, sysfs or procfs. Most modern Linux systems run a DRM-based graphics stack that uses the kernel's framebuffer console, but has otherwise deprecated fbdev support. Yet fbdev userspace interfaces are still present. The option makes it possible to use the fbdev subsystem as console implementation without support for userspace. This closes potential entry points to manipulate kernel or I/O memory via framebuffers. It also prevents the execution of driver code via ioctl or sysfs, both of which might allow malicious software to exploit bugs in the fbdev code. A small number of fbdev drivers require struct fbinfo.dev to be initialized, usually for the support of sysfs interface. Make these drivers depend on FB_DEVICE. They can later be fixed if necessary. v3: * effect -> affect in Kconfig help (Daniel) v2: * set FB_DEVICE default to y (Geert) * comment on {get,put}_device() (Sam) * Kconfig fixes (Sam) * add TODO item about FB_DEVICE dependencies (Sam) Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20230613110953.24176-39-tzimmermann@suse.de |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
README | ||
TODO | ||
fb_agm1264k-fl.c | ||
fb_bd663474.c | ||
fb_hx8340bn.c | ||
fb_hx8347d.c | ||
fb_hx8353d.c | ||
fb_hx8357d.c | ||
fb_hx8357d.h | ||
fb_ili9163.c | ||
fb_ili9320.c | ||
fb_ili9325.c | ||
fb_ili9340.c | ||
fb_ili9341.c | ||
fb_ili9481.c | ||
fb_ili9486.c | ||
fb_pcd8544.c | ||
fb_ra8875.c | ||
fb_s6d02a1.c | ||
fb_s6d1121.c | ||
fb_seps525.c | ||
fb_sh1106.c | ||
fb_ssd1289.c | ||
fb_ssd1305.c | ||
fb_ssd1306.c | ||
fb_ssd1325.c | ||
fb_ssd1331.c | ||
fb_ssd1351.c | ||
fb_st7735r.c | ||
fb_st7789v.c | ||
fb_tinylcd.c | ||
fb_tls8204.c | ||
fb_uc1611.c | ||
fb_uc1701.c | ||
fb_upd161704.c | ||
fbtft-bus.c | ||
fbtft-core.c | ||
fbtft-io.c | ||
fbtft-sysfs.c | ||
fbtft.h | ||
internal.h |
README
FBTFT ========= Linux Framebuffer drivers for small TFT LCD display modules. The module 'fbtft' makes writing drivers for some of these displays very easy. Development is done on a Raspberry Pi running the Raspbian "wheezy" distribution. INSTALLATION Download kernel sources From Linux 3.15 cd drivers/video/fbdev/fbtft git clone https://github.com/notro/fbtft.git Add to drivers/video/fbdev/Kconfig: source "drivers/video/fbdev/fbtft/Kconfig" Add to drivers/video/fbdev/Makefile: obj-y += fbtft/ Before Linux 3.15 cd drivers/video git clone https://github.com/notro/fbtft.git Add to drivers/video/Kconfig: source "drivers/video/fbtft/Kconfig" Add to drivers/video/Makefile: obj-y += fbtft/ Enable driver(s) in menuconfig and build the kernel See wiki for more information: https://github.com/notro/fbtft/wiki Source: https://github.com/notro/fbtft/