qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/2] !fixup "hw/misc: Add limited support for AVR power devic


From: Alex Bennée
Subject: Re: [PATCH 1/2] !fixup "hw/misc: Add limited support for AVR power device"
Date: Fri, 31 Jan 2020 14:52:59 +0000
User-agent: mu4e 1.3.7; emacs 27.0.60

Philippe Mathieu-Daudé <address@hidden> writes:

> On Fri, Jan 31, 2020 at 12:27 PM Alex Bennée <address@hidden> wrote:
>> Philippe Mathieu-Daudé <address@hidden> writes:
>>
>> > - convert DB_PRINT() to trace-events
>> > - fix style/indentation
>> >
>> > Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
>> > ---
>> >  hw/misc/avr_power.c  | 17 +++++++++--------
>> >  hw/misc/trace-events |  4 ++++
>> >  2 files changed, 13 insertions(+), 8 deletions(-)
>> >
>> > diff --git a/hw/misc/avr_power.c b/hw/misc/avr_power.c
>> > index 598bc7279c..65ff7c4405 100644
>> > --- a/hw/misc/avr_power.c
>> > +++ b/hw/misc/avr_power.c
>> > @@ -27,9 +27,7 @@
>> >  #include "qemu/log.h"
>> >  #include "hw/qdev-properties.h"
>> >  #include "hw/irq.h"
>> > -
>> > -#define DB_PRINT(fmt, args...) /* Nothing */
>> > -/*#define DB_PRINT(fmt, args...) printf("%s: " fmt "\n", __func__, ## 
>> > args)*/
>> > +#include "trace.h"
>> >
>> >  static void avr_mask_reset(DeviceState *dev)
>> >  {
>> > @@ -48,19 +46,20 @@ static uint64_t avr_mask_read(void *opaque, hwaddr 
>> > offset, unsigned size)
>> >      assert(offset == 0);
>> >      AVRMaskState *s = opaque;
>> >
>> > +    trace_avr_power_read(s->val);
>> > +
>> >      return (uint64_t)s->val;
>> >  }
>> >
>> >  static void avr_mask_write(void *opaque, hwaddr offset,
>> > -                              uint64_t val64, unsigned size)
>> > +                           uint64_t val64, unsigned size)
>> >  {
>> >      assert(size == 1);
>> >      assert(offset == 0);
>> >      AVRMaskState *s = opaque;
>> >      uint8_t val8 = val64;
>> >
>> > -    DB_PRINT("write %d to offset %d", val8, (uint8_t)offset);
>> > -
>> > +    trace_avr_power_write(val8);
>>
>> You've dropped offset in this trace point which is probably worth
>> keeping so you track where is being written to. Same with the read.
>
> I dropped it because it is always 0x00, the register is 8bit wide. See
> below, memory_region_init_io(...,1).
> I thought about adding a "name" property so each instance can display
> the device it belongs to, but this was too invasive, so I decided to
> keep this change for later.

Ahh I did wonder (I was reviewing without applying). Might be worth
mentioning in the commit then.

Reviewed-by: Alex Bennée <address@hidden>


>
>> >      s->val = val8;
>> >      for (int i = 0; i < 8; i++) {
>> >          qemu_set_irq(s->irq[i], (val8 & (1 << i)) != 0);
>> > @@ -71,7 +70,9 @@ static const MemoryRegionOps avr_mask_ops = {
>> >      .read = avr_mask_read,
>> >      .write = avr_mask_write,
>> >      .endianness = DEVICE_NATIVE_ENDIAN,
>> > -    .impl = {.max_access_size = 1}
>> > +    .impl = {
>> > +        .max_access_size = 1,
>> > +    },
>> >  };
>> >
>> >  static void avr_mask_init(Object *dev)
>> > @@ -80,7 +81,7 @@ static void avr_mask_init(Object *dev)
>> >      SysBusDevice *busdev = SYS_BUS_DEVICE(dev);
>> >
>> >      memory_region_init_io(&s->iomem, dev, &avr_mask_ops, s, TYPE_AVR_MASK,
>> > -            0x01);
>> > +                          0x01);
>
> ^ Region has only 1 address: 0x00.
>
>> >      sysbus_init_mmio(busdev, &s->iomem);
>> >
>> >      for (int i = 0; i < 8; i++) {
>> > diff --git a/hw/misc/trace-events b/hw/misc/trace-events
>> > index 7f0f5dff3a..f716881bb1 100644
>> > --- a/hw/misc/trace-events
>> > +++ b/hw/misc/trace-events
>> > @@ -179,3 +179,7 @@ via1_rtc_cmd_pram_read(int addr, int value) "addr=%u 
>> > value=0x%02x"
>> >  via1_rtc_cmd_pram_write(int addr, int value) "addr=%u value=0x%02x"
>> >  via1_rtc_cmd_pram_sect_read(int sector, int offset, int addr, int value) 
>> > "sector=%u offset=%u addr=%d value=0x%02x"
>> >  via1_rtc_cmd_pram_sect_write(int sector, int offset, int addr, int value) 
>> > "sector=%u offset=%u addr=%d value=0x%02x"
>> > +
>> > +# avr_power.c
>> > +avr_power_read(uint8_t value) "power_reduc read value:%u"
>> > +avr_power_write(uint8_t value) "power_reduc write value:%u"
>>
>>
>> --
>> Alex Bennée
>>


-- 
Alex Bennée



reply via email to

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