jakeday / linux-surface

Linux Kernel for Surface Devices
2.6k stars 244 forks source link

Surface Laptop: Keyboard Doesn't Work #5

Closed iddover closed 5 years ago

iddover commented 6 years ago

I'm sorry to report this issue but I've tried the .deb kernel and touch start to work but no the keyboard, If I could het you in any way, pls tell me!

jakeday commented 6 years ago

I'll look into this. The identifiers are there and correct now, so it should see it. Unfortunately I don't have a device to test on so I'm kinda guessing. :)

iddover commented 6 years ago

I will send you one If I could!! But I'm sorry to tell you that I cannot affoard it :(

The laptop is my daugter's laptop (I have a old fashion Centrino 2 VAIO thath works very well) but I thing that is like putting hangcuts to her mind to teach how to handle this Windows S thing... FTSG.

Then you are my only option in the world to install linux in this laptop beauty, If you need I coud run some tests or do warever you need in order to make it work!

ty

ghost commented 6 years ago

I'm happy to help with any testing or providing any data.

jeroen79 commented 6 years ago

it doesn't seem to be a usb keyboard, windows give the following:

HID\VEN_MSHW&DEV_0096&Col01

parent: ACPI\MSHW0096\2&daba3ff&1

jakeday commented 6 years ago

HID over ACPI should be working now in my 4.14.x series kernels.

ghost commented 6 years ago

Excellent news, I'll test on Monday (my external keyboard is in the office!)

jeroen79 commented 6 years ago

Great, il give it a test, does it need to be turned on in the kernel config?, i can't seem to find an option for it.

Compiling it with me previous config doesn't seem to make it work.

ghost commented 6 years ago

Just tested. I upgraded to Ubuntu 17.10 (from UbuntuGnome 17.04) first, then installed 4.14. Unfortunately the built in keyboard still does not work (this issue needs to be re-opened). I have attached a dump of the boot messages if that's any help. boot.log

zccrs commented 6 years ago

What information do you need, I can assist you with it @jakeday

jeroen79 commented 6 years ago

I am also willing to help, can you tell me where the code for this keyboard is located in the kernel?

jakeday commented 6 years ago

@zccrs I need the output of dmesg, lsusb and lsinput.

@jeroen79 It would be in the hid drivers.

bketelsen commented 6 years ago

dm.txt lsi.txt lsusb.txt thanks for trying to fix this!

ghost commented 6 years ago

dmesg.txt lsinput.txt lsusb.txt

Hope this helps - please let us know if you need anything else!

jakeday commented 6 years ago

It's not seeing the HID device over ACPI still for some reason, so it never passes the control over to the hid core module to route. I'll look into what may be causing it over the weekend.

jakeday commented 6 years ago

Just uploaded another build. This sets the hid ids to use the correct hid driver, and exposes the extract hid data over i2c.

ghost commented 6 years ago

Thank you - I'll test on monday (keyboard's back in the office!)

bketelsen commented 6 years ago

ooh happy saturday! I'll try to test this today!

ghost commented 6 years ago

Sorry to report that the keyboard is still not working with rc7. dmesg.txt lsinput.txt lsusb.txt

bketelsen commented 6 years ago

Can we reopen this issue until we have confirmation of working keyboard @jakeday?

HongorBat commented 6 years ago

Hello @jakeday I just received my surface laptop and willing to install ubuntu ( This is my first time). I watched a lot of tutorials so I think i can install it, but can you give me exact details about keyboard issue? and Can I download surface laptop drivers and install it after i install ubuntu? thank you

bketelsen commented 6 years ago

yes you can install ubuntu you'll just need an external (usb) keyboard/mouse

HongorBat commented 6 years ago

but built in keyboard will work after installation or not?

bketelsen commented 6 years ago

After you install the new kernel it should. But may not. I don’t think there is a confirmed good install yet.

So you have to be prepared for the case that it won’t work

Sent from my iPhone

On Nov 15, 2017, at 4:22 PM, Khongor Battogtokh notifications@github.com wrote:

but built in keyboard will work after installation or not?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

jakeday commented 6 years ago

@bketelsen is exactly correct. There's been changes implemented, but I don't believe it's been re-tested in awhile. Let us know?

HongorBat commented 6 years ago

Sure I will try it in the weekends

iddover commented 6 years ago

A cannot try it these days just becauseo of this. https://answers.microsoft.com/en-us/surface/forum/surflaptop-surfupdate/surface-laptop-dont-boot-only-display-uefi-all-the/141490a9-3909-4e20-8f4e-937284362fc8?auth=1

ghost commented 6 years ago

iddover - that's an MS issue, not a kernel issue. I repartitioned in Windows 10 rather than using Linux tools to do it, so I've not hit that issue.

I'd not spotted there have been some updates, so I'll try and test in my lunch break or early tomorrow.

