forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-31 f70575805708cabdedea7498aaa3f710fde4d920
kernel/drivers/video/fbdev/platinumfb.c
....@@ -32,9 +32,7 @@
3232 #include <linux/nvram.h>
3333 #include <linux/of_device.h>
3434 #include <linux/of_platform.h>
35
-#include <asm/io.h>
3635 #include <asm/prom.h>
37
-#include <asm/pgtable.h>
3836
3937 #include "macmodes.h"
4038 #include "platinumfb.h"
....@@ -98,7 +96,7 @@
9896 * Interface used by the world
9997 */
10098
101
-static struct fb_ops platinumfb_ops = {
99
+static const struct fb_ops platinumfb_ops = {
102100 .owner = THIS_MODULE,
103101 .fb_check_var = platinumfb_check_var,
104102 .fb_set_par = platinumfb_set_par,
....@@ -347,23 +345,18 @@
347345
348346 sense = read_platinum_sense(pinfo);
349347 printk(KERN_INFO "platinumfb: Monitor sense value = 0x%x, ", sense);
350
- if (default_vmode == VMODE_NVRAM) {
351
-#ifdef CONFIG_NVRAM
348
+
349
+ if (IS_REACHABLE(CONFIG_NVRAM) && default_vmode == VMODE_NVRAM)
352350 default_vmode = nvram_read_byte(NV_VMODE);
353
- if (default_vmode <= 0 || default_vmode > VMODE_MAX ||
354
- !platinum_reg_init[default_vmode-1])
355
-#endif
356
- default_vmode = VMODE_CHOOSE;
357
- }
358
- if (default_vmode == VMODE_CHOOSE) {
351
+ if (default_vmode <= 0 || default_vmode > VMODE_MAX ||
352
+ !platinum_reg_init[default_vmode - 1]) {
359353 default_vmode = mac_map_monitor_sense(sense);
354
+ if (!platinum_reg_init[default_vmode - 1])
355
+ default_vmode = VMODE_640_480_60;
360356 }
361
- if (default_vmode <= 0 || default_vmode > VMODE_MAX)
362
- default_vmode = VMODE_640_480_60;
363
-#ifdef CONFIG_NVRAM
364
- if (default_cmode == CMODE_NVRAM)
357
+
358
+ if (IS_REACHABLE(CONFIG_NVRAM) && default_cmode == CMODE_NVRAM)
365359 default_cmode = nvram_read_byte(NV_CMODE);
366
-#endif
367360 if (default_cmode < CMODE_8 || default_cmode > CMODE_32)
368361 default_cmode = CMODE_8;
369362 /*
....@@ -545,10 +538,9 @@
545538 dev_info(&odev->dev, "Found Apple Platinum video hardware\n");
546539
547540 info = framebuffer_alloc(sizeof(*pinfo), &odev->dev);
548
- if (info == NULL) {
549
- dev_err(&odev->dev, "Failed to allocate fbdev !\n");
541
+ if (!info)
550542 return -ENOMEM;
551
- }
543
+
552544 pinfo = info->par;
553545
554546 if (of_address_to_resource(dp, 0, &pinfo->rsrc_reg) ||
....@@ -577,8 +569,7 @@
577569
578570 /* frame buffer - map only 4MB */
579571 pinfo->frame_buffer_phys = pinfo->rsrc_fb.start;
580
- pinfo->frame_buffer = __ioremap(pinfo->rsrc_fb.start, 0x400000,
581
- _PAGE_WRITETHRU);
572
+ pinfo->frame_buffer = ioremap_wt(pinfo->rsrc_fb.start, 0x400000);
582573 pinfo->base_frame_buffer = pinfo->frame_buffer;
583574
584575 /* registers */