انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: چگونه مدیریت سخت افزارها  (دفعات بازدید: 1801 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین { AliReaza }

  • Hero Member
  • *
  • ارسال: 866
  • جنسیت : پسر
  • اگه کفشت پاتو می زد و از ترس قضاوت مردم پابرهنه نشدی و درد رو به پات تحمیل کردی، دیگر در مورد آزادی شعار نده...
چگونه مدیریت سخت افزارها
« : 29 امرداد 1394، 02:44 ب‌ظ »
سلام دوستان

می خوام یک مقدار برم تو کار برنامه نویسی سخت افزار. ( برای تفریح و کسب مهارت )

زبان برنامه نویسی برام فرقی ندار، اما در الویت Python هست.

یک HP ProBook 4540S دارم.
از وقتی روش GNU/Linux استفاده میکنم، تا حالا دکمه میانبر فعال و غیر فعال Touchpad کار نکرده.

در آدرس زیر می تونید هم دکمه را ببینید و هم روش استفاده و...
https://www.youtube.com/watch?v=fj1Yf4ASag0

همانطور که دید این دکمه دارای یک چراغ هم هست.

اول می خواستم بدونم به غیر از lspci و lsusb دیگه چطوری می تونم بفهمم:
۱− چه قطعاتی موجود هستند؟
۲− چه قطعاتی هستند، اما کار نمی کنند؟ ( مثل حالتی که Driver نصب نشده باشه و اون قطع کار نمی کنه )

مثلا الان من باید چطوری بررسی کنم که این دکمه میانبر اصلا Driver نصب شده یا نه؟

چطوری میتونم چراغشو روشن و خاموش کنم؟


از دستورات xset و setleds هم استفاده کردم. اما کلا نتیجه ای نداشت. مشکل کجاست؟
$ setleds +caps
KDGKBLED: Inappropriate ioctl for device
Error reading current flags setting. Maybe you are not on the console?

نکته: در قسمت Additional Driver به غیر از Graphic هیچی دیگه نیست.

خروجی lspci:
00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.2 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 3 (rev c4)
00:1c.3 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 4 (rev c4)
00:1c.5 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 6 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Thames [Radeon HD 7550M/7570M/7650M] (rev ff)
03:00.0 System peripheral: JMicron Technology Corp. SD/MMC Host Controller (rev 30)
03:00.2 SD Host controller: JMicron Technology Corp. Standard SD Host Controller (rev 30)
03:00.3 System peripheral: JMicron Technology Corp. MS Host Controller (rev 30)
04:00.0 Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07)
خروجی lsusb:
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 1bcf:2c03 Sunplus Innovation Technology Inc.
Bus 001 Device 003: ID 138a:003d Validity Sensors, Inc.
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 174c:55aa ASMedia Technology Inc. ASMedia 2105 SATA bridge
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19711
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : چگونه مدیریت سخت افزارها
« پاسخ #1 : 29 امرداد 1394، 03:11 ب‌ظ »
این دکمه‌ها باید به صورت یک ماژول مخصوص اون دستگاه توی acpi لینوکس تعریف شده باشه که با بالا اومدن سیستم‌عامل بشه باهاشون کار کرد. مثلاً برای لپ‌تاپ من توی ماژول thinkpad_acpi هستند که موقع راه‌اندازی سیستم‌عامل بار می‌شه تا سیستم بتونه بشناسه اون‌ها رو. در غیر این صورت موقع بالا بودن سیستم‌عامل نمی شه باهاشون کار کرد، مگر این که مدار سخت‌افزاری براش گذاشته باشن.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین { AliReaza }

  • Hero Member
  • *
  • ارسال: 866
  • جنسیت : پسر
  • اگه کفشت پاتو می زد و از ترس قضاوت مردم پابرهنه نشدی و درد رو به پات تحمیل کردی، دیگر در مورد آزادی شعار نده...
پاسخ : چگونه مدیریت سخت افزارها
« پاسخ #2 : 29 امرداد 1394، 06:28 ب‌ظ »
این دکمه‌ها باید به صورت یک ماژول مخصوص اون دستگاه توی acpi لینوکس تعریف شده باشه که با بالا اومدن سیستم‌عامل بشه باهاشون کار کرد. مثلاً برای لپ‌تاپ من توی ماژول thinkpad_acpi هستند که موقع راه‌اندازی سیستم‌عامل بار می‌شه تا سیستم بتونه بشناسه اون‌ها رو. در غیر این صورت موقع بالا بودن سیستم‌عامل نمی شه باهاشون کار کرد، مگر این که مدار سخت‌افزاری براش گذاشته باشن.
خیلی ممنون

از اونجایی که تاره می خوام شروع کنم، نمی دونم باید چکار کنم؟

می تونید یک مثال ساده قرار دهید؟ مثلا با Python؟؟؟

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19711
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : چگونه مدیریت سخت افزارها
« پاسخ #3 : 29 امرداد 1394، 06:46 ب‌ظ »
این‌ها رو گفتم برای این که توضیح بدم با پایتون نمی‌شه. باید با سی کار کنی و اون موارد رو به ماژول acpi مربوط بهش اضافه کنی.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین { AliReaza }

  • Hero Member
  • *
  • ارسال: 866
  • جنسیت : پسر
  • اگه کفشت پاتو می زد و از ترس قضاوت مردم پابرهنه نشدی و درد رو به پات تحمیل کردی، دیگر در مورد آزادی شعار نده...
پاسخ : چگونه مدیریت سخت افزارها
« پاسخ #4 : 29 امرداد 1394، 09:30 ب‌ظ »
این‌ها رو گفتم برای این که توضیح بدم با پایتون نمی‌شه. باید با سی کار کنی و اون موارد رو به ماژول acpi مربوط بهش اضافه کنی.
خیلی ممنون
یک مقدار جستجو کردم به آدرس زیر رسیدم:
https://wiki.ubuntu.com/Kernel/Debugging/Backlight

طبق توضیحات کار کردم و دستور زیر را زدم:
lsmod | grep thinkpad_acpi
اما هیچی خروجی نمیده.

مشکل از کجاست؟

خروجی /proc/acpi
$ grep -r . /proc/acpi
/proc/acpi/battery/BAT0/alarm:alarm:                   unsupported
/proc/acpi/battery/BAT0/state:present:                 yes
/proc/acpi/battery/BAT0/state:capacity state:          ok
/proc/acpi/battery/BAT0/state:charging state:          charging
/proc/acpi/battery/BAT0/state:present rate:            450 mA
/proc/acpi/battery/BAT0/state:remaining capacity:      2918 mAh
/proc/acpi/battery/BAT0/state:present voltage:         12548 mV
/proc/acpi/battery/BAT0/info:present:                 yes
/proc/acpi/battery/BAT0/info:design capacity:         3170 mAh
/proc/acpi/battery/BAT0/info:last full capacity:      3170 mAh
/proc/acpi/battery/BAT0/info:battery technology:      rechargeable
/proc/acpi/battery/BAT0/info:design voltage:          10800 mV
/proc/acpi/battery/BAT0/info:design capacity warning: 200 mAh
/proc/acpi/battery/BAT0/info:design capacity low:     100 mAh
/proc/acpi/battery/BAT0/info:cycle count:   0
/proc/acpi/battery/BAT0/info:capacity granularity 1:  100 mAh
/proc/acpi/battery/BAT0/info:capacity granularity 2:  100 mAh
/proc/acpi/battery/BAT0/info:model number:            Primary
/proc/acpi/battery/BAT0/info:serial number:           12331 2012/06/14
/proc/acpi/battery/BAT0/info:battery type:            LIon
/proc/acpi/battery/BAT0/info:OEM info:                Hewlett-Packard
/proc/acpi/button/lid/LID/state:state:      open
/proc/acpi/ac_adapter/AC/state:state:                   on-line
/proc/acpi/wakeup:Device S-state   Status   Sysfs node
/proc/acpi/wakeup:LANC   S5 *disabled
/proc/acpi/wakeup:EHC1   S3 *enabled   pci:0000:00:1d.0
/proc/acpi/wakeup:EHC2   S3 *enabled   pci:0000:00:1a.0
/proc/acpi/wakeup:XHC   S3 *enabled   pci:0000:00:14.0
/proc/acpi/wakeup:PCIB   S5 *disabled
/proc/acpi/wakeup:RP03   S4 *disabled  pci:0000:00:1c.2
/proc/acpi/wakeup:RP04   S5 *disabled  pci:0000:00:1c.3
/proc/acpi/wakeup:WNIC   S5 *disabled  pci:0000:04:00.0
/proc/acpi/wakeup:RP06   S5 *disabled  pci:0000:00:1c.5
/proc/acpi/wakeup:NIC   S5 *enabled   pci:0000:05:00.0

در مورد acpid هم مطالعه کردم:
http://manpages.ubuntu.com/manpages/trusty/man8/acpid.8.html

خیلی خوب توضیح داده که میشه یک file ساخت و...

اما اصلا نفهمدیم چطوری باید event ها را پیدا کنم؟