All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Zimmermann <tzimmermann@suse.de>
To: arnd@arndb.de, daniel.vetter@ffwll.ch, deller@gmx.de,
	javierm@redhat.com, gregkh@linuxfoundation.org
Cc: linux-arch@vger.kernel.org, linux-fbdev@vger.kernel.org,
	dri-devel@lists.freedesktop.org,
	linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org,
	loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org,
	linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org,
	sparclinux@vger.kernel.org, x86@kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v3 00/19] arch: Consolidate <asm/fb.h>
Date: Mon, 17 Apr 2023 14:56:32 +0200	[thread overview]
Message-ID: <20230417125651.25126-1-tzimmermann@suse.de> (raw)

Various architectures provide <asm/fb.h> with helpers for fbdev
framebuffer devices. Share the contained code where possible. There
is already <asm-generic/fb.h>, which implements generic (as in
'empty') functions of the fbdev helpers. The header was added in
commit aafe4dbed0bf ("asm-generic: add generic versions of common
headers"), but never used.

Each per-architecture header file declares and/or implements fbdev
helpers and defines a preprocessor token for each. The generic
header then provides the remaining helpers. It works like the I/O
helpers in <asm/io.h>.

For PARISC, the architecture helpers are mixed up with helpers
for the system's STI graphics firmware. We first move the STI code
to appropriate locations under video/ and then move the architecture
helper under arch/parisc.

For Sparc, there's an additional patch that moves the implementation
from the header into a source file. This allows to avoid some include
statements in the header file.

Built on arm, arm64, m68k, mips, parisc, powerpc, sparc and x86.

v3:
	* use default fb_pgprotect() on arc, parisc, sparc64 (Arnd)
	* fix includes in generic fb.h
v2:
	* make writecombine the default mapping mode (Arnd)
	* rework fb_pgprotect() on m68k

Thomas Zimmermann (19):
  fbdev: Prepare generic architecture helpers
  arch/arc: Implement <asm/fb.h> with generic helpers
  arch/arm: Implement <asm/fb.h> with generic helpers
  arch/arm64: Implement <asm/fb.h> with generic helpers
  arch/ia64: Implement <asm/fb.h> with generic helpers
  arch/loongarch: Implement <asm/fb.h> with generic helpers
  arch/m68k: Merge variants of fb_pgprotect() into single function
  arch/m68k: Implement <asm/fb.h> with generic helpers
  arch/mips: Implement <asm/fb.h> with generic helpers
  video: Remove trailing whitespaces
  video: Move HP PARISC STI core code to shared location
  arch/parisc: Remove trailing whitespaces
  arch/parisc: Implement fb_is_primary_device() under arch/parisc
  arch/parisc: Implement <asm/fb.h> with generic helpers
  arch/powerpc: Implement <asm/fb.h> with generic helpers
  arch/sh: Implement <asm/fb.h> with generic helpers
  arch/sparc: Implement fb_is_primary_device() in source file
  arch/sparc: Implement <asm/fb.h> with generic helpers
  arch/x86: Implement <asm/fb.h> with generic helpers

 arch/arc/include/asm/fb.h                     |  16 +-
 arch/arm/include/asm/fb.h                     |  15 +-
 arch/arm64/include/asm/fb.h                   |  15 +-
 arch/ia64/include/asm/fb.h                    |  11 +-
 arch/loongarch/include/asm/fb.h               |  15 +-
 arch/m68k/include/asm/fb.h                    |  22 +--
 arch/mips/include/asm/fb.h                    |  10 +-
 arch/parisc/Makefile                          |   4 +-
 arch/parisc/include/asm/fb.h                  |  20 +--
 arch/parisc/video/Makefile                    |   3 +
 arch/parisc/video/fbdev.c                     |  27 +++
 arch/powerpc/include/asm/fb.h                 |   8 +-
 arch/sh/include/asm/fb.h                      |  15 +-
 arch/sparc/Makefile                           |   1 +
 arch/sparc/include/asm/fb.h                   |  33 ++--
 arch/sparc/video/Makefile                     |   3 +
 arch/sparc/video/fbdev.c                      |  24 +++
 arch/x86/include/asm/fb.h                     |  11 +-
 drivers/video/Kconfig                         |   7 +
 drivers/video/Makefile                        |   1 +
 drivers/video/console/Kconfig                 |   1 +
 drivers/video/console/Makefile                |   4 +-
 drivers/video/console/sticon.c                |   6 +-
 drivers/video/fbdev/Kconfig                   |   3 +-
 drivers/video/fbdev/stifb.c                   | 158 +++++++++---------
 drivers/video/{console => }/sticore.c         | 123 ++++++--------
 include/asm-generic/fb.h                      |  24 ++-
 .../video/fbdev => include/video}/sticore.h   |  16 +-
 28 files changed, 285 insertions(+), 311 deletions(-)
 create mode 100644 arch/parisc/video/Makefile
 create mode 100644 arch/parisc/video/fbdev.c
 create mode 100644 arch/sparc/video/Makefile
 create mode 100644 arch/sparc/video/fbdev.c
 rename drivers/video/{console => }/sticore.c (95%)
 rename {drivers/video/fbdev => include/video}/sticore.h (99%)


