Forum RSS Feed Follow @ Twitter Follow On Facebook

Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[-]
Welcome
You have to register before you can post on our site.

Username:


Password:





[-]
Latest Threads
Gigabyte G6X 9MG insydeH2O IOS Unlock
Last Post: Foel1991
Today 07:12 AM
» Replies: 3
» Views: 1316
[REQUEST] Acer Aspire A515-52(G) BIOS Un...
Last Post: VissarionovichIvan
Yesterday 05:16 PM
» Replies: 7
» Views: 6644
[REQUEST] Lenovo IdeaPad Gaming 3 15IMH0...
Last Post: Dudu2002
Yesterday 04:18 PM
» Replies: 60
» Views: 43385
BIOS Mod for Sony VGC RA940G (ASUS P5LP-...
Last Post: DTDeniz
Yesterday 03:50 PM
» Replies: 9
» Views: 2447
[REQUEST] Lenovo IdeaPad U310 & U410 (65...
Last Post: elventorro
Yesterday 03:08 PM
» Replies: 1786
» Views: 786389
[REQUEST] Acer Switch 10 SW5-012 BIOS Un...
Last Post: pedro691
Yesterday 12:53 PM
» Replies: 45
» Views: 26790
[REQUEST] Lenovo Thinkpad T540p (GMETxxW...
Last Post: bildmacher
Yesterday 10:49 AM
» Replies: 84
» Views: 57514
Hp probook 6560B Upgrade to Ivy Bridge
Last Post: Ricsi999
Yesterday 10:20 AM
» Replies: 4
» Views: 200
[REQUEST] Acer Predator Helios 300 PH315...
Last Post: Dudu2002
Yesterday 08:52 AM
» Replies: 4
» Views: 117
REQUEST Dell Latitude 6430U Bios extract
Last Post: Smarty
11-26-2025 07:08 PM
» Replies: 1
» Views: 2661
[REQUEST] Lenovo G710 BIOS Whitelist Rem...
Last Post: xubix
11-26-2025 03:22 PM
» Replies: 498
» Views: 261867
[REQUEST] HP ENVY - 17-r102nl (W6X06EA#A...
Last Post: SpaghettONE
11-25-2025 04:51 PM
» Replies: 0
» Views: 189
HP Elitebook 8540w Microcode for I7 920X...
Last Post: DeathBringer
11-25-2025 01:44 PM
» Replies: 9
» Views: 848
[REQUEST] HP Pavilion DM4-2101er BIOS F....
Last Post: Nylon
11-25-2025 01:43 AM
» Replies: 1
» Views: 316
ThinkPad W520 - Corrupted ME
Last Post: lovie_loveth
11-24-2025 10:07 PM
» Replies: 0
» Views: 156
[REQUEST] Lenovo IdeaPad S400 (6DCNxxWW)...
Last Post: MasterSil
11-24-2025 08:09 PM
» Replies: 336
» Views: 176545
HP Pro 3300 & 3400 (H61): Upgrade to Ivy...
Last Post: acidmonkey
11-24-2025 03:14 PM
» Replies: 129
» Views: 131608
BIOS ESS Xerox C60
Last Post: JSteen
11-24-2025 02:37 PM
» Replies: 0
» Views: 144
[REQUEST] Acer Nitro 5 AN517-54 BIOS Unl...
Last Post: Carlos_Eduardo13087
11-24-2025 12:25 PM
» Replies: 30
» Views: 12328
[REQUEST] Acer Predator PHN16-72 BIOS Un...
Last Post: Dudu2002
11-24-2025 07:11 AM
» Replies: 3
» Views: 2722

Dell Vostro 3450 Advanced Options unlocking in progress
In UEFI mode, the "fast startup" doesn't work, I got stuck with it everytime so I did turn it off.
find
quote
Hi guys, sorry for interrupting your Windows 8 stuff here.
I'm currently messing with DSDT again to see whether I can find the cause of touchpad and keyboard initialization problem.

There is some weird check in DSDT regarding the keyboard. I'm not sure what it does:
Code:
Device (PS2K)
{
Name (_HID, EisaId ("PNP0303"))
Method (_STA, 0, NotSerialized)
{
If (And (LEqual (PKBD, 0xFF), LEqual (PKBC, 0xFF))) // what is this check for?
{
Return (Zero) // so it disables the keyboard in some situation?
}
Return (0x0F)
}
Same goes for the touchpad:
Code:
Device (PS2M)
{
Method (_HID, 0, NotSerialized)
{
If (LEqual (BRID, One))
{
Return (0x8F058C11) // As we figured out, this is touchpad model detection thing for different models of Vostro 3450
}
Else
{
Return (0x93058C11) // Another touchpad model ID
}
}

Name (_CID, EisaId ("PNP0F13")) // This is a generic name for PS/2 mouse/touchpad
Method (_STA, 0, NotSerialized)
{
If (And (LEqual (PKBD, 0xFF), LEqual (PKBC, 0xFF)))
{
Return (Zero) // So it disables the compatible generic touchpad ID and reports DLL04C5 or whatever it is for another model. What triggers it to report the compatible ID, then?
}
Return (0x0F)
}
I decided to remove all these checks and make it look like a generic touchpad.
So far, I've been able to do this:
https://dl.dropbox.com/u/91178815/touchpad.png
As you see, there's no DLL04C5 or any other Dell ID. Which is good because it is now detected as an ordinary touchpad. You can install any Synaptics driver for it (though you were able to with the original ID too).
To make Fn+F3 combination work, simply import this regfile:
Code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SynTP\Parameters]
"WheelmouseRedetectToResync"=dword:00000001
"VerifyKBCSync"=dword:00000001
"KeyboardController"=dword:00000001
"DetectForceCompatibilityMode"=dword:00000001
"KBCDisableConfig"=dword:00000001
"KBCNotifyConfig"=dword:00000031
"DisableKey"=dword:0000e01e
"HotkeyEnableMask"=dword:07070707
The modified DSDT code is as follows:
Code:
Device (PS2K)
{
Name (_HID, EisaId ("PNP0303"))
Name (_STA, 0x0F)
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{1}
})
Name (_PRS, ResourceTemplate ()
{
StartDependentFn (0x00, 0x00)
{
FixedIO (
0x0060, // Address
0x01, // Length
)
FixedIO (
0x0064, // Address
0x01, // Length
)
IRQNoFlags ()
{1}
}
EndDependentFn ()
})
}

Device (PS2M)
{
Name (_HID, EisaId ("PNP0F13"))
Name (_STA, 0x0F)
Name (_CRS, ResourceTemplate ()
{
IRQ (Edge, ActiveHigh, Exclusive, )
{12}
})
Name (_PRS, ResourceTemplate ()
{
StartDependentFn (0x00, 0x00)
{
IRQNoFlags ()
{12}
}
EndDependentFn ()
})
}
}
}
}
I'm not sure if this fixes the initialization problem, but let's see how it goes. I'm testing it right now.
find
quote
The Fn+F3 trick worked fine with a Dell driver 16.2.12.13 from Vostro Notebook 2421, thank you. I've forgot to report it as working over at ixbt.
I find DSDT modification unnecessary as most of the things work anyway.
The cause of Fn+F2 not working may be the same cause of shutdown working improperly in UEFI mode (which is also the case for OSX, actually and I blamed Clover EmuVariable driver for this ..). As far as we were able to troubleshoot, the issue appears to be related with memory allocation.. in UEFI mode memory regions are distributes slightly different as to what DSDT suggest.. and as such it causes the system to freeze when attempting to write a certain register. One thing is not right here - why only a certain value written hands the system..

