[Qemu-devel] [PATCH 06/13] imx25-pdk: create ds1338 for qtest inside the test

Paolo Bonzini posted 13 patches 6 years, 10 months ago
Maintainers: Paolo Bonzini <pbonzini@redhat.com>, Peter Maydell <peter.maydell@linaro.org>, Thomas Huth <thuth@redhat.com>, Jean-Christophe Dubois <jcd@tribudubois.net>, Laurent Vivier <lvivier@redhat.com>
[Qemu-devel] [PATCH 06/13] imx25-pdk: create ds1338 for qtest inside the test
Posted by Paolo Bonzini 6 years, 10 months ago
There is no need to have a test device created by the board.
Instead, create it in the qtest so that we will be able to run
it on other boards too.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 hw/arm/imx25_pdk.c  | 9 ---------
 tests/ds1338-test.c | 2 +-
 2 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c
index 9f3ee14739..65e1768663 100644
--- a/hw/arm/imx25_pdk.c
+++ b/hw/arm/imx25_pdk.c
@@ -132,15 +132,6 @@ static void imx25_pdk_init(MachineState *machine)
      */
     if (!qtest_enabled()) {
         arm_load_kernel(&s->soc.cpu, &imx25_pdk_binfo);
-    } else {
-        /*
-         * This I2C device doesn't exist on the real board.
-         * We add it here (only on qtest usage) to be able to do a bit
-         * of simple qtest. See "make check" for details.
-         */
-        i2c_create_slave((I2CBus *)qdev_get_child_bus(DEVICE(&s->soc.i2c[0]),
-                                                      "i2c-bus.0"),
-                         "ds1338", 0x68);
     }
 }
 
diff --git a/tests/ds1338-test.c b/tests/ds1338-test.c
index 88f829f241..bd72a159cb 100644
--- a/tests/ds1338-test.c
+++ b/tests/ds1338-test.c
@@ -54,7 +54,7 @@ int main(int argc, char **argv)
 
     g_test_init(&argc, &argv, NULL);
 
-    s = qtest_start("-display none -machine imx25-pdk");
+    s = qtest_start("-display none -machine imx25-pdk -device ds1338,address=0x68");
     i2c = imx_i2c_create(s, IMX25_I2C_0_BASE);
     addr = DS1338_ADDR;
 
-- 
2.20.1



Re: [Qemu-devel] [PATCH 06/13] imx25-pdk: create ds1338 for qtest inside the test
Posted by Thomas Huth 6 years, 10 months ago
On 18/03/2019 18.15, Paolo Bonzini wrote:
> There is no need to have a test device created by the board.
> Instead, create it in the qtest so that we will be able to run
> it on other boards too.
> 
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  hw/arm/imx25_pdk.c  | 9 ---------
>  tests/ds1338-test.c | 2 +-
>  2 files changed, 1 insertion(+), 10 deletions(-)
> 
> diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c
> index 9f3ee14739..65e1768663 100644
> --- a/hw/arm/imx25_pdk.c
> +++ b/hw/arm/imx25_pdk.c
> @@ -132,15 +132,6 @@ static void imx25_pdk_init(MachineState *machine)
>       */
>      if (!qtest_enabled()) {
>          arm_load_kernel(&s->soc.cpu, &imx25_pdk_binfo);
> -    } else {
> -        /*
> -         * This I2C device doesn't exist on the real board.
> -         * We add it here (only on qtest usage) to be able to do a bit
> -         * of simple qtest. See "make check" for details.
> -         */
> -        i2c_create_slave((I2CBus *)qdev_get_child_bus(DEVICE(&s->soc.i2c[0]),
> -                                                      "i2c-bus.0"),
> -                         "ds1338", 0x68);
>      }
>  }
>  
> diff --git a/tests/ds1338-test.c b/tests/ds1338-test.c
> index 88f829f241..bd72a159cb 100644
> --- a/tests/ds1338-test.c
> +++ b/tests/ds1338-test.c
> @@ -54,7 +54,7 @@ int main(int argc, char **argv)
>  
>      g_test_init(&argc, &argv, NULL);
>  
> -    s = qtest_start("-display none -machine imx25-pdk");
> +    s = qtest_start("-display none -machine imx25-pdk -device ds1338,address=0x68");
>      i2c = imx_i2c_create(s, IMX25_I2C_0_BASE);
>      addr = DS1338_ADDR;

Reviewed-by: Thomas Huth <thuth@redhat.com>