}
#ifdef CONFIG_FRAMEBUFFER_SET_VESA_MODE
-static u8 vbe_get_mode_info(struct vbe_mode_info *mi)
+static u8 vbe_get_mode_info(struct vesa_state *mi)
{
u16 buffer_seg;
u16 buffer_adr;
realmode_interrupt(0x10, VESA_GET_MODE_INFO, 0x0000, mi->video_mode,
0x0000, buffer_seg, buffer_adr);
- memcpy(mi->mode_info_block, buffer, sizeof(struct vbe_mode_info));
+ memcpy(mi->mode_info_block, buffer, sizeof(struct vesa_state));
mi->valid = true;
return 0;
}
-static u8 vbe_set_mode(struct vbe_mode_info *mi)
+static u8 vbe_set_mode(struct vesa_state *mi)
{
int video_mode = mi->video_mode;
return 0;
}
-static void vbe_set_graphics(int vesa_mode, struct vbe_mode_info *mode_info)
+static void vbe_set_graphics(int vesa_mode, struct vesa_state *mode_info)
{
unsigned char *framebuffer;
#endif /* CONFIG_FRAMEBUFFER_SET_VESA_MODE */
void bios_run_on_x86(struct udevice *dev, unsigned long addr, int vesa_mode,
- struct vbe_mode_info *mode_info)
+ struct vesa_state *mode_info)
{
pci_dev_t pcidev = dm_pci_get_bdf(dev);
u32 num_dev;
vesa->phys_base_ptr = dm_pci_read_bar32(dev, 2);
gd->fb_base = vesa->phys_base_ptr;
- ret = vbe_setup_video_priv(vesa, uc_priv, plat);
+ ret = vesa_setup_video_priv(vesa, uc_priv, plat);
if (ret)
goto err;
}
static int atibios_debug_mode(BE_VGAInfo *vga_info, RMREGS *regs,
- int vesa_mode, struct vbe_mode_info *mode_info)
+ int vesa_mode, struct vesa_state *mode_info)
{
void *buffer = (void *)(M.mem_base + vbe_offset);
u16 buffer_seg = (((unsigned long)vbe_offset) >> 4) & 0xff00;
u16 buffer_adr = ((unsigned long)vbe_offset) & 0xffff;
struct vesa_mode_info *vm;
- struct vbe_info *info;
+ struct vesa_bios_ext_info *info;
const u16 *modes_bios, *ptr;
u16 *modes;
int size;
int attr;
debug("Mode %x: ", mode);
- memset(buffer, '\0', sizeof(struct vbe_mode_info));
+ memset(buffer, '\0', sizeof(struct vesa_state));
regs->e.eax = VESA_GET_MODE_INFO;
regs->e.ebx = 0;
regs->e.ecx = mode;
}
static int atibios_set_vesa_mode(RMREGS *regs, int vesa_mode,
- struct vbe_mode_info *mode_info)
+ struct vesa_state *mode_info)
{
void *buffer = (void *)(M.mem_base + vbe_offset);
u16 buffer_seg = (((unsigned long)vbe_offset) >> 4) & 0xff00;
return -ENOSYS;
}
- memset(buffer, '\0', sizeof(struct vbe_mode_info));
+ memset(buffer, '\0', sizeof(struct vesa_state));
debug("VBE: Geting info for VESA mode %#04x\n", vesa_mode);
regs->e.eax = VESA_GET_MODE_INFO;
regs->e.ecx = vesa_mode;
that all other controllers are in a disabled state.
****************************************************************************/
static void PCI_doBIOSPOST(struct udevice *pcidev, BE_VGAInfo *vga_info,
- int vesa_mode, struct vbe_mode_info *mode_info)
+ int vesa_mode, struct vesa_state *mode_info)
{
RMREGS regs;
RMSREGS sregs;
****************************************************************************/
static int PCI_postController(struct udevice *pcidev, uchar *bios_rom,
int bios_len, BE_VGAInfo *vga_info,
- int vesa_mode, struct vbe_mode_info *mode_info)
+ int vesa_mode, struct vesa_state *mode_info)
{
u32 bios_image_len;
uchar *mapped_bios;
int biosemu_run(struct udevice *pcidev, uchar *bios_rom, int bios_len,
BE_VGAInfo *vga_info, int clean_up, int vesa_mode,
- struct vbe_mode_info *mode_info)
+ struct vesa_state *mode_info)
{
/*Post all the display controller BIOS'es*/
if (!PCI_postController(pcidev, bios_rom, bios_len, vga_info,
return 0;
}
-struct vbe_mode_info mode_info;
+struct vesa_state mode_info;
void setup_video(struct screen_info *screen_info)
{
}
#ifdef CONFIG_DM_VIDEO
-int vbe_setup_video_priv(struct vesa_mode_info *vesa,
- struct video_priv *uc_priv,
- struct video_uc_plat *plat)
+int vesa_setup_video_priv(struct vesa_mode_info *vesa,
+ struct video_priv *uc_priv,
+ struct video_uc_plat *plat)
{
if (!vesa->x_resolution)
return log_msg_ret("No x resolution", -ENXIO);
return 0;
}
-int vbe_setup_video(struct udevice *dev, int (*int15_handler)(void))
+int vesa_setup_video(struct udevice *dev, int (*int15_handler)(void))
{
struct video_uc_plat *plat = dev_get_uclass_plat(dev);
struct video_priv *uc_priv = dev_get_uclass_priv(dev);
return ret;
}
- ret = vbe_setup_video_priv(&mode_info.vesa, uc_priv, plat);
+ ret = vesa_setup_video_priv(&mode_info.vesa, uc_priv, plat);
if (ret) {
if (ret == -ENFILE) {
/*
debug("%s: is_broadwell=%d\n", __func__, is_broadwell);
ret = igd_pre_init(dev, is_broadwell);
if (!ret) {
- ret = vbe_setup_video(dev, broadwell_igd_int15_handler);
+ ret = vesa_setup_video(dev, broadwell_igd_int15_handler);
if (ret)
debug("failed to run video BIOS: %d\n", ret);
}
goto err;
}
- ret = vbe_setup_video_priv(vesa, uc_priv, plat);
+ ret = vesa_setup_video_priv(vesa, uc_priv, plat);
if (ret) {
ret = log_msg_ret("setup", ret);
goto err;
if (ret)
goto err;
- ret = vbe_setup_video_priv(vesa, uc_priv, plat);
+ ret = vesa_setup_video_priv(vesa, uc_priv, plat);
if (ret)
goto err;
rev = gma_func0_init(dev);
if (rev < 0)
return rev;
- ret = vbe_setup_video(dev, int15_handler);
+ ret = vesa_setup_video(dev, int15_handler);
if (ret)
return ret;
ulong fbbase;
int ret;
- ret = vbe_setup_video(dev, NULL);
+ ret = vesa_setup_video(dev, NULL);
if (ret)
return log_ret(ret);
u8 LowMem[1536];
} BE_VGAInfo;
-struct vbe_mode_info;
+struct vesa_state;
int BootVideoCardBIOS(struct udevice *pcidev, BE_VGAInfo **pVGAInfo,
int clean_up);
/* Run a BIOS ROM natively (only supported on x86 machines) */
void bios_run_on_x86(struct udevice *dev, unsigned long addr, int vesa_mode,
- struct vbe_mode_info *mode_info);
+ struct vesa_state *mode_info);
/**
* bios_set_interrupt_handler() - Install an interrupt handler for the BIOS
int biosemu_run(struct udevice *dev, uchar *bios_rom, int bios_len,
BE_VGAInfo *vga_info, int clean_up, int vesa_mode,
- struct vbe_mode_info *mode_info);
+ struct vesa_state *mode_info);
#endif
#define _VESA_H
/* these structs are for input from and output to OF */
-struct __packed vbe_screen_info {
+struct __packed vesa_screen_info {
u8 display_type; /* 0=NONE, 1= analog, 2=digital */
u16 screen_width;
u16 screen_height;
u8 edid_block_zero[128];
};
-struct __packed vbe_screen_info_input {
+struct __packed vesa_screen_info_input {
u8 signature[4];
u16 size_reserved;
u8 monitor_number;
u8 color_depth;
};
-/* these structs only store the required a subset of the VBE-defined fields */
-struct __packed vbe_info {
+/*
+ * These structs only store the required subset of fields in Vesa BIOS
+ * Extensions
+ */
+struct __packed vesa_bios_ext_info {
char signature[4];
u16 version;
u32 oem_string_ptr;
u8 reserved[206];
};
-struct vbe_mode_info {
+struct vesa_state {
u16 video_mode;
bool valid;
union {
};
};
-struct vbe_ddc_info {
+struct vesa_ddc_info {
u8 port_number; /* i.e. monitor number */
u8 edid_transfer_time;
u8 ddc_level;
#define VESA_SET_MODE 0x4f02
#define VESA_GET_CUR_MODE 0x4f03
-extern struct vbe_mode_info mode_info;
+extern struct vesa_state mode_info;
struct video_priv;
struct video_uc_plat;
-int vbe_setup_video_priv(struct vesa_mode_info *vesa,
- struct video_priv *uc_priv,
- struct video_uc_plat *plat);
-int vbe_setup_video(struct udevice *dev, int (*int15_handler)(void));
+int vesa_setup_video_priv(struct vesa_mode_info *vesa,
+ struct video_priv *uc_priv,
+ struct video_uc_plat *plat);
+int vesa_setup_video(struct udevice *dev, int (*int15_handler)(void));
#endif