#
1f30db92 |
| 14-Jul-2022 |
Peter Delevoryas <peter@pjd.dev> |
hw/gpio/aspeed: Don't let guests modify input pins
Up until now, guests could modify input pins by overwriting the data value register. The guest OS should only be allowed to modify output pin value
hw/gpio/aspeed: Don't let guests modify input pins
Up until now, guests could modify input pins by overwriting the data value register. The guest OS should only be allowed to modify output pin values, and the QOM property setter should only be permitted to modify input pins.
This change also updates the gpio input pin test to match this expectation.
Andrew suggested this particularly refactoring here:
https://lore.kernel.org/qemu-devel/23523aa1-ba81-412b-92cc-8174faba3612@www.fastmail.com/
Suggested-by: Andrew Jeffery <andrew@aj.id.au> Signed-off-by: Peter Delevoryas <peter@pjd.dev> Fixes: 4b7f956862dc ("hw/gpio: Add basic Aspeed GPIO model for AST2400 and AST2500") Reviewed-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20220712023219.41065-3-peter@pjd.dev> Signed-off-by: Cédric Le Goater <clg@kaod.org>
show more ...
|
#
35c86423 |
| 14-Jul-2022 |
Peter Delevoryas <peter@pjd.dev> |
qtest/aspeed_gpio: Add input pin modification test
Verify the current behavior, which is that input pins can be modified by guest OS register writes.
Signed-off-by: Peter Delevoryas <peter@pjd.dev>
qtest/aspeed_gpio: Add input pin modification test
Verify the current behavior, which is that input pins can be modified by guest OS register writes.
Signed-off-by: Peter Delevoryas <peter@pjd.dev> Reviewed-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20220712023219.41065-2-peter@pjd.dev> Signed-off-by: Cédric Le Goater <clg@kaod.org>
show more ...
|
#
188052a1 |
| 25-May-2022 |
Iris Chen <irischenlj@fb.com> |
hw: m25p80: allow write_enable latch get/set
The write_enable latch property is not currently exposed. This commit makes it a modifiable property.
Signed-off-by: Iris Chen <irischenlj@fb.com> Acked
hw: m25p80: allow write_enable latch get/set
The write_enable latch property is not currently exposed. This commit makes it a modifiable property.
Signed-off-by: Iris Chen <irischenlj@fb.com> Acked-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com> Message-Id: <20220513055022.951759-1-irischenlj@fb.com> Signed-off-by: Cédric Le Goater <clg@kaod.org>
show more ...
|
#
2ec06378 |
| 02-May-2022 |
Peter Delevoryas <pdel@fb.com> |
hw/gpio/aspeed_gpio: Fix QOM pin property
I was setting gpioV4-7 to "1110" using the QOM pin property handler and noticed that lowering gpioV7 was inadvertently lowering gpioV4-6 too.
(qemu) qo
hw/gpio/aspeed_gpio: Fix QOM pin property
I was setting gpioV4-7 to "1110" using the QOM pin property handler and noticed that lowering gpioV7 was inadvertently lowering gpioV4-6 too.
(qemu) qom-set /machine/soc/gpio gpioV4 true (qemu) qom-set /machine/soc/gpio gpioV5 true (qemu) qom-set /machine/soc/gpio gpioV6 true (qemu) qom-get /machine/soc/gpio gpioV4 true (qemu) qom-set /machine/soc/gpio gpioV7 false (qemu) qom-get /machine/soc/gpio gpioV4 false
An expression in aspeed_gpio_set_pin_level was using a logical NOT operator instead of a bitwise NOT operator:
value &= !pin_mask;
The original author probably intended to make a bitwise NOT expression "~", but mistakenly used a logical NOT operator "!" instead. Some programming languages like Rust use "!" for both purposes.
Fixes: 4b7f956862dc ("hw/gpio: Add basic Aspeed GPIO model for AST2400 and AST2500") Signed-off-by: Peter Delevoryas <pdel@fb.com> Message-Id: <20220502080827.244815-1-pdel@fb.com> Signed-off-by: Cédric Le Goater <clg@kaod.org>
show more ...
|