base-commit: c7cfe0c7215db9556ffe7ce33d1f60f768336cfd
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
-- 
2.40.0


WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: arnd@arndb.de, daniel.vetter@ffwll.ch, deller@gmx.de,
	javierm@redhat.com, gregkh@linuxfoundation.org
Cc: linux-arch@vger.kernel.org, linux-fbdev@vger.kernel.org,
	dri-devel@lists.freedesktop.org,
	linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org,
	loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org,
	linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org,
	sparclinux@vger.kernel.org, x86@kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v3 00/19] arch: Consolidate <asm/fb.h>
Date: Mon, 17 Apr 2023 12:56:32 +0000	[thread overview]
Message-ID: <20230417125651.25126-1-tzimmermann@suse.de> (raw)

Various architectures provide <asm/fb.h> with helpers for fbdev
framebuffer devices. Share the contained code where possible. There
is already <asm-generic/fb.h>, which implements generic (as in
'empty') functions of the fbdev helpers. The header was added in
commit aafe4dbed0bf ("asm-generic: add generic versions of common
headers"), but never used.

Each per-architecture header file declares and/or implements fbdev
helpers and defines a preprocessor token for each. The generic
header then provides the remaining helpers. It works like the I/O
helpers in <asm/io.h>.

For PARISC, the architecture helpers are mixed up with helpers
for the system's STI graphics firmware. We first move the STI code
to appropriate locations under video/ and then move the architecture
helper under arch/parisc.

For Sparc, there's an additional patch that moves the implementation
from the header into a source file. This allows to avoid some include
statements in the header file.

Built on arm, arm64, m68k, mips, parisc, powerpc, sparc and x86.

v3:
	* use default fb_pgprotect() on arc, parisc, sparc64 (Arnd)
	* fix includes in generic fb.h
v2:
	* make writecombine the default mapping mode (Arnd)
	* rework fb_pgprotect() on m68k

Thomas Zimmermann (19):
  fbdev: Prepare generic architecture helpers
  arch/arc: Implement <asm/fb.h> with generic helpers
  arch/arm: Implement <asm/fb.h> with generic helpers
  arch/arm64: Implement <asm/fb.h> with generic helpers
  arch/ia64: Implement <asm/fb.h> with generic helpers
  arch/loongarch: Implement <asm/fb.h> with generic helpers
  arch/m68k: Merge variants of fb_pgprotect() into single function
  arch/m68k: Implement <asm/fb.h> with generic helpers
  arch/mips: Implement <asm/fb.h> with generic helpers
  video: Remove trailing whitespaces
  video: Move HP PARISC STI core code to shared location
  arch/parisc: Remove trailing whitespaces
  arch/parisc: Implement fb_is_primary_device() under arch/parisc
  arch/parisc: Implement <asm/fb.h> with generic helpers
  arch/powerpc: Implement <asm/fb.h> with generic helpers
  arch/sh: Implement <asm/fb.h> with generic helpers
  arch/sparc: Implement fb_is_primary_device() in source file
  arch/sparc: Implement <asm/fb.h> with generic helpers
  arch/x86: Implement <asm/fb.h> with generic helpers

 arch/arc/include/asm/fb.h                     |  16 +-
 arch/arm/include/asm/fb.h                     |  15 +-
 arch/arm64/include/asm/fb.h                   |  15 +-
 arch/ia64/include/asm/fb.h                    |  11 +-
 arch/loongarch/include/asm/fb.h               |  15 +-
 arch/m68k/include/asm/fb.h                    |  22 +--
 arch/mips/include/asm/fb.h                    |  10 +-
 arch/parisc/Makefile                          |   4 +-
 arch/parisc/include/asm/fb.h                  |  20 +--
 arch/parisc/video/Makefile                    |   3 +
 arch/parisc/video/fbdev.c                     |  27 +++
 arch/powerpc/include/asm/fb.h                 |   8 +-
 arch/sh/include/asm/fb.h                      |  15 +-
 arch/sparc/Makefile                           |   1 +
 arch/sparc/include/asm/fb.h                   |  33 ++--
 arch/sparc/video/Makefile                     |   3 +
 arch/sparc/video/fbdev.c                      |  24 +++
 arch/x86/include/asm/fb.h                     |  11 +-
 drivers/video/Kconfig                         |   7 +
 drivers/video/Makefile                        |   1 +
 drivers/video/console/Kconfig                 |   1 +
 drivers/video/console/Makefile                |   4 +-
 drivers/video/console/sticon.c                |   6 +-
 drivers/video/fbdev/Kconfig                   |   3 +-
 drivers/video/fbdev/stifb.c                   | 158 +++++++++---------
 drivers/video/{console => }/sticore.c         | 123 ++++++--------
 include/asm-generic/fb.h                      |  24 ++-
 .../video/fbdev => include/video}/sticore.h   |  16 +-
 28 files changed, 285 insertions(+), 311 deletions(-)
 create mode 100644 arch/parisc/video/Makefile
 create mode 100644 arch/parisc/video/fbdev.c
 create mode 100644 arch/sparc/video/Makefile
 create mode 100644 arch/sparc/video/fbdev.c
 rename drivers/video/{console => }/sticore.c (95%)
 rename {drivers/video/fbdev => include/video}/sticore.h (99%)


