Этот планшет запускает Windows 10 по умолчанию, но я установил Lubuntu 18.04. Я пытаюсь использовать этот вопрос в качестве руководства, но мой случай отличается.
ELAN
устройство для сенсорной панели, и каждый Дон команды 't возвращают что-либо действительно. Команда sudo dmesg | grep i2c
возвраты:
[ 3.211266] i2c /dev entries driver
[ 3.328881] i2c_designware 80860F41:04: I2C bus managed by PUNIT
[ 37.847473] axp20x-i2c i2c-INT33F4:00: AXP20x variant AXP288 found
[ 37.872164] silead_ts i2c-MSSL1680:00: i2c-MSSL1680:00 supply vddio not found, using dummy regulator
[ 37.872202] silead_ts i2c-MSSL1680:00: i2c-MSSL1680:00 supply avdd not found, using dummy regulator
[ 37.872740] silead_ts i2c-MSSL1680:00: Silead chip ID: 0xB4820000
[ 37.928036] axp20x-i2c i2c-INT33F4:00: AXP20X driver loaded
[ 38.024519] silead_ts i2c-MSSL1680:00: Direct firmware load for silead/mssl1680.fw failed with error -2
[ 38.024529] silead_ts i2c-MSSL1680:00: Firmware request error -2
[ 38.027163] silead_ts: probe of i2c-MSSL1680:00 failed with error -2
[ 39.030645] input: axp20x-pek as /devices/platform/80860F41:04/i2c-4/i2c-INT33F4:00/axp221-pek/input/input6
Я обнаружил, что драйверы Mediacom совпадают с драйверами для TrekStor, компании, которая также работает с Mediacom, и нашел этот замечательный проект на GitHub. Mediacom WinpadW700 соответствует в SurfTab wintron 7.0 (ST70416-6).
Проект о планшетах и Ubuntu и состояниях:
Этот репозиторий содержит микропрограммные изображения для контроллеров сенсорного экрана Silead в различном планшете (и другой) устройства [...]
Микропрограммные файлы были извлечены из Android и драйверов устройств Windows, как опубликовано производителями устройств. Они предназначаются для людей, которые предпочитают заменять поставленную операционную систему универсальным дистрибутивом Linux, таким как Debian или Ubuntu.
Я думаю, что должен использовать silead_ts.fw
файл (который является встроенным микропрограммным обеспечением для gslx680-acpi
полученный из firmware.fw
это - встроенное микропрограммное обеспечение, извлеченное из исходных драйверов).
Так silead_ts.fw
встроенное микропрограммное обеспечение особенно разработано для моей проблемы. Как я могу использовать его? Этот раздел от https://github.com/onitake/gsl-firmware#silead_ts должен объяснить, как делают это:
я должен отредактировать drivers/platform/x86/silead_dmi.c
файл в исходном коде. Затем перекомпиляция ядра (с тем файлом), и где-нибудь добавляет встроенное микропрограммное обеспечение, которое я отослал в измененном файле.
Как я могу перекомпилировать ядро? Я сужу это руководство.
Я использовал apt-get source linux-headers-4.15.0-33-generic
и добрался linux-4.15
папка 800 МБ. Это имеет путь drivers/platform/x86/silead_dmi.c
в котором я уже сделал drivers/platform/x86/silead_dmi.c
файл. После руководства я использовал apt-get source linux-image-$(uname -r)
и добрался linux-signed-4.15.0
папка 118 КБ.
Теперь использование fakeroot debian/rules editconfigs
Я получаю ошибку:
dh editconfigs
dh: Unknown sequence editconfigs (choose from: binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep)
debian/rules:35: recipe for target 'editconfigs' failed
make: *** [editconfigs] Error 2
Как я могу зафиксировать эту ошибку и перекомпилировать ядро?
silead_ts.fw
для этого проекта устаревшего https://github.com/onitake/gslx680-acpi.
Необходимо использовать, по крайней мере, https://github.com/onitake/gsl-firmware/blob/master/firmware/trekstor/surftab7new/firmware.fw, fimrware только извлеченный и не измененные для старого проекта.
Но необходимо использовать этот https://github.com/onitake/gsl-firmware/blob/master/firmware/linux/silead/gsl1686-surftab-wintron70-st70416-6.fw, вставить файл /lib/firmware/silead
(создайте папку silead
). Также сделанный копией с именем mssl1680.fw
(скопируйте встроенное микропрограммное обеспечение).
Теперь следуйте, это руководство для перекомпилировали ядро https://debian-handbook.info/browse/squeeze/sect.kernel-compilation.html.
Использовать apt-cache search ^linux-source
найти источник для ядра (поскольку руководство объясняет).
В silead_dmi.c
файл добавляет:
static const struct property_entry mediacom_w700_props[] = {
PROPERTY_ENTRY_U32("touchscreen-size-x", 884),
PROPERTY_ENTRY_U32("touchscreen-size-y", 632),
PROPERTY_ENTRY_STRING("firmware-name",
"gsl1686-surftab-wintron70-st70416-6.fw"),
PROPERTY_ENTRY_U32("silead,max-fingers", 10),
PROPERTY_ENTRY_BOOL("silead,home-button"),
{ }
};
И самый важный в DMI_MATCH добавьте:
{
/* Mediacom WinPad 7.0 W700 */
.driver_data = (void *)&surftab_wintron70_st70416_6_data,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "MEDIACOM"),
DMI_MATCH(DMI_PRODUCT_NAME, "WinPad 7 W10 - WPW700"),
},
},