Statistics
| Branch: | Revision:

root / hw / fw_cfg.c @ c874ea97

History | View | Annotate | Download (16.1 kB)

# Date Author Comment
83c9f4ca 03/01/2013 04:01 pm Paolo Bonzini

hw: include hw header files with full paths

Done with this script:

cd hw
for i in `find . -name '*.h' | sed 's/^..//'`; do
echo '\,^#.*include.*["<]'$i'[">], s,'$i',hw/&,'
done | sed -i -f - `find . -type f`

This is so that paths remain valid as files are moved....

70db9222 01/27/2013 03:34 pm Eduardo Habkost

fw_cfg: Remove FW_CFG_MAX_CPUS from fw_cfg_init()

PC will not use max_cpus for that field, so move it outside the common
code so it can use a different value on PC.

Signed-off-by: Eduardo Habkost <>
Signed-off-by: Andreas Färber <>

9f8863eb 01/26/2013 03:23 pm Markus Armbruster

fw_cfg: Drop a few superfluous initializers

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo Ersek <>
Signed-off-by: Blue Swirl <>

d09acb9b 01/26/2013 03:23 pm Markus Armbruster

fw_cfg: Splash image loader can overrun a stack variable, fix

read_splashfile() passes the address of an int variable as size_t *
parameter to g_file_get_contents(), with a cast to gag the compiler.

No problem on machines where sizeof(size_t) == sizeof(int)....

1356b98d 01/21/2013 09:52 pm Andreas Färber

sysbus: Drop sysbus_from_qdev() cast macro

Replace by SYS_BUS_DEVICE() QOM cast macro using a scripted conversion.
Avoids the old macro creeping into new code.

Resolve a Coding Style warning in openpic code.

Signed-off-by: Andreas Färber <>...

0e7a7592 01/19/2013 12:22 pm Markus Armbruster

vl: Use size_t for sizes in get_boot_devices_list()

Code mixes uint32_t, int and size_t. Very unlikely to go wrong in
practice, but clean it up anyway.

Signed-off-by: Markus Armbruster <>
Signed-off-by: Blue Swirl <>

089da572 01/19/2013 12:22 pm Markus Armbruster

fw_cfg: Use void *, size_t instead of uint8_t *, uint32_t for blobs

Many callers pass size_t, which gets silently truncated to uint32_t.
Harmless, because all practical sizes are well below 4GiB. Clean it
up anyway. Size overflow now fails assertions.
...

44687f75 01/19/2013 12:22 pm Markus Armbruster

fw_cfg: New fw_cfg_add_string()

Signed-off-by: Markus Armbruster <>
Signed-off-by: Blue Swirl <>

4cad3867 01/19/2013 12:22 pm Markus Armbruster

fw_cfg: Dumb down fw_cfg_add_*() not to return success / failure

No caller is checking the value, so all errors get ignored, usually
silently. assert() instead.

Signed-off-by: Markus Armbruster <>
Signed-off-by: Blue Swirl <>

f6e35343 01/19/2013 12:22 pm Markus Armbruster

fw_cfg: Replace debug prints by tracepoints

Signed-off-by: Markus Armbruster <>
Signed-off-by: Blue Swirl <>

8c43a6f0 01/10/2013 11:11 pm Andreas Färber

Make all static TypeInfos const

Since 39bffca2030950ef6efe57c2fac8327a45ae1015 (qdev: register all
types natively through QEMU Object Model), TypeInfo as used in
the common, non-iterative pattern is no longer amended with information
and should therefore be const....

9c17d615 12/19/2012 09:32 am Paolo Bonzini

softmmu: move include files to include/sysemu/

Signed-off-by: Paolo Bonzini <>

1de7afc9 12/19/2012 09:32 am Paolo Bonzini

misc: move include files to include/qemu/

Signed-off-by: Paolo Bonzini <>

077805fa 12/19/2012 09:29 am Paolo Bonzini

janitor: do not rely on indirect inclusions of or from qemu-char.h

Various header files rely on qemu-char.h including qemu-config.h or
main-loop.h, but they really do not need qemu-char.h at all (particularly
interesting is the case of the block layer!). Clean this up, and also...

a8170e5e 10/23/2012 04:58 pm Avi Kivity

Rename target_phys_addr_t to hwaddr

target_phys_addr_t is unwieldly, violates the C standard (_t suffixes are
reserved) and its purpose doesn't match the name (most target_phys_addr_t
addresses are not target specific). Replace it with a finger-friendly,...

ac05f349 09/26/2012 04:05 am Amos Kong

add a boot parameter to set reboot timeout

Added an option to let qemu transfer a configuration file to bios,
"etc/boot-fail-wait", which could be specified by command
-boot reboot-timeout=T
T have a max value of 0xffff, unit is ms.

With this option, guest will wait for a given time if not find...

83f7d43a 02/15/2012 05:39 pm Andreas Färber

qom: Unify type registration

Replace device_init() with generalized type_init().