base-commit: c7cfe0c7215db9556ffe7ce33d1f60f768336cfd
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
-- 
2.40.0

WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: arnd@arndb.de, daniel.vetter@ffwll.ch, deller@gmx.de,
	javierm@redhat.com, gregkh@linuxfoundation.org
Cc: linux-arch@vger.kernel.org, linux-fbdev@vger.kernel.org,
	dri-devel@lists.freedesktop.org,
	linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org,
	loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org,
	linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org,
	sparclinux@vger.kernel.org, x86@kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v3 00/19] arch: Consolidate <asm/fb.h>
Date: Mon, 17 Apr 2023 14:56:32 +0200	[thread overview]
Message-ID: <20230417125651.25126-1-tzimmermann@suse.de> (raw)

Various architectures provide <asm/fb.h> with helpers for fbdev
framebuffer devices. Share the contained code where possible. There
is already <asm-generic/fb.h>, which implements generic (as in
'empty') functions of the fbdev helpers. The header was added in
commit aafe4dbed0bf ("asm-generic: add generic versions of common
headers"), but never used.

Each per-architecture header file declares and/or implements fbdev
helpers and defines a preprocessor token for each. The generic
header then provides the remaining helpers. It works like the I/O
helpers in <asm/io.h>.

For PARISC, the architecture helpers are mixed up with helpers
for the system's STI graphics firmware. We first move the STI code
to appropriate locations under video/ and then move the architecture
helper under arch/parisc.

For Sparc, there's an additional patch that moves the implementation
from the header into a source file. This allows to avoid some include
statements in the header file.

Built on arm, arm64, m68k, mips, parisc, powerpc, sparc and x86.

v3:
	* use default fb_pgprotect() on arc, parisc, sparc64 (Arnd)
	* fix includes in generic fb.h
v2:
	* make writecombine the default mapping mode (Arnd)
	* rework fb_pgprotect() on m68k

Thomas Zimmermann (19):
  fbdev: Prepare generic architecture helpers
  arch/arc: Implement <asm/fb.h> with generic helpers
  arch/arm: Implement <asm/fb.h> with generic helpers
  arch/arm64: Implement <asm/fb.h> with generic helpers
  arch/ia64: Implement <asm/fb.h> with generic helpers
  arch/loongarch: Implement <asm/fb.h> with generic helpers
  arch/m68k: Merge variants of fb_pgprotect() into single function
  arch/m68k: Implement <asm/fb.h> with generic helpers
  arch/mips: Implement <asm/fb.h> with generic helpers
  video: Remove trailing whitespaces
  video: Move HP PARISC STI core code to shared location
  arch/parisc: Remove trailing whitespaces
  arch/parisc: Implement fb_is_primary_device() under arch/parisc
  arch/parisc: Implement <asm/fb.h> with generic helpers
  arch/powerpc: Implement <asm/fb.h> with generic helpers
  arch/sh: Implement <asm/fb.h> with generic helpers
  arch/sparc: Implement fb_is_primary_device() in source file
  arch/sparc: Implement <asm/fb.h> with generic helpers
  arch/x86: Implement <asm/fb.h> with generic helpers

 arch/arc/include/asm/fb.h                     |  16 +-
 arch/arm/include/asm/fb.h                     |  15 +-
 arch/arm64/include/asm/fb.h                   |  15 +-
 arch/ia64/include/asm/fb.h                    |  11 +-
 arch/loongarch/include/asm/fb.h               |  15 +-
 arch/m68k/include/asm/fb.h                    |  22 +--
 arch/mips/include/asm/fb.h                    |  10 +-
 arch/parisc/Makefile                          |   4 +-
 arch/parisc/include/asm/fb.h                  |  20 +--
 arch/parisc/video/Makefile                    |   3 +
 arch/parisc/video/fbdev.c                     |  27 +++
 arch/powerpc/include/asm/fb.h                 |   8 +-
 arch/sh/include/asm/fb.h                      |  15 +-
 arch/sparc/Makefile                           |   1 +
 arch/sparc/include/asm/fb.h                   |  33 ++--
 arch/sparc/video/Makefile                     |   3 +
 arch/sparc/video/fbdev.c                      |  24 +++
 arch/x86/include/asm/fb.h                     |  11 +-
 drivers/video/Kconfig                         |   7 +
 drivers/video/Makefile                        |   1 +
 drivers/video/console/Kconfig                 |   1 +
 drivers/video/console/Makefile                |   4 +-
 drivers/video/console/sticon.c                |   6 +-
 drivers/video/fbdev/Kconfig                   |   3 +-
 drivers/video/fbdev/stifb.c                   | 158 +++++++++---------
 drivers/video/{console => }/sticore.c         | 123 ++++++--------
 include/asm-generic/fb.h                      |  24 ++-
 .../video/fbdev => include/video}/sticore.h   |  16 +-
 28 files changed, 285 insertions(+), 311 deletions(-)
 create mode 100644 arch/parisc/video/Makefile
 create mode 100644 arch/parisc/video/fbdev.c
 create mode 100644 arch/sparc/video/Makefile
 create mode 100644 arch/sparc/video/fbdev.c
 rename drivers/video/{console => }/sticore.c (95%)
 rename {drivers/video/fbdev => include/video}/sticore.h (99%)


