Установка Ubuntu на Surface pro 4

7

Я перешел от победы 10 к Ubuntu 16.04. Я пробовал использовать эту статью и < href="https://www.youtube.com/watch?v=oXuYg5P4EHo"> это видео , но все еще сталкиваются с проблемами, поскольку последняя версия ядра - 4.6.3.
Я все еще работаю на ядре, которое установлено с Ubuntu, которое составляет 4.4.0.

Короче говоря, клавиатура, сенсорная панель, сенсорный экран, кнопки регулировки громкости и мощности, стилус, индикатор Wi-Fi (верхний правый угол) и камера не работают.
Мне удалось заставить работать Wi-Fi и Bluetooth.

Может ли кто-нибудь помочь мне написать / найти некоторые исправления и перекомпилировать ядро?

Пожалуйста, разместите все обновления и выпуски Моя организация GitHub и любой вклад оценен

deriver-config и Модули

Чтобы получить рабочий столбец типа SP4-1 из deriver-config

    
задан Amir 27.06.2016 в 14:52
источник

6 ответов

2

У меня есть довольно приятное ядро ​​Surface Pro 4, работающее на моей установке Ubuntu.

Сводка

Что работает:

  • WiFi / Bluetooth
  • мультитач
  • перо
  • трекпад на панели ввода

Что работает несколько:

  • hibernate - после возобновления нет касания или ручки

Что нет:

  • suspend (см. примечание об энергосбережении ниже)
  • заморозить (более разряженная батарея версии приостановления / сна, которая не работает надежно)
  • печатная крышка

Что я не пробовал:

  • камеры

Общая идея

Общая идея этого ядра - внести изменения, сделанные Hyungwoo Yang, в Ссылка и примените их к ядру Ubuntu 4.9rc3. Ниже приведены шаги по упорядочиванию ядра. Процесс компиляции занимает около 45 минут, используя все ядра Surface 4. Для клонирования ядровых репозиториев требуется около 1,5 гигабайт дискового пространства.

Шаги для создания ядра

  1. установить Ubuntu 16.10 yakkety. для этого вам понадобится USB-концентратор, который может обрабатывать как Ubuntu live-USB, так и клавиатуру / мышь.

  2. загрузочный Linux с USB-клавиатурой.

  3. подготовьте ядро ​​Ubuntu 4.9rc3.

    • клонировать ядро ​​Ubuntu 4.9rc3 (требуется ~ 1,5 г пробела):

      git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v4.9-rc3

    • скачать 6 патчей: Patch1 Patch2 Patch3 Patch4 Patch5 Patch6

    • применить патчи к ядру в следующем порядке: do

      git am /path/to/THEPATCH.patch

      для каждого из патчей.

  4. создать патч с поддержкой touch / pen из ядра ips-linux-new.

    • клонировать ядро ​​(требуется ~ 1.5gig пространства) в другом каталоге:

      git clone https://github.com/ipts-linux-org/ipts-linux-new.git

    • создать патч:

      git diff 0c183d92b20b5c84ca655b45ef57b3318b83eb9e > /path/to/ipts-linux-new_patch.txt

  5. применить патч ips-linux-new к v4.9rc3

    'cd /path/to/v4.9rc3'
    'patch -p1 < /path/to/ipts-linux-new_patch.txt'
    'git add .'
    'git commit -m 'Patch for Surface Pro 4 taken from ipts-linux-new.''
    
  6. скомпилировать ядро ​​и сделать ubuntu .deb пакеты (скопированные из компиляции ядра Ubuntu )

    cd /path/to/v4.9rc3

    • инициализировать файлы debian:

      fakeroot debian/rules clean

    • настройте ядро, которое вы создадите:

      fakeroot debian/rules editconfigs

      • Скажите да только на вопрос amd64. Это покажет интерфейс curses «menuconfig». активируйте следующие два варианта:
        • Драйверы устройств - & gt; Устройство блокировки NVM Express (y)
        • Драйверы устройств - & gt; Различные устройства - & gt; Intel Precise Touch & amp; Стилус (м)
    • комментарий или удалить «do_zfs = true» в «/path/to/v4.9rc3/debian.master/rules.d/amd64.mk»

    • переименуйте ядро, отредактировав «/path/to/v4.9rc3/debian.master/changelog»

  7. скомпилируйте ядро ​​(используйте больше потоков, чем процессоры, чтобы сделать это быстрее)

    'fakeroot debian/rules clean' #necessary, but I don't know why
    'DEB_BUILD_OPTIONS=parallel=5 fakeroot debian/rules binary-headers binary-generic binary-perarch'
    
  8. В каталоге рядом с v4.9rc3 должно быть создано четыре новых .debs. Установите .debs с помощью следующей команды:

    'sudo dpkg -i linux-image-* linux-headers-4.9.0-040900rc3*'
    
  9. скопировать файлы драйверов из окон в linux:

    • скопируйте файлы драйверов с "\ Windows \ INF \ PreciseTouch \ Intel" в каталог linux "/ lib / firmware / intel / ips". Должно быть не менее 4 файлов с похожими именами:

      • iaPreciseTouchDescriptor.bin
      • SurfaceTouchServicingSFTConfigMSHW0078.bin
      • SurfaceTouchServicingDescriptorMSHW0078.bin
      • SurfaceTouchServicingKernelSKLMSHW0078.bin
    • Сделать символические ссылки на эти файлы:

      cd /lib/firmware/intel/ipts

      ln -s iaPreciseTouchDescriptor.bin intel_desc.bin

      ln -s SurfaceTouchServicingSFTConfigMSHW0078.bin config.bin

      ln -s SurfaceTouchServicingDescriptorMSHW0078.bin vendor_desc.bin

      ln -s SurfaceTouchServicingKernelSKLMSHW0078.bin vendor_kernel.bin

