From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44481) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ysc57-0002VZ-5v for qemu-devel@nongnu.org; Wed, 13 May 2015 15:12:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ysc52-0002W2-2l for qemu-devel@nongnu.org; Wed, 13 May 2015 15:12:37 -0400 Received: from greensocs.com ([193.104.36.180]:49183) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ysc51-0002S9-FB for qemu-devel@nongnu.org; Wed, 13 May 2015 15:12:31 -0400 From: fred.konrad@greensocs.com Date: Wed, 13 May 2015 21:11:58 +0200 Message-Id: <1431544326-13372-1-git-send-email-fred.konrad@greensocs.com> Subject: [Qemu-devel] [PATCH 0/8] Xilinx DisplayPort. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.crosthwaite@xilinx.com, mark.burton@greensocs.com, hyunk@xilinx.com, fred.konrad@greensocs.com From: KONRAD Frederic This is the implementation of the Xilinx DisplayPort and DPDMA This patch-set is rebased on Peter Crosthwaite patch-set currently on the list: http://lists.nongnu.org/archive/html/qemu-devel/2015-05/msg01302.html 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 KONRAD Frederic (7): Introduce AUX bus. i2c: implement broadcast write. console: add qemu_alloc_display_format. 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 | 23 + hw/display/Makefile.objs | 1 + hw/display/dpcd.c | 139 ++++ hw/display/dpcd.h | 72 +++ hw/display/xilinx_dp.c | 1454 ++++++++++++++++++++++++++++++++++++++++++ hw/display/xilinx_dp.h | 125 ++++ hw/dma/Makefile.objs | 1 + hw/dma/xilinx_dpdma.c | 1149 +++++++++++++++++++++++++++++++++ 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 | 421 ++++++++++++ include/hw/arm/xlnx-zynqmp.h | 4 + include/hw/aux.h | 127 ++++ include/ui/console.h | 2 + ui/console.c | 25 +- 19 files changed, 3980 insertions(+), 5 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