On 26/05/2011, at 8:59 PM, Paul Irofti wrote:

Please test this diff on your assus laptops and get back to me with
the results. It should make your booting problems go away.

Index: acpi.c
===================================================================
RCS file: /cvs/src/sys/dev/acpi/acpi.c,v
retrieving revision 1.224
diff -u -p -r1.224 acpi.c
--- acpi.c      27 Apr 2011 20:55:42 -0000      1.224
+++ acpi.c      26 May 2011 08:55:38 -0000
@@ -92,6 +92,7 @@ void  acpi_pbtn_task(void *, int);

 #ifndef SMALL_KERNEL

+int    acpi_asus_enabled;
 int    acpi_thinkpad_enabled;
 int    acpi_saved_spl;
 int    acpi_enabled;
@@ -114,6 +115,7 @@ int acpi_foundtmp(struct aml_node *, voi
 int    acpi_foundprw(struct aml_node *, void *);
 int    acpi_foundvideo(struct aml_node *, void *);
 int    acpi_foundsony(struct aml_node *node, void *arg);
+int    acpi_foundasus(struct aml_node *node, void *arg);

 int    acpi_foundide(struct aml_node *node, void *arg);
 int    acpiide_notify(struct aml_node *, int, void *);
@@ -781,8 +783,13 @@ acpi_attach(struct device *parent, struc
        /* check if we're running on a sony */
        aml_find_node(&aml_root, "GBRT", acpi_foundsony, sc);

-       /* attach video only if this is not a stinkpad */
-       if (!acpi_thinkpad_enabled)
+       /* check if we're running on an asus */
+       aml_find_node(&aml_root, "SDSP", acpi_foundasus, sc);
+       if (!acpi_asus_enabled) /* some models don't have SDSP */
+               aml_find_node(&aml_root, "SPLV", acpi_foundasus, sc);
+
+       /* attach video only if this is not a stinkpad or an assus */
+       if (!acpi_thinkpad_enabled && !acpi_asus_enabled)
                aml_find_node(&aml_root, "_DOS", acpi_foundvideo, sc);

        /* create list of devices we want to query when APM come in */
@@ -2395,6 +2402,16 @@ acpi_foundsony(struct aml_node *node, vo
        aaa.aaa_name = "acpisony";

        config_found(self, &aaa, acpi_print);
+
+       return 0;
+}
+
+int
+acpi_foundasus(struct aml_node *node, void *arg)
+{
+       acpi_asus_enabled = 1;
+
+       /* XXX: write a driver for it */

        return 0;
 }

This has the same effect as the first patch - boots ok, but changing brightness
or plugging/unpluging the power adapter causes a panic.

I tried it both with and without the first patch applied (though I assume it
should be used without), 4.9-release code tree.
I'll update to current as soon as I can.


thanks

paul

Reply via email to