Теперь вы можете загрузить новое ядро. Если ссылки находятся в нужном месте, нажмите и ручка будет работать хорошо.

Примечание по энергосбережению

Недопустимая функция приостановки является серьезным недостатком. Это связано с фиаско «подключенного ожидания» Microsoft: Ссылка . Freeze использует больше батареи (разряжает батарею, возможно, наполовину так же быстро, как если бы вы оставили компьютер), и, похоже, не является надежным.С спящим состоянием успешно сохраняется состояние, но, к сожалению, функциональность касания и стилуса не работает после возобновления.

    
ответ дан krumpelstiltskin 11.12.2016 в 22:47
2

Я использовал это руководство по Reddit

Если проблемы с зависанием ядра fridgecow и никогда не будут перезагружаться или закрыты должным образом, просто замерзнет с логотипом Ubuntu, ничего не сделав.

Я использовал cantenna's (6a и 7a) и отлично работает, кроме того, что не просыпаюсь от сна, и кнопки громкости не работают.

Загрузите этот файл (исправленное ядро)

cd в каталог, куда он пошел (например, cd Downloads ), и установить пакеты

sudo dpkg -i './linux-headers-4.4.0-rc8touchkernel+_1_amd64.deb'
sudo dpkg -i './linux-image-4.4.0-rc8touchkernel+_1_amd64.deb'

Установите раздел Windows (вы можете загрузить файлы из здесь , если вы удалили свой раздел Windows или не смогли найти их) и скопируйте файлы в корневой каталог Ubuntu (вам может потребоваться настроить путь в зависимости от точки монтирования вашего раздела Windows:

sudo mkdir /itouch
cp /media/$USER/Windows/Windows/INF/PreciseTouch/Intel/* /itouch

Теперь создайте символические ссылки на файлы, чтобы драйвер мог их найти

sudo ln -sf /itouch/SurfaceTouchServicingKernelSKLMSHW0078.bin /itouch/vendor_kernel_skl.bin
sudo ln -sf /itouch/SurfaceTouchServicingSFTConfigMSHW0078.bin /itouch/integ_sft_cfg_skl.bin
sudo ln -sf /itouch/SurfaceTouchServicingDescriptorMSHW0078.bin /itouch/vendor_descriptor.bin
sudo ln -sf /itouch/iaPreciseTouchDescriptor.bin /itouch/integ_descriptor.bin

Затем вам нужно убедиться, что у вас есть возможность загрузить это ядро ​​или установить его для загрузки по умолчанию, настроив GRUB.

    
ответ дан user3518221 03.04.2017 в 04:49
1

В SP4 сенсорные алгоритмы запускаются на GPU, поэтому традиционные драйверы не работают

Вот ссылка github: Ссылка

Сенсорный экран, ручка Surface Pro.

IPTS означает: Intel Precision Touch и Stylus.

В этом реестре github имеется определенное ядро ​​с драйвером сенсорного экрана.

Извините за сбор определенного ядра, но исправления должны быть применимы к любому ядру после 4.4.

    
ответ дан ardaC 25.07.2016 в 15:35
0

Я нашел лучшее ядро. Он использует тот же набор патчей, который описывает мой другой пост, а также другие, которые делают обложку типа вместе с мультитачом на дорожке. У меня он работает с моей установкой 16.10.

Это ядро ​​требует от пользователя небольшой работы, поскольку оно уже скомпилировано в пакеты .deb, которые вы можете загрузить.

Что работает:

  • нажмите
  • перо
  • Wi-Fi
  • клавиатуры
  • трекпад
  • кнопки физического уровня и горячие клавиши клавиатуры

Что нет:

  • сон
  • иногда багги

Нет смысла в том, чтобы плагиат направления, поскольку они динамичны и хорошо поставлены:

Ссылка

    
ответ дан krumpelstiltskin 01.03.2017 в 19:54
0

Я печатаю / mousing от Ubuntu 16.10 на SP4, Чтобы получить здесь, я сделал следующее:

  • загрузить Ubuntu с помощью USB-концентратора для поддержки клавиатуры / мыши

  • sudo apt-get install следующие два пакета:

  • ukuu (EASY!) обновляется до последнего ядра RC (4.10-rc8). ЭТО теперь поддерживает магнитную клавиатуру / мышь SP4 (спасибо, люди ядра!). ONLY NIGGLE: беспроводная связь, поэтому отключите Google и исправьте это.

  • grub-customizer , чтобы выбрать Win10 / Ubuntu / Mint.

Ubuntu работает без крушения, я выбрал 16.10 yakkety, так как мне не нравится 16.04 xenial min / max / close на UL экрана, и так и не нашел простой способ обойти это.

Linux MINT также загружается с поддержкой клавиатуры (после обновления ядра до 4.10-rc8), но не сенсорной панели мыши.

    
ответ дан user258424 19.02.2017 в 14:13
0

Существует архив личных пакетов (PPA) с ядром, упакованным для вас по адресу: Ссылка .

Следуйте инструкциям «Добавление этого PPA в вашу систему», а затем выполните указанные команды apt.

Вероятно, лучше начать с установки Xenial (16.04), а не с Yakkety (16.10), поскольку в последнее время (с мая) обновление PPA не было.

    
ответ дан krumpelstiltskin 27.11.2016 в 13:34