Welcome to Linux Forums! With a comprehensive Linux Forum, information on various types of Linux software and many Linux Reviews articles, we have all the knowledge you need a click away, or accessible via our knowledgeable members.
Find the answer to your Linux question:
New to Linux Forums? Register here for free!
    Linux Forums > GNU Linux Zone > Peripherals / Hardware > Toshiba p100 series sound fix !!!!! in Ubuntu

Forgot Password?
 Peripherals / Hardware   Is your hardware supported? Having trouble getting some hardware working? Post here!

Site Navigation
Linux Articles
Linux Forums
Linux Downloads
Linux Hosting
Free Magazines
Job Board
IRC Chat
RSS Feeds


Linux Forum Topics
Linux Forums
Your Distro
Linux Resources
GNU Linux Zone
The Community
Reply
 
Thread Tools Display Modes
Old 06-18-2007   #1 (permalink)
Just Joined!
 
Join Date: Jun 2007
Posts: 3
Toshiba p100 series sound fix !!!!! in Ubuntu

Toshiba p100 series sound fix !!!!!

--------------------------------------------------------------------------------

Hi guys I just got the sound working on my toshiba P100-188(PSPA3E)bios3.30
I am a complet newby in Ubuntu and Linux overall therefore I will show how to get it working in a very simplified way.
I have combined few threads and miraculously after two weeks of struggle Bonsai.

I started from
1 Ensure that your laptop is connected to the internet.

2 C/C++ Development Tools in order to do it I installed Anjuta ide using automatix however i have got no idea whether it was helpful or not simply just giving you my steps

3) Install bison, flex and libncurses5-dev:
Open a console window and type:

apt-get install bison flex libncurses5-dev


4) Install Intel's ACPI Source Language (iASL) compiler:
Run the FireFox browser and download the "ACPI CA - Unix Build Environment" from here: Advanced Configuration & Power Interface - Downloads. Save the download file (acpica-unix-20061109.tar.gz) under /usr/src. Now, open a console window and type the following to build the iasl application:

cd /usr/src
tar -xvzf acpica-unix-20061109.tar.gz
cd acpica-unix-20061109/compiler
make
If the buils fails, giving you some error messages which include: go to http://forums.xandros.com/viewtopic....f7e 2820ae7cd
and look at point . I did not get this error though

5) Fix the buggy DSDT file
In the console window, type:

cd /usr/src
mkdir dsdt
cd dsdt
cat /proc/acpi/dsdt > DSDT.dat


The last command dumps the contents of your Toshiba's DSDT table into a file called DSDT.dat. Now, decompile the DSDT.dat file by typing:

iasl -d DSDT.dat


This creates an editable ascii text file called DSDT.dsl. Now, we need to find the bugs (errors and warnings) in the DSDT file and fix them. The best way is to try to recompile the DSDT.dsl file and read the errors and warnings generated by the iasl compiler. So type:

iasl -tc DSDT.dsl


The iasl compiler should create two new files: DSDT.hex and DSDT.aml and should display a number of errors and one or more warning messages on your console window. From what I have seen for myself, and have gleaned from the gentoo forums, there are basically five types of modifications you need to make.

First, let's make a back up of your original DSDT.dsl file by typing:

cp DSDT.dsl DSDT_original.dsl


Now, edit your DSDT.dsl file and make the following changes:
(i) Replace all occurrences of the strings "_T_0", "_T_1", "_T_2", etc. with something like "TXT0", "TXT1", "TXT2", etc. (Note: the replacement string should not be more that four characters long).

(ii) Search for "BTST" and add an extra "Else { Return (Zero) }" to the "BTST" method as shown below:
Code:
Method (BTST, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPCB.EC0.KSWH, Local0)
XOr (Local0, 0x01, Local0)
Store (\_SB.PCI0.LPCB.EC0.BTHE, Local7)
Release (\_SB.PCI0.LPCB.EC0.MUT1)
If (Local0)
{
ShiftLeft (Local7, 0x06, Local6)
ShiftLeft (Local7, 0x07, Local7)
Or (Local7, Local6, Local1)
Or (Local0, Local1, Local2)
Return (Local2)
}
Else
{
Return (Zero)
}
}
Else
{
Return (Zero)
}
}

(iii) Search for "EVNT" and add the extra "Return (Zero)" as shown below to Else part of the the "EVNT" method.
Code:
Method (EVNT, 1, NotSerialized)
{
While (VZOK)
{
If (LEqual (VZOK, 0x01))
{
Store (Arg0, VZOK)
Notify (\_SB.VALZ, 0x80)
Return (Zero)
}
Else
{
Sleep (0x05)
Return (Zero)
}
}
}

