[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v5 0/5] hw/arm: add initial support for Canon DIGI
From: |
Antony Pavlov |
Subject: |
Re: [Qemu-devel] [RFC v5 0/5] hw/arm: add initial support for Canon DIGIC SoC |
Date: |
Fri, 13 Sep 2013 18:37:27 +0400 |
On Sat, 7 Sep 2013 11:04:22 +0400
Antony Pavlov <address@hidden> wrote:
ping
> [RFC v5 1/5] hw/arm: add very initial support for Canon DIGIC SoC
> [RFC v5 2/5] hw/arm/digic: prepare DIGIC-based boards support
> [RFC v5 3/5] hw/arm/digic: add timer support
> [RFC v5 4/5] hw/arm/digic: add UART support
> [RFC v5 5/5] hw/arm/digic: add NOR ROM support
>
> Changes since v4:
> 1. digic.h: parent_obj: change type Object -> DeviceState
> 2. digic-uart: drop reg array
> 3. digic_boards: fix K8P3215UQB comment
> 4. Makefile: place digic stuff in own line
> 5. drop cpu-qom.h inclusion
> 6. digic.h: add private/public labels
> 7. digic.h: fix guard macro
> 8. move base address macros to digic.c
> 9. fix header comments
>
> Changes since v3:
> 1. fix typos and formatting
> 2. digic-timer: drop DPRINTF
> 3. digic-timer: fix DIGIC4_TIMER_BASE() macro
> 4. digic.c: fix max timer device string
>
> Changes since v2:
> 1. rebase over latest master;
> * pass available size to object_initialize().
> 2. digic-uart: qemu_log: use LOG_UNIMP instead LOG_GUEST_ERROR;
> 3. digic-boards: update rom image load code: introduce digic_load_rom().
>
> Changes since v1:
> 0. drop the "add ARM946E-S CPU" patch;
> 1. convert to QOM, split DIGIC SoC code and board code
> (thanks to Andreas Fa:rber, Peter Maydell and Peter Crosthwaite);
> 2. fix digic-uart (many thanks to Peter Crosthwaite
> for his comments);
> 3. digic-boards: digic4_add_k8p3215uqb_rom(): update
> rom image load code: use the '-bios' option.
>
> DIGIC is Canon Inc.'s name for a family of SoC
> for digital cameras and camcorders.
>
> See http://en.wikipedia.org/wiki/DIGIC for details.
>
> There is no publicly available specification for
> DIGIC chips. All information about DIGIC chip
> internals is based on reverse engineering efforts
> made by CHDK (http://chdk.wikia.com) and
> Magic Lantern (http://www.magiclantern.fm) projects
> contributors.
>
> Also this patch series adds initial support for Canon
> PowerShot A1100 IS compact camera (it is my only camera
> with connected UART interface). As the DIGIC-based cameras
> differences mostly are unsignificant (e.g. RAM-size,
> ROM type and size, GPIO usage) the other compact
> and DSLR cameras support can be easely added.
>
> This DIGIC support patch series is inspired
> by EOS QEMU from Magic Lantern project.
> The main differences:
> * EOS QEMU uses home-brew all-in-one monolith design;
> this patch series uses conventional qemu object-centric design;
> * EOS QEMU tries provide simplest emulation for most
> controllers inside SoC to run Magic Lantern firmware;
> this patch series provide more complete support
> only for core devices to run barebox bootloader.
> ** EOS QEMU does not support timer counting
> (this patch series emulate 1 MHz counting);
> ** EOS QEMU support DIGIC UART only for output
> character to stderr; (this patch series emulate
> introduces full blown UART interface);
> ** EOS QEMU has incomplete ROM support;
> (this patch series uses conventional qemu pflash).
>
> This initial DIGIC support can't be used to run
> the original camera firmware, but it can successfully
> run experimental version of barebox bootloader
> (see http://www.barebox.org).
>
> The last sources of barebox for PowerShot A1100 can be
> obtained here:
> https://github.com/frantony/barebox/tree/next.digic.20130829
>
> The precompiled ROM image usable with qemu can be
> obtained here:
>
> https://github.com/frantony/barebox/blob/next.digic.20130829/canon-a1100-rom1.bin
>
> This ROM image (after "dancing bit" encoding) can be run on
> real Canon A1100 camera.
>
> The short build instruction for __previous__ DIGIC barebox
> version (it can be used with more recent sources too) can
> be obtained here:
> http://lists.infradead.org/pipermail/barebox/2013-August/016007.html
--
--
Best regards,
Antony Pavlov
- [Qemu-devel] [RFC v5 0/5] hw/arm: add initial support for Canon DIGIC SoC, Antony Pavlov, 2013/09/07
- [Qemu-devel] [RFC v5 1/5] hw/arm: add very initial support for Canon DIGIC SoC, Antony Pavlov, 2013/09/07
- [Qemu-devel] [RFC v5 2/5] hw/arm/digic: prepare DIGIC-based boards support, Antony Pavlov, 2013/09/07
- [Qemu-devel] [RFC v5 3/5] hw/arm/digic: add timer support, Antony Pavlov, 2013/09/07
- [Qemu-devel] [RFC v5 4/5] hw/arm/digic: add UART support, Antony Pavlov, 2013/09/07
- [Qemu-devel] [RFC v5 5/5] hw/arm/digic: add NOR ROM support, Antony Pavlov, 2013/09/07
- Re: [Qemu-devel] [RFC v5 0/5] hw/arm: add initial support for Canon DIGIC SoC,
Antony Pavlov <=