qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH for-9.0] tests/qtest: Fix STM32L4x5 GPIO test on 32-bit


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH for-9.0] tests/qtest: Fix STM32L4x5 GPIO test on 32-bit
Date: Fri, 29 Mar 2024 13:50:06 +0100
User-agent: Mozilla Thunderbird

Hi Cédric, Thomas,

On 29/3/24 10:27, Cédric Le Goater wrote:
The test mangles the GPIO address and the pin number in the
qtest_add_data_func data parameter. Doing so, it assumes that the host
pointer size is always 64-bit, which breaks on 32-bit :

../tests/qtest/stm32l4x5_gpio-test.c: In function ‘test_gpio_output_mode’:
../tests/qtest/stm32l4x5_gpio-test.c:272:25: error: cast from pointer to 
integer of different size [-Werror=pointer-to-int-cast]
   272 |     unsigned int pin = ((uint64_t)data) & 0xF;
       |                         ^
../tests/qtest/stm32l4x5_gpio-test.c:273:22: error: cast from pointer to 
integer of different size [-Werror=pointer-to-int-cast]
   273 |     uint32_t gpio = ((uint64_t)data) >> 32;
       |                      ^

Any clue why this isn't this covered by CI?


To fix, improve the mangling of the GPIO address and pin number fields
by using GPIO_SIZE so that the resulting value fits in a 32-bit pointer.
While at it, include some helpers to hide the details.

Cc: Arnaud Minier <arnaud.minier@telecom-paris.fr>
Cc: Inès Varhol <ines.varhol@telecom-paris.fr>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
  tests/qtest/stm32l4x5_gpio-test.c | 59 ++++++++++++++++++-------------
  1 file changed, 35 insertions(+), 24 deletions(-)




reply via email to

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