Message ID | 20190422141156.15746-3-liq3ea@163.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hw: edu: some fixes | expand |
On 4/22/19 4:11 PM, Li Qiang wrote: > The edu spec says when address >= 0x80, the MMIO area can > be accessed by 64-bit. > > Signed-off-by: Li Qiang <liq3ea@163.com> Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com> > --- > Change since v2: > Fix an error per Phillippe's advice > > hw/misc/edu.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/hw/misc/edu.c b/hw/misc/edu.c > index 65fc32b928..33de05141f 100644 > --- a/hw/misc/edu.c > +++ b/hw/misc/edu.c > @@ -185,7 +185,11 @@ static uint64_t edu_mmio_read(void *opaque, hwaddr addr, unsigned size) > EduState *edu = opaque; > uint64_t val = ~0ULL; > > - if (size != 4) { > + if (addr < 0x80 && size != 4) { > + return val; > + } > + > + if (addr >= 0x80 && size != 4 && size != 8) { > return val; > } > >
On 22. 04. 19, 16:11, Li Qiang wrote: > The edu spec says when address >= 0x80, the MMIO area can > be accessed by 64-bit. > > Signed-off-by: Li Qiang <liq3ea@163.com> > --- > Change since v2: > Fix an error per Phillippe's advice > > hw/misc/edu.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/hw/misc/edu.c b/hw/misc/edu.c > index 65fc32b928..33de05141f 100644 > --- a/hw/misc/edu.c > +++ b/hw/misc/edu.c > @@ -185,7 +185,11 @@ static uint64_t edu_mmio_read(void *opaque, hwaddr addr, unsigned size) > EduState *edu = opaque; > uint64_t val = ~0ULL; > > - if (size != 4) { > + if (addr < 0x80 && size != 4) { > + return val; > + } > + > + if (addr >= 0x80 && size != 4 && size != 8) { > return val; > } Good catch, thanks.
diff --git a/hw/misc/edu.c b/hw/misc/edu.c index 65fc32b928..33de05141f 100644 --- a/hw/misc/edu.c +++ b/hw/misc/edu.c @@ -185,7 +185,11 @@ static uint64_t edu_mmio_read(void *opaque, hwaddr addr, unsigned size) EduState *edu = opaque; uint64_t val = ~0ULL; - if (size != 4) { + if (addr < 0x80 && size != 4) { + return val; + } + + if (addr >= 0x80 && size != 4 && size != 8) { return val; }
The edu spec says when address >= 0x80, the MMIO area can be accessed by 64-bit. Signed-off-by: Li Qiang <liq3ea@163.com> --- Change since v2: Fix an error per Phillippe's advice hw/misc/edu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)