base-commit: c7cfe0c7215db9556ffe7ce33d1f60f768336cfd
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
-- 
2.40.0


_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: arnd@arndb.de, daniel.vetter@ffwll.ch, deller@gmx.de,
	javierm@redhat.com, gregkh@linuxfoundation.org
Cc: linux-arch@vger.kernel.org, linux-fbdev@vger.kernel.org,
	linux-ia64@vger.kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	linux-parisc@vger.kernel.org, linux-sh@vger.kernel.org,
	x86@kernel.org, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, linux-mips@vger.kernel.org,
	linux-m68k@lists.linux-m68k.org, loongarch@lists.linux.dev,
	sparclinux@vger.kernel.org, linux-snps-arc@lists.infradead.org,
	linuxppc-dev@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 00/19] arch: Consolidate <asm/fb.h>
Date: Mon, 17 Apr 2023 14:56:32 +0200	[thread overview]
Message-ID: <20230417125651.25126-1-tzimmermann@suse.de> (raw)

Various architectures provide <asm/fb.h> with helpers for fbdev
framebuffer devices. Share the contained code where possible. There
is already <asm-generic/fb.h>, which implements generic (as in
'empty') functions of the fbdev helpers. The header was added in
commit aafe4dbed0bf ("asm-generic: add generic versions of common
headers"), but never used.

Each per-architecture header file declares and/or implements fbdev
helpers and defines a preprocessor token for each. The generic
header then provides the remaining helpers. It works like the I/O
helpers in <asm/io.h>.

For PARISC, the architecture helpers are mixed up with helpers
for the system's STI graphics firmware. We first move the STI code
to appropriate locations under video/ and then move the architecture
helper under arch/parisc.

For Sparc, there's an additional patch that moves the implementation
from the header into a source file. This allows to avoid some include
statements in the header file.

Built on arm, arm64, m68k, mips, parisc, powerpc, sparc and x86.

v3:
	* use default fb_pgprotect() on arc, parisc, sparc64 (Arnd)
	* fix includes in generic fb.h
v2:
	* make writecombine the default mapping mode (Arnd)
	* rework fb_pgprotect() on m68k

Thomas Zimmermann (19):
  fbdev: Prepare generic architecture helpers
  arch/arc: Implement <asm/fb.h> with generic helpers
  arch/arm: Implement <asm/fb.h> with generic helpers
  arch/arm64: Implement <asm/fb.h> with generic helpers
  arch/ia64: Implement <asm/fb.h> with generic helpers
  arch/loongarch: Implement <asm/fb.h> with generic helpers
  arch/m68k: Merge variants of fb_pgprotect() into single function
  arch/m68k: Implement <asm/fb.h> with generic helpers
  arch/mips: Implement <asm/fb.h> with generic helpers
  video: Remove trailing whitespaces
  video: Move HP PARISC STI core code to shared location
  arch/parisc: Remove trailing whitespaces
  arch/parisc: Implement fb_is_primary_device() under arch/parisc
  arch/parisc: Implement <asm/fb.h> with generic helpers
  arch/powerpc: Implement <asm/fb.h> with generic helpers
  arch/sh: Implement <asm/fb.h> with generic helpers
  arch/sparc: Implement fb_is_primary_device() in source file
  arch/sparc: Implement <asm/fb.h> with generic helpers
  arch/x86: Implement <asm/fb.h> with generic helpers

 arch/arc/include/asm/fb.h                     |  16 +-
 arch/arm/include/asm/fb.h                     |  15 +-
 arch/arm64/include/asm/fb.h                   |  15 +-
 arch/ia64/include/asm/fb.h                    |  11 +-
 arch/loongarch/include/asm/fb.h               |  15 +-
 arch/m68k/include/asm/fb.h                    |  22 +--
 arch/mips/include/asm/fb.h                    |  10 +-
 arch/parisc/Makefile                          |   4 +-
 arch/parisc/include/asm/fb.h                  |  20 +--
 arch/parisc/video/Makefile                    |   3 +
 arch/parisc/video/fbdev.c                     |  27 +++
 arch/powerpc/include/asm/fb.h                 |   8 +-
 arch/sh/include/asm/fb.h                      |  15 +-
 arch/sparc/Makefile                           |   1 +
 arch/sparc/include/asm/fb.h                   |  33 ++--
 arch/sparc/video/Makefile                     |   3 +
 arch/sparc/video/fbdev.c                      |  24 +++
 arch/x86/include/asm/fb.h                     |  11 +-
 drivers/video/Kconfig                         |   7 +
 drivers/video/Makefile                        |   1 +
 drivers/video/console/Kconfig                 |   1 +
 drivers/video/console/Makefile                |   4 +-
 drivers/video/console/sticon.c                |   6 +-
 drivers/video/fbdev/Kconfig                   |   3 +-
 drivers/video/fbdev/stifb.c                   | 158 +++++++++---------
 drivers/video/{console => }/sticore.c         | 123 ++++++--------
 include/asm-generic/fb.h                      |  24 ++-
 .../video/fbdev => include/video}/sticore.h   |  16 +-
 28 files changed, 285 insertions(+), 311 deletions(-)
 create mode 100644 arch/parisc/video/Makefile
 create mode 100644 arch/parisc/video/fbdev.c
 create mode 100644 arch/sparc/video/Makefile
 create mode 100644 arch/sparc/video/fbdev.c
 rename drivers/video/{console => }/sticore.c (95%)
 rename {drivers/video/fbdev => include/video}/sticore.h (99%)


