projects
/
oweals
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rockchip: move common function from board-file to rk3036-board.c
[oweals/u-boot.git]
/
arch
/
x86
/
lib
/
bios.c
diff --git
a/arch/x86/lib/bios.c
b/arch/x86/lib/bios.c
index 42853489fb5ab76d4efbdd670a75c299ddb6727c..9324bdb83e864eaa2c1e9c331e2a45a9a7ec473d 100644
(file)
--- a/
arch/x86/lib/bios.c
+++ b/
arch/x86/lib/bios.c
@@
-207,12
+207,14
@@
static u8 vbe_get_mode_info(struct vbe_mode_info *mi)
static u8 vbe_set_mode(struct vbe_mode_info *mi)
{
static u8 vbe_set_mode(struct vbe_mode_info *mi)
{
- debug("VBE: Setting VESA mode %#04x\n", mi->video_mode);
+ int video_mode = mi->video_mode;
+
+ debug("VBE: Setting VESA mode %#04x\n", video_mode);
/* request linear framebuffer mode */
/* request linear framebuffer mode */
-
mi->
video_mode |= (1 << 14);
+ video_mode |= (1 << 14);
/* don't clear the framebuffer, we do that later */
/* don't clear the framebuffer, we do that later */
-
mi->
video_mode |= (1 << 15);
- realmode_interrupt(0x10, VESA_SET_MODE,
mi->
video_mode,
+ video_mode |= (1 << 15);
+ realmode_interrupt(0x10, VESA_SET_MODE, video_mode,
0x0000, 0x0000, 0x0000, 0x0000);
return 0;
0x0000, 0x0000, 0x0000, 0x0000);
return 0;
@@
-236,12
+238,14
@@
static void vbe_set_graphics(int vesa_mode, struct vbe_mode_info *mode_info)
return;
}
return;
}
+ mode_info->video_mode &= 0x3ff;
vbe_set_mode(mode_info);
}
vbe_set_mode(mode_info);
}
-void bios_run_on_x86(
pci_dev_t pci
dev, unsigned long addr, int vesa_mode,
+void bios_run_on_x86(
struct udevice *
dev, unsigned long addr, int vesa_mode,
struct vbe_mode_info *mode_info)
{
struct vbe_mode_info *mode_info)
{
+ pci_dev_t pcidev = dm_pci_get_bdf(dev);
u32 num_dev;
num_dev = PCI_BUS(pcidev) << 8 | PCI_DEV(pcidev) << 3 |
u32 num_dev;
num_dev = PCI_BUS(pcidev) << 8 | PCI_DEV(pcidev) << 3 |