qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 1/2] Add i.MX I2C device emulator.


From: Jean-Christophe DUBOIS
Subject: Re: [Qemu-devel] [PATCH 1/2] Add i.MX I2C device emulator.
Date: Sat, 04 May 2013 10:22:03 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130404 Thunderbird/17.0.5

On 05/03/2013 06:41 PM, Andreas Färber wrote:
   CC    tests/libi2c-imx.o
   LINK  tests/tmp105-test
   CC    tests/ds1338-test.o
   LINK  tests/ds1338-test
GTESTER check-qtest-arm
Kernel image must be specified
Without seeing your code and since tmp105-test is working on my side, I
can only guess that your ds1338-test is starting either your own machine
or some machine that terminates with above error.
the ds1338-test.c code is very similar to the tmp105-test.c code.

The tmp105-test.c code starts a n800 machine while the ds1338-test.c starts a imx25_3ds machine (to get the i.MX I2C device, it seems natural).

Nowhere in the tmp105-test.c code is any kernel or initrd file specified. So I did the same with ds1338-test.c.

But then "make check" is complaining the kernel is missing ...

So it seems the n800 allows qemu to start even if no parameters (ram size, kernel file, ...) are provided (you can actually confirm this by running "qemu-system-arm -machine n800"). This is not the default behavior for most implemented platform (including imx25_3ds) that will refuse to start if no parameter is given.

Is there a new requirement mandating platforms to start with guessed parameters if not provided on the command line in order to be compatible with qtest?

The solution is to only mandate -kernel, -initrd, -dtb, etc. in the
machine init function if !qtest_enabled() or so.

I am calling arm_load_kernel() with a pointer to a "struct arm_boot_info".

The first thing done by arm_load_kernel() is to check for the kernel parameter without checking for qtest_enable() and all.

    /* Load the kernel.  */
    if (!info->kernel_filename) {
        fprintf(stderr, "Kernel image must be specified\n");
        exit(1);
    }

Do you mean arm_load_kernel() should test for qtest_enable() or should I call arm_load_kernel() only if !qtest_enable() (there is not much platform checking for qtest_enable() at this time and it seems somebody need to set the "entry" field in the info struct).



reply via email to

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