hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/video/fbdev/s3c-fb.c
....@@ -1,3 +1,4 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /* linux/drivers/video/s3c-fb.c
23 *
34 * Copyright 2008 Openmoko Inc.
....@@ -6,10 +7,6 @@
67 * http://armlinux.simtec.co.uk/
78 *
89 * Samsung SoC Framebuffer driver
9
- *
10
- * This program is free software; you can redistribute it and/or modify
11
- * it under the terms of the GNU General Public License version 2 as
12
- * published by the Free Software FoundatIon.
1310 */
1411
1512 #include <linux/kernel.h>
....@@ -287,7 +284,7 @@
287284 /* 666 with one bit alpha/transparency */
288285 var->transp.offset = 18;
289286 var->transp.length = 1;
290
- /* drop through */
287
+ fallthrough;
291288 case 18:
292289 var->bits_per_pixel = 32;
293290
....@@ -315,7 +312,7 @@
315312 case 25:
316313 var->transp.length = var->bits_per_pixel - 24;
317314 var->transp.offset = 24;
318
- /* drop through */
315
+ fallthrough;
319316 case 24:
320317 /* our 24bpp is unpacked, so 32bpp */
321318 var->bits_per_pixel = 32;
....@@ -812,7 +809,7 @@
812809 case FB_BLANK_POWERDOWN:
813810 wincon &= ~WINCONx_ENWIN;
814811 sfb->enabled &= ~(1 << index);
815
- /* fall through to FB_BLANK_NORMAL */
812
+ fallthrough; /* to FB_BLANK_NORMAL */
816813
817814 case FB_BLANK_NORMAL:
818815 /* disable the DMA and display 0x0 (black) */
....@@ -1038,7 +1035,7 @@
10381035 return ret;
10391036 }
10401037
1041
-static struct fb_ops s3c_fb_ops = {
1038
+static const struct fb_ops s3c_fb_ops = {
10421039 .owner = THIS_MODULE,
10431040 .fb_check_var = s3c_fb_check_var,
10441041 .fb_set_par = s3c_fb_set_par,
....@@ -1105,14 +1102,14 @@
11051102
11061103 dev_dbg(sfb->dev, "want %u bytes for window\n", size);
11071104
1108
- fbi->screen_base = dma_alloc_wc(sfb->dev, size, &map_dma, GFP_KERNEL);
1109
- if (!fbi->screen_base)
1105
+ fbi->screen_buffer = dma_alloc_wc(sfb->dev, size, &map_dma, GFP_KERNEL);
1106
+ if (!fbi->screen_buffer)
11101107 return -ENOMEM;
11111108
11121109 dev_dbg(sfb->dev, "mapped %x to %p\n",
1113
- (unsigned int)map_dma, fbi->screen_base);
1110
+ (unsigned int)map_dma, fbi->screen_buffer);
11141111
1115
- memset(fbi->screen_base, 0x0, size);
1112
+ memset(fbi->screen_buffer, 0x0, size);
11161113 fbi->fix.smem_start = map_dma;
11171114
11181115 return 0;
....@@ -1129,9 +1126,9 @@
11291126 {
11301127 struct fb_info *fbi = win->fbinfo;
11311128
1132
- if (fbi->screen_base)
1129
+ if (fbi->screen_buffer)
11331130 dma_free_wc(sfb->dev, PAGE_ALIGN(fbi->fix.smem_len),
1134
- fbi->screen_base, fbi->fix.smem_start);
1131
+ fbi->screen_buffer, fbi->fix.smem_start);
11351132 }
11361133
11371134 /**
....@@ -1189,10 +1186,8 @@
11891186
11901187 fbinfo = framebuffer_alloc(sizeof(struct s3c_fb_win) +
11911188 palette_size * sizeof(u32), sfb->dev);
1192
- if (!fbinfo) {
1193
- dev_err(sfb->dev, "failed to allocate framebuffer\n");
1194
- return -ENOENT;
1195
- }
1189
+ if (!fbinfo)
1190
+ return -ENOMEM;
11961191
11971192 windata = sfb->pdata->win[win_no];
11981193 initmode = *sfb->pdata->vtiming;
....@@ -1416,8 +1411,7 @@
14161411
14171412 pm_runtime_enable(sfb->dev);
14181413
1419
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
1420
- sfb->regs = devm_ioremap_resource(dev, res);
1414
+ sfb->regs = devm_platform_ioremap_resource(pdev, 0);
14211415 if (IS_ERR(sfb->regs)) {
14221416 ret = PTR_ERR(sfb->regs);
14231417 goto err_lcd_clk;