The _SAT method is actually device status 0x0F = enabled, 0x00 = disabled, but you've figured it out already.
The check for PKBD and PKBC appears to be related with
Code:
OperationRegion (PKBS, SystemIO, 0x60, 0x05)
                Field (PKBS, ByteAcc, Lock, Preserve)
                {
                    PKBD,   8,  // probably keyboard device
                    Offset (0x02),
                    Offset (0x03),
                    Offset (0x04),
                    PKBC,   8 // keyboard controller
                }
both PS2 peripherals will be disabled if controller failed to initialize and. This SystemIO is actually SuperIO, which in our case is ITE8518E chip.
but across all the DSDTs i've seen only Dell appears to be checking for this status, which may explain why it randomly stops working at times..
find
quote
Thanks TW, makes a lot more sense now.

I still don't understand one thing though. Why would they describe a condition when ITE8518E fails to initialize? It's not supposed to happen on a laptop unless there's a hardware problem. I think this check is implemented badly and it may actually be the reason it messes up keyboard and touchpad initialization.

Anyway, I guess it is safe to leave the BRID check there and it will report correct touchpad models?

I have tested two drivers with the generic ID. The driver from Dell website works fine. Fn+F3 doesn't work, but it isn't a problem if you import the .reg file.
16.3.3.8 (the latest one I have) seems a bit messy. I got it to work with Fn+F3, but the LED behavior is strange. If the touchpad is disabled (LED is on) and you press Fn+F3, it flashes once and stays on. The touchpad gets enabled though.
find
quote
I guess it's a rhetoric question which has no answer for obvious reasons - god knows what were Dell thinking when they implemented the check.
The BRID should be fine I guess, it allows to distinguish AMD SG model from Intel-only model, actually display switching is done based on the same check.
Newer drivers (16.3) seem tho think I've got a touch panel installed and they shove onscreen keyboard at me, removing the language switching bar, which is weird. Hence I'm sticking with 16.2 series of drivers for now.
find
quote
So, I restored the BRID check and the touchpad has a yellow bang now. Same Error 10 ("The device cannot start"). The keyboard is working fine though.
What am I doing wrong here?
Code:
Device (PS2M)
                {
                  Method (_HID, 0, NotSerialized)
                    {
                        If (LEqual (BRID, One))
                        {
                            Return (0xC5048C11)
                        }
                        Else
                        {
                            Return (0xD9048C11)
                        }
                    }

                    Name (_CID, EisaId ("PNP0F13"))                    
                    Name (_STA, 0x0F)
                    Name (_CRS, ResourceTemplate ()
                    {
                        IRQ (Edge, ActiveHigh, Exclusive, )
                            {12}
                    })
                    Name (_PRS, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IRQNoFlags ()
                                {12}
                        }
                        EndDependentFn ()
                    })
                }
