qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH for-2.5 v3 1/1] hw/misc: Add support for ADC con


From: Peter Crosthwaite
Subject: Re: [Qemu-devel] [PATCH for-2.5 v3 1/1] hw/misc: Add support for ADC controller in Xilinx Zynq 7000
Date: Tue, 3 Nov 2015 07:40:31 -0800

On Tue, Nov 3, 2015 at 6:09 AM, Peter Maydell <address@hidden> wrote:
> On 3 November 2015 at 04:25, Peter Crosthwaite
> <address@hidden> wrote:
>> From: Guenter Roeck <address@hidden>
>>
>> Add support for the Xilinx XADC core used in Zynq 7000.
>>
>> References:
>> - Zynq-7000 All Programmable SoC Technical Reference Manual
>> - 7 Series FPGAs and Zynq-7000 All Programmable SoC XADC
>>   Dual 12-Bit 1 MSPS Analog-to-Digital Converter
>>
>> Tested with Linux using QEMU machine xilinx-zynq-a9 with devicetree
>> files zynq-zc702.dtb and zynq-zc706.dtb, and kernel configuration
>> multi_v7_defconfig.
>>
>> Signed-off-by: Guenter Roeck <address@hidden>
>> [ PC changes:
>>   * Changed macro names to match TRM where possible
>>   * Made programmers model macro scheme consistent
>>   * Dropped XADC_ZYNQ_ prefix on local macros
>>   * Fix ALM field width
>>   * Update threshold-comparison interrupts in _update_ints()
>>   * factored out DFIFO pushes into helper. Renamed to "push/pop"
>>   * Changed xadc_reg to 10 bits and added OOB check.
>>   * Reduced scope of MCTL reset to just stop channel coms.
>>   * Added dummy read data to write commands
>>   * Changed _ to - seperators in string names and filenames
>>   * Dropped ------------ in header comment
>>   * Catchall'ed _update_ints() in _write handler.
>>   * Minor whitespace changes.
>> ]
>> Signed-off-by: Peter Crosthwaite <address@hidden>
>> ---
>> v3:
>>     See [PC changes] in commit message
>> v2:
>>     Use extract32()
>>     Merge zynq_xadc_reset() and _zynq_xadc_reset() into one function
>>     Use "xlnx,zynq_xadc"
>>     Move device model to include/hw/misc/zynq_xadc.h
>>     irq -> qemu_irq
>>     xadc_dfifo_depth -> xadc_dfifo_entries
>>     Dropped unnecessary comments
>>     Merged zynq_xadc_realize() into zynq_xadc_init()
>>
>>  hw/arm/xilinx_zynq.c        |   6 +
>>  hw/misc/Makefile.objs       |   1 +
>>  hw/misc/zynq-xadc.c         | 301 
>> ++++++++++++++++++++++++++++++++++++++++++++
>>  include/hw/misc/zynq-xadc.h |  46 +++++++
>>  4 files changed, 354 insertions(+)
>>  create mode 100644 hw/misc/zynq-xadc.c
>>  create mode 100644 include/hw/misc/zynq-xadc.h
>
> Hardfreeze next week, and this is definitely new feature rather than
> a bug fix, so should it really go into 2.5?

It is actually the last missing piece to unblocking both mine and
Guenters testing efforts. Mainline Linux with the stock Zynq DTBs
refuses to boot without this, so this does practically take Zynq from
non-functional to functional. The user can hack up their DTB to remove
this block, but this is a big win if we can remove that QEMU-specific
hack. On that I am calling it a bugfix.

Regards,
Peter

> (Yes, I know the original
> patch was on list before softfreeze began, but there's been a delay of
> nearly two months between v2 and v3 with the result that this would
> now be adding this feature late in softfreeze rather than early in it...)
>
> thanks
> -- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]