Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 17
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 ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    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

  2. #2
    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)

  3. #3
    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

  4. #4
    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....!

  5. #5
    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.

  6. #6
    Just Joined!
    Join Date
    Mar 2006
    Posts
    13
    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

  7. #7
    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

  8. #8
    Just Joined!
    Join Date
    Mar 2006
    Posts
    13
    Have fun with this bug!!!

    Luis

  9. #9
    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!

  10. #10
    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.

Page 1 of 2 1 2 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •