DescriptionIntroduce the ability to handle ACPI buffers.
ChromeOS needs to be able to receive assorted information
from the BIOS. Passing it in an opaque buffer structure
seems an obvious choice. This change adds the ability
to handle ACPI buffers in chromeos_acpi driver.
It turned out that chromeos_acpi can not be converted into a
removable module anymore, which made debugging difficult
(full kernel recompilation needed, if something goes wrong -
the machine is hosed, etc.)
This change restores the option of building chromeos_acpi as
a module, maintaining status quo (it is built in by
default). chromeos_acpi_exit() is copied from the original
implementation.
chromeos_acpi driver is architectured such that ACPI object
values are represented as strings. This addition converts
converts the binary buffer contents into a multiline string
(16 bytes representes in %.2.x format in each) line.
Change-Id: I8db12454e48db5dddb56a11836ad2d8fd8b6d7bf
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
BUG=chromium-os:13069, chromium-os:13091
TEST=manual
For two cases, when chromeos_acpi is configured as a module
and not:
- build system image, modify it for test
- install it on an target with BIOS supplying a
chromeos ACPI buffer object
- restart the machine
- observe the contents of the VDAT object:
localhost tmp # cat /sys/devices/platform/chromeos_acpi/VDAT
11 22 33 44 f7 1f 1c 40 96 57 74 41 cc dd ee ff
In case it is configured as a module:
- observe that chromeos_acpi can be removed/reinstalled:
localhost tmp # rmmod chromeos_acpi
localhost tmp # modprobe chromeos_acpi
localhost tmp # rmmod chromeos_acpi
localhost tmp # modprobe chromeos_acpi
- temporarily modify the module to print 5 bytes per string
- try installing the changed module and examine VDAT again:
localhost tmp # cat /sys/devices/platform/chromeos_acpi/VDAT
11 22 33 44 f7
1f 1c 40 96 57
74 41 cc dd ee
ff
Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=9e2f48b
Patch Set 1 : Enable Chromeos ACPI buffer handling. #
Total comments: 28
Patch Set 2 : Address review comments. #Patch Set 3 : Address review comments and presubmit warning. #
Total comments: 1
Patch Set 4 : Address review comments #
Messages
Total messages: 8 (0 generated)
|