blob: 785d91f5fcd41345986acdd1429e09de5b1d3730 [file] [log] [blame]
Kevin O'Connor1f2c3072009-05-06 23:35:59 -04001// Rom layout and bios assembler to C interface.
2//
3// Copyright (C) 2009 Kevin O'Connor <kevin@koconnor.net>
4//
5// This file may be distributed under the terms of the GNU LGPLv3 license.
6
7
8/****************************************************************
9 * Include of 16bit C code
10 ****************************************************************/
11
12 .code16gcc
Kevin O'Connor3dba4c22011-01-29 11:26:54 -050013#include "vgaccode.16.s"
Kevin O'Connor1f2c3072009-05-06 23:35:59 -040014
Julian Pidancet7c6509c2011-12-19 05:07:55 +000015#include "config.h" // CONFIG_*
Kevin O'Connor1f2c3072009-05-06 23:35:59 -040016#include "entryfuncs.S" // ENTRY_*
17
18
19/****************************************************************
20 * Rom Header
21 ****************************************************************/
22
23 .section .rom.header
24 .global _rom_header, _rom_header_size, _rom_header_checksum
25_rom_header:
26 .word 0xaa55
27_rom_header_size:
28 .byte 0
29_rom_header_entry:
30 jmp _optionrom_entry
31_rom_header_checksum:
Kevin O'Connorc9d3c2d2010-01-01 12:53:32 -050032 .byte 0
33_rom_header_other:
Julian Pidancet7c6509c2011-12-19 05:07:55 +000034 .space 17
35_rom_header_pcidata:
36#if CONFIG_VGA_PCI == 1
37 .word rom_pci_data
38#else
39 .word 0
40#endif
41_rom_header_pnpdata:
42 .word 0
Kevin O'Connor72b5e452011-12-23 23:01:48 -050043_rom_header_other2:
44 .word 0
45_rom_header_signature:
46 .asciz "IBM"
Kevin O'Connor1f2c3072009-05-06 23:35:59 -040047
48
49/****************************************************************
50 * Entry points
51 ****************************************************************/
52
Kevin O'Connor9961f992012-01-21 11:53:44 -050053 DECLFUNC entry_104f05
54entry_104f05:
55 ENTRY_ARG vbe_104f05
56 lretw
57
Kevin O'Connor1f2c3072009-05-06 23:35:59 -040058 DECLFUNC _optionrom_entry
59_optionrom_entry:
60 ENTRY_ARG vga_post
61 lretw
62
Kevin O'Connor9f193b92009-05-16 23:31:27 -040063 DECLFUNC entry_10
64entry_10:
65 ENTRY_ARG handle_10
66 iretw