Комментарии 20
В заголовке ошибка. Это драйвер, но не ядра, а user mode.
Пробовали с Lenovo связаться? Они могут что-то полезное дать (код) или подсказать.
В одной и той же модели ноутбука может использоваться штуки три разных клавиатур от разных производителей.
В одной и той же модели ноутбука может использоваться штуки три разных клавиатур от разных производителей.
Во время загрузки ноутбука подсветка тоже мелькает – но только красным, и только на секунду.— подача питания.
Пытался. Они спросили у меня, есть ли гарантия — а потом послали куда подальше.
чет сомневаюсь, что Lenovo, как и другая компания, дает советы по поводу написания драйверов к своим продуктам
Var_34 нам тоже интересен. Он идёт сразу после var_38 – в традициях ассемблера переменные хранятся в обратном порядке под RSP.
Это не традиция ассеблера, а направление роста стека + механизм генерации имён локальных переменных Идой.
Спасибо за статью!
Репозитарий
gitlab.com/kryma/lenovo-y720-backlight-driver
я так понимаю приватный?
Не нашел как посмотреть код / склонировать :(
Репозитарий
gitlab.com/kryma/lenovo-y720-backlight-driver
я так понимаю приватный?
Не нашел как посмотреть код / склонировать :(
I2C HID это интересно, никогда об этом не слышал.
А это любой современный чипсет такое умеет или только некоторые?
А это любой современный чипсет такое умеет или только некоторые?
Мне кажется, что многие в ноутах это делают. Просто не многие капают в эту сторону в линуксе, так как не всем эта подсветка на клаве нужна.
А там конкретно о HID сам чипсет и не знает, в нём просто I2C master порты общего назначения (они очень давно появились, для доступа к SPD EEPROM модулей памяти например, ещё на первых Pentium). А уже внутри I2C-передач данные могут иметь и некоторый стандартный формат, в данном случае HID. И над этим всем слои драйверов — драйвер чипсета выдаёт наверх абстрагированный от железа I2C API, выше — драйвер с HID API наверх, оборачивающий HID-пакеты в I2C-передачи.
В репозитории пусто, при попытке склонить 403. Не забыли права миру выдать?
Респект за улучшение Линукса! Не пропал ещё в вас дух исследователя-улучшателя этого мира :-)
Спасибо. Мне как раз пригодится.
Интересная статья, спасибо! Давно хотел поковырять подстветку в своем асусе, но все еще лень и руки не доходят.
Да, действительно
функционал подсветки можно/логично кинуть или сразу на I2C, или через SmBus на EC (через функции ACPI). Как тот же LID, например.
Для I2C точно потребуется драйвер, а для ACPI или драйвер или WMI.
функционал подсветки можно/логично кинуть или сразу на I2C, или через SmBus на EC (через функции ACPI). Как тот же LID, например.
Для I2C точно потребуется драйвер, а для ACPI или драйвер или WMI.
У вас там в тексте ссылка поломалась
Видим две функции, HidD_GetFeature и HidD_SetFeature. Оба в файле не прослеживаются… Зато очень хорошо прослеживаются в официальной документации Майкрософт — тут и ...
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Пишем драйвер для ноутбука for fun and profit, или как закоммитить в ядро даже если ты дурак