Including a custom ACPI DSDT with (K)Ubuntu 18.04 (RC1)


up vote
0
down vote
favorite
I have a new Thinkpad X1 Yoga 2018 which requires a patch to the ACPI DSDT to make suspend-to-RAM work. I've built a patched DSDT following these instructions, and created a CPIO archive called acpi_override
.
How do I customize the configuration in /etc/grub.d or /etc/initramfs-tools (or elsewhere) to have this loaded along with Kubuntu's initrd? I was looking for a line where initrd [...]
was emitted in /etc/grub.d/10_linux
but it seems things have been rearranged for this release.
boot grub2 kernel kubuntu
add a comment |Â
up vote
0
down vote
favorite
I have a new Thinkpad X1 Yoga 2018 which requires a patch to the ACPI DSDT to make suspend-to-RAM work. I've built a patched DSDT following these instructions, and created a CPIO archive called acpi_override
.
How do I customize the configuration in /etc/grub.d or /etc/initramfs-tools (or elsewhere) to have this loaded along with Kubuntu's initrd? I was looking for a line where initrd [...]
was emitted in /etc/grub.d/10_linux
but it seems things have been rearranged for this release.
boot grub2 kernel kubuntu
add a comment |Â
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have a new Thinkpad X1 Yoga 2018 which requires a patch to the ACPI DSDT to make suspend-to-RAM work. I've built a patched DSDT following these instructions, and created a CPIO archive called acpi_override
.
How do I customize the configuration in /etc/grub.d or /etc/initramfs-tools (or elsewhere) to have this loaded along with Kubuntu's initrd? I was looking for a line where initrd [...]
was emitted in /etc/grub.d/10_linux
but it seems things have been rearranged for this release.
boot grub2 kernel kubuntu
I have a new Thinkpad X1 Yoga 2018 which requires a patch to the ACPI DSDT to make suspend-to-RAM work. I've built a patched DSDT following these instructions, and created a CPIO archive called acpi_override
.
How do I customize the configuration in /etc/grub.d or /etc/initramfs-tools (or elsewhere) to have this loaded along with Kubuntu's initrd? I was looking for a line where initrd [...]
was emitted in /etc/grub.d/10_linux
but it seems things have been rearranged for this release.
boot grub2 kernel kubuntu
asked Apr 23 at 18:34
josePhoenix
1165
1165
add a comment |Â
add a comment |Â
2 Answers
2
active
oldest
votes
up vote
1
down vote
There ended up being a different way to accomplish the same thing.
- Extract the CPIO file:
cpio --extract < ./acpi_override
- Copy the result to
/boot
:cp kernel/firmware/acpi/dsdt.aml /boot/fixed_dsdt.aml
- Create or update
/boot/grub/custom.cfg
to contain
acpi /fixed_dsdt.aml
Since /boot/grub/custom.cfg
isn't managed by apt, this should persist.
Note: If you're not confident you've got the right DSDT, you could end up in a reboot loop. You could instead manually edit the grub.cfg
and add the acpi /fixed_dsdt.aml
line inside of a boot entry. That way if grub tries to process it and fails, it will do so only after selecting the boot entry (not before showing the menu). Once you are confident that it all works, you can move your edits to custom.cfg
.
add a comment |Â
up vote
0
down vote
This approach was what worked for me using (K)Ubuntu 18.04 on a 6th gen X1 carbon. The use of "initrd /boot/acpi_override /boot/initrd.img-4.14.0-20-generic" in the grub.cfg did not load the configuration, but removing "/boot/acpi_override" from this line and loading the .aml file on its separate line in grub.cfg now shows S3 as a supported power mode in dmesg and "s2idle [deep]" in /sys/power/mem_sleep.
add a comment |Â
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
There ended up being a different way to accomplish the same thing.
- Extract the CPIO file:
cpio --extract < ./acpi_override
- Copy the result to
/boot
:cp kernel/firmware/acpi/dsdt.aml /boot/fixed_dsdt.aml
- Create or update
/boot/grub/custom.cfg
to contain
acpi /fixed_dsdt.aml
Since /boot/grub/custom.cfg
isn't managed by apt, this should persist.
Note: If you're not confident you've got the right DSDT, you could end up in a reboot loop. You could instead manually edit the grub.cfg
and add the acpi /fixed_dsdt.aml
line inside of a boot entry. That way if grub tries to process it and fails, it will do so only after selecting the boot entry (not before showing the menu). Once you are confident that it all works, you can move your edits to custom.cfg
.
add a comment |Â
up vote
1
down vote
There ended up being a different way to accomplish the same thing.
- Extract the CPIO file:
cpio --extract < ./acpi_override
- Copy the result to
/boot
:cp kernel/firmware/acpi/dsdt.aml /boot/fixed_dsdt.aml
- Create or update
/boot/grub/custom.cfg
to contain
acpi /fixed_dsdt.aml
Since /boot/grub/custom.cfg
isn't managed by apt, this should persist.
Note: If you're not confident you've got the right DSDT, you could end up in a reboot loop. You could instead manually edit the grub.cfg
and add the acpi /fixed_dsdt.aml
line inside of a boot entry. That way if grub tries to process it and fails, it will do so only after selecting the boot entry (not before showing the menu). Once you are confident that it all works, you can move your edits to custom.cfg
.
add a comment |Â
up vote
1
down vote
up vote
1
down vote
There ended up being a different way to accomplish the same thing.
- Extract the CPIO file:
cpio --extract < ./acpi_override
- Copy the result to
/boot
:cp kernel/firmware/acpi/dsdt.aml /boot/fixed_dsdt.aml
- Create or update
/boot/grub/custom.cfg
to contain
acpi /fixed_dsdt.aml
Since /boot/grub/custom.cfg
isn't managed by apt, this should persist.
Note: If you're not confident you've got the right DSDT, you could end up in a reboot loop. You could instead manually edit the grub.cfg
and add the acpi /fixed_dsdt.aml
line inside of a boot entry. That way if grub tries to process it and fails, it will do so only after selecting the boot entry (not before showing the menu). Once you are confident that it all works, you can move your edits to custom.cfg
.
There ended up being a different way to accomplish the same thing.
- Extract the CPIO file:
cpio --extract < ./acpi_override
- Copy the result to
/boot
:cp kernel/firmware/acpi/dsdt.aml /boot/fixed_dsdt.aml
- Create or update
/boot/grub/custom.cfg
to contain
acpi /fixed_dsdt.aml
Since /boot/grub/custom.cfg
isn't managed by apt, this should persist.
Note: If you're not confident you've got the right DSDT, you could end up in a reboot loop. You could instead manually edit the grub.cfg
and add the acpi /fixed_dsdt.aml
line inside of a boot entry. That way if grub tries to process it and fails, it will do so only after selecting the boot entry (not before showing the menu). Once you are confident that it all works, you can move your edits to custom.cfg
.
answered Apr 23 at 18:51
josePhoenix
1165
1165
add a comment |Â
add a comment |Â
up vote
0
down vote
This approach was what worked for me using (K)Ubuntu 18.04 on a 6th gen X1 carbon. The use of "initrd /boot/acpi_override /boot/initrd.img-4.14.0-20-generic" in the grub.cfg did not load the configuration, but removing "/boot/acpi_override" from this line and loading the .aml file on its separate line in grub.cfg now shows S3 as a supported power mode in dmesg and "s2idle [deep]" in /sys/power/mem_sleep.
add a comment |Â
up vote
0
down vote
This approach was what worked for me using (K)Ubuntu 18.04 on a 6th gen X1 carbon. The use of "initrd /boot/acpi_override /boot/initrd.img-4.14.0-20-generic" in the grub.cfg did not load the configuration, but removing "/boot/acpi_override" from this line and loading the .aml file on its separate line in grub.cfg now shows S3 as a supported power mode in dmesg and "s2idle [deep]" in /sys/power/mem_sleep.
add a comment |Â
up vote
0
down vote
up vote
0
down vote
This approach was what worked for me using (K)Ubuntu 18.04 on a 6th gen X1 carbon. The use of "initrd /boot/acpi_override /boot/initrd.img-4.14.0-20-generic" in the grub.cfg did not load the configuration, but removing "/boot/acpi_override" from this line and loading the .aml file on its separate line in grub.cfg now shows S3 as a supported power mode in dmesg and "s2idle [deep]" in /sys/power/mem_sleep.
This approach was what worked for me using (K)Ubuntu 18.04 on a 6th gen X1 carbon. The use of "initrd /boot/acpi_override /boot/initrd.img-4.14.0-20-generic" in the grub.cfg did not load the configuration, but removing "/boot/acpi_override" from this line and loading the .aml file on its separate line in grub.cfg now shows S3 as a supported power mode in dmesg and "s2idle [deep]" in /sys/power/mem_sleep.
answered May 3 at 3:53
Topher
1011
1011
add a comment |Â
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1027552%2fincluding-a-custom-acpi-dsdt-with-kubuntu-18-04-rc1%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password