DSDT/AML/Etc Inspiron 5748

lukek lukek at fastmail.fm
Thu Mar 3 17:32:59 UTC 2016


Thank you for taking the time to explain this.


Sent from my Samsung Galaxy smartphone.-------- Original message --------From: "Box, David E" <david.e.box at intel.com> Date: 2016-03-02  8:47 PM  (GMT-05:00) To: 'Larry Rosenman' <ler at lerctr.org>, Jung-uk Kim <jkim at FreeBSD.org> Cc: freebsd-acpi at freebsd.org, owner-freebsd-acpi at freebsd.org Subject: RE: DSDT/AML/Etc Inspiron 5748 
Concerning the recompiling of disassembled AML code, do heed any warnings that show up at the top of the output file. In any case , 100% correct disassembly of AML code is not guaranteed and you recompile and override your system at your own risk.
 
That said, I've attached a "fixed" dsdt.dsl and the accompanying reference file that helped generate it. By "fixed" I mean it will compile without error. I can't speak to the component that you want to change. But this should get you farther along. Be aware that there could be portions that disassembled incorrectly but still produced valid syntax. What follows is a description of the problem and how it was fixed.

There were a couple of issues with your dump. If you do a diff on the attached tables and the originals, you'll see what was changed. In dsdt.dsl there were two issues preventing recompile. First, the external method MDBG was incorrectly identified as an integer. This was fixed using the attached refs.txt file and the command:

	iasl -da -ve -fe refs.txt dsdt.dat ssdt*.dat

The refs.txt file tells the compiler the correct type (and if applicable argument count) for external objects. The above tables come from the command, acpixtract -a acpidump.txt.

Secondly, the AML was packed with a bunch of 0's between two Devices. I've seen this before. It's likely an artifact of the way the table is generated on your system (e.g. space reserved for a device that doesn't exist on your particular platform?). I removed those dangling zeroes. After that, it could compile without error.

Your ssdt2 table also had what was likely a table generation artifact. If you look at _PSS, there is a package of packages list that contained 29 items, but the BIOS only setup information for the first 13 (0xD) of them and set the package length accordingly. The rest were left hanging off the end causing the error. You can see they had what looks like default values. Removing those dangling packages fixed it.

Hope this helps.

David

> -----Original Message-----
> From: Larry Rosenman [mailto:ler at lerctr.org]
> Sent: Wednesday, March 2, 2016 11:57 AM
> To: Jung-uk Kim <jkim at FreeBSD.org>
> Cc: freebsd-acpi at freebsd.org; Box, David E <david.e.box at intel.com>;
> owner-freebsd-acpi at freebsd.org
> Subject: Re: DSDT/AML/Etc Inspiron 5748
> 
> If I sent y'all the files could someone do it for me?
> 
> 
> On March 2, 2016 1:14:30 PM Jung-uk Kim <jkim at FreeBSD.org> wrote:
> 
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA256
> >
> > On 03/ 2/16 02:06 PM, Larry Rosenman wrote:
> >> So how do we get to something I can override?
> >
> > Unfortunately, it's not easy.  You have to merge DSDT and SSDTs manually.
> >
> > Jung-uk Kim
> >
> >> On March 2, 2016 12:49:57 PM Jung-uk Kim <jkim at FreeBSD.org> wrote:
> >>
> >> On 03/ 2/16 01:41 PM, Jung-uk Kim wrote:
> >>>>> On 03/ 2/16 01:33 PM, Larry Rosenman wrote:
> >>>>>> On 2016-03-02 12:28, Jung-uk Kim wrote:
> >>>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
> >>>>>>>
> >>>>>>> On 03/ 2/16 01:18 PM, Larry Rosenman wrote:
> >>>>>>>> On 2016-03-02 12:14, Jung-uk Kim wrote: On 03/ 2/16
> >>>>>>>> 12:25 PM, Larry Rosenman wrote:
> >>>>>>>>>>> Can you give me EXACT command lines to extract what I need
> >>>>>>>>>>> to move the 0x66 stuff out of PS2K?
> >>>>>>>>>>>
> >>>>>>>>>>> Or to get you something to look at?
> >>>>>>>>
> >>>>>>>> It seems Robert wants to see ACPICA acpidump output.
> >>>>>>>> Install sysutils/acpica-tools, do "/usr/local/bin/acpidump >
> >>>>>>>> acpidump.txt" as root, and give him the output.
> >>>>>>>>
> >>>>>>>>> Done.
> >>>>>>>
> >>>>>>> FYI, usual workflow goes like this with ACPICA tools:
> >>>>>>>
> >>>>>>> /usr/local/bin/acpidump > acpidump.txt /usr/local/bin/acpixtract
> >>>>>>> acpidump.txt /usr/local/bin/iasl -e ssdt* -d dsdt.dat
> >>>>>>>
> >>>>>>> Then, you can modify disassembled dsdt.dsl.  Please note our
> >>>>>>> acpidump(8), i.e., /usr/sbin/acpidump, merges all SSDTs with
> >>>>>>> DSDT for historical reasons.
> >>>>>>>
> >>>>>> and how would I compile it back again?
> >>>>>
> >>>>> /usr/local/bin/iasl dsdt.dsl
> >>
> >> BTW, you cannot directly use generated dsdt.aml to override it via
> >>  loader(8) because acpi(4) expects merged DSDT+SSDTs in one file.
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v2
> >
> >
> iQEcBAEBCAAGBQJW1zuSAAoJEHyflib82/FGAGIIAJfEp804C3zySrz98mg+8boC
> >
> 63VzcGvKsQ9Jr2DpIo+IWwQbQnLeb7IhcgMX9iO0dgGci11Baxr44cYGynUQsi6
> c
> >
> R0ezvoSkLxJw+JYYP0LC5Rbd9x96HW9YBYvZm13lz2xrKhD/sc71hk0lZhe9gEYq
> >
> mj1AWSgfUxXkZ5hLXftNuugXF4NrFsIB5ycrmUGPGpD8FayPG450kn81MmEi9
> tLy
> >
> Si1N6zebx8YKjdHg/Z2oBu3On0Q9jZo1wIqX0wcBGei1PA07gNl0AZpZNUfaFo
> Wv
> >
> 1KBcrB4ipXdKr5CGU9ZpnqXQyiVNgNZh4LqLg3f/Bq9sEfgS3MSp3kpwTKzJ3QU
> =
> > =XbdV
> > -----END PGP SIGNATURE-----
> 


_______________________________________________
freebsd-acpi at freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-acpi
To unsubscribe, send any mail to "freebsd-acpi-unsubscribe at freebsd.org"


More information about the freebsd-acpi mailing list