From: Jan Kiszka <jan.kiszka@web.de>
To: Gleb Natapov <gleb@redhat.com>
Cc: qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Re: [PATCH] hpet: Clean up initial hpet counter
Date: Thu, 17 Jun 2010 09:17:51 +0200 [thread overview]
Message-ID: <4C19CC1F.9040209@web.de> (raw)
In-Reply-To: <20100617054857.GH523@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 2857 bytes --]
Gleb Natapov wrote:
> On Wed, Jun 16, 2010 at 06:00:56PM +0200, Jan Kiszka wrote:
>> Gleb Natapov wrote:
>>> On Wed, Jun 16, 2010 at 12:35:16PM +0300, Gleb Natapov wrote:
>>>> On Wed, Jun 16, 2010 at 11:33:13AM +0200, Jan Kiszka wrote:
>>>>> Gleb Natapov wrote:
>>>>>> On Wed, Jun 16, 2010 at 09:57:35AM +0200, Jan Kiszka wrote:
>>>>>>> Gleb Natapov wrote:
>>>>>>>> On Wed, Jun 16, 2010 at 09:51:14AM +0200, Jan Kiszka wrote:
>>>>>>>>> Gleb Natapov wrote:
>>>>>>>>>> On Wed, Jun 16, 2010 at 09:03:01AM +0200, Jan Kiszka wrote:
>>>>>>>>>>> Gleb Natapov wrote:
>>>>>>>>>>>> On Wed, Jun 16, 2010 at 12:40:28AM +0200, Jan Kiszka wrote:
>>>>>>>>>>>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>>>>>>>>>>>
>>>>>>>>>>>>> There is no need starting with the special value for hpet_cfg.count.
>>>>>>>>>>>>> Either Seabios is aware of the new firmware interface and properly
>>>>>>>>>>>>> interprets the counter or it simply ignores it anyway.
>>>>>>>>>>>>>
>>>>>>>>>>>> I want seabios to be able to distinguish between old qemu and new one.
>>>>>>>>>>> I see now. But isn't it a good chance to introduce a proper generic
>>>>>>>>>>> interface for exploring supported fw-cfg keys?
>>>>>>>>>>>
>>>>>>>>>> Having such interface would be nice. Pity we haven't introduced it from
>>>>>>>>>> the start. If we do it now seabios will have to find out somehow that
>>>>>>>>>> qemu support such interface. Chicken and egg ;)
>>>>>>>>> That is easy: Add a key the describes the highest supported key value
>>>>>>>>> (looks like this is monotonously increasing). Older qemu versions will
>>>>>>>>> return 0.
>>>>>>>>>
>>>>>>>> That will not support holes in key space, and our key space is already
>>>>>>>> sparse.
>>>>>>> Then add a service to obtain a bitmap of supported keys. If that bitmap
>>>>>>> is empty...
>>>>>>>
>>>>>> Bitmap will be 2k long. We can add read capability to control port. To
>>>>>> check if key is present you select it (write its value to control port)
>>>>>> and then read control port back. If values is non-zero the key is valid.
>>>>>> But how to detect qemu that does not support that?
>>>>> Isn't there some key that was always there and will always be?
>>>>>
>>>> FW_CFG_SIGNATURE
>>>>
>>> So any ideas? Or did I misunderstood your hint? ;)
>> I thought you found the answer yourself:
>>
>> Seabios could select FW_CFG_SIGNATURE and then perform a read-back on
>> the control register. Older QEMUs will return -1, versions that support
>> the read-back 0. Problem solved, no?
>>
> AFAIK QEMU returns 0 if io read was done from non-used port or mmio
> address, but can we rely on this? If we can then problem solved, if
> we can't then no.
It works for IO-based fw-cfg, but not for MMIO-based. So the firmware
should probably pick a non-zero key for this check, e.g. FW_CFG_ID.
Jan
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]
next prev parent reply other threads:[~2010-06-17 7:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-15 22:40 [Qemu-devel] [PATCH] hpet: Clean up initial hpet counter Jan Kiszka
2010-06-16 4:40 ` [Qemu-devel] " Gleb Natapov
2010-06-16 7:03 ` Jan Kiszka
2010-06-16 7:33 ` Gleb Natapov
2010-06-16 7:51 ` Jan Kiszka
2010-06-16 7:52 ` Gleb Natapov
2010-06-16 7:57 ` Jan Kiszka
2010-06-16 9:06 ` Gleb Natapov
2010-06-16 9:33 ` Jan Kiszka
2010-06-16 9:35 ` Gleb Natapov
2010-06-16 15:36 ` Gleb Natapov
2010-06-16 16:00 ` Jan Kiszka
2010-06-17 5:48 ` Gleb Natapov
2010-06-17 7:17 ` Jan Kiszka [this message]
2010-06-17 8:07 ` Gleb Natapov
2010-06-17 8:30 ` Jan Kiszka
2010-06-17 8:36 ` Gleb Natapov
2010-06-17 8:42 ` Jan Kiszka
2010-06-17 8:46 ` Gleb Natapov
2010-06-17 8:59 ` Jan Kiszka
2010-06-17 9:01 ` Gleb Natapov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C19CC1F.9040209@web.de \
--to=jan.kiszka@web.de \
--cc=gleb@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).