История изменений
Исправление intelfx, (текущая версия) :
Но как вы считаете, тащить шины в юзерленд это хорошо, или наоборот плохо?
Как бы да, но как бы нет.
Да, если это не превращает архитектуру системы в мусорку. Если ты пишешь ядерный input-драйвер, то он будет выглядеть и работать точно так же, как любой другой ядерный input-драйвер (ну, если ты не клинический рукожоп, что, к сожалению, очень частая ситуация среди эмбедщиков). Что более важно, с ним можно будет работать точно так же, как и с любым другим input-драйвером.
То есть: он будет доступен под теми же интерфейсами, с ним будет работать udev, с ним будет работать libinput, его будет видеть весь остальной софт. И наоборот: твоё приложение, скорее всего, будет работать с ним через стандартный интерфейс.
А если у тебя приложение напрямую дёргает пины через sysfs, то ты рукожоп и говноед, и едва устройство с твоим кодом окажется у меня на столе и мне нужно будет сделать с ним что-либо нестандартное (например, подменить устройство на фейковое, или вставить между приложением и железом какую-нибудь прослойку, или посниффать события), то у меня не останется других вариантов, кроме как не стесняясь в выражениях проклинать всех разработчиков и дизайнеров этого мусора.
Исходная версия intelfx, :
Но как вы считаете, тащить шины в юзерленд это хорошо, или наоборот плохо?
Как бы да, но как бы нет.
Да, если это не превращает архитектуру системы в мусорку. Если ты пишешь ядерный input-драйвер, то он будет выглядеть и работать точно так же, как любой другой ядерный input-драйвер (ну, если ты не клинический рукожоп, что, к сожалению, очень частая ситуация среди эмбедщиков). Что более важно, с ним можно будет работать точно так же, как и с любым другим input-драйвером.
То есть: он будет доступен под теми же интерфейсами, с ним будет работать udev, с ним будет работать libinput, его будет видеть весь остальной софт. И наоборот: твоё приложение, скорее всего, будет работать с ним через стандартный интерфейс.
А если у тебя приложение напрямую дёргает пины через sysfs, то ты рукожоп и говноед, и едва устройство с твоим приложением окажется у меня на столе и мне нужно будет сделать с ним что-либо нестандартное (например, подменить устройство на фейковое, или вставить между приложением и железом какую-нибудь прослойку, или посниффать события), то у меня не останется других вариантов, кроме как не стесняясь в выражениях проклинать всех разработчиков и дизайнеров этого мусора.