-
Notifications
You must be signed in to change notification settings - Fork 1
Rebasing to 2.0
Jannik Vogel edited this page May 17, 2014
·
13 revisions
-
Changes from stock qemu which are outside of hw/xbox:
- vl.c: Added xqemu command line options [should be moved to xbox.c during development?]
- ac97.c / ac97_int.h: Comments
- ac97.c / ac97_int.h: add SO_* wherever, PI_*,PO_* and MC_* are found in a group (SO_INDEX = 7)
- ac97.c / ac97_int.h: bm_regs therefore has LAST_INDEX elements
- ac97.c / ac97_int.h: Also split the init into seperate function
- ac97.c / ac97_int.h: Moved the linkstate typedef to header for mcpx_aci
- ac97.c / ac97_int.h: iops variables must be public so the static attribute was removed
- blockdev.c:
QTAILQ_INSERT_TAIL(&drives, dinfo, next);
->drive_append()
[so Chihiro drive can be added on the fly] - blockdev.c: "locked" option added
- smbus_eeprom.c: Split init function so the address can be set freely [should be fixed upstream, already done in private gist / being tested]
- configure: replace GLX by OpenGL in various flavours
- configure: Add xbox target
- configure: Fix an original qemu bug where KVM is only compiled by target name, not target arch
- hw/ide/core.c: security stuff (
cmd_security_unlock
) for hdd added - hw/display/vga.c: VGA Overlay stuff for PVIDEO
- memory.c: Support for aliasses re-enabled after QEMU dropped that
- memory.c: DIRTY_MEMORY_NV2A_GPU*
- Somewere else?!
- Probably more I'm forgetting..
-
Based on 1.6.0 espes:
- configure needs OpenGL and Xbox sections, also fix the KVM check by looking for the arch (JayFoxRox first commits)
- AC97 requires SPIDF regs
- EGL / GLX missing
- More missing.. check xbox_bootrom_hle and slowly move stuff
-
Changes for 1.7.0:
- http://blog.alex.org.uk/2013/08/24/changes-to-qemus-timer-system/ (Script works fine)
- PCI IRQ Wrapper
-
qemu_irq_raise(d->dev.irq[0]);
->pci_irq_assert(&d->dev);
-
qemu_irq_lower(d->dev.irq[0]);
->pci_irq_deassert(&d->dev);
-
d->dev.config[PCI_INTERRUPT_PIN] = 0x01;
must be set properly !!!- Part of te PBUS writes espes was ignoring without any warning.. ;P
- Remove qemu_irq from state, still allocate for non PCI objects
-
-
https://github.com/qemu/qemu/commit/6e931878c1bde26ff594f284a6857e0d786674bc (and other commits around it)
-
le32_to_cpupu(x);
->ldl_le_p(x);
-
cpu_to_le32wu(x);
->stl_le_p(x);
-
-
DEFAULT_MACHINE_OPTIONS
->PC_DEFAULT_MACHINE_OPTIONS
- but we should probably have our own (
XBOX_DEFAULT_MACHINE_OPTIONS
) or usePC_COMMON_MACHINE_OPTIONS
which is also only boot_order like it used to be
- but we should probably have our own (
-
Changes for 2.0.0:
-
i2c_bus
->I2CBus
- Physical Memory access requires address space?
-
ldl_le_phys(x);
->ldl_le_phys(&address_space_memory, x);
-
stl_le_phys(x);
->stl_le_phys(&address_space_memory, x);
-
cpu_physical_memory_write_rom(x);
->cpu_physical_memory_write_rom(&address_space_memory, x);
-
cpu_physical_memory_write()
andcpu_physical_memory_read()
not modified - including hw/pci/pci.h works fine for
address_space_memory
but we probably should do something else
-
-
memory_region_set_client_dirty()
was removed and we should either rewrite our code OR just set all bits and not care about performance loss -
qemu_thread_create(x,y,z);
->qemu_thread_create(x,"thread-name",y,z);
-
graphic_console_init(x,y,z);
->graphic_console_init(x,0,y,z);
-
dc->no_user = 1;
->dc->cannot_instantiate_with_device_add_yet = true; /* FIXME explain why */
- Best to add a reason the line above, check commit or grep to find out how
-
k->no_hotplug = 1;
->dc->hotpluggable = false;
-
index_from_keycode()
was removed, no solution yet! xid broken -
InterfaceRequestVendor
->VendorInterfaceRequest
- memory.c no longer seems to set dirty bits in aliases? Is that a problem?
- XID is broken because
index_from_keycode
was removed. We should simply use input-legacy and switch to keyboard scancodes.- TODO: kidnap some QEMU devs, hold them hostage for a while and force them that all input systems generate at least
Q_KEY_CODE_...
events instead of some arbitrary platform crap..
- TODO: kidnap some QEMU devs, hold them hostage for a while and force them that all input systems generate at least
-
-
Unknown when:
- DeviceState Pointers should be named
dev
and notd
- Replace
init
withrealize
- DeviceState Pointers should be named
-
Changes for the future:
- Prepare for this: http://lists.gnu.org/archive/html/qemu-devel/2014-05/msg02358.html