(iv) Search for "Linux" and comment out a number of lines and add a "Store (0x07D0, OSYS)" as shown below.
Code:
Scope (\_SB)
{
Method (_INI, 0, NotSerialized)
{
If (DTSE)
{
TRAP (0x47)
}

Store (0x07D0, OSYS)
// If (CondRefOf (_OSI, Local0))
// {
// If (_OSI ("Linux"))
// {
// Store (0x03E8, OSYS)
// }
// Else
// {
// Store (0x07D1, OSYS)
// If (_OSI ("Windows 2001 SP2"))
// {
// Store (0x07D2, OSYS)
// }
//
// If (_OSI ("Windows 2001.1"))
// {
// Store (0x07D3, OSYS)
// }
//
// If (_OSI ("Windows 2001.1 SP1"))
// {
// Store (0x07D4, OSYS)
// }
//
// If (_OSI ("Windows 2006"))
// {
// Store (0x07D6, OSYS)
// }
//
// If (LAnd (MPEN, LEqual (OSYS, 0x07D1)))
// {
// TRAP (0x3D)
// }
// }
// }
Store (0x07D6, OSYS) // Fake Windows 2006
}

(v) Search for "PNP0C14" and replace all occurrences of ``Name (_HID, "*PNP0C14")'' with `` Name (_HID, "PNP0C14")''. Save your changes and quit.

Note: if you are unsure if your changes are correct, here is a link to a fixed DSDT file: http://vosek.com/dsdt.dsl (courtesy gentoo forums). You can compare it with your own.

Now, recompile your fixed DSDT file by typing:

iasl -tc DSDT.dsl


Verify that there are no errors and that a new DSDT.hex file has been created.
6)
Code:
cd /usr/src/dsdt
cp DSDT.aml /etc/initramfs-tools/
mkinitramfs -o /boot/your-new-initrd-image-name-here

(for example /boot/initrd.img-2.6.20-16-generic-DSDTfix )

then open up grub's menu.lst

Code:

nano /boot/grub/menu.lst


and find a line that looks something like:

initrd /boot/initrd.img-2.6.20-16-generic

REPLACE WITH
initrd /boot/initrd.img-2.6.20-16-generic-DSDTfix

or whatever name you gave it

than reboot and you are going to hear a miracle
I am also going to install alsa drivers

Here are the links i have taken the information from

http://www.linuxquestions.org/questi...d.php?t=531575
http://forums.xandros.com/viewtopic....f7e 2820ae7cd

here is the link how to install intel hda alsa drivers https://help.ubuntu.com/community/HdaIntelSoundHowto
kamwla is offline  


Reply With Quote
Old 07-05-2007   #2 (permalink)
Just Joined!
 
Join Date: Jul 2007
Posts: 2
Hi,

I just followed your guide, and I'm afraid it doesn't work for me. The .dsl file has all the problem expected that you list, and I've fixed them accordingly. Compiles fine without problems after fixes.

Quick check, when you say check that a new DSDT.hex has been created. Should I be doing anything with this .hex file (your guide doesn't mention it at all after that point)
CarinArr is offline   Reply With Quote
Old 07-05-2007   #3 (permalink)
Just Joined!
 
Join Date: Jul 2007
Posts: 2
Ah..

changing:
cp DSDT.aml /etc/initramfs-tools/

to
cp DSDT.aml /etc/initramfs-tools/DSDT

and it works perfectly.

Thanks! Much appreciated
CarinArr is offline   Reply With Quote
Old 07-08-2007   #4 (permalink)
Just Joined!
 
Join Date: Jul 2007
Posts: 1
Talking

Quote:
Originally Posted by kamwla View Post
Toshiba p100 series sound fix !!!!!

--------------------------------------------------------------------------------

Hi guys I just got the sound working on my toshiba P100-188(PSPA3E)bios3.30
I am a complet newby in Ubuntu and Linux overall therefore I will show how to get it working in a very simplified way.
I have combined few threads and miraculously after two weeks of struggle Bonsai.

I started from
1 Ensure that your laptop is connected to the internet.

2 C/C++ Development Tools in order to do it I installed Anjuta ide using automatix however i have got no idea whether it was helpful or not simply just giving you my steps

3) Install bison, flex and libncurses5-dev:
Open a console window and type:

apt-get install bison flex libncurses5-dev


4) Install Intel's ACPI Source Language (iASL) compiler:
Run the FireFox browser and download the "ACPI CA - Unix Build Environment" from here: Advanced Configuration & Power Interface - Downloads. Save the download file (acpica-unix-20061109.tar.gz) under /usr/src. Now, open a console window and type the following to build the iasl application:

cd /usr/src
tar -xvzf acpica-unix-20061109.tar.gz
cd acpica-unix-20061109/compiler
make
If the buils fails, giving you some error messages which include: go to http://forums.xandros.com/viewtopic....f7e 2820ae7cd
and look at point . I did not get this error though

