[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V2 0/7] Xilinx DisplayPort.
From: |
fred . konrad |
Subject: |
[Qemu-devel] [PATCH V2 0/7] Xilinx DisplayPort. |
Date: |
Mon, 15 Jun 2015 17:15:36 +0200 |
From: KONRAD Frederic <address@hidden>
This is the second version of this patch-set of the implementation of the Xilinx
DisplayPort and DPDMA.
This second version took a lot of coding style fix and the blending is fixed as
well. See changes at the bottom.
First patch introduces an AUX bus needed by the DP to read the DPCD.
It's also possible to connect an I2C device on it to to I2C through AUX
commands. The drivers requires I2C broadcast write to be modeled as well which
seems to be missing currently upstream.
Details of the DPDMA part:
* DPDMA is implemented as a QEMU SYSBUS device.
* Interrupts are implemented except the axi error and fifo.
Details of the XILINX-DP:
* DP is also implemented as a QEMU SYSBUS. Multiple memory regions are used to
avoid having a single big region as there are holes in the DP memory map.
* An aux-bus has been implemented, it creates a memory map for aux slaves and
has an i2c bus (which is already implemented in QEMU).
* The normal programmable i2c clock and controller implementation is missing
from the QEMU tree so the easiest way for us was to implement a dummy-clk
driver in the kernel. It's a clock which does nothing but fakes a clock such
that the DPDMA driver works. The patch will be send separately.
* The graphic plane works on channel 3, video on channel 0 and audios on
channel 4 and 5.
Thanks,
Fred
V1 -> V2 changes:
* xlnx-zynqmp:
* Remove the dummy object_property_add_child(..).
* dpcd:
* Compile only when the ZYNQMP platform is compiled.
* Use qemu_log instead of printf.
* Compile test debug traces.
* Remove the unused current_reg.
* Remove the blank realize.
* Use dpcd_ prefixes instead of aux_ prefixes.
* Add a reset callback.
* Add the VMSD.
* Add size constraint in the MemoryRegionOps structure instead of asserting.
* Style fixes.
* aux:
* Compile only when the ZYNQMP platform is compiled.
* Remove the class init and the class for aux-slave.
* dpdma:
* Compile only when the ZYNQMP platform is compiled.
* Unify per channel macro in one, simplify the switch case.
* Use extractXX.
* Make DPDMA_GBL an or'ed register.
* dp:
* Compile only when the ZYNQMP platform is compiled.
* Don't look at the audio channel count.
* Use a third pixman plane when we do blending.
* other:
* Drop the useless "console: add qemu_alloc_display_format." patch as
suggested by Gerd.
* Rebase on current master (f3e3b083d4c266ea864ae3c83da49d4086857679).
KONRAD Frederic (6):
Introduce AUX bus.
i2c: implement broadcast write.
introduce dpcd module.
Introduce xilinx dpdma.
Introduce xilinx dp.
arm: xlnx-zynqmp: Add DisplayPort and DPDMA.
Peter Maydell (1):
hw/i2c-ddc.c: Implement DDC I2C slave
hw/arm/xlnx-zynqmp.c | 20 +
hw/display/Makefile.objs | 1 +
hw/display/dpcd.c | 151 +++++
hw/display/dpcd.h | 72 +++
hw/display/xilinx_dp.c | 1427 ++++++++++++++++++++++++++++++++++++++++++
hw/display/xilinx_dp.h | 129 ++++
hw/dma/Makefile.objs | 1 +
hw/dma/xilinx_dpdma.c | 779 +++++++++++++++++++++++
hw/dma/xilinx_dpdma.h | 71 +++
hw/i2c/Makefile.objs | 2 +-
hw/i2c/core.c | 46 +-
hw/i2c/i2c-ddc.c | 288 +++++++++
hw/i2c/i2c-ddc.h | 34 +
hw/misc/Makefile.objs | 1 +
hw/misc/aux.c | 411 ++++++++++++
include/hw/arm/xlnx-zynqmp.h | 4 +
include/hw/aux.h | 116 ++++
17 files changed, 3551 insertions(+), 2 deletions(-)
create mode 100644 hw/display/dpcd.c
create mode 100644 hw/display/dpcd.h
create mode 100644 hw/display/xilinx_dp.c
create mode 100644 hw/display/xilinx_dp.h
create mode 100644 hw/dma/xilinx_dpdma.c
create mode 100644 hw/dma/xilinx_dpdma.h
create mode 100644 hw/i2c/i2c-ddc.c
create mode 100644 hw/i2c/i2c-ddc.h
create mode 100644 hw/misc/aux.c
create mode 100644 include/hw/aux.h
--
1.9.0
- [Qemu-devel] [PATCH V2 0/7] Xilinx DisplayPort.,
fred . konrad <=
- [Qemu-devel] [PATCH V2 3/7] introduce dpcd module., fred . konrad, 2015/06/15
- [Qemu-devel] [PATCH V2 1/7] Introduce AUX bus., fred . konrad, 2015/06/15
- [Qemu-devel] [PATCH V2 7/7] arm: xlnx-zynqmp: Add DisplayPort and DPDMA., fred . konrad, 2015/06/15
- [Qemu-devel] [PATCH V2 2/7] i2c: implement broadcast write., fred . konrad, 2015/06/15
- [Qemu-devel] [PATCH V2 4/7] hw/i2c-ddc.c: Implement DDC I2C slave, fred . konrad, 2015/06/15