Statistics
| Branch: | Revision:

root / hw / serial.c @ 086cf4d3

History | View | Annotate | Download (28.9 kB)

# Date Author Comment
74475455 03/21/2011 10:23 am Paolo Bonzini

change all other clock references to use nanosecond resolution accessors

This was done with:

sed -i 's/qemu_get_clock\>/qemu_get_clock_ns/' \
$(git grep -l 'qemu_get_clock\>' )
sed -i 's/qemu_new_timer\>/qemu_new_timer_ns/' \
$(git grep -l 'qemu_new_timer\>' )...
e22cf21e 02/20/2011 11:32 am Blue Swirl

serial: refactor device creation

Turn serial_init into an inline function.

Signed-off-by: Blue Swirl <>

dee41d58 12/11/2010 11:27 pm Gleb Natapov

Keep track of ISA ports ISA device is using in qdev.

Store all io ports used by device in ISADevice structure.

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

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...

9a7c4878 09/15/2010 04:35 pm Michal Novotny

serial: Update parameters after load

This is the patch to update serial port parameters after guest is
already loaded.

Signed-off-by: Michal Novotny <>
Signed-off-by: Edgar E. Iglesias <>

46411f86 09/14/2010 11:58 am Stefan Weil

Remove wrong semicolon in macro definition

Macros normally should not end with a semicolon,
otherwise their usage results in two statements
where only one statement was expected.

Signed-off-by: Stefan Weil <>
Signed-off-by: Edgar E. Iglesias <>

b6601141 09/13/2010 03:32 pm Michal Novotny

serial: Wrap debug prints around a DPRINTF macro

Signed-off-by: Michal Novotny <>
Signed-off-by: Edgar E. Iglesias <>

0be71e32 07/06/2010 06:36 pm Alex Williamson

savevm: Add DeviceState param

When available, we'd like to be able to access the DeviceState
when registering a savevm. For buses with a get_dev_path()
function, this will allow us to create more unique savevm
id strings.

Signed-off-by: Alex Williamson <>...

666daa68 06/04/2010 04:20 pm Markus Armbruster

blockdev: Collect block device code in new blockdev.c

Anything that moves hundreds of lines out of vl.c can't be all bad.

Signed-off-by: Markus Armbruster <>
Signed-off-by: Kevin Wolf <>

1cc9f514 05/15/2010 05:32 pm Jan Kiszka

serial: Register vmstate via qdev

At least for isa-serial, we can already let qdev do the vmstate
registration for us. It just takes wrapping vmstate for the
encapsulating ISASerialState and defining the proper instance ID
aliases.

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

2d48377a 03/21/2010 09:47 pm Blue Swirl

Compile serial only once

Push TARGET_WORDS_BIGENDIAN dependency to board level.

Signed-off-by: Blue Swirl <>

cdee7bdf 03/06/2010 11:28 pm Aurelien Jarno

hw/serial.c: fix THRE interrupt clearing

UART_IIR_THRI is not a mask, but a possible value for the IIR ID.
Use UART_IIR_ID to extract this value.

Broken by commit 71e605f80313a632cc6714cde7bd240042dbdd95.

Signed-off-by: Aurelien Jarno <>

2f4f22bd 03/06/2010 09:23 pm Aurelien Jarno

hw/serial.c: fix indentation

Signed-off-by: Aurelien Jarno <>

71e605f8 02/23/2010 12:16 am Justin T. Gibbs

Fix lost serial TX interrupts. Report receive overruns.

o Implement receive overrun status. The FreeBSD uart driver
relies on this status in it's probe routine to determine the size
of the FIFO supported.
o As per the 16550 spec, do not overwrite the RX FIFO on an RX overrun....

51954d56 12/02/2009 04:57 pm Gerd Hoffmann

Fix qdev property type definition for isa serial/parallel devices

Use the correct qdev property type for these devices.

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

038eaf82 11/12/2009 07:23 pm Stefan Weil

