On 09/11/2012 05:11 PM, Jan Kiszka wrote:
> On 2012-09-11 14:53, Avi Kivity wrote:
>> On 09/11/2012 02:57 PM, Jan Kiszka wrote:
>> 
>>> Only listen on debug ports when we also handle them. They are better
>>> handled by debugcon these days which is runtime configurable.
>>>
>>> Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>
>>> ---
>>>  hw/pc.c |    6 ++++--
>>>  1 files changed, 4 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/hw/pc.c b/hw/pc.c
>>> index 112739a..134d5f7 100644
>>> --- a/hw/pc.c
>>> +++ b/hw/pc.c
>>> @@ -539,12 +539,12 @@ static void bochs_bios_write(void *opaque, uint32_t 
>>> addr, uint32_t val)
>>>      case 0x401:
>>>          /* used to be panic, now unused */
>>>          break;
>>> +#ifdef DEBUG_BIOS
>>>      case 0x402:
>>>      case 0x403:
>>> -#ifdef DEBUG_BIOS
>>>          fprintf(stderr, "%c", val);
>>> -#endif
>>>          break;
>>> +#endif
>>>      case 0x8900:
>>>          /* same as Bochs power off */
>>>          if (val == shutdown_str[shutdown_index]) {
>>> @@ -598,8 +598,10 @@ static void *bochs_bios_init(void)
>>>  
>>>      register_ioport_write(0x400, 1, 2, bochs_bios_write, NULL);
>>>      register_ioport_write(0x401, 1, 2, bochs_bios_write, NULL);
>>> +#ifdef DEBUG_BIOS
>>>      register_ioport_write(0x402, 1, 1, bochs_bios_write, NULL);
>>>      register_ioport_write(0x403, 1, 1, bochs_bios_write, NULL);
>>> +#endif
>>>      register_ioport_write(0x8900, 1, 1, bochs_bios_write, NULL);
>>>  
>>>      register_ioport_write(0x501, 1, 1, bochs_bios_write, NULL);
>>>
>> 
>> 
>> Why not drop DEBUG_BIOS completely?  If you want to debug the bios, use
>> debugcon.
> 
> Probably true. There is more practically dead stuff below this that just
> prints if DEBUG_BIOS is enabled.

Actually it is autotest that is at fault here.  It is installing a
debugcon with non-standard iobase atop a builtin device.
Pre-memory-API, we did not detect that.

We can subclass isa-debugcon as bochs-debugcon, change the default
ioport to 0x402, and use that instead of the code in pc.c.  How does
that sound?

Autotest will need to be changed to use the new device type.

-- 
error compiling committee.c: too many arguments to function

Reply via email to