-->Donations via PayPal [External Link Removed for Guests] :guitar
-->Installation/Post Installation Tutorial [Local Link Removed for Guests]
-->Useful Links [Local Link Removed for Guests]
-->Olarila Images - Updated images [Local Link Removed for Guests]
-->Guides and Tutorials [Local Link Removed for Guests]
-->Clover Folder for All Chipsets [Local Link Removed for Guests]
-->DSDT Patch Requests [Local Link Removed for Guests]

Fix para SATA AHCI lento

Post Reply
User avatar
oldnapalm
Olarila Staff
Olarila Staff
Posts: 1225
Joined: 05 Dec 2010, 20:49

Fix para SATA AHCI lento

Post by oldnapalm » 24 Dec 2010, 12:47

Fix para placas que apresentam baixa performance dos HDs SATA quando no modo AHCI (outros HDs que não o do sistema). Consiste em passar os IRQs dos devices RTC0 e TMR para o device HPET (opcional mas recomendado) e liberar o IRQ do device PIC para ser usado pela controladora SATA (esta é a "chave" do fix).

Fix por THe KiNG do Project OS X
[External Link Removed for Guests]

HPET original:

Code: [Local Link Removed for Guests]

                Device (HPET)
                {
                    Name (_HID, EisaId ("PNP0103"))
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0xFED00000,         // Address Base
                            0x00000400,         // Address Length
                            _Y0F)
                    })
                    OperationRegion (^LPCR, SystemMemory, 0xFED1F404, 0x04)
                    Field (LPCR, AnyAcc, NoLock, Preserve)
                    {
                        HPTS,   2, 
                            ,   5, 
                        HPTE,   1, 
                                Offset (0x04)
                    }

                    Method (_STA, 0, NotSerialized)
                    {
                        If (LEqual (OSFL (), Zero))
                        {
                            If (HPTE)
                            {
                                Return (0x0F)
                            }
                        }
                        Else
                        {
                            If (HPTE)
                            {
                                Return (0x0B)
                            }
                        }

                        Return (Zero)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y0F._BAS, HPT)
                        Multiply (HPTS, 0x1000, Local0)
                        Add (Local0, 0xFED00000, HPT)
                        Return (CRS)
                    }
                }
HPET modificado:

Code: [Local Link Removed for Guests]

                Device (HPET)
                {
                    Name (_HID, EisaId ("PNP0103"))
                    Name (CRS, ResourceTemplate ()
                    {
                        IRQNoFlags ()
                            {0}
                        IRQNoFlags ()
                            {8}
                        Memory32Fixed (ReadOnly,
                            0xFED00000,         // Address Base
                            0x00000400,         // Address Length
                            _Y0F)
                    })
                    OperationRegion (^LPCR, SystemMemory, 0xFED1F404, 0x04)
                    Field (LPCR, AnyAcc, NoLock, Preserve)
                    {
                        HPTS,   2, 
                            ,   5, 
                        HPTE,   1, 
                                Offset (0x04)
                    }

                    Method (_STA, 0, NotSerialized)
                    {
                        If (LEqual (OSFL (), Zero))
                        {
                            If (HPTE)
                            {
                                Return (0x0F)
                            }
                        }
                        Else
                        {
                            If (HPTE)
                            {
                                Return (0x0B)
                            }
                        }

                        Return (Zero)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y0F._BAS, HPT)
                        Multiply (HPTS, 0x1000, Local0)
                        Add (Local0, 0xFED00000, HPT)
                        Return (CRS)
                    }
                }
RTC0 original:

Code: [Local Link Removed for Guests]

                Device (RTC0)
                {
                    Name (_HID, EisaId ("PNP0B00"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0070,             // Range Minimum
                            0x0070,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {8}
                    })
                }
RTC0 modificado:

Code: [Local Link Removed for Guests]

                Device (RTC0)
                {
                    Name (_HID, EisaId ("PNP0B00"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0070,             // Range Minimum
                            0x0070,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                    })
                }
TMR original:

Code: [Local Link Removed for Guests]

                Device (TMR)
                {
                    Name (_HID, EisaId ("PNP0100"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0040,             // Range Minimum
                            0x0040,             // Range Maximum
                            0x00,               // Alignment
                            0x04,               // Length
                            )
                        IRQNoFlags ()
                            {0}
                    })
                }
