LINUX.ORG.RU

Исправление ошибок в DSDT

 ,


0

4

Ноутбук hp probook 655 g1.

Есть некоторые проблемы.

Периодически не срабатывают нажатия кнопок (клавиатура, мышь). Бывает, даже в меню UEFI не срабатывают. Бывает, если быстро нажать 2 какие-нибудь кнопки, например 'jk' печатает 'kj'. Бывает даже вводятся клавиши, которых не нажимал. Также бывает один и тот же символ вводится 2 раза.

Ещё хотелось бы снять ограничение на минимальный TDP в 15W. Т.е. у ноута прошито, что TDP должен быть не менее 15W, хотелось бы чтоб он мог потреблять меньше. Возможно, это вообще в EFI прошито.

В DSDT есть ошибки.

ошибки ядра:

efi: Not removing mem34: MMIO range=[0xfec10000-0xfec10fff] (4KB) from e820 map
efi: Not removing mem35: MMIO range=[0xfed80000-0xfed80fff] (4KB) from e820 map
efi: Not removing mem36: MMIO range=[0xff830000-0xff84efff] (124KB) from e820 map
ACPI: Early table checksum verification disabled
audit: initializing netlink subsys (disabled)
ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
ACPI: EC: interrupt blocked
ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.SATA.ODDZ.ZPOD], AE_NOT_FOUND (20240827/psargs-332)
ACPI Error: Aborting method \_SB.PCI0.SATA.PRT1._STA due to previous error (AE_NOT_FOUND) (20240827/psparse-529)
acpi PNP0A08:00: _OSC: platform does not support [LTR]
pci_bus 0000:06: extended config space not accessible
iommu: DMA domain TLB invalidation policy: strict mode
system 00:00: [mem 0xfec00000-0xfec00fff] could not be reserved
system 00:01: [io  0x0200-0x027f] could not be reserved
system 00:02: [mem 0x00000000-0x0009ffff] could not be reserved
system 00:02: [mem 0x00100000-0xbfffffff] could not be reserved
system 00:02: [mem 0xffe00000-0xffffffff] could not be reserved
pci 0000:03:00.0: ROM [mem 0xffff0000-0xffffffff pref]: can't claim; no compatible bridge window
pci 0000:00:12.2: PME# does not work under D3, disabling it
pci 0000:00:13.2: PME# does not work under D3, disabling it
PM: Adding info for No Bus:userfaultfd
Could not retrieve perf counters (-19)
bus: 'acpi': add driver hardware_error_device
amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled
mip6: mip6_init: can't add xfrm type(destopt)
Extended deferred probe timeout by 10 secs
clk: Disabling unused clocks
mmc0: cannot verify signal voltage switch
wmi_bus wmi_bus-PNP0C14:00: [Firmware Info]: 8F1F6436-9F42-42C8-BADC-0E9424F20C9A has zero instances
wmi_bus wmi_bus-PNP0C14:00: [Firmware Info]: 8F1F6435-9F42-42C8-BADC-0E9424F20C9A has zero instances
snd_hda_intel 0000:00:01.1: master has incomplete components
psmouse serio3: synaptics: Your touchpad (PNP: SYN3009 SYN0100 SYN0002 PNP0f13) says it can support a different bus. If i2c-hid and hid-rmi are not used, you might want to try setting psmouse.synaptics_intertouch to 1 and report this to linux-input@vger.kernel.org.
полный dmesg

таблицы
$ iasl -tc dsdt.dsl                     

Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20241212
Copyright (c) 2000 - 2023 Intel Corporation

Error    6126 -  Compiler aborting due to parser-detected syntax error(s)


dsdt.dsl   3004:                     0x02 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3008:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   3020:                     0x03 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3024:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   3036:                     0x04 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3040:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   8363:                             0x01
Error    6126 -                   syntax error ^ 

dsdt.dsl   8370:                             0x01
Error    6126 -                   syntax error ^ 

dsdt.dsl  26797: 
Error    6126 - syntax error and premature End-Of-File

Error    6126 -  Compiler aborting due to parser-detected syntax error(s)


dsdt.dsl   3004:                     0x02 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3008:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   3020:                     0x03 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3024:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   3036:                     0x04 = \_SB.ALIB /* External reference */
Error    6126 -             syntax error ^ 

dsdt.dsl   3040:                 }
Error    6126 -    syntax error ^ 

dsdt.dsl   8363:                             0x01
Error    6126 -                   syntax error ^ 

dsdt.dsl   8370:                             0x01
Error    6126 -                   syntax error ^ 

dsdt.dsl  26797: 
Error    6126 - syntax error and premature End-Of-File

Input file:    dsdt.dsl - Compilation aborted due to parser-detected syntax error(s)
Hex Dump:      dsdt.hex -     199 bytes

Compilation failed. 10 Errors, 0 Warnings, 0 Remarks
No AML files were generated due to syntax error(s)

Помогите исправить. Самое главное сделать, чтоб кнопки всегда нормально работали.

★★★★★

Последнее исправление: teod0r (всего исправлений: 11)

Самое главное сделать, чтоб кнопки всегда нормально работали.

Самое главное клавиатуру почистить. Тогда кнопки будут нормально работать. =)

А вот по поводу DSDT - точно сложнее, специалистов крайне мало. Подобных спецов наверное можно найти на яблочных форумах, особенно в темах как запустить Яблоко на обычном ноутбуке. По причине крайней привередливости операционки к DSDT, и соответственно необходимости исправлять изначальные глюки в dsdt.
Но с клавиатурой это точно не связано.

Atlant ★★★★★
()
Последнее исправление: Atlant (всего исправлений: 1)

Периодически не срабатывают нажатия кнопок (клавиатура, мышь). Бывает, даже в меню UEFI не срабатывают. Бывает, если быстро нажать 2 какие-нибудь кнопки, например ‘jk’ печатает ‘kj’. Бывает даже вводятся клавиши, которых не нажимал. Также бывает один и тот же символ вводится 2 раза.

Почисть клавиатуру. Если не поможет - поменяй. К acpi (dsdt) это не имеет никакого отношения, ИМХО

Ещё хотелось бы снять ограничение на минимальный TDP в 15W. Т.е. у ноута прошито, что TDP должен быть не менее 15W

Ты явно что-то путаешь. В ноутбуке может быть ограничение на энергопотребление процессора. Чтобы он не сожрал аккумулятор за 5 минут и не перегревался. Добавлять нижний лимит (да ещё бешеные для ноута 15 вт) никто в здравом уме не будет

Error 6126 - Compiler aborting due to parser-detected syntax error(s)

Насколько я знаю, для dsdt есть (как минимум) два компилятора - открытый от intel (он входит во все дистрибутивы linux) и проприетарный от микрософта. Микрософтовский гораздо мягче относится к стандартам и прощает много того, что компилятор от intel не позволит. Где брать майкрософтовский - никогда не интересовался

router ★★★★★
()
Ответ на: комментарий от router

Почисть клавиатуру. Если не поможет - поменяй.

дело не в клавиатуре. клавиатура не засорена. менялась недавно. проблема есть и во внешних подключаемых (разных!) и есть с другим ноутом.

К acpi (dsdt) это не имеет никакого отношения, ИМХО

mky говорит, что имеет.

Ты явно что-то путаешь.

нет. попадалась тема на https://winraid.level1techs.com/c/bios-uefi-modding/7 (ссылку не сохранил) про то что на каком-то другом hp ноуте тех времён в EFI захардкожено минимальное энергопотребление 15W, и что у человека не получалось сделать потребление ниже 15W. У меня меньше 15W энергопотребление не опускается. На другом hp ноуте, который старше на несколько лет опускается до 8-9W.

Добавлять нижний лимит (да ещё бешеные для ноута 15 вт) никто в здравом уме не будет

ты реально думаешь, что у тех кто делвет ноутбуки и вообще компы здравый ум? ты на какой планете живёшь?

для dsdt есть (как минимум) два компилятора - открытый от intel (он входит во все дистрибутивы linux) и проприетарный от микрософта.

про это я знаю. в арчвики написано, что каким компилятором была скомпилирована DSDT, таким и надо перекомпилировать.

проприетарный

teod0r ★★★★★
() автор топика

В прошлом году мышка хреновничать начала после какогото обновления.
То нормально работает, левая кнопка то не нажимается, то отпускается сама. Поменять микрики мышку? Поменял на новую из магаза. Через несколько дней опять началось. Так и тянется то работает, то сбой появляется и сам исчезает, по неск раз за месяц. Новые обновления сбой пока не убрали.

BIOS, Devuan, ядра LTS 5.10, 6.1, оперативки достаточно и она промемтэщена. У других USB устройств сбоев не замечено, в т.ч. клавиатуры.

Врядли это ACPI таблицы - они не менялись. Но вот чтото есть на дляпда

anonymous
()

сделал unxz tables.xz, переименовал в tables.tar, распаковал.

сделал «iasl -e SSDT1 SSDT2 -d DSDT» получил файл DSDT.dsl

попытался собрать обратно, выдало две ошибки:

DSDT.dsl   2482:                         (CTRL & 0x1E)
Error    6114 -                               ^ Result is not used, operator has no effect

DSDT.dsl   9680:                 Device (PS2M)
Error    6141 -         Missing dependency ^  (Device object requires a _HID or _ADR)

