On Fri, Jan 31, 2020 at 1:23 AM Philippe Mathieu-Daudé
<phi...@redhat.com> wrote:
>
> On 1/31/20 1:03 AM, Aleksandar Markovic wrote:
> > From: Michael Rolnik <mrol...@gmail.com>
> >
> > Add AVR related definitions into QEMU.
> >
> > [AM: Remove word 'Atmel' from filenames and all elements of code]
> > Suggested-by: Aleksandar Markovic <aleksandar.m.m...@gmail.com>
> >
> > Signed-off-by: Michael Rolnik <mrol...@gmail.com>
> > Tested-by: Philippe Mathieu-Daudé <phi...@redhat.com>
> > Reviewed-by: Aleksandar Markovic <amarko...@wavecomp.com>
> > Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
> > Signed-off-by: Aleksandar Markovic <aleksandar.m.m...@gmail.com>
> > ---
> >   arch_init.c                |  2 ++
> >   include/disas/dis-asm.h    | 19 +++++++++++++++++++
> >   include/sysemu/arch_init.h |  1 +
> >   qapi/machine.json          |  3 ++-
> >   4 files changed, 24 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch_init.c b/arch_init.c
> > index 705d0b9..6a74116 100644
> > --- a/arch_init.c
> > +++ b/arch_init.c
> > @@ -89,6 +89,8 @@ int graphic_depth = 32;
> >   #define QEMU_ARCH QEMU_ARCH_UNICORE32
> >   #elif defined(TARGET_XTENSA)
> >   #define QEMU_ARCH QEMU_ARCH_XTENSA
> > +#elif defined(TARGET_AVR)
> > +#define QEMU_ARCH QEMU_ARCH_AVR
> >   #endif
> >
> >   const uint32_t arch_type = QEMU_ARCH;
> > diff --git a/include/disas/dis-asm.h b/include/disas/dis-asm.h
> > index f87f468..a36e658 100644
> > --- a/include/disas/dis-asm.h
> > +++ b/include/disas/dis-asm.h
> > @@ -211,6 +211,25 @@ enum bfd_architecture
> >   #define bfd_mach_m32r          0  /* backwards compatibility */
> >     bfd_arch_mn10200,    /* Matsushita MN10200 */
> >     bfd_arch_mn10300,    /* Matsushita MN10300 */
> > +  bfd_arch_avr,        /* AVR microcontrollers */
> > +#define bfd_mach_avr1       1
> > +#define bfd_mach_avr2       2
> > +#define bfd_mach_avr25      25
> > +#define bfd_mach_avr3       3
> > +#define bfd_mach_avr31      31
> > +#define bfd_mach_avr35      35
> > +#define bfd_mach_avr4       4
> > +#define bfd_mach_avr5       5
> > +#define bfd_mach_avr51      51
> > +#define bfd_mach_avr6       6
> > +#define bfd_mach_avrtiny    100
> > +#define bfd_mach_avrxmega1  101
> > +#define bfd_mach_avrxmega2  102
> > +#define bfd_mach_avrxmega3  103
> > +#define bfd_mach_avrxmega4  104
> > +#define bfd_mach_avrxmega5  105
> > +#define bfd_mach_avrxmega6  106
> > +#define bfd_mach_avrxmega7  107
>
> I think the changes in include/disas/dis-asm.h should go in patch #6
> "target/avr: Add defintions of AVR core types" where the definitions are
> used:
>
>    const char *avr_flags_to_cpu_type(uint32_t flags, const char
> *def_cpu_type)
>    {
>        switch (flags & EF_AVR_MACH) {
>        case bfd_mach_avr1:
>            return AVR_CPU_TYPE_NAME("avr1");
>

I agree.

> >     bfd_arch_cris,       /* Axis CRIS */
> >   #define bfd_mach_cris_v0_v10   255
> >   #define bfd_mach_cris_v32      32
> > diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h
> > index 62c6fe4..893df26 100644
> > --- a/include/sysemu/arch_init.h
> > +++ b/include/sysemu/arch_init.h
> > @@ -24,6 +24,7 @@ enum {
> >       QEMU_ARCH_NIOS2 = (1 << 17),
> >       QEMU_ARCH_HPPA = (1 << 18),
> >       QEMU_ARCH_RISCV = (1 << 19),
> > +    QEMU_ARCH_AVR = (1 << 20),
> >   };
> >
> >   extern const uint32_t arch_type;
> > diff --git a/qapi/machine.json b/qapi/machine.json
> > index b3d30bc..f2dc385 100644
> > --- a/qapi/machine.json
> > +++ b/qapi/machine.json
> > @@ -21,11 +21,12 @@
> >   #        is true even for "qemu-system-x86_64".
> >   #
> >   # ppcemb: dropped in 3.1
> > +# avr: since 5.0
> >   #
> >   # Since: 3.0
> >   ##
> >   { 'enum' : 'SysEmuTarget',
> > -  'data' : [ 'aarch64', 'alpha', 'arm', 'cris', 'hppa', 'i386', 'lm32',
> > +  'data' : [ 'aarch64', 'alpha', 'arm', 'avr', 'cris', 'hppa', 'i386', 
> > 'lm32',
> >                'm68k', 'microblaze', 'microblazeel', 'mips', 'mips64',
> >                'mips64el', 'mipsel', 'moxie', 'nios2', 'or1k', 'ppc',
> >                'ppc64', 'riscv32', 'riscv64', 's390x', 'sh4',
> >
>

Reply via email to