Skocz do zawartości

Rozwiązanie dla procesora Core 2 Duo T5500


ydk2
 Udostępnij

Rekomendowane odpowiedzi

Jak wiecie T5500 w OSX pracuje albo w ustawieniu solo, lub cpus=1 , daję rozwiązanie problemu pracy na obydwu rdzeniach.

Sprawa jest w sumie prosta, edycja DSDT:

1. Szukamy w PROCESSOR, metodzie INI zawartej w CSTH linijki:

\_SB.ISMI (0x3D, Zero, Zero, Zero)

i zamieniamy pomarańczową 0x3D wartość na 0x46

To chyba w miarę jasne tu jest fragment mojego przed:

DefinitionBlock ("DSDT.aml", "DSDT", 1, "HP    ", "nx7400", 0x00010000) 
{ 
   External (\_SB_.C002.C003.C005.C19C) 
   Name (C000, Zero) 
   Processor (_PR.CPU0, 0x01, 0x00001010, 0x06) 
   { 
       Name (C001, Zero) 
       Method (CSTH, 0, NotSerialized) 
       { 
           If (LEqual (C001, Zero)) 
           { 
               Store (One, C001) 
               Store (Zero, \_SB.C002.C003.C004) 
           } 
           Store (\_SB.C002.C003.C005.C006 (), Local0) 
           Return (Local0) 
       } 
       Method (INI, 0, NotSerialized) 
       { 
           If (LAnd (And (\_SB.C007, 0x01000000), LEqual (C008 (), 0x04))) 
           { 
               \_SB.ISMI (0x3D, Zero, Zero, Zero) 
           } 
       } 
       Method (PPC, 0, NotSerialized) 
       { 
           Return (C009 ()) 
       } 
   } 
   Processor (_PR.CPU1, 0x02, 0x00001010, 0x06) 
   { 
       Method (PPC, 0, NotSerialized) 
       { 
           Return (C009 ()) 
       } 
   }

l po:

DefinitionBlock ("DSDT.aml", "DSDT", 1, "HP    ", "nx7400", 0x00010000) 
{ 
   External (\_SB_.C002.C003.C005.C19C) 
   Name (C000, Zero) 
   Processor (_PR.CPU0, 0x01, 0x00001010, 0x06) 
   { 
       Name (C001, Zero) 
       Method (CSTH, 0, NotSerialized) 
       { 
           If (LEqual (C001, Zero)) 
           { 
               Store (One, C001) 
               Store (Zero, \_SB.C002.C003.C004) 
           } 
           Store (\_SB.C002.C003.C005.C006 (), Local0) 
           Return (Local0) 
       } 
       Method (INI, 0, NotSerialized) 
       { 
           If (LAnd (And (\_SB.C007, 0x01000000), LEqual (C008 (), 0x04))) 
           { 
               \_SB.ISMI (0x46, Zero, Zero, Zero) 
           } 
       } 
       Method (PPC, 0, NotSerialized) 
       { 
           Return (C009 ()) 
       } 
   } 
   Processor (_PR.CPU1, 0x02, 0x00001010, 0x06) 
   { 
       Method (PPC, 0, NotSerialized) 
       { 
           Return (C009 ()) 
       } 
   }

2. dodajemy do metody _SB._INI wiersz:

ISMI (0x46, Zero, Zero, Zero)

czyli z kodu:

    Method (_SB._INI, 0, NotSerialized) 
   { 
       \C008 () 
       C01B () 
   }

powinniśmy otrzymać:

    Method (_SB._INI, 0, NotSerialized) 
   { 
       \C008 () 
       C01B () 
       ISMI (0x46, Zero, Zero, Zero) 
   }

 

Mam madzieję, że komuś się przyda i pomogłem.

 

[ Dodano: 2012-10-08, 00:29 ]

Dodatkowo można dodać mu kext VoodooPowerMini dla pracy w normalnych temperaturach (48-61 stopni),

na pewno trzeba wyrzucić NullCPUPowerManager.

podana temperatura to normalna praca , przeglądanie stron, dokumentów itd...

filmy na Youtube to jakieś 55 do 70 stopni,

Jeszcze po poprawce nie wszedł mi na więcej niż 78 tu akurat w grach pod Wine.

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie
 Udostępnij

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystanie z tej witryny, wymaga zakceptowanie naszych warunków Warunki użytkowania.