Re: [PATCH v2 1/2] x86/of: Add support for boot time interrupt delivery mode configuration

From: Rahul Tanwar
Date: Wed Nov 16 2022 - 06:43:15 EST


On 16/11/2022 6:42 pm, Andy Shevchenko wrote:
> This email was sent from outside of MaxLinear.
>
> On Wed, Nov 16, 2022 at 06:28:20PM +0800, Rahul Tanwar wrote:
> > Presently, init/boot time interrupt delivery mode is enumerated
> > only for ACPI enabled systems by parsing MADT table or for older
> > systems by parsing MP table. But for OF based x86 systems, it is
> > assumed & hardcoded to legacy PIC mode. This is a bug for
> > platforms which are OF based but do not use 8259 compliant legacy
> > PIC interrupt controller. Such platforms can not even boot because
> > of this bug/hardcoding.
> >
> > Fix this bug by adding support for configuration of init time
> > interrupt delivery mode for x86 OF based systems by introducing a
> > new optional boolean property 'intel,virtual-wire-mode' for
> > interrupt-controller node of local APIC. This property emulates
> > IMCRP Bit 7 of MP feature info byte 2 of MP floating pointer
> > structure [1].
> >
> > Defaults to legacy PIC mode if absent. Configures it to virtual
> > wire compatibility mode if present.
>
> > [1]
> https://www.manualslib.com/manual/77733/Intel-Multiprocessor.html?page=40#manual <https://www.manualslib.com/manual/77733/Intel-Multiprocessor.html?page=40#manual>
>
> Link: ?
>
> ...
>
> > + if (of_property_read_bool(dn, "intel,virtual-wire-mode")) {
>
> You need a separate patch to show this property being added (yes,
> I have just commented on your patch 2).
>

Well noted about it. Will update. Thanks.

Regards,
Rahul


> > + printk(KERN_NOTICE "Virtual Wire compatibility mode.\n");
> > + pic_mode = 0;
> > + } else {
> > + printk(KERN_NOTICE "IMCR and PIC compatibility mode.\n");
> > + pic_mode = 1;
>
> Why not pr_notice() in both cases?
>
> > + }
>
> --
> With Best Regards,
> Andy Shevchenko
>