AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[acpi](unix)

Martin Hope
Novakov
Asked: 2023-08-09 23:46:07 +0800 CST

用于 I2C 设备的 x86 ACPI SSDT

  • 6

我正在尝试使用 ACPI SSDT 在 Odroid H3+/Ubuntu 22.04 上注册 I2C gpio 扩展器 (PCF8575),以便稍后我可以轻松地将每个 GPIO 分配为 led 并使用好听的名称来切换引脚。我有以下 SSDT 表:

DefinitionBlock ("gpio-expander.aml", "SSDT", 1, "Vendor", "Accel", 0x00000004)
{
        External (\_SB.PC00.I2C0, DeviceObj)
        Scope (\_SB.PC00.I2C0)
        {
                Device (PCF0)
                {
                        Name (_CID, "PRP0001")
                        Name (_DDN, "GPIO-Expander")
                        Name (_ADR, 0x0020)
                        Name (_DSD, Package ()
                        {
                                ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
                                Package ()
                                {
                                        Package () { "compatible", Package() { "nxp,pcf8575" } },
                                }
                        })
                        Method (_STA, 0, NotSerialized)  // _STA: Status
                        {
                                Return (0x0F)
                        }
                        Name (_CRS, ResourceTemplate()
                        {
                                I2cSerialBusV2 (
                                        0x20,
                                        ControllerInitiated,
                                        100000,
                                        AddressingMode7Bit,
                                        "\\_SB.PC00.I2C0",
                                        0x00
                                )
                        })
                }
        }
}

(使用 GRUB 或 acpi_configfs 加载 - 效果相同), /sys 中的正确位置出现节点,但我不知道,原因内核没有分配任何驱动程序。如果我使用echo "pcf8575 0x20" > ../new_device正确分配的驱动程序添加设备,那么它也应该使用 ACPI 分配它

我尝试了不同的变化:有或没有_ADR,_CRS有方法或没有方法。

acpi
  • 1 个回答
  • 9 Views
Martin Hope
Low power
Asked: 2020-01-22 06:16:28 +0800 CST

Solaris 11 x86 在 ACPI 电源按钮上禁用关机

  • 1

如果 x86 Solaris 系统不在 X11(文本控制台)中,则在按下电源按钮后它将关闭。我应该如何禁用它?Oracle 的文档仅说明您可以通过按电源按钮关闭系统,但没有说明如何禁用它。

solaris acpi
  • 2 个回答
  • 188 Views
Martin Hope
Michael A
Asked: 2019-12-29 13:36:18 +0800 CST

我如何实际编写检测耳机何时插入的 acpid 事件脚本?

  • 1

我acpid用来检测我的耳机何时插入。根据acpid_listen,相关事件是

jack/headphone HEADPHONE unplug
jack/headphone HEADPHONE plug

我创建了/etc/acpi/events/headphone_jack这样的文件:

event=jack/headphone.*
action=/etc/acpi/actions/headphone.sh "%e"

如果我改用,该事件仍然不会触发jack[ /]headphone。脚本/etc/acpi/actions/headphone.sh如下所示:

amixer set Master off

换句话说,每次插入或拔出耳机时,音量都会被静音。此amixer命令在终端中有效。我用 重新启动了acpid服务sudo /etc/init.d/acpid reload,但事件仍然没有触发。

我究竟做错了什么?我在 Thinkpad X1 Carbon 第 4 代上使用 Debian 10(“buster”)x64。

debian acpi
  • 1 个回答
  • 416 Views
Martin Hope
zjeffer
Asked: 2019-06-10 14:50:45 +0800 CST

笔记本电脑风扇总是说它以 8 RPM 运行

  • 0

我有一台具有以下规格的联想 Legion Y520:

