mirror of https://gitee.com/openkylin/qemu.git
vga: remove CONFIG_BOCHS_VBE
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
cc22824860
commit
a96d8bea8e
34
hw/vga.c
34
hw/vga.c
|
@ -582,7 +582,6 @@ void vga_ioport_write(void *opaque, uint32_t addr, uint32_t val)
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
static uint32_t vbe_ioport_read_index(void *opaque, uint32_t addr)
|
||||
{
|
||||
VGACommonState *s = opaque;
|
||||
|
@ -784,7 +783,6 @@ void vbe_ioport_write_data(void *opaque, uint32_t addr, uint32_t val)
|
|||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* called for accesses between 0xa0000 and 0xc0000 */
|
||||
uint32_t vga_mem_readb(VGACommonState *s, target_phys_addr_t addr)
|
||||
|
@ -1129,14 +1127,12 @@ static void vga_get_offsets(VGACommonState *s,
|
|||
uint32_t *pline_compare)
|
||||
{
|
||||
uint32_t start_addr, line_offset, line_compare;
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
|
||||
if (s->vbe_regs[VBE_DISPI_INDEX_ENABLE] & VBE_DISPI_ENABLED) {
|
||||
line_offset = s->vbe_line_offset;
|
||||
start_addr = s->vbe_start_addr;
|
||||
line_compare = 65535;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
} else {
|
||||
/* compute line_offset in bytes */
|
||||
line_offset = s->cr[VGA_CRTC_OFFSET];
|
||||
line_offset <<= 3;
|
||||
|
@ -1572,12 +1568,10 @@ static vga_draw_line_func * const vga_draw_line_table[NB_DEPTHS * VGA_DRAW_LINE_
|
|||
static int vga_get_bpp(VGACommonState *s)
|
||||
{
|
||||
int ret;
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
|
||||
if (s->vbe_regs[VBE_DISPI_INDEX_ENABLE] & VBE_DISPI_ENABLED) {
|
||||
ret = s->vbe_regs[VBE_DISPI_INDEX_BPP];
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
} else {
|
||||
ret = 0;
|
||||
}
|
||||
return ret;
|
||||
|
@ -1587,13 +1581,10 @@ static void vga_get_resolution(VGACommonState *s, int *pwidth, int *pheight)
|
|||
{
|
||||
int width, height;
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
if (s->vbe_regs[VBE_DISPI_INDEX_ENABLE] & VBE_DISPI_ENABLED) {
|
||||
width = s->vbe_regs[VBE_DISPI_INDEX_XRES];
|
||||
height = s->vbe_regs[VBE_DISPI_INDEX_YRES];
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
} else {
|
||||
width = (s->cr[VGA_CRTC_H_DISP] + 1) * 8;
|
||||
height = s->cr[VGA_CRTC_V_DISP_END] |
|
||||
((s->cr[VGA_CRTC_OVERFLOW] & 0x02) << 7) |
|
||||
|
@ -1948,14 +1939,12 @@ void vga_common_reset(VGACommonState *s)
|
|||
s->dac_8bit = 0;
|
||||
memset(s->palette, '\0', sizeof(s->palette));
|
||||
s->bank_offset = 0;
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
s->vbe_index = 0;
|
||||
memset(s->vbe_regs, '\0', sizeof(s->vbe_regs));
|
||||
s->vbe_regs[VBE_DISPI_INDEX_ID] = VBE_DISPI_ID5;
|
||||
s->vbe_start_addr = 0;
|
||||
s->vbe_line_offset = 0;
|
||||
s->vbe_bank_mask = (s->vram_size >> 16) - 1;
|
||||
#endif
|
||||
memset(s->font_offsets, '\0', sizeof(s->font_offsets));
|
||||
s->graphic_mode = -1; /* force full update */
|
||||
s->shift_control = 0;
|
||||
|
@ -2229,13 +2218,11 @@ const VMStateDescription vmstate_vga_common = {
|
|||
|
||||
VMSTATE_INT32(bank_offset, VGACommonState),
|
||||
VMSTATE_UINT8_EQUAL(is_vbe_vmstate, VGACommonState),
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
VMSTATE_UINT16(vbe_index, VGACommonState),
|
||||
VMSTATE_UINT16_ARRAY(vbe_regs, VGACommonState, VBE_DISPI_INDEX_NB),
|
||||
VMSTATE_UINT32(vbe_start_addr, VGACommonState),
|
||||
VMSTATE_UINT32(vbe_line_offset, VGACommonState),
|
||||
VMSTATE_UINT32(vbe_bank_mask, VGACommonState),
|
||||
#endif
|
||||
VMSTATE_END_OF_LIST()
|
||||
}
|
||||
};
|
||||
|
@ -2275,11 +2262,7 @@ void vga_common_init(VGACommonState *s)
|
|||
}
|
||||
s->vram_size_mb = s->vram_size >> 20;
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
s->is_vbe_vmstate = 1;
|
||||
#else
|
||||
s->is_vbe_vmstate = 0;
|
||||
#endif
|
||||
memory_region_init_ram(&s->vram, "vga.vram", s->vram_size);
|
||||
vmstate_register_ram_global(&s->vram);
|
||||
xen_register_framebuffer(&s->vram);
|
||||
|
@ -2314,7 +2297,6 @@ static const MemoryRegionPortio vga_portio_list[] = {
|
|||
PORTIO_END_OF_LIST(),
|
||||
};
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
static const MemoryRegionPortio vbe_portio_list[] = {
|
||||
{ 0, 1, 2, .read = vbe_ioport_read_index, .write = vbe_ioport_write_index },
|
||||
# ifdef TARGET_I386
|
||||
|
@ -2324,7 +2306,6 @@ static const MemoryRegionPortio vbe_portio_list[] = {
|
|||
# endif
|
||||
PORTIO_END_OF_LIST(),
|
||||
};
|
||||
#endif /* CONFIG_BOCHS_VBE */
|
||||
|
||||
/* Used by both ISA and PCI */
|
||||
MemoryRegion *vga_init_io(VGACommonState *s,
|
||||
|
@ -2334,10 +2315,7 @@ MemoryRegion *vga_init_io(VGACommonState *s,
|
|||
MemoryRegion *vga_mem;
|
||||
|
||||
*vga_ports = vga_portio_list;
|
||||
*vbe_ports = NULL;
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
*vbe_ports = vbe_portio_list;
|
||||
#endif
|
||||
|
||||
vga_mem = g_malloc(sizeof(*vga_mem));
|
||||
memory_region_init_io(vga_mem, &vga_mem_ops, s,
|
||||
|
@ -2379,7 +2357,6 @@ void vga_init(VGACommonState *s, MemoryRegion *address_space,
|
|||
|
||||
void vga_init_vbe(VGACommonState *s, MemoryRegion *system_memory)
|
||||
{
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
/* With pc-0.12 and below we map both the PCI BAR and the fixed VBE region,
|
||||
* so use an alias to avoid double-mapping the same region.
|
||||
*/
|
||||
|
@ -2390,7 +2367,6 @@ void vga_init_vbe(VGACommonState *s, MemoryRegion *system_memory)
|
|||
VBE_DISPI_LFB_PHYSICAL_ADDRESS,
|
||||
&s->vram_vbe);
|
||||
s->vbe_mapped = 1;
|
||||
#endif
|
||||
}
|
||||
/********************************************************/
|
||||
/* vga screen dump */
|
||||
|
|
28
hw/vga_int.h
28
hw/vga_int.h
|
@ -29,9 +29,6 @@
|
|||
#define ST01_V_RETRACE 0x08
|
||||
#define ST01_DISP_ENABLE 0x01
|
||||
|
||||
/* bochs VBE support */
|
||||
#define CONFIG_BOCHS_VBE
|
||||
|
||||
#define VBE_DISPI_MAX_XRES 16000
|
||||
#define VBE_DISPI_MAX_YRES 12000
|
||||
#define VBE_DISPI_MAX_BPP 32
|
||||
|
@ -65,21 +62,6 @@
|
|||
|
||||
#define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
|
||||
#define VGA_STATE_COMMON_BOCHS_VBE \
|
||||
uint16_t vbe_index; \
|
||||
uint16_t vbe_regs[VBE_DISPI_INDEX_NB]; \
|
||||
uint32_t vbe_start_addr; \
|
||||
uint32_t vbe_line_offset; \
|
||||
uint32_t vbe_bank_mask; \
|
||||
int vbe_mapped;
|
||||
#else
|
||||
|
||||
#define VGA_STATE_COMMON_BOCHS_VBE
|
||||
|
||||
#endif /* !CONFIG_BOCHS_VBE */
|
||||
|
||||
#define CH_ATTR_SIZE (160 * 100)
|
||||
#define VGA_MAX_HEIGHT 2048
|
||||
|
||||
|
@ -140,7 +122,13 @@ typedef struct VGACommonState {
|
|||
void (*get_resolution)(struct VGACommonState *s,
|
||||
int *pwidth,
|
||||
int *pheight);
|
||||
VGA_STATE_COMMON_BOCHS_VBE
|
||||
/* bochs vbe state */
|
||||
uint16_t vbe_index;
|
||||
uint16_t vbe_regs[VBE_DISPI_INDEX_NB];
|
||||
uint32_t vbe_start_addr;
|
||||
uint32_t vbe_line_offset;
|
||||
uint32_t vbe_bank_mask;
|
||||
int vbe_mapped;
|
||||
/* display refresh support */
|
||||
DisplayState *ds;
|
||||
uint32_t font_offsets[2];
|
||||
|
@ -209,12 +197,10 @@ void ppm_save(const char *filename, struct DisplaySurface *ds, Error **errp);
|
|||
|
||||
int vga_ioport_invalid(VGACommonState *s, uint32_t addr);
|
||||
|
||||
#ifdef CONFIG_BOCHS_VBE
|
||||
void vga_init_vbe(VGACommonState *s, MemoryRegion *address_space);
|
||||
uint32_t vbe_ioport_read_data(void *opaque, uint32_t addr);
|
||||
void vbe_ioport_write_index(void *opaque, uint32_t addr, uint32_t val);
|
||||
void vbe_ioport_write_data(void *opaque, uint32_t addr, uint32_t val);
|
||||
#endif
|
||||
|
||||
extern const uint8_t sr_mask[8];
|
||||
extern const uint8_t gr_mask[16];
|
||||
|
|
Loading…
Reference in New Issue