qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Bernhard Beschow <shentey@gmail.com>
To: Mark Cave-Ayland <mark.caveayland@nutanix.com>, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Subject: Re: [PATCH] hw/i386/pc_piix: Fix RTC ISA IRQ wiring of isapc machine
Date: Thu, 15 May 2025 09:38:26 +0000	[thread overview]
Message-ID: <D063FE9B-B10C-4C20-9E9A-86FB7AECEBC7@gmail.com> (raw)
In-Reply-To: <a656a836-6464-4e0a-810b-e3e95617838e@nutanix.com>



Am 13. Mai 2025 09:02:56 UTC schrieb Mark Cave-Ayland <mark.caveayland@nutanix.com>:
>On 12/05/2025 22:09, Bernhard Beschow wrote:
>
>> Commit 56b1f50e3c10 ("hw/i386/pc: Wire RTC ISA IRQs in south bridges")
>> attempted to refactor RTC IRQ wiring which was previously done in
>> pc_basic_device_init() but forgot about the isapc machine. Fix this by
>> wiring in the code section dedicated exclusively to the isapc machine.
>> 
>> Resolves: https://urldefense.proofpoint.com/v2/url?u=https-3A__gitlab.com_qemu-2Dproject_qemu_-2D_issues_2961&d=DwIDAg&c=s883GpUCOChKOHiocYtGcg&r=c23RpsaH4D2MKyD3EPJTDa0BAxz6tV8aUJqVSoytEiY&m=zy9ANkk1dnktvDbix39oQju-ro1U35C5_dEQr6pECga8-YnCMKMlisUou43EzMJ-&s=0BQaI4PyU_roe0kyQTESxn57VNCBnJV3kEV6F-GpL8I&e=
>> Fixes: 56b1f50e3c10 ("hw/i386/pc: Wire RTC ISA IRQs in south bridges")
>> cc: qemu-stable
>> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
>> ---
>>   hw/i386/pc_piix.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>> 
>> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
>> index 0dce512f18..4c37f5419a 100644
>> --- a/hw/i386/pc_piix.c
>> +++ b/hw/i386/pc_piix.c
>> @@ -285,6 +285,8 @@ static void pc_init1(MachineState *machine, const char *pci_type)
>>           pcms->idebus[0] = qdev_get_child_bus(dev, "ide.0");
>>           pcms->idebus[1] = qdev_get_child_bus(dev, "ide.1");
>>       } else {
>> +        uint32_t irq;
>> +
>>           isa_bus = isa_bus_new(NULL, system_memory, system_io,
>>                                 &error_abort);
>>           isa_bus_register_input_irqs(isa_bus, x86ms->gsi);
>> @@ -292,6 +294,9 @@ static void pc_init1(MachineState *machine, const char *pci_type)
>>           x86ms->rtc = isa_new(TYPE_MC146818_RTC);
>>           qdev_prop_set_int32(DEVICE(x86ms->rtc), "base_year", 2000);
>>           isa_realize_and_unref(x86ms->rtc, isa_bus, &error_fatal);
>> +        irq = object_property_get_uint(OBJECT(x86ms->rtc), "irq",
>> +                                       &error_fatal);
>> +        isa_connect_gpio_out(x86ms->rtc, 0, irq);
>>             i8257_dma_init(OBJECT(machine), isa_bus, 0);
>>           pcms->hpet_enabled = false;
>
>I see in 56b1f50e3c10 that the commit also introduced the ISA_DEVICE() QOM cast in isa_connect_gpio_out() as a safety check, so it's probably worth adding it here too. Otherwise looks good to me - nice detective work!
>
>Reviewed-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>

Hi Mark,

thanks for the tag!

I deliberately removed the ISA_DEVICE() QOM cast since it is not needed. That said I'd still prefer to have it as you suggest because x86ms->rtc could be a pointer to MC146818RtcState. I'll send a v2 let Michael pick his favorite solution.

Best regards,
Bernhard

>
>
>ATB,
>
>Mark.
>


      reply	other threads:[~2025-05-15  9:38 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-12 21:09 [PATCH] hw/i386/pc_piix: Fix RTC ISA IRQ wiring of isapc machine Bernhard Beschow
2025-05-13  9:02 ` Mark Cave-Ayland
2025-05-15  9:38   ` Bernhard Beschow [this message]

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=D063FE9B-B10C-4C20-9E9A-86FB7AECEBC7@gmail.com \
    --to=shentey@gmail.com \
    --cc=eduardo@habkost.net \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mark.caveayland@nutanix.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.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).