Misc minor cleanups.
[seabios.git] / TODO
1 Clean up timer code.  Don't use PORT_DIAG as delay mechanism.
2
3 Disable a20 on jump to 16bit mode.
4
5 The keyboard driver should detect ctrl+alt+del and reboot the
6 machine.
7
8 Fix keyboard LEDs.
9
10 Improve option rom handling.  A real bios can copy the option roms
11 from PCI space.  Also, there is no handling for BCVs today.  Verify
12 option roms wont stomp on seabios stack and bss.
13
14 Clean up and clarify usage/scope of .bss and .data variables.
15
16 Review changes committed to coreboot, virtualbox, qemu, kvm, and bochs
17 cvs tip.
18   * bochs cvs 20081016:           -- better post resume support
19   * coreboot (r3348):    20060708 -- no noteworthy enhancements
20   * qemu (r5536):        20080603 -- has cmos smp count
21   * kvm (1a33292):       20071016 -- acpi dsdt changes, e820 vmx
22     pages, setup mtrrs, clear tsc, acpi intsrcovr table, different pci
23     irqs, smbios always uses 16 cpus, no acpi ssdt, fadt->gpe0_blk set
24   * virtualbox (r13560): 20061231 -- lots of mouse changes, logo,
25     scsi/etherboot hooks, int 1589, floppy data rate?, int19 calls
26     post
27
28 Look into ways to reduce stack usage.  Alter ISRs so that they do not
29 enable irqs.  Only call out to other bios functions after minimizing
30 stack usage.
31
32 Audit all sti/cli calls.  Audit all call16 calls to make sure flags is
33 setup properly with respect to irqs.
34
35 Audit statements where a 32bit intermediary changes meaning of a 16bit
36 comparison.
37
38 Code assumes ebda segment is static - it doesn't read 0x40e.
39
40 The __call16 code does a long jump to the interrupt trampolines - this
41 is unnecessary.
42
43 Cleanup setting of ES on GET/SET_BDA
44
45 Audit code for 16bit protected mode accesses.  Support 1ab1 from 16bit
46 protected mode.
47
48 Possibly implement 32bit pcibios support.
49
50 Allow one to select adding 32 bit code to 0xf000 or in a separate
51 location.
52
53 See if it is possible to handle interrupts while in 32bit mode.
54
55 Add a kconfig style configuration program instead of requiring users
56 to modify config.h.
57
58 Look at integrating the lgpl vgabios into tree.
59
60 Look at usb booting specs.  Look at possibly supporting usb
61 keyboard/mice.
62
63 Add a graphical boot splash screen?