1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/staging/fbtft
Thomas Zimmermann e2d8b4289c fbdev: Use pageref offset for deferred-I/O writeback
Use pageref->offset instead of page->index for deferred-I/O writeback
where appropriate. Distinguishes between file-mapping offset and video-
memory offset. While at it, also remove unnecessary references to
struct page.

Fbdev's deferred-I/O code uses the two related page->index and
pageref->offset. The former is the page offset in the mapped file,
the latter is the byte offset in the video memory (or fbdev screen
buffer). It's the same value for fbdev drivers, but for DRM the values
can be different. Because GEM buffer objects are mapped at an offset
in the DRM device file, page->index has this offset added to it as well.
We currently don't hit this case in DRM, because all affected mappings
of GEM memory are performed with an internal, intermediate shadow buffer.

The value of page->index is required by page_mkclean(), which we
call to reset the mappings during the writeback phase of the deferred
I/O. The value of pageref->offset is for conveniently getting an offset
into video memory in fb helpers.

v4:
	* fix commit message (Javier)

Suggested-by: Javier Martinez Canillas <javierm@redhat.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220429100834.18898-6-tzimmermann@suse.de
2022-05-03 16:04:22 +02:00
..
fb_agm1264k-fl.c staging: fbtft: Replace custom ->reset() with generic one 2021-05-10 11:19:39 +02:00
fb_bd663474.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_hx8340bn.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_hx8347d.c staging: fbtft: Add support for orientation on Himax HX8347d 2021-05-10 11:19:39 +02:00
fb_hx8353d.c staging: fbtft: remove redundant license text 2018-01-15 16:03:46 +01:00
fb_hx8357d.c staging: fbtft: remove redundant license text 2018-01-15 16:03:46 +01:00
fb_hx8357d.h staging: fbtft: add SPDX identifiers 2018-01-15 16:03:46 +01:00
fb_ili9163.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ili9320.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ili9325.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ili9340.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ili9341.c staging: fbtft: Puts macro arguments in parenthesis to avoid precedence issues - Style 2018-08-08 14:23:16 +02:00
fb_ili9481.c staging: fbtft: remove redundant license text 2018-01-15 16:03:46 +01:00
fb_ili9486.c staging: fbtft: remove redundant license text 2018-01-15 16:03:46 +01:00
fb_pcd8544.c Staging: fbtft: Fix some typo. pdc8544 --> pcd8544 2019-07-30 09:52:04 +02:00
fb_ra8875.c staging: fbtft: fixed format-string errors. 2019-03-18 07:06:08 +01:00
fb_s6d02a1.c staging: fbtft: Adjust some empty-line problems - Style 2018-08-08 14:23:16 +02:00
fb_s6d1121.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_seps525.c drivers/staging/fbtft/fb_seps525: New driver for SEPS525 (Syncoam) LCD Controllers 2019-10-26 20:47:52 +02:00
fb_sh1106.c staging: fbtft: sh1106: use new macro FBTFT_REGISTER_SPI_DRIVER 2021-12-03 15:05:12 +01:00
fb_ssd1289.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ssd1305.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_ssd1306.c staging: fbtft: ternary statement to if statement. 2019-03-19 14:35:42 +01:00
fb_ssd1325.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ssd1331.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fb_ssd1351.c staging/fbtft: Fix backlight 2021-11-15 10:21:48 +01:00
fb_st7735r.c staging: fbtft: Fixes some alignment issues - Style 2018-08-08 14:23:16 +02:00
fb_st7789v.c staging: fbtft: fb_st7789v: reset display before initialization 2022-02-15 17:14:22 +01:00
fb_tinylcd.c Staging: fbtft: Alignment should match open parenthesis 2019-02-26 11:40:07 +01:00
fb_tls8204.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_uc1611.c staging: fbtft: Do not hardcode SPI CS polarity inversion 2019-12-10 10:56:53 +01:00
fb_uc1701.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_upd161704.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fbtft-bus.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fbtft-core.c fbdev: Use pageref offset for deferred-I/O writeback 2022-05-03 16:04:22 +02:00
fbtft-io.c staging: fbtft: Rectify GPIO handling 2021-05-10 11:19:39 +02:00
fbtft-sysfs.c staging: fbtft: convert sysfs snprintf to sysfs_emit 2021-04-05 12:15:15 +02:00
fbtft.h Staging driver update for 5.18-rc1 2022-03-28 12:50:50 -07:00
internal.h staging: fbtft: remove redundant license text 2018-01-15 16:03:46 +01:00
Kconfig staging: fbtft: Remove fb_watterott driver 2021-11-15 10:02:02 +01:00
Makefile staging: fbtft: Remove fb_watterott driver 2021-11-15 10:02:02 +01:00
README
TODO staging: fbtft: Update TODO 2021-05-10 11:19:39 +02:00

  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/