5) Fix the buggy DSDT file
In the console window, type:

cd /usr/src
mkdir dsdt
cd dsdt
cat /proc/acpi/dsdt > DSDT.dat


The last command dumps the contents of your Toshiba's DSDT table into a file called DSDT.dat. Now, decompile the DSDT.dat file by typing:

iasl -d DSDT.dat


This creates an editable ascii text file called DSDT.dsl. Now, we need to find the bugs (errors and warnings) in the DSDT file and fix them. The best way is to try to recompile the DSDT.dsl file and read the errors and warnings generated by the iasl compiler. So type:

iasl -tc DSDT.dsl


The iasl compiler should create two new files: DSDT.hex and DSDT.aml and should display a number of errors and one or more warning messages on your console window. From what I have seen for myself, and have gleaned from the gentoo forums, there are basically five types of modifications you need to make.

First, let's make a back up of your original DSDT.dsl file by typing:

cp DSDT.dsl DSDT_original.dsl


Now, edit your DSDT.dsl file and make the following changes:
(i) Replace all occurrences of the strings "_T_0", "_T_1", "_T_2", etc. with something like "TXT0", "TXT1", "TXT2", etc. (Note: the replacement string should not be more that four characters long).

(ii) Search for "BTST" and add an extra "Else { Return (Zero) }" to the "BTST" method as shown below:
Code:
Method (BTST, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPCB.EC0.KSWH, Local0)
XOr (Local0, 0x01, Local0)
Store (\_SB.PCI0.LPCB.EC0.BTHE, Local7)
Release (\_SB.PCI0.LPCB.EC0.MUT1)
If (Local0)
{
ShiftLeft (Local7, 0x06, Local6)
ShiftLeft (Local7, 0x07, Local7)
Or (Local7, Local6, Local1)
Or (Local0, Local1, Local2)
Return (Local2)
}
Else
{
Return (Zero)
}
}
Else
{
Return (Zero)
}
}

(iii) Search for "EVNT" and add the extra "Return (Zero)" as shown below to Else part of the the "EVNT" method.
Code:
Method (EVNT, 1, NotSerialized)
{
While (VZOK)
{
If (LEqual (VZOK, 0x01))
{
Store (Arg0, VZOK)
Notify (\_SB.VALZ, 0x80)
Return (Zero)
}
Else
{
Sleep (0x05)
Return (Zero)
}
}
}

(iv) Search for "Linux" and comment out a number of lines and add a "Store (0x07D0, OSYS)" as shown below.
Code:
Scope (\_SB)
{
Method (_INI, 0, NotSerialized)
{
If (DTSE)
{
TRAP (0x47)
}

Store (0x07D0, OSYS)
// If (CondRefOf (_OSI, Local0))
// {
// If (_OSI ("Linux"))
// {
// Store (0x03E8, OSYS)
// }
// Else
// {
// Store (0x07D1, OSYS)
// If (_OSI ("Windows 2001 SP2"))
// {
// Store (0x07D2, OSYS)
// }
//
// If (_OSI ("Windows 2001.1"))
// {
// Store (0x07D3, OSYS)
// }
//
// If (_OSI ("Windows 2001.1 SP1"))
// {
// Store (0x07D4, OSYS)
// }
//
// If (_OSI ("Windows 2006"))
// {
// Store (0x07D6, OSYS)
// }
//
// If (LAnd (MPEN, LEqual (OSYS, 0x07D1)))
// {
// TRAP (0x3D)
// }
// }
// }
Store (0x07D6, OSYS) // Fake Windows 2006
}

(v) Search for "PNP0C14" and replace all occurrences of ``Name (_HID, "*PNP0C14")'' with `` Name (_HID, "PNP0C14")''. Save your changes and quit.

Note: if you are unsure if your changes are correct, here is a link to a fixed DSDT file: http://vosek.com/dsdt.dsl (courtesy gentoo forums). You can compare it with your own.

Now, recompile your fixed DSDT file by typing:

iasl -tc DSDT.dsl


Verify that there are no errors and that a new DSDT.hex file has been created.
6)
Code:
cd /usr/src/dsdt
cp DSDT.aml /etc/initramfs-tools/
mkinitramfs -o /boot/your-new-initrd-image-name-here

(for example /boot/initrd.img-2.6.20-16-generic-DSDTfix )

then open up grub's menu.lst

Code:

nano /boot/grub/menu.lst


and find a line that looks something like:

initrd /boot/initrd.img-2.6.20-16-generic

REPLACE WITH
initrd /boot/initrd.img-2.6.20-16-generic-DSDTfix

or whatever name you gave it