iddover commented 6 years ago

@MattB98 - I know, so my Surfade is travelling now, so I coud not try

Nice to see that response:

image

ghost commented 6 years ago

@jakeday It's still not working :-( dmesg.txt lsinput.txt lsusb.txt

jakeday commented 6 years ago

After digging through this issue, it will be resolved by a patch to the DSDT as well. I'll look into this as soon as I'm done with the changes for the Pro 2017 and Book 2.

ghost commented 6 years ago

Thanks @jakeday - if you can update us in this thread when the patch is ready for us to retest that would be great!

sqlboy2000 commented 6 years ago

Just to chime in as well, new Surface Laptop, your instructions and files work great for everything except the keyboard. I have some time to return it if I need to but love it and would like to keep it if I can just get the keyboard working. Will donate for keyboard :)

Varun-Sethu commented 6 years ago

I am pretty much in the same boat as @sqlboy2000, I am thinking about returning it and purchasing the Dell XPS but I love the keyboard too much.

bjornSkalkam commented 6 years ago

Hi Jakeday,

I have just freshly installed Ubuntu 16.04 and used your solution. The touchpad is much better now and the touch screen is working, but the keyboard is not.

I'm on a surface laptop. If you need any help for information (maybe you don't own a surface laptop?) I can provide it for you, just hit me up :)

Thanks a lot for this project. I hope you'll find a solution :)

jakeday commented 6 years ago

@bjornSkalkam I do not have a Surface Laptop, so testing is tough. This boils down to the keyboard being a hid device over acpi, but the DSDT exposed is not working to have it show up. This will require changes to the DSDT files, then everything will work. However, I don't have them and need to take a look to see what needs changed.

bjornSkalkam commented 6 years ago

Is there any way I can help?

jakeday commented 6 years ago

@bjornSkalkam Sure, pull all the files and make the edits. :)

Or half that lol!

bjornSkalkam commented 6 years ago

I honestly have no idea where I can find them or how I do that. Can you explain it to somebody who has never tried Linux before and doesnt even know how all these things work? ;)

wmww commented 6 years ago

I have access to a surface and some experience. I looked at https://wiki.archlinux.org/index.php/DSDT but it seems confusing af. I can get any files you need, or attempt edits if its not too difficult or risky (its a work computer, so I don't particularly want to knock it out for a day while I reinstall everything)

bjornSkalkam commented 6 years ago

Yeah same as me. I can knock this out for a day to reinstall everything thought as i cleaned it completely when I installed linux earlier today. If you want, I could install teamviewer or some similar software and you could fetch those things yourself :)

wmww commented 6 years ago

I did the decompiling stuff from the before mentioned Arch Wiki page. I got lost at "Examine errors and fix". Maybe this is helpful. Good idea about letting him remote in. I would offer if it wasn't a work computer.

Surface_Laptop_DSDT.zip

sqlboy2000 commented 6 years ago

I just want to say I appreciate everything you’ve done and I’m not trying to be a bother but I’m looking at a $2200 paperweight without keyboard support. Jake - would you keep it or return it based on what you know at the moment?

On Nov 28, 2017, at 7:12 PM, Jake Day notifications@github.com wrote:

@bjornSkalkam Sure, pull all the files and make the edits. :)

Or half that lol!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

jakeday commented 6 years ago

@sqlboy2000 I would keep it. I'm working on support for the additional acpi devices, including the Surface Laptop keyboard. I hope to have it resolved soon.

sangdth commented 6 years ago

Thank you @jakeday, I've tested it last night, can not make the keyboard works. Ironically, the keyboard works under BIOS setup, but does not when entering ubuntu :(

scottdonaldau commented 6 years ago

Hey @jakeday Also having this problem on a new 13" Surface Laptop with Ubuntu 16.04.x

Happy to assist in any way I can

ollie1995 commented 6 years ago

Hey @jakeday, using your kernel on a friends Surface Laptop via 17.10. Keyboard still doesn't work so we'll patiently wait for another update! Thanks for all the hard work on this!

Ninecl commented 6 years ago

Hey @jakeday Also having the same problem on Surface Laptop with Ubuntu 16.04, Happy to assist in anyway I can. Thank you for what you have done for this!

k4nh commented 6 years ago

Hi all. Yes, surface laptop keyboard not working with kernel and instructions. I can provide info and testing if/when needed. Thanks all!

jmoore34 commented 6 years ago

Yep, same problem for me as well when trying to run any distro (I've tested Mint Cinnamon and Manjaro KDE). I'm willing to help resolve this issue, though I don't have much expertise.

jmoore34 commented 6 years ago

@jakeday Tried dumping the ACPI, not sure if this helps https://paste.ee/p/AD7GB

also this: https://drive.google.com/open?id=1-t-0Z5k4hNQ-zFVsIW9xDqY6YJu8st8v