serial: Add interface to set reference oscillator frequency

Many (most?) serial interfaces have a programmable
clock which provides the reference frequency ("baudbase").
So a fixed baudbase which is only set once can be wrong.

omap1.c is an example which could use the new interface...

c1699988 11/07/2009 10:06 am Glauber Costa

v3: don't call reset functions on cpu initialization

There is absolutely no need to call reset functions when initializing
devices. Since we are already registering them, calling qemu_system_reset()
should suffice. Actually, it is what happens when we reboot the machine,...

718b8aec 10/30/2009 03:39 pm Stefan Weil

serial: Add missing bit

Serial frames always start with a start bit.
This bit was missing in frame size calculation.

Signed-off-by: Stefan Weil <>
Signed-off-by: Anthony Liguori <>

4c18ce94 10/27/2009 07:28 pm Juan Quintela

serial: use post_load version_id field and remove pre_load function

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

e8ee28fb 10/27/2009 07:28 pm Gerd Hoffmann

isa: configure serial+parallel by index.

This patch adds a 'index' property to the isa-parallel and isa-serial
devices. This can be used to create devices with the default isa irqs
and ioports by simply specifying the index, i.e.

-device isa-serial,index=1...
5c17ca25 10/07/2009 04:54 pm Markus Armbruster

Clean up test for qdev_init() failure

Some callers test for != 0, some for < 0. Normalize to < 0.

Patchworks-ID: 35171
Signed-off-by: Markus Armbruster <>
Signed-off-by: Anthony Liguori <>

ac0be998 10/05/2009 05:32 pm Gerd Hoffmann

serial: convert isa to qdev

Everything using standard isa I/O ports and IRQ windup is considerd
being an actual isa device. That are all serial_init() users except
mips_mipssim() which seems to have a non-standard IRQ windup.

baud rate is fixed at 115200 now as no caller passed in something else....

d4bfa4d7 10/05/2009 05:32 pm Juan Quintela

vmstate: remove const from pre_save() functions

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

e59fb374 10/05/2009 05:32 pm Juan Quintela

vmstate: add version_id argument to post_load

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

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 <>

2b321d69 09/25/2009 10:51 pm Juan Quintela

Use proper typedef syntax

Why this ever compiled is a mistery to me.

Signed-off-by: Juan Quintela <>
Signed-off-by: Blue Swirl <>

2d6ee8e7 09/16/2009 09:58 pm Juergen Lock