base-commit: c7cfe0c7215db9556ffe7ce33d1f60f768336cfd
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
-- 
2.40.0


WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: arnd@arndb.de, daniel.vetter@ffwll.ch, deller@gmx.de,
	javierm@redhat.com, gregkh@linuxfoundation.org
Cc: linux-arch@vger.kernel.org, linux-fbdev@vger.kernel.org,
	dri-devel@lists.freedesktop.org,
	linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org,
	loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org,
	linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org,
	sparclinux@vger.kernel.org, x86@kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v3 00/19] arch: Consolidate <asm/fb.h>
Date: Mon, 17 Apr 2023 14:56:32 +0200	[thread overview]
Message-ID: <20230417125651.25126-1-tzimmermann@suse.de> (raw)

Various architectures provide <asm/fb.h> with helpers for fbdev
framebuffer devices. Share the contained code where possible. There
is already <asm-generic/fb.h>, which implements generic (as in
'empty') functions of the fbdev helpers. The header was added in
commit aafe4dbed0bf ("asm-generic: add generic versions of common
headers"), but never used.

Each per-architecture header file declares and/or implements fbdev
helpers and defines a preprocessor token for each. The generic
header then provides the remaining helpers. It works like the I/O
helpers in <asm/io.h>.

For PARISC, the architecture helpers are mixed up with helpers
for the system's STI graphics firmware. We first move the STI code
to appropriate locations under video/ and then move the architecture
helper under arch/parisc.

For Sparc, there's an additional patch that moves the implementation
from the header into a source file. This allows to avoid some include
statements in the header file.

Built on arm, arm64, m68k, mips, parisc, powerpc, sparc and x86.

v3:
	* use default fb_pgprotect() on arc, parisc, sparc64 (Arnd)
	* fix includes in generic fb.h
v2:
	* make writecombine the default mapping mode (Arnd)
	* rework fb_pgprotect() on m68k

Thomas Zimmermann (19):
  fbdev: Prepare generic architecture helpers
  arch/arc: Implement <asm/fb.h> with generic helpers
  arch/arm: Implement <asm/fb.h> with generic helpers
  arch/arm64: Implement <asm/fb.h> with generic helpers
  arch/ia64: Implement <asm/fb.h> with generic helpers
  arch/loongarch: Implement <asm/fb.h> with generic helpers
  arch/m68k: Merge variants of fb_pgprotect() into single function
  arch/m68k: Implement <asm/fb.h> with generic helpers
  arch/mips: Implement <asm/fb.h> with generic helpers
  video: Remove trailing whitespaces
  video: Move HP PARISC STI core code to shared location
  arch/parisc: Remove trailing whitespaces
  arch/parisc: Implement fb_is_primary_device() under arch/parisc
  arch/parisc: Implement <asm/fb.h> with generic helpers
  arch/powerpc: Implement <asm/fb.h> with generic helpers
  arch/sh: Implement <asm/fb.h> with generic helpers
  arch/sparc: Implement fb_is_primary_device() in source file
  arch/sparc: Implement <asm/fb.h> with generic helpers
  arch/x86: Implement <asm/fb.h> with generic helpers

 arch/arc/include/asm/fb.h                     |  16 +-
 arch/arm/include/asm/fb.h                     |  15 +-
 arch/arm64/include/asm/fb.h                   |  15 +-
 arch/ia64/include/asm/fb.h                    |  11 +-
 arch/loongarch/include/asm/fb.h               |  15 +-
 arch/m68k/include/asm/fb.h                    |  22 +--
 arch/mips/include/asm/fb.h                    |  10 +-
 arch/parisc/Makefile                          |   4 +-
 arch/parisc/include/asm/fb.h                  |  20 +--
 arch/parisc/video/Makefile                    |   3 +
 arch/parisc/video/fbdev.c                     |  27 +++
 arch/powerpc/include/asm/fb.h                 |   8 +-
 arch/sh/include/asm/fb.h                      |  15 +-
 arch/sparc/Makefile                           |   1 +
 arch/sparc/include/asm/fb.h                   |  33 ++--
 arch/sparc/video/Makefile                     |   3 +
 arch/sparc/video/fbdev.c                      |  24 +++
 arch/x86/include/asm/fb.h                     |  11 +-
 drivers/video/Kconfig                         |   7 +
 drivers/video/Makefile                        |   1 +
 drivers/video/console/Kconfig                 |   1 +
 drivers/video/console/Makefile                |   4 +-
 drivers/video/console/sticon.c                |   6 +-
 drivers/video/fbdev/Kconfig                   |   3 +-
 drivers/video/fbdev/stifb.c                   | 158 +++++++++---------
 drivers/video/{console => }/sticore.c         | 123 ++++++--------
 include/asm-generic/fb.h                      |  24 ++-
 .../video/fbdev => include/video}/sticore.h   |  16 +-
 28 files changed, 285 insertions(+), 311 deletions(-)
 create mode 100644 arch/parisc/video/Makefile
 create mode 100644 arch/parisc/video/fbdev.c
 create mode 100644 arch/sparc/video/Makefile
 create mode 100644 arch/sparc/video/fbdev.c
 rename drivers/video/{console => }/sticore.c (95%)
 rename {drivers/video/fbdev => include/video}/sticore.h (99%)