zjeffer@ArchLinux 
----------------- 
OS: Arch Linux x86_64 
Host: 80WK Lenovo Y520-15IKBN 
Kernel: 5.1.7-arch1-1-ARCH 
Uptime: 42 mins 
Packages: 1659 (pacman) 
Shell: zsh 5.7.1 
Resolution: 1920x1080, 1920x1080 
WM: bspwm 
Theme: OSX-Arc-Plus [GTK2/3] 
Icons: Papirus-Light [GTK2/3] 
Terminal: gnome-terminal 
CPU: Intel i7-7700HQ (8) @ 3.800GHz 
GPU: NVIDIA GeForce GTX 1050 Mobile 
GPU: Intel HD Graphics 630 
Memory: 1369MiB / 7866MiB 

我正在使用thinkfan来尝试控制我的 cpu 风扇。可悲的是,我看不到真正的风扇速度是多少,因为它总是说 8 RPM。

这是我的 thinkfan.conf,如果重要的话:

######################################################################
# thinkfan 0.7 example config file
# ================================
#
# ATTENTION: There is only very basic sanity checking on the configuration.
# That means you can set your temperature limits as insane as you like. You
# can do anything stupid, e.g. turn off your fan when your CPU reaches 70°C.
#
# That's why this program is called THINKfan: You gotta think for yourself.
#
######################################################################
#
# IBM/Lenovo Thinkpads (thinkpad_acpi, /proc/acpi/ibm)
# ====================================================
#
# IMPORTANT:
#
# To keep your HD from overheating, you have to specify a correction value for
# the sensor that has the HD's temperature. You need to do this because
# thinkfan uses only the highest temperature it can find in the system, and
# that'll most likely never be your HD, as most HDs are already out of spec
# when they reach 55 °C.
# Correction values are applied from left to right in the same order as the
# temperatures are read from the file.
#
# For example:
# tp_thermal /proc/acpi/ibm/thermal (0, 0, 10)
# will add a fixed value of 10 °C the 3rd value read from that file. Check out
# http://www.thinkwiki.org/wiki/Thermal_Sensors to find out how much you may
# want to add to certain temperatures.

#  Syntax:
#  (LEVEL, LOW, HIGH)
#  LEVEL is the fan level to use (0-7 with thinkpad_acpi)
#  LOW is the temperature at which to step down to the previous level
#  HIGH is the temperature at which to step up to the next level
#  All numbers are integers.
#

# I use this on my T61p:
# tp_fan /proc/acpi/ibm/fan
# tp_thermal /proc/acpi/ibm/thermal (0, 10, 15, 2, 10, 5, 0, 3, 0, 3)

hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp4_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp5_input
hwmon /sys/devices/virtual/thermal/thermal_zone1/temp


(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767) 

这是输出dmesg | grep -i thinkpad:

[    0.000000] Command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=661a855a-c479-4291-bcb2-95b148ce2020 rw quiet nowatchdog nvidia-drm.modeset=1 thinkpad_acpi fan_control=1
[    0.155975] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=661a855a-c479-4291-bcb2-95b148ce2020 rw quiet nowatchdog nvidia-drm.modeset=1 thinkpad_acpi fan_control=1
[    4.231093] thinkpad_acpi: ThinkPad ACPI Extras v0.26
[    4.231094] thinkpad_acpi: http://ibm-acpi.sf.net/
[    4.231094] thinkpad_acpi: ThinkPad BIOS 4KCN40WW, EC unknown
[    4.231094] thinkpad_acpi: Lenovo Lenovo Y520-15IKBN, model 80WK
[    4.231554] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one
[    4.231620] thinkpad_acpi: Console audio control enabled, mode: monitor (read only)
[    4.232877] thinkpad_acpi: battery 1 registered (start 0, stop 0)
[    4.232879] battery: new extension: ThinkPad Battery Extension
[    4.232896] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input8

在这里它说EC unknown,所以我不知道我有哪个 EC,并且在互联网上找不到任何关于我的模型的信息。

s-tui我在, in/proc/acpi/ibm/fan和 in 中检查了这个速度sensors:它总是在 8 RPM,如果我在玩游戏时能听到它全速爆炸,这当然是不可能的。

在 Windows 10 中,我发现speedfan找不到任何粉丝。我还将 BIOS 版本从 4KCN40WW 更新为 4KCN45WW。没有变化。