При декомпиляции просто как «iasl DSDT» полученный DSDT.dsl отличается от предыдущего, т.е. хз как этот декомпилятор работает, и что он сможет скомпилировать нормального в итоге.

iasl у меня версии 20210930

Каких-то других патчей dsdt и вобще проблем с клавиатурой не нашел на просторах инета. Предлагаю разобрать ноут и проверить шлейф клавиатуры.

irton ★★★★★
()
Последнее исправление: irton (всего исправлений: 2)
Ответ на: комментарий от irton

Предлагаю разобрать ноут и проверить шлейф клавиатуры.

проблема не с 1 ноутом, с 3-мя. ещё с hp pavilion dv7 6b04er и lenovo g505s. проблема не только со встроенной клавиатурой, но и с внешними (перепробовано множество разных новых клавиатур) и с мышами.

teod0r ★★★★★
() автор топика
Ответ на: комментарий от irton

dv7 вобще нормально с linux дружить должен.

оно не умеет полностью отключать дискретку с драйвером radeon. с драйвером fglrx — нормально. разница в температуре градусов 20.

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Для начала режим питания проверить. Для ноутбука постоянно производительный режим необязателен. Он бустит частоты особо не прибавляя производительности. Попытаться снизить напряжение на процессоре через intel-undervolt. Частоты и напряжение видеокарты можно попробовать отрегулировать в LACT.

anonymous
()

Кнопки врядли зависят от DSDT. Это прошивка EC, то есть мульта. Ну либо сам мульт. Может дохлый может глючный может отваливается хз что с ним может быть.

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

А то что ошибки при дезассемблировании - это у каждого первого ноута. Это не ошибки а фича в общем то, несовместимость с голым стандартом и линуксом. Единственная правильная ОС под которую есть официальные драйвера прекрасно с этими «ошибками» живет.

Qui-Gon ★★★★★
()
Ответ на: комментарий от devl547

Чем замерял?

powertop

Какой другой? Процесор тот же?

hp pavilion dv7 6b04er. проц старее на пару поколений, но максимальный TDP у него такой же 35W. или ты хочешь сказать более современный порц будут делать более прожорливым?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

более современный порц будут делать более прожорливым

Ну это современная политика интел. Fcuk battery life, gaming parrots matters!

Они выиграли рынок лаптопов выпустив skylake и последующие вариации именно за счет автономности, но маркетологи потребовали отжать у АМД рынок игрулек. И понеслось - интел с каждым поколением давал больше попугаев но прожорливость росла еще быстрее. Выход Lunarlake дал надежду - но по ходу это был нежданчик вырожденный какой-то побочной командой и выкинутый на рынок только от полного краха синих печек которые никто не хочет покупать. Но вроде как синий опять воспряли и заявили что лунар был ошибкой которая не повторится, а теперь у сраных синих печек появился настоящий преемник - и на рынок полетели тонны г…на, то есть ноутов на говнопечках 2ххH (не путать с нормальными процами 2xxV). Так что после легкого лучика надежды соревнование по ускоренному пожиранию батареи и кипячению яиц владельца снова началось.

Qui-Gon ★★★★★
()
Ответ на: комментарий от teod0r

Замерьте суммарный потребляемый ток по входу, т.е., по 19 В линии. Это можно сделать обычным амперметром. Как вариант, сетевым ваттметром и потом вывести мощность через КПД.

yars068 ★★★★
()

Бывает, даже в меню UEFI не срабатывают. Бывает, если быстро нажать 2 какие-нибудь кнопки, например ‘jk’ печатает ‘kj’. Бывает даже вводятся клавиши, которых не нажимал. Также бывает один и тот же символ вводится 2 раза.

Какая-то жутко плавающая проблема, не по порядку клавиши, не нажимается, нажимается то что не нажато, в UEFI (я так понимаю UEFI shell, а не BIOS нотобуковский, если последнее то, дело явно не в linux, а в железе.

Помню ноут какой-то HP там была беда что клавиатура тупо засыпала, надо было нажать на кнопку, а потом ещё раз чтобы оно напечатало нужное, дальше можно печатать, но если сделать паузу, то клава засыпала и нужно куда-то тыкнуть чтобы чтобы снова ожила, если я правильно помню решалось всовыванием в параметры ядра i8042.dumbkbd=1 (загуглил по памяти, вроде оно)

Фик знает, может поможет, но это так, пальцем в небо :D

Можно ещё поглядеть на

  • sudo evtest /dev/input/by-id/usb-тут-что-то-твоё-event-kbd

На предмет аномалий и внезапных непроизвольных нажатий, неверных очерёдностей состояний и так далее, может какая клавиша типа Pause Break залипла/дребезжит, внешне не проявляется, но при нажимании других клавиш получается непонятное.

Больше мыслей нет.

LINUX-ORG-RU ★★★★★
()