Since some people disapprove of white space cleanups mixed in regular commits
while others dislike them being extra commits, let's clean them up once and for all for the existing code. If it's ugly, let it only be ugly once :-) Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5507 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
committed by
Stefan Reinauer
parent
0e1e8065e3
commit
14e2277962
@@ -106,7 +106,7 @@ struct i386_special_regs {
|
||||
u32 FLAGS;
|
||||
};
|
||||
|
||||
/*
|
||||
/*
|
||||
* Segment registers here represent the 16 bit quantities
|
||||
* CS, DS, ES, SS.
|
||||
*/
|
||||
@@ -184,8 +184,8 @@ struct i386_segment_regs {
|
||||
#define F_ALWAYS_ON (0x0002) /* flag bits always on */
|
||||
|
||||
/*
|
||||
* Define a mask for only those flag bits we will ever pass back
|
||||
* (via PUSHF)
|
||||
* Define a mask for only those flag bits we will ever pass back
|
||||
* (via PUSHF)
|
||||
*/
|
||||
#define F_MSK (FB_CF|FB_PF|FB_AF|FB_ZF|FB_SF|FB_TF|FB_IF|FB_DF|FB_OF)
|
||||
|
||||
@@ -271,8 +271,8 @@ typedef struct {
|
||||
* Delayed flag set 3 bits (zero, signed, parity)
|
||||
* reserved 6 bits
|
||||
* interrupt # 8 bits instruction raised interrupt
|
||||
* BIOS video segregs 4 bits
|
||||
* Interrupt Pending 1 bits
|
||||
* BIOS video segregs 4 bits
|
||||
* Interrupt Pending 1 bits
|
||||
* Extern interrupt 1 bits
|
||||
* Halted 1 bits
|
||||
*/
|
||||
|
@@ -128,7 +128,7 @@ extern u32 X86API rdl(u32 addr);
|
||||
extern void X86API wrb(u32 addr, u8 val);
|
||||
extern void X86API wrw(u32 addr, u16 val);
|
||||
extern void X86API wrl(u32 addr, u32 val);
|
||||
|
||||
|
||||
#pragma pack()
|
||||
|
||||
/*--------------------- type definitions -----------------------------------*/
|
||||
@@ -175,10 +175,10 @@ void X86EMU_halt_sys(void);
|
||||
#define DEBUG_SYSINT_F 0x000200 /* bios system interrupts. */
|
||||
#define DEBUG_TRACECALL_F 0x000400
|
||||
#define DEBUG_INSTRUMENT_F 0x000800
|
||||
#define DEBUG_MEM_TRACE_F 0x001000
|
||||
#define DEBUG_IO_TRACE_F 0x002000
|
||||
#define DEBUG_MEM_TRACE_F 0x001000
|
||||
#define DEBUG_IO_TRACE_F 0x002000
|
||||
#define DEBUG_TRACECALL_REGS_F 0x004000
|
||||
#define DEBUG_DECODE_NOPRINT_F 0x008000
|
||||
#define DEBUG_DECODE_NOPRINT_F 0x008000
|
||||
#define DEBUG_SAVE_IP_CS_F 0x010000
|
||||
#define DEBUG_TRACEJMP_F 0x020000
|
||||
#define DEBUG_TRACEJMP_REGS_F 0x040000
|
||||
|
@@ -45,16 +45,16 @@ int (*intXX_handler[256])(struct eregs *regs) = { NULL };
|
||||
|
||||
static int intXX_exception_handler(struct eregs *regs)
|
||||
{
|
||||
printk(BIOS_INFO, "Oops, exception %d while executing option rom\n",
|
||||
printk(BIOS_INFO, "Oops, exception %d while executing option rom\n",
|
||||
regs->vector);
|
||||
x86_exception(regs); // Call coreboot exception handler
|
||||
x86_exception(regs); // Call coreboot exception handler
|
||||
|
||||
return 0; // Never returns?
|
||||
}
|
||||
|
||||
static int intXX_unknown_handler(struct eregs *regs)
|
||||
{
|
||||
printk(BIOS_INFO, "Unsupported software interrupt #0x%x\n",
|
||||
printk(BIOS_INFO, "Unsupported software interrupt #0x%x\n",
|
||||
regs->vector);
|
||||
|
||||
return -1;
|
||||
@@ -74,12 +74,12 @@ static void setup_interrupt_handlers(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
/* The first 16 intXX functions are not BIOS services,
|
||||
/* The first 16 intXX functions are not BIOS services,
|
||||
* but the CPU-generated exceptions ("hardware interrupts")
|
||||
*/
|
||||
for (i = 0; i < 0x10; i++)
|
||||
intXX_handler[i] = &intXX_exception_handler;
|
||||
|
||||
|
||||
/* Mark all other intXX calls as unknown first */
|
||||
for (i = 0x10; i < 0x100; i++)
|
||||
{
|
||||
@@ -133,14 +133,14 @@ static void setup_realmode_idt(void)
|
||||
}
|
||||
|
||||
/* Many option ROMs use the hard coded interrupt entry points in the
|
||||
* system bios. So install them at the known locations.
|
||||
* system bios. So install them at the known locations.
|
||||
*/
|
||||
|
||||
|
||||
/* int42 is the relocated int10 */
|
||||
write_idt_stub((void *)0xff065, 0x42);
|
||||
|
||||
/* VIA's VBIOS calls f000:f859 instead of int15 */
|
||||
write_idt_stub((void *)0xff859, 0x15);
|
||||
write_idt_stub((void *)0xff859, 0x15);
|
||||
}
|
||||
|
||||
void run_bios(struct device *dev, unsigned long addr)
|
||||
@@ -187,7 +187,7 @@ static u32 VSA_vrRead(u16 classIndex)
|
||||
"outl %%eax, %%dx\n"
|
||||
"addb $2, %%dl\n"
|
||||
"inw %%dx, %%ax\n"
|
||||
: "=a" (eax), "=b"(ebx), "=c"(ecx), "=d"(edx)
|
||||
: "=a" (eax), "=b"(ebx), "=c"(ecx), "=d"(edx)
|
||||
: "a"(classIndex)
|
||||
);
|
||||
|
||||
@@ -245,7 +245,7 @@ void do_vsmbios(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
/* interrupt_handler() is called from assembler code only,
|
||||
/* interrupt_handler() is called from assembler code only,
|
||||
* so there is no use in putting the prototype into a header file.
|
||||
*/
|
||||
int __attribute__((regparm(0))) interrupt_handler(u32 intnumber,
|
||||
@@ -308,7 +308,7 @@ int __attribute__((regparm(0))) interrupt_handler(u32 intnumber,
|
||||
// will later pop them.
|
||||
// What happens here is that we force (volatile!) changing
|
||||
// the values of the parameters of this function. We do this
|
||||
// because we know that they stay alive on the stack after
|
||||
// because we know that they stay alive on the stack after
|
||||
// we leave this function. Don't say this is bollocks.
|
||||
*(volatile u32 *)&eax = reg_info.eax;
|
||||
*(volatile u32 *)&ecx = reg_info.ecx;
|
||||
|
@@ -25,7 +25,7 @@
|
||||
|
||||
/* This is the intXX interrupt handler stub code. It gets copied
|
||||
* to the IDT and to some fixed addresses in the F segment. Before
|
||||
* the code can used, it gets patched up by the C function copying
|
||||
* the code can used, it gets patched up by the C function copying
|
||||
* it: byte 3 (the $0 in movb $0, %al) is overwritten with the int#.
|
||||
*/
|
||||
|
||||
@@ -85,11 +85,11 @@ __run_optionrom = RELOCATED(.)
|
||||
* protected mode is turned off.
|
||||
*/
|
||||
mov $0x30, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
|
||||
/* Turn off protection */
|
||||
movl %cr0, %eax
|
||||
@@ -114,9 +114,9 @@ __run_optionrom = RELOCATED(.)
|
||||
lidt __realmode_idt
|
||||
|
||||
/* Set all segments to 0x0000, ds to 0x0040 */
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov $0x40, %ax
|
||||
mov %ax, %ds
|
||||
|
||||
@@ -140,8 +140,8 @@ __run_optionrom = RELOCATED(.)
|
||||
data32 ljmp $0x10, $RELOCATED(1f)
|
||||
1:
|
||||
.code32
|
||||
movw $0x18, %ax
|
||||
mov %ax, %ds
|
||||
movw $0x18, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
@@ -185,11 +185,11 @@ __run_vsa = RELOCATED(.)
|
||||
* protected mode is turned off.
|
||||
*/
|
||||
mov $0x30, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
|
||||
/* Turn off protection */
|
||||
movl %cr0, %eax
|
||||
@@ -214,9 +214,9 @@ __run_vsa = RELOCATED(.)
|
||||
lidt __realmode_idt
|
||||
|
||||
/* Set all segments to 0x0000, ds to 0x0040 */
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov $0x40, %ax
|
||||
mov %ax, %ds
|
||||
mov %cx, %ax // restore ax
|
||||
@@ -238,8 +238,8 @@ __run_vsa = RELOCATED(.)
|
||||
data32 ljmp $0x10, $RELOCATED(1f)
|
||||
1:
|
||||
.code32
|
||||
movw $0x18, %ax
|
||||
mov %ax, %ds
|
||||
movw $0x18, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
@@ -275,17 +275,17 @@ __run_interrupt = RELOCATED(.)
|
||||
* descriptors. They will retain these configurations (limits,
|
||||
* writability, etc.) once protected mode is turned off.
|
||||
*/
|
||||
mov $0x30, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
mov $0x30, %ax
|
||||
mov %ax, %ds
|
||||
mov %ax, %es
|
||||
mov %ax, %fs
|
||||
mov %ax, %gs
|
||||
mov %ax, %ss
|
||||
|
||||
/* Turn off protected mode */
|
||||
movl %cr0, %eax
|
||||
movl %cr0, %eax
|
||||
andl $~PE, %eax
|
||||
movl %eax, %cr0
|
||||
movl %eax, %cr0
|
||||
|
||||
/* Now really going into real mode */
|
||||
data32 ljmp $0, $RELOCATED(1f)
|
||||
@@ -302,7 +302,7 @@ __run_interrupt = RELOCATED(.)
|
||||
movl %eax, %esp
|
||||
|
||||
/* Load 16-bit intXX IDT */
|
||||
xor %ax, %ax
|
||||
xor %ax, %ax
|
||||
mov %ax, %ds
|
||||
lidt __realmode_idt
|
||||
|
||||
|
@@ -202,7 +202,7 @@ int int15_handler(struct eregs *regs)
|
||||
res = 0;
|
||||
break;
|
||||
default:
|
||||
printk(BIOS_DEBUG, "Unknown INT15 function %04x!\n",
|
||||
printk(BIOS_DEBUG, "Unknown INT15 function %04x!\n",
|
||||
regs->eax & 0xffff);
|
||||
}
|
||||
|
||||
|
@@ -732,7 +732,7 @@ RETURNS:
|
||||
Value of scale * index
|
||||
|
||||
REMARKS:
|
||||
Decodes scale/index of SIB byte and returns relevant offset part of
|
||||
Decodes scale/index of SIB byte and returns relevant offset part of
|
||||
effective address.
|
||||
****************************************************************************/
|
||||
static unsigned decode_sib_si(
|
||||
|
@@ -170,7 +170,7 @@ static void x86emuOp2_rdmsr(u8 op2)
|
||||
M.x86.R_EAX = 0;
|
||||
DECODE_CLEAR_SEGOVR();
|
||||
END_OF_INSTR();
|
||||
}
|
||||
}
|
||||
|
||||
#define xorl(a,b) (((a) && !(b)) || (!(a) && (b)))
|
||||
|
||||
|
@@ -85,7 +85,7 @@ RETURNS:
|
||||
Byte value read from emulator memory.
|
||||
|
||||
REMARKS:
|
||||
Reads a byte value from the emulator memory.
|
||||
Reads a byte value from the emulator memory.
|
||||
****************************************************************************/
|
||||
u8 X86API rdb(u32 addr)
|
||||
{
|
||||
@@ -130,7 +130,7 @@ addr - Emulator memory address to read
|
||||
RETURNS:
|
||||
Long value read from emulator memory.
|
||||
REMARKS:
|
||||
Reads a long value from the emulator memory.
|
||||
Reads a long value from the emulator memory.
|
||||
****************************************************************************/
|
||||
u32 X86API rdl(u32 addr)
|
||||
{
|
||||
@@ -189,7 +189,7 @@ addr - Emulator memory address to read
|
||||
val - Value to store
|
||||
|
||||
REMARKS:
|
||||
Writes a long value to emulator memory.
|
||||
Writes a long value to emulator memory.
|
||||
****************************************************************************/
|
||||
void X86API wrl(u32 addr, u32 val)
|
||||
{
|
||||
|
@@ -75,7 +75,7 @@
|
||||
#include <xf86_ansic.h>
|
||||
#else
|
||||
#include <string.h>
|
||||
#endif
|
||||
#endif
|
||||
/*--------------------------- Inline Functions ----------------------------*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@@ -250,7 +250,7 @@ biosemu(u8 *biosmem, u32 biosmem_size, struct device * dev, unsigned long rom_ad
|
||||
X86EMU_setupMemFuncs(&my_mem_funcs);
|
||||
|
||||
//setup PMM struct in BIOS_DATA_SEGMENT, offset 0x0
|
||||
u8 pmm_length = pmm_setup(BIOS_DATA_SEGMENT, 0x0);
|
||||
u8 pmm_length = pmm_setup(BIOS_DATA_SEGMENT, 0x0);
|
||||
if (pmm_length <= 0) {
|
||||
printf ("\nYABEL: Warning: PMM Area could not be setup. PMM not available (%x)\n",
|
||||
pmm_length);
|
||||
|
@@ -38,7 +38,7 @@
|
||||
// Address, there will only be a call to this INT and a RETF
|
||||
#define PNP_INT_NUM 0xFD
|
||||
|
||||
/* array of funtion pointers to override generic interrupt handlers
|
||||
/* array of funtion pointers to override generic interrupt handlers
|
||||
* a YABEL caller can add functions to this array before calling YABEL
|
||||
* if a interrupt occurs, YABEL checks wether a function is set in
|
||||
* this array and only runs the generic interrupt handler code, if
|
||||
|
@@ -61,6 +61,6 @@ u64 get_time(void)
|
||||
"rdtsc"
|
||||
: "=a"(eax), "=d"(edx)
|
||||
: /* no inputs, no clobber */);
|
||||
act = ((u64) edx << 32) | eax;
|
||||
act = ((u64) edx << 32) | eax;
|
||||
return act;
|
||||
}
|
||||
|
@@ -19,7 +19,7 @@
|
||||
#define phandle_t p32
|
||||
#define ihandle_t p32
|
||||
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
unsigned int serv;
|
||||
int nargs;
|
||||
|
@@ -15,4 +15,4 @@
|
||||
/* TODO: check how this works in x86 */
|
||||
extern unsigned long tb_freq;
|
||||
u64 get_time(void);
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -39,7 +39,7 @@ static inline void set_ci(void) {};
|
||||
* |||-Currently unused
|
||||
* ||||-Currently unused
|
||||
* |||||-Currently unused
|
||||
* ||||||-DEBUG_PNP - Print Plug And Play access made by option rom
|
||||
* ||||||-DEBUG_PNP - Print Plug And Play access made by option rom
|
||||
* |||||||-DEBUG_DISK - Print Disk I/O related messages, currently unused
|
||||
* ||||||||-DEBUG_PMM - Print messages related to POST Memory Manager (PMM)
|
||||
* |||||||||-DEBUG_VBE - Print messages related to VESA BIOS Extension (VBE) functions
|
||||
@@ -47,7 +47,7 @@ static inline void set_ci(void) {};
|
||||
* |||||||||||-DEBUG_INTR - Print messages related to interrupt handling
|
||||
* ||||||||||||-DEBUG_CHECK_VMEM_ACCESS - Print messages related to accesse to certain areas of the virtual Memory (e.g. BDA (BIOS Data Area) or Interrupt Vectors)
|
||||
* |||||||||||||-DEBUG_MEM - Print memory access made by option rom (NOTE: this also includes accesses to fetch instructions)
|
||||
* ||||||||||||||-DEBUG_IO - Print I/O access made by option rom
|
||||
* ||||||||||||||-DEBUG_IO - Print I/O access made by option rom
|
||||
* 11000111111111 - Max Binary Value, Debug All (WARNING: - This could run for hours)
|
||||
*/
|
||||
|
||||
|
@@ -410,7 +410,7 @@ handleInt1a(void)
|
||||
M.x86.R_CL =
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_read_config8(dev, offs);
|
||||
#else
|
||||
#else
|
||||
(u8) rtas_pci_config_read(bios_device.
|
||||
puid, 1,
|
||||
bus, devfn,
|
||||
@@ -425,7 +425,7 @@ handleInt1a(void)
|
||||
M.x86.R_CX =
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_read_config16(dev, offs);
|
||||
#else
|
||||
#else
|
||||
(u16) rtas_pci_config_read(bios_device.
|
||||
puid, 2,
|
||||
bus, devfn,
|
||||
@@ -440,7 +440,7 @@ handleInt1a(void)
|
||||
M.x86.R_ECX =
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_read_config32(dev, offs);
|
||||
#else
|
||||
#else
|
||||
(u32) rtas_pci_config_read(bios_device.
|
||||
puid, 4,
|
||||
bus, devfn,
|
||||
@@ -478,7 +478,7 @@ handleInt1a(void)
|
||||
case 0xb10b:
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_write_config8(bios_device.dev, offs, M.x86.R_CL);
|
||||
#else
|
||||
#else
|
||||
rtas_pci_config_write(bios_device.puid, 1, bus,
|
||||
devfn, offs, M.x86.R_CL);
|
||||
#endif
|
||||
@@ -490,7 +490,7 @@ handleInt1a(void)
|
||||
case 0xb10c:
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_write_config16(bios_device.dev, offs, M.x86.R_CX);
|
||||
#else
|
||||
#else
|
||||
rtas_pci_config_write(bios_device.puid, 2, bus,
|
||||
devfn, offs, M.x86.R_CX);
|
||||
#endif
|
||||
@@ -502,7 +502,7 @@ handleInt1a(void)
|
||||
case 0xb10d:
|
||||
#ifdef CONFIG_PCI_OPTION_ROM_RUN_YABEL
|
||||
pci_write_config32(bios_device.dev, offs, M.x86.R_ECX);
|
||||
#else
|
||||
#else
|
||||
rtas_pci_config_write(bios_device.puid, 4, bus,
|
||||
devfn, offs, M.x86.R_ECX);
|
||||
#endif
|
||||
@@ -576,7 +576,7 @@ handleInterrupt(int intNum)
|
||||
int_handled = 1;
|
||||
break;
|
||||
case PMM_INT_NUM:
|
||||
/* the selfdefined PMM INT number, this is called by the code in PMM struct, it
|
||||
/* the selfdefined PMM INT number, this is called by the code in PMM struct, it
|
||||
* is handled by pmm_handleInt()
|
||||
*/
|
||||
pmm_handleInt();
|
||||
|
@@ -19,8 +19,8 @@
|
||||
#include "device.h"
|
||||
|
||||
/* this struct is used to remember which PMM spaces
|
||||
* have been assigned. MAX_PMM_AREAS defines how many
|
||||
* PMM areas we can assign.
|
||||
* have been assigned. MAX_PMM_AREAS defines how many
|
||||
* PMM areas we can assign.
|
||||
* All areas are assigned in PMM_CONV_SEGMENT
|
||||
*/
|
||||
typedef struct {
|
||||
@@ -37,7 +37,7 @@ static pmm_allocation_t pmm_allocation_array[MAX_PMM_AREAS];
|
||||
/* index into pmm_allocation_array */
|
||||
static u32 curr_pmm_allocation_index = 0;
|
||||
|
||||
/* This function is used to setup the PMM struct in virtual memory
|
||||
/* This function is used to setup the PMM struct in virtual memory
|
||||
* at a certain offset, the length of the PMM struct is returned */
|
||||
u8 pmm_setup(u16 segment, u16 offset)
|
||||
{
|
||||
@@ -79,7 +79,7 @@ u8 pmm_setup(u16 segment, u16 offset)
|
||||
return sizeof(pmm_information_t);
|
||||
}
|
||||
|
||||
/* handle the selfdefined interrupt, this is executed, when the PMM Entry Point
|
||||
/* handle the selfdefined interrupt, this is executed, when the PMM Entry Point
|
||||
* is executed, it must handle all PMM requests
|
||||
*/
|
||||
void pmm_handleInt()
|
||||
@@ -136,7 +136,7 @@ void pmm_handleInt()
|
||||
__func__, next_offset);
|
||||
if (length == 0) {
|
||||
/* largest possible block size requested, we have on segment
|
||||
* to allocate, so largest possible is segment size (0xFFFF)
|
||||
* to allocate, so largest possible is segment size (0xFFFF)
|
||||
* minus next_offset
|
||||
*/
|
||||
rval = 0xFFFF - next_offset;
|
||||
@@ -151,7 +151,7 @@ void pmm_handleInt()
|
||||
}
|
||||
align = 1 << lsb;
|
||||
}
|
||||
/* always align at least to paragraph (16byte) boundary
|
||||
/* always align at least to paragraph (16byte) boundary
|
||||
* hm... since the length is always in paragraphs, we cannot
|
||||
* align outside of paragraphs anyway... so this check might
|
||||
* be unnecessary...*/
|
||||
|
@@ -34,7 +34,7 @@ typedef struct {
|
||||
u8 code[3];
|
||||
} __attribute__ ((__packed__)) pmm_information_t;
|
||||
|
||||
/* This function is used to setup the PMM struct in virtual memory
|
||||
/* This function is used to setup the PMM struct in virtual memory
|
||||
* at a certain offset */
|
||||
u8 pmm_setup(u16 segment, u16 offset);
|
||||
|
||||
|
@@ -796,7 +796,7 @@ void vbe_set_graphics(void)
|
||||
|
||||
mode_info.video_mode = (1 << 14) | CONFIG_FRAMEBUFFER_VESA_MODE;
|
||||
vbe_get_mode_info(&mode_info);
|
||||
unsigned char *framebuffer =
|
||||
unsigned char *framebuffer =
|
||||
(unsigned char *) le32_to_cpu(mode_info.vesa.phys_base_ptr);
|
||||
DEBUG_PRINTF_VBE("FRAMEBUFFER: 0x%08x\n", framebuffer);
|
||||
vbe_set_mode(&mode_info);
|
||||
@@ -807,9 +807,9 @@ void vbe_set_graphics(void)
|
||||
/* Switching Intel IGD to 1MB video memory will break this. Who
|
||||
* cares. */
|
||||
// int imagesize = 1024*768*2;
|
||||
|
||||
|
||||
unsigned char *jpeg = cbfs_find_file("bootsplash.jpg", CBFS_TYPE_BOOTSPLASH);
|
||||
if (!jpeg) {
|
||||
if (!jpeg) {
|
||||
DEBUG_PRINTF_VBE("Could not find bootsplash.jpg\n");
|
||||
return;
|
||||
}
|
||||
|
Reference in New Issue
Block a user