qemu serial: lost tx irqs (affecting FreeBSD's new uart(4) driver)

Well one problem seems to be the rx condition,
... if ((s->ier & UART_IER_RDI) && (s->lsr & UART_LSR_DR))
is not enough to trigger an irq, yet still causes the following
conditions not to be checked anymore at all....

387f4a5a 09/15/2009 02:16 am Aurelien Jarno

hw/serial: don't create a char device if none is specified

When creating null devices, there is no way to ensure the unicity of
the labels. Bail out with an error message instead.

Signed-off-by: Aurelien Jarno <>

747791f1 09/11/2009 07:10 pm Juan Quintela

vmstate: port serial device

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

6ee093c9 09/11/2009 06:19 pm Juan Quintela

Unexport ticks_per_sec variable. Create get_ticks_per_sec() function

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 <>

802670e6 08/15/2009 05:27 pm Blue Swirl

PPC: clean up ppc405

Rely on the subpage system instead of the local version.
Make most functions "static".
Fix wrong parameter passed to ppc4xx_pob_reset.

Signed-off-by: Blue Swirl <>

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 <>...

40ff1624 05/22/2009 06:50 pm Jason Wessel

serial: fix lost character after sysrq

After creating an automated regression test to test the sysrq
responses while running a linux image in qemu, I found that the
simulated uart was eating the character right after the sysrq about
75% of the time.

The problem is that the qemu sets the LSR_DR (data ready) bit on a...

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....

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

b47543c4 01/18/2009 04:28 pm aurel32

serial: open a null device if the CharDriverState argument is null

Signed-off-by: Aurelien Jarno <>

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

8da3ff18 12/01/2008 08:59 pm pbrook

Change MMIO callbacks to use offsets, not absolute addresses.

Signed-off-by: Paul Brook <>

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

c9a33054 09/20/2008 04:15 am balrog

Add a comment about masking of CTI interrupt in 16550A UART.

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

5628a626 09/17/2008 03:21 am balrog

16550A UART: RHR irq enable bit also masks the Rx timeout irq.

The "Rx timeout" (aka. Character Timeout Indication) has no separate mask
bit in the IER register and according to the specs reading RHR is the only
way to reset the irq. However on the hardware (tested on OMAP2 UART which...

53e65600 08/12/2008 04:22 pm aliguori

serial: Always update iir, even when ier is empty (Samuel Thibault)

This fixes installation of Windows XP.

Signed-off-by: Samuel Thibault <>
Signed-off-by: Anthony Liguori <>

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

81174dae 08/11/2008 05:17 pm aliguori

Upgrade emulated UART to 16550A (Stefano Stabellini)

This patch upgrades the emulated UART to 16550A, the code comes from
xen-unstable. The main improvement was introduced with the following patch and
subsequent email thread:

http://lists.xensource.com/archives/html/xen-devel/2007-12/msg00129.html...

b6cd0ea1 05/05/2008 12:42 am aurel32

8250: Customized base baudrate

(Jan Kiszka)

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

6936bfe5 05/05/2008 12:42 am aurel32

8250: throttle TX-completion IRQs

(Jan Kiszka)

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

b2a5160c 02/10/2008 03:40 pm balrog

Add serial loopback mode (patch from Hervé Poussineau).

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

bd9bdce6 11/25/2007 02:55 am balrog

Add input buffer to mux chr (patch by Tristan Gingold).

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

87ecb68b 11/17/2007 07:14 pm pbrook

Break up vl.h.

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

3b46e624 09/17/2007 11:09 am ths

find -type f | xargs sed -i 's/[\t ]*$//g' # Yes, again. Note the star in the regex.

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

5fafdf24 09/17/2007 12:08 am ths

find -type f | xargs sed -i 's/[\t ]$//g' # on most files

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

71db710f 06/08/2007 07:45 pm blueswir1

Fix incorrect target_ulong use in hw devices

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

e918ee04 06/06/2007 07:28 pm ths

Big endian byte swap for serial mmapped interface.

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

d537cf6c 04/07/2007 09:14 pm pbrook

Unify IRQ handling.

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

a4bc3afc 03/31/2007 07:54 pm ths

Malta CBUS UART support.

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

e5b0bc44 01/28/2007 01:46 am pbrook

Rearrange char event handlers to fix CHR_EVENT_RESET.

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

508d92d0 08/26/2006 09:00 pm bellard

16 bit divider

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

3e749fe1 04/12/2006 11:42 pm bellard

simulate a null modem cable

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

e5d13e2f 11/23/2005 11:11 pm bellard

more generic serial port (initial patch by Jocelyn Mayer)

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

2122c51a 11/11/2005 01:58 am bellard

char dev ioctls

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

f8d179e3 11/09/2005 12:30 am bellard

use host serial port

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

8738a8d0 11/06/2005 05:48 pm bellard

serial load/save VM support (Vincent Pelletier)

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

60e336db 08/25/2004 12:55 am bellard

serial interrupt fix (Hampa Hug)

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

82c643ff 07/14/2004 08:28 pm bellard

char device support

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

52302d72 04/08/2004 12:01 am bellard

fix the no device case

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

67b915a5 04/01/2004 02:37 am bellard

win32 port (initial patch by kazu)

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

b0a21b53 03/31/2004 09:58 pm bellard

use new timer API

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

b41a2cd1 03/14/2004 11:46 pm bellard

io port API change

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

80cabfad 03/14/2004 02:20 pm bellard

separated more devices from emulator

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