Coder Social home page Coder Social logo

afzalarsalan / linux-surfacebook Goto Github PK

View Code? Open in Web Editor NEW
34.0 9.0 4.0 1.19 MB

A kernel which strives to be semi-practical for daily use on the Surface Book, no matter the cost (stability included)

Shell 100.00%
linux-kernel linux surface-book surface

linux-surfacebook's Introduction

linux-surfacebook

A kernel which strives to be semi-practical for daily use on the Surface Book, no matter the cost (stability included)

Pacman Repository

Due to a large amount of requests, I've created a pacman repo for those who don't want to build the Linux kernel on a dual core laptop

First you need to run

sudo pacman-key --recv-keys 606B8F67F4DAEEE2CD7FD986DF84850438168E49
sudo pacman-key --lsign-key 606B8F67F4DAEEE2CD7FD986DF84850438168E49

which will download my signing key from your assigned GPG keyserver and have your system sign it, showing that you trust packages signed by my machine

You will then need to add these lines to your /etc/pacman.conf right above [testing].

[linux-surfacebook]
SigLevel = Required
Server = https://github.com/afzalarsalan/linux-surfacebook/releases/download/current/

It should look similar to below

# New lines start here
[linux-surfacebook]
SigLevel = Required
Server = https://github.com/afzalarsalan/linux-surfacebook/releases/download/current/

#[testing]
#Include = /etc/pacman.d/mirrorlist

After that, if you already have the packages installed then pacman will update them whenever I update or if you have yet to install them, simply run pacman -S linux-surfacebook

Header and Docs are included in the repository for those who need them.

linux-surfacebook's People

Contributors

afzalarsalan avatar julienrobitaille avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

linux-surfacebook's Issues

Caps Lock Light Not Working

This seems like a problem that dissapers and reappers based on the kernel so ill create this issue to keep track of it. Currently 4.18.3-arch1-1-surfacebook not working

hibernation fails

Thanks for sharing!! If you have any guess why hibernation fails or where I should report...

I would like to report that I am now running Ubuntu on SP4, with kernel 4.9.3. The Ubuntu base kernel 4.9.3 have buttons and wifi working but misses: keyboard and touchscreen. This kernel also hibernates.

I built the Ubuntu kernel 4.9.3 based on this information: https://github.com/afzalarsalan/linux-surfacebook -- I think is the most recent kernel for Surface Pro 4!!

If I build the kernel using the touchscreen patch, the touchscreen works but the hibernation fails :-( -- so I built another time but without the touchscreen patch and I use it like that, because I do not use touchscreen but I need hibernation. Anyway, I keep both version of kernel and so I can use touchscreen If I need for some reason.

Instructions for building this kernel for Ubuntu: * git clone --branch v4.9.3 git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack --depth=1 * Download the Ubuntu patches here: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.3/ and apply them to the base kernel * apply multitouch(keyboard) and wifi patch from https://github.com/afzalarsalan/linux-surfacebook * create the folder: firmware/intel/ipts on linux source directory and put inside the file ipts_fw_config.bin * install ubuntu kernel 4.9.3 and them copy the .config file from /boot folder to the linux source directory. Then edit .config file to add "CONFIG_INTEL_IPTS=m" after the line "CONFIG_INTEL_MEI_TXE=m" * make menuconfig (exit if you don't need to edit) * make -j8 * sudo make modules_install * sudo make install

After hibernation, wifi do not work but you can run this script that will put it working:
/bin/bash
ip link set wlp2s0 down
modprobe -r mwifiex_pcie
modprobe mwifiex_pcie
service network-manager restart

Wifi Issues

I had WiFi issues with this kernel, most kernels for surface book and found a fix. Didn't know where else to keep it.
/etc/NetworkManager/conf.d/30-mac-randomization.conf
`[device-mac-randomization]
wifi.scan-rand-mac-address=no

[connection-mac-randomization]
ethernet.cloned-mac-address=preserve
wifi.cloned-mac-address=preserve`

Lack of Battery Recognition

I previously used your 4.9 branch on a SP4, and I was able to get information on the battery. I'm now using a Surface Pro 2017 and I'm on the Master branch, but I don't have access to battery information.

Which patches should I apply?

Hi, I'm trying to test this on non-arch system, and I'm unfamiliar with pacman repo structure. Should I apply patches in the applied/ directory, or those in the root? Or both? What about unapplied/? Thanks.

No Graphics with this Kernel

It's probably my fault but any idea whats happening?

When trying to boot into this Kernel, i'm left with a Blank Screen and a _ Cursor right after
"Reached Target Graphical Interface"

Booting with nomodeset results in the same.
When Disabling my desktop manager i can use the shell perfectly fine.
I tried GDM and SDDM, reinstalled x86-intel and mesa.

I have a Surface Book with i5 and dgpu, but that probably shouldn't matter since lscpi -v only finds the Intel HD 520

Applying patch to 4.13 breaks multitouch

On my surfacebook, branch 4.9 runs fine and has multitouch gestures on the touchscreen. As an exercise, I applied the most recent patch to a fresh checkout of Linux kernel 4.13.9 from source and everything works great, except that multitouch seems to fail (when using more than one finger, xev shows nothing.)

IPTS Guide / GPU - Reached Target Graphical

[ OK ] Started Flush Journal to Persistent Storage.
[drm:csr_load_work_fn [i915]] ERROR Firmware has wrong CSS header length 1097158924 bytes
[drm:intel_guc_setup [i915]] ERROR GuC init failed: -5
[drm:i915_gem_init [i915]] ERRORFailed to initialize GPU, declaring it wedged
ipts mei::3e8d0870-271a-4208-8eb5-9acb9402ae04:0A: open gpu error : -5
ipts mei::3e8d0870-271a-4208-8eb5-9acb9402ae04:0A: error in handling resp msg
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:63 / ret_size:0
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:63 / ret_size:0
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:0
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:63
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:7
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:12
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:0
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:0
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:4
i2c_hid i2c-MSHW0030:00: error in i2c_hid_init_report size:19 / ret_size:15
[ OK ] Found device /dev/disk/by.uuid/16B5-8F9A.

I'm back at Reached Target Graphical Interface, but i cannot log in to Shell or anything because my TTY keeps flashing.
(The Boot Log keeps flashing over my TTY every second, and for that time i cannot type)

This happens for both Master (4.9) and linux-410(4.10r5) branch.

I followed the IPTS Guide for every part except the "CONFIG_INTEL_IPTS=m" Kernel Config, because that's obviously handled in your Code.

(
-retrieved GuC and DMW Firmware, created Symbolic Links for that,
-got all 5 IPTS .bin files and Symbolic Linked those.
)

I will try inspecting further to the best of my abilities and respond on News.

Touchpad gesture not working on 4.10 (master)

I know that touchscreen don't work yet but the same goes for the touchpad gestures (2finger scroll ect...)
also i had to install the 4.10 kernel because when using the one of the 49 branch, i have extremely low wifi (don't go over around 25 / 30 kB /s while on windows or 4.10 i have around 4 MB /s)

I'm on surface pro 4 i5 4GB
Removed the synaptic driver for reverse scrolling on gnome

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.