OSDN Git Service

drm/cirrus: Add some local 'fb' variables
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 18 Nov 2016 19:52:43 +0000 (21:52 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 14 Dec 2016 20:36:38 +0000 (22:36 +0200)
Add a local 'fb' variable to a few places to get rid of the
'crtc->primary->fb' stuff. Looks neater and helps me with my poor
coccinelle skills later.

Cc: Dave Airlie <airlied@redhat.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1479498793-31021-8-git-send-email-ville.syrjala@linux.intel.com
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/cirrus/cirrus_mode.c

index 9a4a27c..06674a9 100644 (file)
@@ -185,6 +185,7 @@ static int cirrus_crtc_mode_set(struct drm_crtc *crtc,
 {
        struct drm_device *dev = crtc->dev;
        struct cirrus_device *cdev = dev->dev_private;
+       const struct drm_framebuffer *fb = crtc->primary->fb;
        int hsyncstart, hsyncend, htotal, hdispend;
        int vtotal, vdispend;
        int tmp;
@@ -257,7 +258,7 @@ static int cirrus_crtc_mode_set(struct drm_crtc *crtc,
        sr07 = RREG8(SEQ_DATA);
        sr07 &= 0xe0;
        hdr = 0;
-       switch (crtc->primary->fb->bits_per_pixel) {
+       switch (fb->bits_per_pixel) {
        case 8:
                sr07 |= 0x11;
                break;
@@ -280,13 +281,13 @@ static int cirrus_crtc_mode_set(struct drm_crtc *crtc,
        WREG_SEQ(0x7, sr07);
 
        /* Program the pitch */
-       tmp = crtc->primary->fb->pitches[0] / 8;
+       tmp = fb->pitches[0] / 8;
        WREG_CRT(VGA_CRTC_OFFSET, tmp);
 
        /* Enable extended blanking and pitch bits, and enable full memory */
        tmp = 0x22;
-       tmp |= (crtc->primary->fb->pitches[0] >> 7) & 0x10;
-       tmp |= (crtc->primary->fb->pitches[0] >> 6) & 0x40;
+       tmp |= (fb->pitches[0] >> 7) & 0x10;
+       tmp |= (fb->pitches[0] >> 6) & 0x40;
        WREG_CRT(0x1b, tmp);
 
        /* Enable high-colour modes */