TMR modificado:

Code: [Local Link Removed for Guests]

                Device (TMR)
                {
                    Name (_HID, EisaId ("PNP0100"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0040,             // Range Minimum
                            0x0040,             // Range Maximum
                            0x01,               // Alignment
                            0x04,               // Length
                            )
                    })
                }
PIC original:

Code: [Local Link Removed for Guests]

                Device (PIC)
                {
                    Name (_HID, EisaId ("PNP0000"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0020,             // Range Minimum
                            0x0020,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x00A0,             // Range Minimum
                            0x00A0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {2}
                    })
                }
PIC modificado:

Code: [Local Link Removed for Guests]

                Device (PIC)
                {
                    Name (_HID, EisaId ("PNP0000"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0020,             // Range Minimum
                            0x0020,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x00A0,             // Range Minimum
                            0x00A0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                    })
                }
deantonibrito
Posts: 96
Joined: 13 Jul 2011, 07:30

Re: Fix para SATA AHCI lento

Post by deantonibrito » 13 Jul 2011, 07:37

Obrigado pelo post. É oq eu procurava. Porem Está me gerando muitas dúvidas.

Uso a placa ASUS p6td Deluxe.. instal todo no insanelymac.. DSDT by Ifabio

SInto lentidão qdo o hd estáem atividade.. (como criar abas no Safari, etc)

Editei a dsdt extamente como acima e continua igual!! A não a temperatura q aumentou em 10º!!??

Como consigo o IOregister?

Imploro por uma ajuda..!!

obrigado
User avatar
oldnapalm
Olarila Staff
Olarila Staff
Posts: 1225
Joined: 05 Dec 2010, 20:49

Re: Fix para SATA AHCI lento

Post by oldnapalm » 13 Jul 2011, 16:11

Use o Auto-Patcher, essa placa é suportada
[Local Link Removed for Guests]

Instalação conforme este tópico
[Local Link Removed for Guests]
deantonibrito
Posts: 96
Joined: 13 Jul 2011, 07:30

Re: Fix para SATA AHCI lento

Post by deantonibrito » 13 Jul 2011, 19:24

Já usei e não mudou nada..
Esse problema ja está ficando insuportável mesmo!!

tks man!!!
User avatar
oldnapalm
Olarila Staff
Olarila Staff
Posts: 1225
Joined: 05 Dec 2010, 20:49

Re: Fix para SATA AHCI lento

Post by oldnapalm » 13 Jul 2011, 19:29

Antes de rodar o Auto-Patcher, remova esse DSDT pronto que você baixou e reinicie.
deantonibrito
Posts: 96
Joined: 13 Jul 2011, 07:30

Re: Fix para SATA AHCI lento

Post by deantonibrito » 13 Jul 2011, 19:56

Não vai dar pau reiniciar sem o DSDT?
User avatar
oldnapalm
Olarila Staff
Olarila Staff
Posts: 1225
Joined: 05 Dec 2010, 20:49

Re: Fix para SATA AHCI lento

Post by oldnapalm » 13 Jul 2011, 20:33

Não deveria, mas se você tem receio, rode o Auto-Patcher no Windows, ou renomeie o dsdt.aml e caso não funcionar sem, basta especificar o nome do arquivo no boot: DSDT=/Extra/velho.aml -v
deantonibrito
Posts: 96
Joined: 13 Jul 2011, 07:30

Re: Fix para SATA AHCI lento

Post by deantonibrito » 13 Jul 2011, 20:56

removi, restartei e dei o auto patcher..

problema persistiu.

Editei o HPET igual do The King tbm.. e nada
kimmysawi
Posts: 2
Joined: 17 Jul 2018, 12:44
CPU: i5
Motherboard: Intel
GPU: 2.2

Fix para SATA AHCI lento

Post by kimmysawi » 19 Jul 2018, 09:05

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests] Uso a placa ASUS p6td Deluxe.. instal todo no insanelymac.. [External Link Removed for Guests] DSDT by Ifabio

SInto lentidão qdo o hd estáem atividade.. (como criar abas no Safari, etc)
All of these can measure with do and die situation because of that Graphic and Nvidea card :(
Post Reply

Return to “DSDT”