While at it, unify naming convention: type_init([$prefix_]register_types)
Also, type_init() is a function, so add preceding blank line where
necessary and don't put a semicolon after the closing brace....

39bffca2 02/03/2012 06:41 pm Anthony Liguori

qdev: register all types natively through QEMU Object Model

This was done in a mostly automated fashion. I did it in three steps and then
rebased it into a single step which avoids repeatedly touching every file in
the tree.

The first step was a sed-based addition of the parent type to the subclass...

999e12bb 01/27/2012 06:50 pm Anthony Liguori

sysbus: apic: ioapic: convert to QEMU Object Model

This converts three devices because apic and ioapic are subclasses of sysbus.
Converting subclasses independently of their base class is prohibitively hard.

Signed-off-by: Anthony Liguori <>

750ecd44 11/28/2011 03:38 pm Avi Kivity

sysbus: rename sysbus_init_mmio_region() to sysbus_init_mmio()

Signed-off-by: Avi Kivity <>

561e1827 11/24/2011 06:32 pm Avi Kivity

fw_cfg: convert to memory API

Because the new API doesn't allow overlapping regions with just different
access sizes, we have to create a new "combined" region for both control
and data, when the two share an ioport offset.

Signed-off-by: Avi Kivity <>

9477c87e 11/01/2011 06:50 pm Pavel Borzenkov

fw_cfg: Use g_file_get_contents instead of multiple fread() calls

Reviewed-by: Peter Maydell <>
Signed-off-by: Pavel Borzenkov <>
Signed-off-by: Anthony Liguori <>

962d4b28 09/04/2011 09:38 am Blue Swirl

fw_cfg: fix crash if FW_CFG_WRITE_CHANNEL is used incorrectly

Avoid a crash if the guest combines FW_CFG_WRITE_CHANNEL with
a wrong value.

Signed-off-by: Blue Swirl <>

7267c094 08/21/2011 07:01 am Anthony Liguori

Use glib memory allocation and free functions

qemu_malloc/qemu_free no longer exist after this commit.

Signed-off-by: Anthony Liguori <>

257a7375 08/05/2011 06:57 pm David Gibson

Check fread() results to avoid gcc 4.6 warnings

When compiling with gcc 4.6, some code in fw_cfg.c complains that fop_ret
is assigned but not used (which is true). However, it looks like the
meaningless assignments to fop_ret were done to suppress other gcc warnings...

3d3b8303 07/29/2011 04:25 pm wayne

showing a splash picture when start

Added options to let qemu transfer two configuration files to bios:
"bootsplash.bmp" and "etc/boot-menu-wait", which could be specified by command
-boot splash=P,splash-time=T
P is jpg/bmp file name or an absolute path, T have a max value of 0xffff, unit...
9e8dd451 07/23/2011 07:26 pm Jan Kiszka

notifier: Pass data argument to callback

This allows to pass additional information to the notifier callback
which is useful if sender and receiver do not share any other distinct
data structure.

Will be used first for the clock reset notifier.

Signed-off-by: Jan Kiszka <>...

962630f2 12/11/2010 11:32 pm Gleb Natapov

Pass boot device list to firmware.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

de1f34cb 12/11/2010 11:32 pm Gleb Natapov

Change fw_cfg_add_file() to get full file path as a parameter.

Change fw_cfg_add_file() to get full file path as a parameter instead
of building one internally. Two reasons for that. First caller may need
to know how file is named. Second this moves policy of file naming out...

2507c12a 12/11/2010 05:24 pm Alexander Graf

Add endianness as io mem parameter

As stated before, devices can be little, big or native endian. The
target endianness is not of their concern, so we need to push things
down a level.

This patch adds a parameter to cpu_register_io_memory that allows a
device to choose its endianness. For now, all devices simply choose...

3a5c16fc 06/27/2010 07:04 pm Blue Swirl

fw_cfg: convert to qdev

Convert fw_cfg to qdev.

Signed-off-by: Blue Swirl <>

66c80e75 03/14/2010 10:52 am Vagrant Cascadian

spelling typo (compatibilty) in hw/fw_cfg.c

here's a trivial patch to fix the spelling of "compatibility":

Signed-off-by: Vagrant Cascadian <>
Signed-off-by: Blue Swirl <>

b96ae2da 02/07/2010 11:15 am Blue Swirl

fw_cfg: don't use reserved _ prefix

Signed-off-by: Blue Swirl <>

de9352bc 01/11/2010 09:41 pm Gerd Hoffmann

fw_cfg: rom loader tweaks.

Changes:
- make dir argument mandatory, we allways have one anyway
(vgaroms or genroms).
- check for duplicates, skip loading if found.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

c2b5bda4 12/18/2009 07:26 pm Gerd Hoffmann

fw_cfg: make calls typesafe

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

abe147e0 12/18/2009 07:26 pm Gerd Hoffmann

fw_cfg: add API for file transfer.

