On Mon, 2022-05-02 at 01:08 -0700, Peter Delevoryas wrote: > 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 <p...@fb.com>
Oops! Thanks for catching this. The tests look good.