than reboot and you are going to hear a miracle
I am also going to install alsa drivers

Here are the links i have taken the information from

http://www.linuxquestions.org/questi...d.php?t=531575
http://forums.xandros.com/viewtopic....f7e 2820ae7cd

here is the link how to install intel hda alsa drivers https://help.ubuntu.com/community/HdaIntelSoundHowto
THANKS FOR THIS TOP POST! BEEN TRYING TO FIX THIS FOR ABOUT 3 MONTHS. NOW WORKS PERFECTLY. CHEERS....!
BradLondon is offline   Reply With Quote
Old 07-17-2007   #5 (permalink)
Just Joined!
 
Join Date: Jul 2007
Posts: 1
alas it didn't work for me....this sound thing is a real pain, starting to use linux has been really fun and I like it alot, but the no sound issue is a bit of a deal breaker to be honest. It's been 3 months now and I still can't get it to work. Back to xp again I guess.
htbeast is offline   Reply With Quote
Old 09-29-2007   #6 (permalink)
Just Joined!
 
Join Date: Mar 2006
Posts: 13
Send a message via Yahoo to LuisC-SM
Quote:
Originally Posted by kamwla View Post
Toshiba p100 series sound fix !!!!!

--------------------------------------------------------------------------------
...............
http://www.linuxquestions.org/questi...d.php?t=531575
http://forums.xandros.com/viewtopic....f7e 2820ae7cd

here is the link how to install intel hda alsa drivers https://help.ubuntu.com/community/HdaIntelSoundHowto
Hi..
Thanks for the credit (although is not only mine)
The first URL is wrong (and I think the rest of them too.. so here is the url you mention on my side
Regards
Luis
HowTo Fix ACPI + ICH7 family (Conexant) Driver on Toshiba P100/105 series - LinuxQuestions.org
LuisC-SM is offline   Reply With Quote
Old 10-23-2007   #7 (permalink)
Just Joined!
 
Join Date: Oct 2007
Posts: 1
I am a poster of the original thread on linuxquestions, helping with the solution for versions of Ubuntu/Debian, and it stopped working for me with the newer kernels (21 or 22+)

Is there any one of you who has this working for Gutsy Gibbon?

EDIT:
I found that Luis has this problem too:
https://bugs.launchpad.net/ubuntu/+s...22/+bug/136469
Dutchy is offline   Reply With Quote
Old 10-24-2007   #8 (permalink)
Just Joined!
 
Join Date: Mar 2006
Posts: 13
Send a message via Yahoo to LuisC-SM
Have fun with this bug!!!

Luis
LuisC-SM is offline   Reply With Quote
Old 11-20-2007   #9 (permalink)
Just Joined!
 
Join Date: Nov 2007
Posts: 1
A miracle... yes, that describes the feeling nicely. I wrestled with this problem for several months, then gave up a while ago, then followed this post step by step + now Ubuntu sings its full glory (haven't tried also drivers yet). Thanks, kamwla, good luck to the rest!
emcjagger is offline   Reply With Quote
Old 12-27-2007   #10 (permalink)
Just Joined!
 
Join Date: Dec 2007
Posts: 2
Thanks all, Toshiba P105-S9337 Works!

I want to thanks everyone here for all their input. After 6 months owning a Toshiba P105-S9337, I finally have everything working properly with the current Kubuntu Gutsy Gibbin v7.10; sound, acpi and nvidia drivers!

The process was:
1. Update my bios to v4.2
2. Download a kernel fix from http://fragglenet.com/tools/toshiba_...7111300.tar.gz
3. Fix dsdt for nvidia temperature using instructions at http://www.linuxforums.org/forum/new...ote=1&p=477653
4. Open Terminal and enter these commands:
* tar xvf toshiba_dsdt_kernel_fix.2.6.22-14_2007111300.tar.gz
* cd toshiba_dsdt_kernel_fix.2.6.22-14_2007111300/
* dpkg -i *.deb
5. Reboot computer and enjoy.
6. Use "Envy" from Envy to configure the latest Nvidia drivers for this computer

That's it.
MarcRJacobs is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Free Magazines
Run Your Own Web Server Using Linux & Apache - Free 191 Page Preview
Learn about everything you'll need to build and maintain your Linux servers, and to deploy Web applications to them.
subscribe
Open Source Security Myths Dispelled
Dispel the five major myths surrounding Open Source Security and gain the tools necessary to make a truly informed decision for your IT organization
subscribe
InformationWeek
InformationWeek is the only newsweekly you'll need to stay on top of the latest developments in information technology.
subscribe



All times are GMT. The time now is 02:13 AM.






© 2000 - 2009 - All Rights Reserved - Property of  MAS Media

Content Relevant URLs by vBSEO 3.3.0 RC2