Нажатия клавиш, происходящие несколько раз во время установки OpenBSD

Вопрос или проблема

Я пытаюсь установить OpenBSD на HP Chromebook 11 G4 с установленным CoreBoot (UEFI) через скрипт firmware-util от MrChromeBox.

Во время начального загрузочного промта (когда вы видите boot>) я могу легко что-либо ввести (например, войти в конфигурацию ядра пользователя с помощью boot -c).

Но после загрузки программы установки каждый раз, когда я нажимаю любую клавишу, и я имею в виду буквально любую клавишу, включая кнопку питания или ввод, мне нужно ждать 1-2 секунды, прежде чем Chromebook ответит. Что еще хуже, каждое нажатие клавиши регистрируется/распознаётся несколько раз.

Я уже выяснил, что установка kern.timecounter.hardware=acpihpet0 с помощью sysctl может помочь, но, к сожалению, я не могу пройти установку (набирать “done” не вариант, и это требуется в некоторых местах из-за неудачной загрузки начальной прошивки iwm0).

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

Поскольку это, собственно, вопрос, здесь должен быть, по крайней мере, один вопросительный знак. Есть ли способ установить kern.timecounter.hardware=acpihpet0 из UKC или любой другой способ исправить ситуацию с многократными нажатиями клавиш во время установки?

Как заметка: Судя по тому, что я вижу, большинство вещей во время загрузки не настроены (например, acpicpu at acpi0 not configured или Intel Bay Trail LPC .... not configured).

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

Обновление:

Чтобы предвосхитить вопрос, так как я не упомянул это в оригинальном вопросе.

Программа установки не распознает ни один диск, кроме встроенной emmc. Если бы не это, я мог бы просто установить OpenBSD с помощью автоподстановки (несколько “а” считаются как 1 в этом конкретном запросе, и название файла ответа, как “bbbbb”, работает).

Из-за этого и того факта, что у меня есть только встроенное беспроводное соединение, я не могу получить наборы, необходимые для завершения установки. Мне удалось пройти стадию разметки диска, но мне негде взять наборы, так как установочный носитель тоже недоступен.

Обновление 2:

Мне удалось установить OpenBSD через Linux MX с живой USB и установленным VirtualBox.

К сожалению, клавиатура все еще не работает. Любое внешнее USB-устройство также не распознается.

Когда я нажимаю на кнопку питания, я вижу, что есть информация вроде:

pckbc timeout

Я буду обновлять этот вопрос.

Вы можете попробовать отключить acpihpet в UKC:

UKC> disable acpihpet

Может быть полезно отправить сообщение на [email protected] список рассылки, чтобы разработчики могли помочь вам. Если это возможно, приложите полный вывод dmesg, но я понимаю, что это может быть сложно с неработающей клавиатурой. Если у вас есть другая машина (с той же архитектурой, конечно), вы можете попробовать использовать её для установки OpenBSD на USB-накопитель, а затем использовать его для загрузки Chromebook. Таким образом, вы загрузите полное ядро, которое может корректно поддерживать внутреннюю клавиатуру (а, вероятно, и внешнюю). Затем будет легко получить dmesg.

Способ подключения клавиатуры может быть актуальным (старый AT-стиль через pckbd, USB через uhid, I2C через ikbd и т.д.), а полный dmesg также покажет/подскажет, почему USB-клавиатура не распознается с ядром установки (которое поддерживает более ограниченный набор оборудования, чем полное).

Обновление:

Что касается внешнего диска: если вам необходимо загрузиться в режиме UEFI на Chromebook, то вам нужно будет сделать UEFI установку на внешнем диске, а не настройку Master Boot Record. Чтобы избежать повторной установки OpenBSD, посмотрите, есть ли у вас что-то вроде опции “наследственной загрузки” в BIOS Chromebook и попробуйте загрузиться с внешнего диска. В противном случае попробуйте сделать UEFI установку на диск, используя запасной компьютер.

Я столкнулся с той же ошибкой на своем ноутбуке Acer (SFX16) с прошивкой Insyde v1.56.

Провел последние два дня, копаясь в этом, и нашел обходной путь, который может сработать:

# wsconsctl keyboard.repeat.del1=0

Хотя это исправляет проблему с множественными нажатиями клавиш, я не уверенн, решает ли это коренную причину или может что-то поломать. И все еще наблюдается заметная задержка при нажатии клавиши.

Linux/FreeBSD хорошо работают с этой встроенной клавиатурой, но NetBSD/illumos не работают ни с ней.

К сожалению, эта ошибка не так тривиальна, как кажется, я потратил много времени, исследуя код драйверов pckbc и pckbd, но ошибка, похоже, заключается в верхнем уровне, в части wscons wskbd_repeat.

Так как я newcomer к OpenBSD, надеюсь, кто-то, знакомый с wscons, сможет помочь исправить это.

Ответ или решение

Проблема с множественными нажатиями клавиш при установке OpenBSD на HP Chromebook 11 G4 с CoreBoot является достаточно сложной и требует комплексного подхода. В отличие от других операционных систем, OpenBSD может иметь ограничения в поддержке оборудования, что в данном случае приводит к неэффективному взаимодействию с клавиатурой.

Анализ проблемы

  1. Ожидание отклика:
    Вы отмечаете, что между нажатиями клавиш и откликом системы проходит 1-2 секунды. Это может быть связано с конфигурацией таймеров системы, такими как ACPI HPET (High Precision Event Timer). Ваша попытка установить kern.timecounter.hardware=acpihpet0 является разумной, однако она может быть недоступна, пока вы не завершите установку.

  2. Множественные нажатия:
    Появление множественных событий при нажатии клавиш может исходить из проблем в драйверах клавиатуры, например, в драйверах pckbc и wscons, которые отвечают за обработку ввода. Замеченная вами ошибка pckbc timeout также указывает на проблемы с инициализацией клавиатуры.

Возможные решения

  1. Отключение ACPI HPET:
    В контексте загрузчика (UKC) вы можете попробовать отключить acpihpet:

    UKC> disable acpihpet

    Это может улучшить отзывчивость клавиатуры.

  2. Конфигурация ключевых параметров:
    Также можно попробовать установить параметр, который вы упомянули:

    # wsconsctl keyboard.repeat.del1=0

    Это может устранить проблемы с многократными нажатиями клавиш, хотя важно понимать, что это может не решить корневую проблему.

  3. Клавиатура и драйвера:
    Внимательно посмотрите на вывод dmesg, когда вы получите доступ к системе, чтобы понять, почему некорректно работают драйвера. Это поможет вам выявить, какие устройства не были правильно инициированы и какие драйвера, возможно, отсутствуют.

  4. Использование внешней клавиатуры:
    Вы пробовали использовать внешнюю клавиатуру, но если она не была распознана в процессе установки, возможно, это связано с ограничениями поддержки USB во время установки. Убедитесь, что ваше UEFI настроено на обход проблем с совместимостью USB.

  5. Установка с другого устройства:
    Так как вы успешно установили OpenBSD через Live USB, используйте этот же метод, чтобы подготовить внешнее устройство для установки. Убедитесь, что установочный USB создан для UEFI, чтобы работать с вашим Chromebook.

Общая рекомендация

Вас также могут направить соответствующие каналы поддержки, такие как список рассылки development ([email protected]), где разработчики и опытные пользователи могут предложить конкретные решения, основываясь на полных логах и выводе состояния вашего оборудования. Не забывайте предоставлять как можно больше информации о конфигурации вашей системы.

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

Оцените материал
Добавить комментарий

Капча загружается...