Also, can you please provide a link for the driver you're using? I tried to download it from Dell website, but it gave me an empty SFX archive with nothing but "version.txt"...
find
quote
Not sure what's the deal. Try making it always return 0xC5048C11 ... as this is the id that corresponds to AMD models.
Here's the link (the driver is originally made for Computers: Inspiron: 3421; Vostro Notebook: 2421): http://www.dell.com/support/drivers/us/en/19/DriverDetails/Product/inspiron-14-3421?driverId=NHW53&fileId=3143174396&osCode=W864
find
quote
Yeah, I just set _HID to 0xC5048C11, and it is working fine now. Interesting. Perhaps the KBC status check was implemented to allow for BRID check? lollll
I think it's safe to leave it 0xC5048C11 even for Intel-only models because from what I've seen it's exactly the same touchpad. I don't even know why they have different IDs for it. The hotkeys are also the same.
Thanks for the link, I'll try this driver and report back shortly.

OK... Tried it.
The LED works fine. There's a small issue though. When you boot Windows and the LED is on for whatever reason, its behavior gets reversed. Apart from that, everything's working fine.
I'm still sticking to 16.3.8.8 because it has an option to disable the touchpad activation gesture, doesn't have annoying balloon popups, and the configuration utility loads much faster. I can't get the LED to work properly with Fn+F3, but I guess this is a little sacrifice I have to make here.

I have restarted my computer like 20 times and haven't had a single issue with the keyboard! I hope this is the solution to the initialization problem.
find
quote
TW, do you know where Fn+F3 is defined in DSDT? I can't seem to find 0xE01E WMI code there...
I have an idea about fixing the "disable LED" on newer drivers. To verify it, I need to disable the part where it writes to the EC to turn the LED on/off. I thought it was somewhere in DSDT but I can't find it. Is it coded somewhere else?
find
quote
The register doesnt even have a name iirc. Go to github.com/Dolnor and see dsdt commentary for ec registers.
find
quote


Forum Jump:


Users browsing this thread: 6 Guest(s)