This patch adds a file transfer interface to fw_cfg. Intended to be
used for passing non-pci option roms and vgabios to seabios. Namespace
is modeled after the existing cbfs filesystem support in seabios.

Reading the new FW_CFG_FILE_DIR entry returns a file list....

d05ac8fa 12/04/2009 10:44 pm Blue Swirl

Add "static" to please Sparse

Signed-off-by: Blue Swirl <>

ff06108b 11/17/2009 06:38 pm Juan Quintela

fw_cfg: change cur_offset to 32 bits

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

a01d6ef4 11/07/2009 10:55 am Blue Swirl

sparc32 (mostly): remove unneeded calls to device reset

Signed-off-by: Blue Swirl <>

c227f099 10/02/2009 12:12 am Anthony Liguori

Revert "Get rid of _t suffix"

In the very least, a change like this requires discussion on the list.

The naming convention is goofy and it causes a massive merge problem. Something
like this must be presented on the list first so people can provide input...

99a0949b 10/01/2009 09:45 pm malc

Get rid of _t suffix

Some not so obvious bits, slirp and Xen were left alone for the time
being.

Signed-off-by: malc <>

7d2edd40 09/11/2009 07:10 pm Juan Quintela

vmstate: port fw_cfg device

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

d60efc6b 08/25/2009 09:29 pm Blue Swirl

Make CPURead/WriteFunc structure 'const'

Signed-off-by: Blue Swirl <>

6be68d7e 07/27/2009 10:09 pm Jes Sorensen

Introduce -smp , maxcpus= flag to specify maximum number of CPUS.

Follow on patch will use it to determine the size of the MADT and
other BIOS tables.

Signed-off-by: Jes Sorensen <>
Signed-off-by: Anthony Liguori <>

95387491 07/16/2009 04:28 pm Jan Kiszka

Add boot menu control via command line switch

Disable the lengthy BIOS prompt for selecting a boot device by default,
but let the user reenable it via '-boot menu=on'.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Anthony Liguori <>

a08d4367 06/29/2009 10:18 pm Jan Kiszka

Revert "Introduce reset notifier order"

This reverts commit 8217606e6edb49591b4a6fd5a0d1229cebe470a9 (and
updates later added users of qemu_register_reset), we solved the
problem it originally addressed less invasively.

Signed-off-by: Jan Kiszka <>...

1eed09cb 06/16/2009 11:18 pm Avi Kivity

Remove io_index argument from cpu_register_io_memory()

The parameter is always zero except when registering the three internal
io regions (ROM, unassigned, notdirty). Remove the parameter to reduce
the API's power, thus facilitating future change.

Signed-off-by: Avi Kivity <>...

8217606e 05/22/2009 06:50 pm Jan Kiszka

Introduce reset notifier order

Add the parameter 'order' to qemu_register_reset and sort callbacks on
registration. On system reset, callbacks with lower order will be
invoked before those with higher order. Update all existing users to the
standard order 0....

993fbfdb 05/22/2009 04:54 am Anthony Liguori

Refactor how display drivers are selected

My previous commit, f92f8afebe, broke -vnc (spotted by Glauber Costa). This
is because it's necessary to tell when the no special display parameters have
been passed and default to SDL or VNC appropriately.

This refactors the display selection logic to be less complicated which has...

001faf32 05/13/2009 08:53 pm Blue Swirl

Replace gcc variadic macro extension with C99 version

Signed-off-by: Blue Swirl <>

7442511c 04/07/2009 09:22 pm blueswir1

Don't try to return result from a void function (spotted by Sparse)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7017 c046a42c-6fe2-441c-8c8c-71466251a162

487414f1 02/06/2009 12:06 am aliguori

hw: remove error handling from qemu_malloc() callers (Avi Kivity)

Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6529 c046a42c-6fe2-441c-8c8c-71466251a162

85df0de4 12/11/2008 07:30 pm blueswir1

Allow to register a callback with fw_cfg_add_callback()
fw_cfg_add_callback() checks if key has FW_CFG_WRITE_CHANNEL bit set
after masking the key with FW_CFG_ENTRY_MASK.

But as FW_CFG_ENTRY_MASK is ~(FW_CFG_WRITE_CHANNEL | FW_CFG_ARCH_LOCAL),
the bit is never set and function exits....

2bfdab63 10/04/2008 10:22 am blueswir1

Move nographic export to sysemu.h

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5414 c046a42c-6fe2-441c-8c8c-71466251a162

905fdcb5 09/18/2008 09:33 pm blueswir1

Add common keys to firmware configuration

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5260 c046a42c-6fe2-441c-8c8c-71466251a162

084a197a 09/18/2008 09:31 pm blueswir1

Add UUID to firmware configuration info (Gleb Natapov)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5259 c046a42c-6fe2-441c-8c8c-71466251a162

3cce6243 09/18/2008 09:27 pm blueswir1

Key/value based qemu<->guest firmware communication mechanism (Gleb Natapov)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5256 c046a42c-6fe2-441c-8c8c-71466251a162