https://wiki.archlinux.org/api.php?action=feedcontributions&user=Alienjeff&feedformat=atomArchWiki - User contributions [en]2024-03-28T15:43:02ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=DSDT&diff=71215DSDT2009-06-25T21:13:38Z<p>Alienjeff: </p>
<hr />
<div>[[Category:Boot process (English)]]<br />
[[Category:Kernel (English)]]<br />
[[Category:HOWTOs (English)]]<br />
[[Category: Power management (English)]]<br />
<br />
DSDT (Differentiated System Description Table) is a part of the [[ACPI]] specification and it supplies configuration information about a base system. ACPI capable computers come with a preinstalled DSDT from the manufacturer. A common linux problem is missing ACPI functionality (fans not running, screens not turning off when the lid is closed, etc.) stemming from DSDTs made with Windows specifically in mind. The solution that this article will try to detail is replacing the default DSDT with a 'fixed' version. Note that this fix can also be accomplished during installation ("Will you need support for custom DSDT?") but requires you to have a custom DSDT ready at hand. AFAICT there is no difference between using the installation method and doing it later.<br />
<br />
==Replacing the DSDT==<br />
<br />
==="Lions and tigers and bears, oh my!"===<br />
This fix does mess about with some fairly fundamental stuff on your Arch install. However, note that ''as long as you can restart your Arch install (e.g. using the fallback image), nothing about what this howto describes is irreversible''. See the section 'Recovery' for details. If you're very unsure, you might wish to [[Disk cloning | clone your disk]] beforehand.<br />
<br />
===Step one: Get hold of fixed DSDT===<br />
A DSDT file is originally written in ACPI Source language (an .asl/.dsl file). Using a compiler this can produce an 'ACPI Machine Language' file (.aml) or a hex table (.hex). To incorporate the file in your Arch install, you'll need to get hold of a compiled .aml file. - whether this means compiling it yourself or trusting some guy on the internet is up to you.<br />
==== "Compiling it yourself" ====<br />
In short, you can use Intel's ASL compiler (in the repos) to turn your systems DSDT table (residing in /sys/firmware/acpi/tables/DSDT) into source code, locate and fix the errors (the compiled files will typically have been made using Microsoft's compiler rather than Intel's more stringent one... need we say more?), and recompile. This process is detailed far more comprehensively and better at the [http://gentoo-wiki.com/ACPI/Fix_common_problems Gentoo wiki]. It's well written and the process is a lot easier than it sounds and far faster than reading about it. ''Page appears to have been lost in the great gentoo-wiki-meltdown of 2008 - [http://www.gentoo-wiki.info/ACPI/Fix_common_problems this] looks like a copy of the original.''<br />
<br />
==== "Some guy on the internet" ====<br />
* There is a database of sorts of user produced fixes on sourceforge: http://acpi.sourceforge.net/dsdt/. Sadly, this is not very well maintained and more than half the entries are just weird noise spam. If you do download a file from there, it'll most likely be a compressed .asl file, so you'll need to unzip it and compile it. You should really read the Gentoo wiki for that but the upshot is: get iasl from the community repo, unzip the file into a directory of its own and run<br />
<pre>iasl -tc ''.asl/.dsl file''</pre><br />
on it and if it says no errors and no warnings you should be good to go.<br />
* Arch users with the same laptop as you are a minority of a minority of a minority. Try browsing other distro/linux forums for talk about the same model. Likelihood is that they have the same problems and either because there is a lot of them (Ubuntu) or because they're tech wizards (Gentoo?) someone there has produced a working DSDT and maybe even provides a precompiled version (again, use at your own risk).<br />
* Google Is Your Friend: Try keeping it sweet and short - model name and dsdt will probably produce results.<br />
<br />
Remember, regardless of how you get a file, you'll need a compiled ACPI Machine Language file for the next step.<br />
<br />
===Step Two: Get the file loaded at startup===<br />
<br />
Note : DSDT hooks for mkinitcpio have been removed as of kernel 2.6.30, please compile dsdt directly into the kernel as explained here : http://www.lesswatts.org/projects/acpi/overridingDSDT.php<br />
<br />
==== Disclaimer ====<br />
This part is going to describe how to rebuild your startup image (kernel26.img) so that your custom DSDT file will get loaded instead of the maunfacturer's. This is fairly technical subject mattter (which I don't understand much of) so this is pretty much pure howto. See [[Configuring mkinitcpio]] for a more detailed description of the things at work here. If things go wrong this shifts the blame back to you.<br />
<br />
==== Using mkinitcpio to create a new boot image ====<br />
* Cp your compiled file to /lib/initcpio/custom.dsdt<br />
* The last line of /etc/mkinitcpio.conf (HOOKS="....") lists in standard arch style "the hooks that are executed on image creation and on runtime in the exact order they are listed". You'll need to add 'dsdt' to this list if it's not already there. Save the file.<br />
* mkinitcpio is the program that creates the startup image based on /etc/mkinitcpio.conf. Get it from the repos: <br />
<pre>pacman -Sy mkinitcpio.</pre><br />
* Run mkinitcpio as root. Simply entering <br />
<pre>mkinitcpio</pre><br />
will do a dry test run. Note that a succes here or when you run the command for real is no guarantee that the generated image will actually work. The 'succes' announced is whether or not an image file was generated. <br />
<pre>mkinitcpio -p kernel26</pre> <br />
will create both the standard and the fallback image. If you're feeling less adventurous, you might wish to first try <br />
<pre>mkinitcpio -g /boot/kernel26.img</pre><br />
which will only create the standard image, so you can... well fall back on the other one in case things don't work out. If/when they do work out, you can always run the command with the -p option after the first test.<br />
<br />
=== Step three: Test your new image ===<br />
If mkinitcpio succesfully created an image, you should be ready to reboot now. If things go well, you'll boot into your ordinary Arch setup, the only difference being a properly working fan, lid, whatever misbehaved. If they don't <br />
* Make a note of the error messages<br />
* Restart<br />
* Choose the fallback image option from GRUB (assuming you didn't overwrites that one too)<br />
<br />
====Recovery from a bad image====<br />
Remove the dsdt hook from /etc/mkinitcpio.conf, delete the custom.dsdt file and use mkinitcpio to create the images again:<br />
<pre>mkinitcpio -p kernel26</pre> <br />
<br />
If you want to persist, try one of the following:<br />
* Read the other wiki articles (really) and try again.<br />
* Try forums (again)<br />
* Read/edit wiki<br />
* Leave distro in anger, vow revenge<br />
<br />
== External Links ==<br />
* [http://gentoo-wiki.com/ACPI/Fix_common_problems The Gentoo wiki article]<br />
* [http://acpi.sourceforge.net/dsdt/index.php The sourceforge database]<br />
* [http://www.cpqlinux.com/acpi-howto.html#fix_broken_dsdt Howto for fixing errors in DSDT files]<br />
* [http://news.skelter.net/articles/2008/07/28/bill-gates-on-sabotaging-acpi-for-linux Bill Gates on Making ACPI Not Work with Linux] - when things go wrong it's nice to have someone to yell at...</div>Alienjeffhttps://wiki.archlinux.org/index.php?title=Arch_IRC_channels&diff=50846Arch IRC channels2008-10-08T15:42:20Z<p>Alienjeff: /* Abbrevations and jargon */</p>
<hr />
<div>[[Category:About Arch (English)]]<br />
[[Category:General (English)]]<br />
[[Category:Guidelines (English)]]<br />
<br />
<center><div style="text-align: center; margin: 0 10% 1em 10%;"><br />
{| class="notice noprint" style="background:#D8463E; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;"<br />
| style="padding: 0.1em" | '''Warning'''<br><div style="font-size: 110%;">Do not edit this page unless you are an channel op in #archlinux.<br> You are welcome to use the discussion page.</div><br />
|}<br />
</div></center><br />
= Introduction =<br />
<br />
The official Arch Linux [http://en.wikipedia.org/wiki/Internet_Relay_Chat IRC] channel is '''#archlinux''' on the [http://www.freenode.net/ Freenode] network.<br><br />
There are also a number of other channels dedicated to Archlinux mantained by comunity members, see http://www.archlinux.org/irc/.<br />
== Usage ==<br />
To join the channel, you need an irc client. [http://en.wikipedia.org/wiki/Comparison_of_IRC_clients List of irc clients]<br />
/connect irc.freenode.net<br />
/join #archlinux<br />
<br />
'''Note:'''<br><br />
The channel is currently +R. That means that you have to register and identify with the NickServ service before you can talk in the channel.<br />
/msg nickserv help register<br />
/msg nickserv help identify<br />
<br />
= Channel Rules =<br />
* '''Follow the guidelines'''<br />
: [http://freenode.net/policy.shtml Freenode network policy].<br />
: [http://freenode.net/channel_guidelines.shtml Freenode channel guidelines].<br />
: [[IRC Channel#Channel_Guidelines|#archlinux channel guidelines]].<br />
* '''Client settings and bots'''<br />
** If you want to bring a bot into the channel, then ask an operator ''before'' you do so.<br />
** Auto-response in channel or in pm is not allowed. The only exeption are 'away' responces at nick highlight.<br />
* '''Channelbot usage'''<br />
** There is only one official channel bot. 'phrik n=archbot@archlinux/bot/phrik'<br />
** Try to limit the bot usage in channel. Remember, you can '/query phrik' when the output isn't needed in-channel.<br />
** No spamming of bot commands.<br />
* '''Advertising''' <br />
** Advertising are not allowed unless an op have given you a permision to do so.<br />
* '''Content/links'''<br />
** The main topic of the channel is support for and discussion about Archlinux.<br><br />
** Talk about general software and hardware is also allowed when it don't interfer with the main topic of the channel.<br />
** Anything that is not covered by the previous statements is handled on a case-by-case basis at the op's discretion.<br />
<br />
= Channel Guidelines =<br />
The main language of the channel is English. If you need help in another language, see the link above regarding other Arch Linux channels.<br />
<br />
Try to keep the channel somewhat family/work safe. No porn, gore, windows, politicians or anything similar. <br />
In short, be ''on topic'' as much as possible; support. If you can't resist the urge to talk about your religion or your favorite toenail, then take it to '''#archlinux-offtopic'''.<br />
<br />
Don't start flamewars. DE/WM/$EDITOR/similar discussions are allowed, but if the temperature rises above 26&deg;C then you are expected to drop it or move on to the ''offtopic'' channel.<br />
<br />
Don't feed the trolls.<br />
<br />
Spamming the channel is Bad (with a capital B). Use a pastebin if you have to paste something long (usually more than 3 lines). <br />
[http://pastie.caboo.se/ Pastie] and [http://www.rafb.net/paste/ rafb|Nopaste] are two popular ones within the Arch community. <br />
There is also a cli frontend for rafb, named ''nopaste''. You can get it with pacman.<br />
<br />
phrik (the channel bot) is '''not''' your personal toy, abusing him is not allowed. <br />
If you want to try out commands or look trough the help function, then do it in a /query or /msg (alternatively ''PM'').<br />
<br />
Don't ask to ask, if anyone is alive or if anyone uses something. Just state your question. Even if we don't use ''foo'', we might know enough about it to help you.<br />
<br />
'''Ask''' for help, don't ''demand'' it. If nobody replies, wait for a few minutes before you restate your question. <br />
<br />
[http://www.catb.org/~esr/faqs/smart-questions.html Ask smart questions].<br />
<br />
Help yourself before you ask. Read the [http://wiki.archlinux.org/ Wiki] and ''man'' pages, search the [http://bbs.archlinux.org BBS] and/or [http://www.google.com Google]. <br />
Sticking to this method will often get you an answer faster, and you may just happen to learn something from it. <br />
<br />
When asking for help, always reply to people that ask you for more information. If you don't know the answer then a "I don't know" is a lot better than silence.<br />
<br />
Set a good example, be what you want other people to be. If you act like a moron, then people will respond to you as if you were one. <br />
The behavior of those already in the channel is also a big influence on those new to the channel. If you want the channel to be a friendly place, then be friendly to others.<br />
<br />
Don't be shy. Feel free to help others. All the support in the channel is provided by volunteers. <br />
<br />
Most questions get answered by "just another user", just like you. Even the ''devs'' that frequent the channel do so on their own time, by their own accord, by their own free will. [[http://en.wikipedia.org/wiki/Wikipedia:Citation_needed citation needed]]<br />
<br />
== None Of This ==<br />
This is what all your conversations look like, quit it. It's so embarrassing.<br />
<pre><br />
benny> openbox <3<br />
wizzomafizzo> openbox <3<br />
wizzomafizzo> openbox > *<br />
benny> openbox > fluxbox > * > emacs<br />
wizzomafizzo> I HATE EMACS<br />
benny> emacs sucks<br />
benny> vim ftw<br />
benny> vim > nano > * > ed (HAHAHHAHA) > emacs<br />
wizzomafizzo> vim <3<br />
benny> ed is the standard editor.<br />
benny> emacs is a good OS<br />
benny> but it lacks a good text editor<br />
wizzomafizzo> I use nano for editing little config files and I only use vim<br />
for serious stuff, guys.<br />
benny> ruby ftw... perl sucks<br />
benny> cat /dev/urandom > test.pl; perl test.pl; echo $? => 0 hahahahhahaha<br />
wizzomafizzo> LOL<br />
benny> adobe photoshop cs3 > gimp<br />
wizzomafizzo> urxvt + irssi + screen + openbox + arch + kernel 2.6.22.21rc3 +<br />
X-svn ftw <3333333333333333333<br />
benny> does anyone have the latest wine-cvs, I need it for my business... I'm<br />
a lead webdeveloper for a big consultation company and I use photoshop<br />
cs3 on linux for optimal performance<br />
benny> irssi + screen <3<br />
wizzomafizzo> WTF WINE WAS RELEASED HALF AN HOUR AGO STILL NOT IN REPOS<br />
wizzomafizzo> WTF ARCH DEVS SUCK<br />
benny> WTF, when is kde4 in the repos?<br />
wizzomafizzo> omg arch so unstable they dont test packages!!!!!!!!!!!!<br />
wizzomafizzo> plz test pkgs more asrch<br />
benny> that pharmacist should STFU and drop kde so one wihht serious<br />
competence can take over<br />
wizzomafizzo> BBBBBBBBAAAAAAAAAAAAAAAAAAWWWWWWWWWWWWWWW<br />
benny> how do I update kernel?<br />
benny> WHY IS AUR NOT IN pacman!!!!<br />
benny> I packman -s motif-application and it says command not found: ARCH<br />
BROKEN, debian no problem! QUESTIONS!<br />
wizzomafizzo> I vote for yaourt and it never goes in community wtf??????<br />
wizzomafizzo> i'm using dpkg in arch so i don't waste all my debs<br />
benny> I install firefox, but I get bon echo. Arch bug, I demand fix<br />
immediately!<br />
wizzomafizzo> wtf i hate bon echo >_<<br />
benny> I can't browse with bon echo, what is this... some sort of joke?<br />
wizzomafizzo> i compile my own firefox<br />
benny> firefox <3, bon echo >3<br />
benny> why is swiftweasel not in the repos... I have optimal performance now!<br />
wizzomafizzo> guys i have legitimate problem with weechat<br />
wizzomafizzo> WEECHAT LOL<br />
wizzomafizzo> USE IRSSIi<br />
</pre><br />
<br />
= Other usefull information =<br />
== Abbrevations and jargon ==<br />
; RTFM : Read The Fucking Manual (Yes, ''fucking'' and not ''f*ing'')<br />
; RTFW : Read The Fucking Wiki (Yes, ''fucking'' and not ''f*ing'')<br />
; RTFB : Read The Fucking BBS (Yes, ''fucking'' and not ''f*ing'')<br />
; [{core,extra,testing,unstable,other}] : Usually denotes a [[Official_Repositories|repository]]. Example: "nvidia drivers are in [extra]"<br />
; AUR : Arch User Repository<br />
; ABS : Arch Build System<br />
; ltt : less than three -> '<3' -> 'love'<br />
; TU : Trusted User<br />
; BBS : Bulletin Board System -> 'forum'<br />
<br />
= List of channel operators =<br />
If you for some reason need the help of an op, don't be shy to /q(uery) or /msg us.<br />
Here is the list of ops as of 31.08.2008<br />
* _Caleb_ aka Caleb<br />
* glguy<br />
* WizzoMaFizzo aka wizzo<br />
* tomkx<br />
* codemac<br />
* neri<br />
* Xentac-away aka Xentac<br />
* apeiro<br />
* supa_user<br />
* cactus<br />
* phrakture<br />
* Xilon<br />
* MrElendig aka Mion</div>Alienjeff