base-commit: c7cfe0c7215db9556ffe7ce33d1f60f768336cfd
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
-- 
2.40.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2023-04-17 12:57 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-17 12:56 Thomas Zimmermann [this message]
2023-04-17 12:56 ` [PATCH v3 00/19] arch: Consolidate <asm/fb.h> Thomas Zimmermann
2023-04-17 12:56 ` Thomas Zimmermann
2023-04-17 12:56 ` Thomas Zimmermann
2023-04-17 12:56 ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 01/19] fbdev: Prepare generic architecture helpers Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 02/19] arch/arc: Implement <asm/fb.h> with generic helpers Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 03/19] arch/arm: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 04/19] arch/arm64: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 05/19] arch/ia64: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 06/19] arch/loongarch: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-06-28 10:26   ` WANG Xuerui
2023-06-28 10:26     ` WANG Xuerui
2023-06-28 10:26     ` WANG Xuerui
2023-06-28 10:26     ` WANG Xuerui
2023-04-17 12:56 ` [PATCH v3 07/19] arch/m68k: Merge variants of fb_pgprotect() into single function Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 08/19] arch/m68k: Implement <asm/fb.h> with generic helpers Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 09/19] arch/mips: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 10/19] video: Remove trailing whitespaces Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 11/19] video: Move HP PARISC STI core code to shared location Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 12/19] arch/parisc: Remove trailing whitespaces Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 13/19] arch/parisc: Implement fb_is_primary_device() under arch/parisc Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 14/19] arch/parisc: Implement <asm/fb.h> with generic helpers Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 15/19] arch/powerpc: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 16/19] arch/sh: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 13:02   ` John Paul Adrian Glaubitz
2023-04-17 13:02     ` John Paul Adrian Glaubitz
2023-04-17 13:02     ` John Paul Adrian Glaubitz
2023-04-17 13:02     ` John Paul Adrian Glaubitz
2023-04-17 13:02     ` John Paul Adrian Glaubitz
2023-04-17 14:06     ` Thomas Zimmermann
2023-04-17 14:06       ` Thomas Zimmermann
2023-04-17 14:06       ` Thomas Zimmermann
2023-04-17 14:06       ` Thomas Zimmermann
2023-04-17 14:06       ` Thomas Zimmermann
2023-04-17 14:07       ` Thomas Zimmermann
2023-04-17 14:07         ` Thomas Zimmermann
2023-04-17 14:07         ` Thomas Zimmermann
2023-04-17 14:07         ` Thomas Zimmermann
2023-04-17 14:13       ` John Paul Adrian Glaubitz
2023-04-17 14:13         ` John Paul Adrian Glaubitz
2023-04-17 14:13         ` John Paul Adrian Glaubitz
2023-04-17 14:13         ` John Paul Adrian Glaubitz
2023-04-17 14:13         ` John Paul Adrian Glaubitz
2023-04-17 14:16         ` Thomas Zimmermann
2023-04-17 14:16           ` Thomas Zimmermann
2023-04-17 14:16           ` Thomas Zimmermann
2023-04-17 14:16           ` Thomas Zimmermann
2023-04-17 14:21   ` John Paul Adrian Glaubitz
2023-04-17 14:21     ` John Paul Adrian Glaubitz
2023-04-17 14:21     ` John Paul Adrian Glaubitz
2023-04-17 14:21     ` John Paul Adrian Glaubitz
2023-04-17 14:21     ` John Paul Adrian Glaubitz
2023-04-17 12:56 ` [PATCH v3 17/19] arch/sparc: Implement fb_is_primary_device() in source file Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-06-24  1:55   ` [v3,17/19] " Guenter Roeck
2023-06-24  1:55     ` Guenter Roeck
2023-06-24  1:55     ` Guenter Roeck
2023-06-24  1:55     ` Guenter Roeck
2023-06-24  9:27     ` Arnd Bergmann
2023-06-24  9:27       ` [v3, 17/19] " Arnd Bergmann
2023-06-24  9:27       ` [v3,17/19] " Arnd Bergmann
2023-06-24  9:27       ` Arnd Bergmann
2023-06-24  9:27       ` Arnd Bergmann
2023-06-24 13:26       ` Guenter Roeck
2023-06-24 13:26         ` [v3, 17/19] " Guenter Roeck
2023-06-24 13:26         ` [v3,17/19] " Guenter Roeck
2023-06-24 13:26         ` Guenter Roeck
2023-06-24 13:26         ` Guenter Roeck
2023-06-24 14:21         ` Arnd Bergmann
2023-06-24 14:21           ` [v3, 17/19] " Arnd Bergmann
2023-06-24 14:21           ` [v3,17/19] " Arnd Bergmann
2023-06-24 14:21           ` Arnd Bergmann
2023-06-24 14:21           ` Arnd Bergmann
2023-06-28 10:01           ` Arnd Bergmann
2023-06-28 10:01             ` [v3, 17/19] " Arnd Bergmann
2023-06-28 10:01             ` [v3,17/19] " Arnd Bergmann
2023-06-28 10:01             ` Arnd Bergmann
2023-06-28 10:01             ` Arnd Bergmann
2023-04-17 12:56 ` [PATCH v3 18/19] arch/sparc: Implement <asm/fb.h> with generic helpers Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56 ` [PATCH v3 19/19] arch/x86: " Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 12:56   ` Thomas Zimmermann
2023-04-17 14:12 ` [PATCH v3 00/19] arch: Consolidate <asm/fb.h> Arnd Bergmann
2023-04-17 14:12   ` Arnd Bergmann
2023-04-17 14:12   ` Arnd Bergmann
2023-04-17 14:12   ` Arnd Bergmann
2023-04-17 14:12   ` Arnd Bergmann
2023-04-18  7:44   ` Thomas Zimmermann
2023-04-18  7:44     ` Thomas Zimmermann
2023-04-18  7:44     ` Thomas Zimmermann
2023-04-18  7:44     ` Thomas Zimmermann
2023-04-19 17:22     ` Helge Deller
2023-04-19 17:22       ` Helge Deller
2023-04-19 17:22       ` Helge Deller
2023-04-19 17:22       ` Helge Deller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230417125651.25126-1-tzimmermann@suse.de \
    --to=tzimmermann@suse.de \
    --cc=arnd@arndb.de \
    --cc=daniel.vetter@ffwll.ch \
    --cc=deller@gmx.de \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=javierm@redhat.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-m68k@lists.linux-m68k.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-parisc@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=linux-snps-arc@lists.infradead.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=loongarch@lists.linux.dev \
    --cc=sparclinux@vger.kernel.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.