aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/stifb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/stifb.c')
-rw-r--r--drivers/video/stifb.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/drivers/video/stifb.c b/drivers/video/stifb.c
index fbb17332afd7..83cd76ca0265 100644
--- a/drivers/video/stifb.c
+++ b/drivers/video/stifb.c
@@ -73,13 +73,8 @@
73#include "sticore.h" 73#include "sticore.h"
74 74
75/* REGION_BASE(fb_info, index) returns the virtual address for region <index> */ 75/* REGION_BASE(fb_info, index) returns the virtual address for region <index> */
76#ifdef __LP64__ 76#define REGION_BASE(fb_info, index) \
77 #define REGION_BASE(fb_info, index) \ 77 F_EXTEND(fb_info->sti->glob_cfg->region_ptrs[index])
78 (fb_info->sti->glob_cfg->region_ptrs[index] | 0xffffffff00000000)
79#else
80 #define REGION_BASE(fb_info, index) \
81 fb_info->sti->glob_cfg->region_ptrs[index]
82#endif
83 78
84#define NGLEDEVDEPROM_CRT_REGION 1 79#define NGLEDEVDEPROM_CRT_REGION 1
85 80
@@ -1250,12 +1245,10 @@ stifb_init_fb(struct sti_struct *sti, int bpp_pref)
1250 memset(&fb->ngle_rom, 0, sizeof(fb->ngle_rom)); 1245 memset(&fb->ngle_rom, 0, sizeof(fb->ngle_rom));
1251 if ((fb->sti->regions_phys[0] & 0xfc000000) == 1246 if ((fb->sti->regions_phys[0] & 0xfc000000) ==
1252 (fb->sti->regions_phys[2] & 0xfc000000)) 1247 (fb->sti->regions_phys[2] & 0xfc000000))
1253 sti_rom_address = fb->sti->regions_phys[0]; 1248 sti_rom_address = F_EXTEND(fb->sti->regions_phys[0]);
1254 else 1249 else
1255 sti_rom_address = fb->sti->regions_phys[1]; 1250 sti_rom_address = F_EXTEND(fb->sti->regions_phys[1]);
1256#ifdef __LP64__ 1251
1257 sti_rom_address |= 0xffffffff00000000;
1258#endif
1259 fb->deviceSpecificConfig = gsc_readl(sti_rom_address); 1252 fb->deviceSpecificConfig = gsc_readl(sti_rom_address);
1260 if (IS_24_DEVICE(fb)) { 1253 if (IS_24_DEVICE(fb)) {
1261 if (bpp_pref == 8 || bpp_pref == 32) 1254 if (bpp_pref == 8 || bpp_pref == 32)