如何查看我的真实风扇速度?

cpu acpi
  • 2 个回答
  • 997 Views
Martin Hope
mwryl
Asked: 2019-02-10 22:48:47 +0800 CST

Debian 安装后无法启动

  • 0

我在硬盘上安装了 Fedora,在另一个硬盘上安装了 Windows。我决定从 Fedora 更改为 Debian,现在安装后 Debian 无法启动。

这是它向我显示的错误消息:

[    0.019679] ACPI Error: [\_SB_.PCIO.XHC_.RHUB.HS11] Namespace lookup failure, AE_NOT_FOUND (20160831/dswload-210)
[    0.019681] ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20160831/psobject-238)
[    0.019716] ACPI Exception: AE_NOT_FOUND, (SSDT:xh_rvp08) while loading table (20160831/tbxfload-228)
[    0.025840] ACPI Error: 1 table load failures, 7 successful (20160831/tbxfload-246)
/dev/sda2: recovering journal
/dev/sda2: clean, 144851/121020416 files, 8908502/484074496 blocks

它坚持这一点,之后不做任何事情。

debian acpi
  • 1 个回答
  • 352 Views
Martin Hope
Vineet
Asked: 2018-08-08 06:57:12 +0800 CST

puppylinux: .sh 文件中的 acpitool -s

  • 0

我正在使用puppylinux(xenialpup 64 位)。为了让它进入睡眠模式,我在 cli 中运行“acpitool -s”。它工作正常。

但是如果我把它放在一个文件中,将它保存为.sh文件,然后将它标记为可执行,然后双击执行它。它使系统睡眠片刻并立即打开。我不明白缺少什么/出了什么问题。

shell acpi
  • 1 个回答
  • 123 Views
Martin Hope
GP92
Asked: 2018-03-10 07:56:03 +0800 CST

如果内核中启用了 acpi 模块,我们是否需要运行 acpid 服务以进行软关机?

  • 2

我的理解是 acpid 捕获诸如关闭盖子之类的电源事件,并根据定义的规则触发诸如关机、睡眠等活动。

那么,我可以说运行命令(如shutdown -h now. 看起来是这样,因为 acpid 服务本身正在shutdown -h now配置文件中运行命令。

而且我想知道服务器是否需要 acpid。我们可以为服务器提供什么样的电源事件?

rhel acpi
  • 1 个回答
  • 1866 Views
Martin Hope
Tom Hale
Asked: 2018-02-07 20:59:41 +0800 CST

ACPI 区域不覆盖整个命令/响应缓冲区

  • 11

我遇到系统死机并查看日志时看到内核 ( 4.14.15-1-MANJARO) 错误,例如:

kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x201] vs fed40080 f80
kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x201] vs fed40080 f80

(是的,消息重复,时间戳完全相同)

稍后,我得到:

tpm tpm0: A TPM error (379) occurred attempting get random

我正在为我的华硕 UX330 运行最新版本的固件 (v3.05)。我的内核是:

4.16.0-1-MANJARO #1 SMP PREEMPT Wed Mar 21 09:02:49 UTC 2018 x86_64 GNU/Linux

除了祈求华硕更新 UEFI / BIOS 固件外,还有什么解决方法吗?

linux-kernel acpi
  • 3 个回答
  • 32147 Views
Martin Hope
Eloy
Asked: 2017-12-11 11:20:42 +0800 CST

Linux 内核如何从系统固件中检索 ACPI 表?

  • 2

当 Linux 内核启动时,它会从系统固件中检索 ACPI 表。系统启动后,我可以使用实用程序从正在运行的内核内存中检索表,例如acpidump

也许这个问题并不是真正的 Linux 特定的,因为其他操作系统必须遵循一些类似的程序,但我仍然对 Linux 内核最初如何从系统固件中检索它们感兴趣。我查看了一些内核源代码,但无法直接回答它是如何工作的。

linux-kernel acpi
  • 1 个回答
  • 2949 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve