[v3,6/6] fbdev: Rename fb_mem*() helpers
Commit Message
Update the names of the fb_mem*() helpers to be consistent with their
regular counterparts. Hence, fb_memset() now becomes fb_memset_io(),
fb_memcpy_fromfb() now becomes fb_memcpy_fromio() and fb_memcpy_tofb()
becomes fb_memcpy_toio(). No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
drivers/video/fbdev/aty/mach64_cursor.c | 2 +-
drivers/video/fbdev/chipsfb.c | 2 +-
drivers/video/fbdev/core/fbmem.c | 4 ++--
drivers/video/fbdev/kyro/fbdev.c | 2 +-
drivers/video/fbdev/pvr2fb.c | 2 +-
drivers/video/fbdev/sstfb.c | 2 +-
drivers/video/fbdev/stifb.c | 4 ++--
drivers/video/fbdev/tdfxfb.c | 2 +-
include/asm-generic/fb.h | 16 ++++++++--------
9 files changed, 18 insertions(+), 18 deletions(-)
Comments
Hi Thomas.
On Tue, May 02, 2023 at 03:02:23PM +0200, Thomas Zimmermann wrote:
> Update the names of the fb_mem*() helpers to be consistent with their
> regular counterparts. Hence, fb_memset() now becomes fb_memset_io(),
> fb_memcpy_fromfb() now becomes fb_memcpy_fromio() and fb_memcpy_tofb()
> becomes fb_memcpy_toio(). No functional changes.
>
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
...
>
> -#ifndef fb_memcpy_fromfb
> -static inline void fb_memcpy_fromfb(void *to, const volatile void __iomem *from, size_t n)
> +#ifndef fb_memcpy_fromio
> +static inline void fb_memcpy_fromio(void *to, const volatile void __iomem *from, size_t n)
> {
> memcpy_fromio(to, from, n);
> }
> -#define fb_memcpy_fromfb fb_memcpy_fromfb
> +#define fb_memcpy_fromio fb_memcpy_fromio
> #endif
>
> -#ifndef fb_memcpy_tofb
> -static inline void fb_memcpy_tofb(volatile void __iomem *to, const void *from, size_t n)
> +#ifndef fb_memcpy_toio
> +static inline void fb_memcpy_toio(volatile void __iomem *to, const void *from, size_t n)
> {
> memcpy_toio(to, from, n);
> }
> -#define fb_memcpy_tofb fb_memcpy_tofb
> +#define fb_memcpy_toio fb_memcpy_toio
> #endif
>
> #ifndef fb_memset
> -static inline void fb_memset(volatile void __iomem *addr, int c, size_t n)
> +static inline void fb_memset_io(volatile void __iomem *addr, int c, size_t n)
> {
> memset_io(addr, c, n);
> }
> -#define fb_memset fb_memset
> +#define fb_memset fb_memset_io
The static inlines wrappers does not provide any value, and could be replaced by
direct calls to memcpy_fromio(), memcpy_toio(), memset_io().
If you decide to keep the wrappers I will not hold you back, so the
patch has my:
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
But I prefer the direct calls without the wrappers....
Sam
Hi
Am 02.05.23 um 22:08 schrieb Sam Ravnborg:
> Hi Thomas.
>
> On Tue, May 02, 2023 at 03:02:23PM +0200, Thomas Zimmermann wrote:
>> Update the names of the fb_mem*() helpers to be consistent with their
>> regular counterparts. Hence, fb_memset() now becomes fb_memset_io(),
>> fb_memcpy_fromfb() now becomes fb_memcpy_fromio() and fb_memcpy_tofb()
>> becomes fb_memcpy_toio(). No functional changes.
>>
>> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
>> ---
> ...
>>
>> -#ifndef fb_memcpy_fromfb
>> -static inline void fb_memcpy_fromfb(void *to, const volatile void __iomem *from, size_t n)
>> +#ifndef fb_memcpy_fromio
>> +static inline void fb_memcpy_fromio(void *to, const volatile void __iomem *from, size_t n)
>> {
>> memcpy_fromio(to, from, n);
>> }
>> -#define fb_memcpy_fromfb fb_memcpy_fromfb
>> +#define fb_memcpy_fromio fb_memcpy_fromio
>> #endif
>>
>> -#ifndef fb_memcpy_tofb
>> -static inline void fb_memcpy_tofb(volatile void __iomem *to, const void *from, size_t n)
>> +#ifndef fb_memcpy_toio
>> +static inline void fb_memcpy_toio(volatile void __iomem *to, const void *from, size_t n)
>> {
>> memcpy_toio(to, from, n);
>> }
>> -#define fb_memcpy_tofb fb_memcpy_tofb
>> +#define fb_memcpy_toio fb_memcpy_toio
>> #endif
>>
>> #ifndef fb_memset
>> -static inline void fb_memset(volatile void __iomem *addr, int c, size_t n)
>> +static inline void fb_memset_io(volatile void __iomem *addr, int c, size_t n)
>> {
>> memset_io(addr, c, n);
>> }
>> -#define fb_memset fb_memset
>> +#define fb_memset fb_memset_io
>
> The static inlines wrappers does not provide any value, and could be replaced by
> direct calls to memcpy_fromio(), memcpy_toio(), memset_io().
>
> If you decide to keep the wrappers I will not hold you back, so the
> patch has my:
> Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
>
> But I prefer the direct calls without the wrappers....
At first I was also skeptical if those fb_mem*() wrappers are needed.
But Arnd mentioned that there are subtle differences between the current
code and Linux' mem*_io() functions. Keeping the wrappers might be needed.
Best regards
Thomas
>
> Sam
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
Hi Thomas,
On Wed, May 03, 2023 at 10:15:46AM +0200, Thomas Zimmermann wrote:
> Hi
>
> Am 02.05.23 um 22:08 schrieb Sam Ravnborg:
> > Hi Thomas.
> >
> > On Tue, May 02, 2023 at 03:02:23PM +0200, Thomas Zimmermann wrote:
> > > Update the names of the fb_mem*() helpers to be consistent with their
> > > regular counterparts. Hence, fb_memset() now becomes fb_memset_io(),
> > > fb_memcpy_fromfb() now becomes fb_memcpy_fromio() and fb_memcpy_tofb()
> > > becomes fb_memcpy_toio(). No functional changes.
> > >
> > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> > > ---
> > ...
> > > -#ifndef fb_memcpy_fromfb
> > > -static inline void fb_memcpy_fromfb(void *to, const volatile void __iomem *from, size_t n)
> > > +#ifndef fb_memcpy_fromio
> > > +static inline void fb_memcpy_fromio(void *to, const volatile void __iomem *from, size_t n)
> > > {
> > > memcpy_fromio(to, from, n);
> > > }
> > > -#define fb_memcpy_fromfb fb_memcpy_fromfb
> > > +#define fb_memcpy_fromio fb_memcpy_fromio
> > > #endif
> > > -#ifndef fb_memcpy_tofb
> > > -static inline void fb_memcpy_tofb(volatile void __iomem *to, const void *from, size_t n)
> > > +#ifndef fb_memcpy_toio
> > > +static inline void fb_memcpy_toio(volatile void __iomem *to, const void *from, size_t n)
> > > {
> > > memcpy_toio(to, from, n);
> > > }
> > > -#define fb_memcpy_tofb fb_memcpy_tofb
> > > +#define fb_memcpy_toio fb_memcpy_toio
> > > #endif
> > > #ifndef fb_memset
> > > -static inline void fb_memset(volatile void __iomem *addr, int c, size_t n)
> > > +static inline void fb_memset_io(volatile void __iomem *addr, int c, size_t n)
> > > {
> > > memset_io(addr, c, n);
> > > }
> > > -#define fb_memset fb_memset
> > > +#define fb_memset fb_memset_io
> >
> > The static inlines wrappers does not provide any value, and could be replaced by
> > direct calls to memcpy_fromio(), memcpy_toio(), memset_io().
> >
> > If you decide to keep the wrappers I will not hold you back, so the
> > patch has my:
> > Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
> >
> > But I prefer the direct calls without the wrappers....
>
> At first I was also skeptical if those fb_mem*() wrappers are needed. But
> Arnd mentioned that there are subtle differences between the current code
> and Linux' mem*_io() functions. Keeping the wrappers might be needed.
Saw the dialog, and agree that keeping current behaviour is the way to
go for now even if this is more code and wrappers.
Sam
@@ -153,7 +153,7 @@ static int atyfb_cursor(struct fb_info *info, struct fb_cursor *cursor)
u8 m, b;
// Clear cursor image with 1010101010...
- fb_memset(dst, 0xaa, 1024);
+ fb_memset_io(dst, 0xaa, 1024);
offset = align - width*2;
@@ -333,7 +333,7 @@ static const struct fb_var_screeninfo chipsfb_var = {
static void init_chips(struct fb_info *p, unsigned long addr)
{
- fb_memset(p->screen_base, 0, 0x100000);
+ fb_memset_io(p->screen_base, 0, 0x100000);
p->fix = chipsfb_fix;
p->fix.smem_start = addr;
@@ -804,7 +804,7 @@ fb_read(struct file *file, char __user *buf, size_t count, loff_t *ppos)
while (count) {
c = (count > PAGE_SIZE) ? PAGE_SIZE : count;
dst = buffer;
- fb_memcpy_fromfb(dst, src, c);
+ fb_memcpy_fromio(dst, src, c);
dst += c;
src += c;
@@ -881,7 +881,7 @@ fb_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
break;
}
- fb_memcpy_tofb(dst, src, c);
+ fb_memcpy_toio(dst, src, c);
dst += c;
src += c;
*ppos += c;
@@ -738,7 +738,7 @@ static int kyrofb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
info->var.bits_per_pixel);
size *= info->var.yres_virtual;
- fb_memset(info->screen_base, 0, size);
+ fb_memset_io(info->screen_base, 0, size);
if (register_framebuffer(info) < 0)
goto out_unmap;
@@ -800,7 +800,7 @@ static int __maybe_unused pvr2fb_common_init(void)
goto out_err;
}
- fb_memset(fb_info->screen_base, 0, pvr2_fix.smem_len);
+ fb_memset_io(fb_info->screen_base, 0, pvr2_fix.smem_len);
pvr2_fix.ypanstep = nopan ? 0 : 1;
pvr2_fix.ywrapstep = nowrap ? 0 : 1;
@@ -335,7 +335,7 @@ static int sst_calc_pll(const int freq, int *freq_out, struct pll_timing *t)
static void sstfb_clear_screen(struct fb_info *info)
{
/* clear screen */
- fb_memset(info->screen_base, 0, info->fix.smem_len);
+ fb_memset_io(info->screen_base, 0, info->fix.smem_len);
}
@@ -529,8 +529,8 @@ rattlerSetupPlanes(struct stifb_info *fb)
fb->id = saved_id;
for (y = 0; y < fb->info.var.yres; ++y)
- fb_memset(fb->info.screen_base + y * fb->info.fix.line_length,
- 0xff, fb->info.var.xres * fb->info.var.bits_per_pixel/8);
+ fb_memset_io(fb->info.screen_base + y * fb->info.fix.line_length,
+ 0xff, fb->info.var.xres * fb->info.var.bits_per_pixel/8);
CRX24_SET_OVLY_MASK(fb);
SETUP_FB(fb);
@@ -1117,7 +1117,7 @@ static int tdfxfb_cursor(struct fb_info *info, struct fb_cursor *cursor)
u8 *mask = (u8 *)cursor->mask;
int i;
- fb_memset(cursorbase, 0, 1024);
+ fb_memset_io(cursorbase, 0, 1024);
for (i = 0; i < cursor->image.height; i++) {
int h = 0;
@@ -108,28 +108,28 @@ static inline void fb_writeq(u64 b, volatile void __iomem *addr)
#endif
#endif
-#ifndef fb_memcpy_fromfb
-static inline void fb_memcpy_fromfb(void *to, const volatile void __iomem *from, size_t n)
+#ifndef fb_memcpy_fromio
+static inline void fb_memcpy_fromio(void *to, const volatile void __iomem *from, size_t n)
{
memcpy_fromio(to, from, n);
}
-#define fb_memcpy_fromfb fb_memcpy_fromfb
+#define fb_memcpy_fromio fb_memcpy_fromio
#endif
-#ifndef fb_memcpy_tofb
-static inline void fb_memcpy_tofb(volatile void __iomem *to, const void *from, size_t n)
+#ifndef fb_memcpy_toio
+static inline void fb_memcpy_toio(volatile void __iomem *to, const void *from, size_t n)
{
memcpy_toio(to, from, n);
}
-#define fb_memcpy_tofb fb_memcpy_tofb
+#define fb_memcpy_toio fb_memcpy_toio
#endif
#ifndef fb_memset
-static inline void fb_memset(volatile void __iomem *addr, int c, size_t n)
+static inline void fb_memset_io(volatile void __iomem *addr, int c, size_t n)
{
memset_io(addr, c, n);
}
-#define fb_memset fb_memset
+#define fb_memset fb_memset_io
#endif
#endif /* __ASM_GENERIC_FB_H_ */