HEADSUP: hw.acpi.force_sci_lo is deprecated
John Baldwin
jhb at FreeBSD.org
Tue May 4 13:45:54 PDT 2004
Sorry for the turmoil, but unfortunately, force_sci_lo doesn't give enough
granularity for the plethora of broken BIOSs in the wild. The comments below
explain how to achieve the same affect as force_sci_lo now. We shouldn't
need to change tunable names again as this new scheme allows complete
customization of each characteristic.
On Tuesday 04 May 2004 04:39 pm, John Baldwin wrote:
> jhb 2004/05/04 13:39:24 PDT
>
> FreeBSD src repository
>
> Modified files:
> sys/i386/acpica madt.c
> sys/i386/i386 io_apic.c local_apic.c mptable.c
> sys/i386/include apicvar.h
> Log:
> - Change the APIC code to mostly use the recently added intr_trigger
> and intr_polarity enums for passing around interrupt trigger modes and
> polarity rather than using the magic numbers 0 for level/low and 1 for
> edge/high.
> - Convert the mptable parsing code to use the new ELCR wrapper code
> rather than reading the ELCR directly. Also, use the ELCR settings to
> control both the trigger and polarity of EISA IRQs instead of just the
> trigger mode.
> - Rework the MADT's handling of the ACPI SCI again:
> - If no override entry for the SCI exists at all, use level/low trigger
> instead of the default edge/high used for ISA IRQs.
> - For the ACPI SCI, use level/low values for conforming trigger and
> polarity rather than the edge/high values we use for all other ISA
> IRQs.
> - Rework the tunables available to override the MADT. The
> hw.acpi.force_sci_lo tunable is no longer supported. Instead, there
> are now two tunables that can independently override the trigger mode
> and/or polarity of the SCI. The hw.acpi.sci.trigger tunable can be
> set to either "edge" or "level", and the hw.acpi.sci.polarity tunable
> can be set to either "high" or "low". To simulate
> hw.acpi.force_sci_lo, set hw.acpi.sci.trigger to "level" and
> hw.acpi.sci.polarity to "low". If you are having problems with ACPI either
> causing an interrupt storm or not working at all (e.g., the power button
> doesn't turn invoke a shutdown -p now), you can try tweaking these two
> tunables to find the combination that works.
>
> Revision Changes Path
> 1.12 +86 -36 src/sys/i386/acpica/madt.c
> 1.7 +8 -8 src/sys/i386/i386/io_apic.c
> 1.8 +12 -10 src/sys/i386/i386/local_apic.c
> 1.230 +27 -36 src/sys/i386/i386/mptable.c
> 1.6 +7 -4 src/sys/i386/include/apicvar.h
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-current
mailing list