Commit 1d3bba30 authored by Thomas Zimmermann's avatar Thomas Zimmermann

fbdev/cg14: Use initializer macro for struct fb_ops

Initialize struct fb_ops to the correct default values with the
macro FB_DEFAULT_SBUS_OPS(). Rename the ioctl and mmap callbacks
to use the infix _sbusfb_. This makes them fit the SBUS helpers'
naming pattern. Also make the driver depend on FB_SBUS_HELPERS,
which selects the correct modules.
Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: default avatarSam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230806120926.5368-6-tzimmermann@suse.de
parent 34093433
...@@ -571,9 +571,7 @@ config FB_TCX ...@@ -571,9 +571,7 @@ config FB_TCX
config FB_CG14 config FB_CG14
bool "CGfourteen (SX) support" bool "CGfourteen (SX) support"
depends on FB_SBUS depends on FB_SBUS
select FB_CFB_FILLRECT select FB_SBUS_HELPERS
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
help help
This is the frame buffer device driver for the CGfourteen frame This is the frame buffer device driver for the CGfourteen frame
buffer on Desktop SPARCsystems with the SX graphics option. buffer on Desktop SPARCsystems with the SX graphics option.
......
...@@ -30,27 +30,20 @@ ...@@ -30,27 +30,20 @@
static int cg14_setcolreg(unsigned, unsigned, unsigned, unsigned, static int cg14_setcolreg(unsigned, unsigned, unsigned, unsigned,
unsigned, struct fb_info *); unsigned, struct fb_info *);
static int cg14_mmap(struct fb_info *, struct vm_area_struct *);
static int cg14_ioctl(struct fb_info *, unsigned int, unsigned long);
static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *); static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *);
static int cg14_sbusfb_mmap(struct fb_info *info, struct vm_area_struct *vma);
static int cg14_sbusfb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg);
/* /*
* Frame buffer operations * Frame buffer operations
*/ */
static const struct fb_ops cg14_ops = { static const struct fb_ops cg14_ops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
FB_DEFAULT_SBUS_OPS(cg14),
.fb_setcolreg = cg14_setcolreg, .fb_setcolreg = cg14_setcolreg,
.fb_pan_display = cg14_pan_display, .fb_pan_display = cg14_pan_display,
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
.fb_mmap = cg14_mmap,
.fb_ioctl = cg14_ioctl,
#ifdef CONFIG_COMPAT
.fb_compat_ioctl = sbusfb_compat_ioctl,
#endif
}; };
#define CG14_MCR_INTENABLE_SHIFT 7 #define CG14_MCR_INTENABLE_SHIFT 7
...@@ -264,7 +257,7 @@ static int cg14_setcolreg(unsigned regno, ...@@ -264,7 +257,7 @@ static int cg14_setcolreg(unsigned regno,
return 0; return 0;
} }
static int cg14_mmap(struct fb_info *info, struct vm_area_struct *vma) static int cg14_sbusfb_mmap(struct fb_info *info, struct vm_area_struct *vma)
{ {
struct cg14_par *par = (struct cg14_par *) info->par; struct cg14_par *par = (struct cg14_par *) info->par;
...@@ -273,7 +266,7 @@ static int cg14_mmap(struct fb_info *info, struct vm_area_struct *vma) ...@@ -273,7 +266,7 @@ static int cg14_mmap(struct fb_info *info, struct vm_area_struct *vma)
par->iospace, vma); par->iospace, vma);
} }
static int cg14_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) static int cg14_sbusfb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg)
{ {
struct cg14_par *par = (struct cg14_par *) info->par; struct cg14_par *par = (struct cg14_par *) info->par;
struct cg14_regs __iomem *regs = par->regs; struct cg14_regs __iomem *regs = par->regs;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment