t-8ch / linux-gigabyte-wmi-driver

Linux Driver for WMI on Gigabyte Mainboards. LEGACY. New development happens in mainline Linux.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/platform/x86/gigabyte-wmi.c
31 stars 4 forks source link

Support for B760M #17

Open drasteirosilva opened 1 year ago

drasteirosilva commented 1 year ago

Hey,

I know this is a legacy repository but I'm having trouble with my new motherboard and I arrived here. I'm way out of my depth.

I'm trying to run sensors-detect so pwmconfig can see my fans, but the only thing that sensors-detect finds is my cpu temps and an unknown chip with ID 0x8689. I've tried to follow the steps in Issue #13 and I'm now able to see _gigabytewmi-virtual-0 when I run sensors. I'm not sure how to proceed.

I'm not sure if this is the place to ask, but do you have any tips? Thanks

t-8ch commented 1 year ago

Does 'sensors' show actual values?

What is the output of grep -r . /sys/class/dmi/id/

drasteirosilva commented 1 year ago

Yeah, running sensors gives me the actual temps

Running grep -r . /sys/class/dmi/id/ returns this:

/sys/class/dmi/id/bios_date:10/12/2022 /sys/class/dmi/id/board_serial:Default string /sys/class/dmi/id/uevent:MODALIAS=dmi:bvnAmericanMegatrendsInternational,LLC.:bvrF1:bd10/12/2022:br5.27:svnGigabyteTechnologyCo.,Ltd.:pnB760MDS3HDDR4:pvrDefaultstring:rvnGigabyteTechnologyCo.,Ltd.:rnB760MDS3HDDR4:rvrx.x:cvnDefaultstring:ct3:cvrDefaultstring:skuDefaultstring: /sys/class/dmi/id/product_serial:Default string /sys/class/dmi/id/product_name:B760M DS3H DDR4 /sys/class/dmi/id/chassis_vendor:Default string /sys/class/dmi/id/chassis_asset_tag:Default string /sys/class/dmi/id/sys_vendor:Gigabyte Technology Co., Ltd. /sys/class/dmi/id/power/runtime_active_time:0 /sys/class/dmi/id/power/runtime_active_kids:0 /sys/class/dmi/id/power/runtime_usage:0 /sys/class/dmi/id/power/runtime_status:unsupported grep: /sys/class/dmi/id/power/autosuspend_delay_ms: Input/output error /sys/class/dmi/id/power/async:disabled /sys/class/dmi/id/power/runtime_suspended_time:0 /sys/class/dmi/id/power/runtime_enabled:disabled /sys/class/dmi/id/power/control:auto /sys/class/dmi/id/bios_version:F1 /sys/class/dmi/id/bios_release:5.27 /sys/class/dmi/id/product_version:Default string /sys/class/dmi/id/board_vendor:Gigabyte Technology Co., Ltd. /sys/class/dmi/id/chassis_version:Default string /sys/class/dmi/id/product_sku:Default string /sys/class/dmi/id/chassis_type:3 /sys/class/dmi/id/chassis_serial:Default string /sys/class/dmi/id/product_family:B760 MB /sys/class/dmi/id/product_uuid:03560274-043c-0523-8d06-380700080009 /sys/class/dmi/id/bios_vendor:American Megatrends International, LLC. /sys/class/dmi/id/board_asset_tag:Default string /sys/class/dmi/id/board_version:x.x /sys/class/dmi/id/modalias:dmi:bvnAmericanMegatrendsInternational,LLC.:bvrF1:bd10/12/2022:br5.27:svnGigabyteTechnologyCo.,Ltd.:pnB760MDS3HDDR4:pvrDefaultstring:rvnGigabyteTechnologyCo.,Ltd.:rnB760MDS3HDDR4:rvrx.x:cvnDefaultstring:ct3:cvrDefaultstring:skuDefaultstring: /sys/class/dmi/id/board_name:B760M DS3H DDR4

t-8ch commented 1 year ago

Then this new hardware ID should be submitted to the upstream kernel so that everything works out of the box.

Do you want to try yourself? Or should I do it?

drasteirosilva commented 1 year ago

I can try to do it, but I have no clue how.

t-8ch commented 1 year ago

If you are a developer and interested in contributing to Linux this is a good first task. (I can give you pointers and help)

Otherwise it is probably a lot of spent time getting to know the tools and procedures for limited gain.

drasteirosilva commented 1 year ago

I am by no means a developer, I do some programming but it is mostly for cientific purposes and is basically python scripting.

But I am interested in contributing to the community and learning more.

t-8ch commented 1 year ago

Clone the repository at https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

Read the process at https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst

The end result should be a patch sent by mail that follows the structure of https://lore.kernel.org/lkml/20220705184407.14181-1-parherman@gmail.com/

The important points are:

This is a very brief overview. In case of any questions don't hesitate to ask. Also feel free to post your patches here for first review or sent them to me privately.

drasteirosilva commented 1 year ago

Thank you, I'll give it a try!! Do you want me to mark this as closed?

dudekaa commented 1 year ago

Hi guys,

I'm also noticing this is legacy repository, but I'm having very similar issue with slightly different MB (B760 GAMING X AX). And can't google anything more relevant (probably my bad).

My full grep ... output:

$ sudo grep -r . /sys/class/dmi/id/
[sudo] heslo pro nost: 
/sys/class/dmi/id/bios_date:11/29/2022
/sys/class/dmi/id/board_serial:Default string
/sys/class/dmi/id/uevent:MODALIAS=dmi:bvnAmericanMegatrendsInternational,LLC.:bvrF1:bd11/29/2022:br5.27:svnGigabyteTechnologyCo.,Ltd.:pnB760GAMINGXAX:pvrDefaultstring:rvnGigabyteTechnologyCo.,Ltd.:rnB760GAMINGXAX:rvrx.x:cvnDefaultstring:ct3:cvrDefaultstring:skuDefaultstring:
/sys/class/dmi/id/product_serial:Default string
/sys/class/dmi/id/product_name:B760 GAMING X AX
/sys/class/dmi/id/chassis_vendor:Default string
/sys/class/dmi/id/chassis_asset_tag:Default string
/sys/class/dmi/id/sys_vendor:Gigabyte Technology Co., Ltd.
/sys/class/dmi/id/power/runtime_active_time:0
/sys/class/dmi/id/power/runtime_status:unsupported
grep: /sys/class/dmi/id/power/autosuspend_delay_ms: Input/output error
/sys/class/dmi/id/power/runtime_suspended_time:0
/sys/class/dmi/id/power/control:auto
/sys/class/dmi/id/bios_version:F1
/sys/class/dmi/id/bios_release:5.27
/sys/class/dmi/id/product_version:Default string
/sys/class/dmi/id/board_vendor:Gigabyte Technology Co., Ltd.
/sys/class/dmi/id/chassis_version:Default string
/sys/class/dmi/id/product_sku:Default string
/sys/class/dmi/id/chassis_type:3
/sys/class/dmi/id/chassis_serial:Default string
/sys/class/dmi/id/product_family:B760 MB
/sys/class/dmi/id/product_uuid:03560274-043c-0554-3706-ce0xxxxxxxxxx
/sys/class/dmi/id/bios_vendor:American Megatrends International, LLC.
/sys/class/dmi/id/board_asset_tag:Default string
/sys/class/dmi/id/board_version:x.x
/sys/class/dmi/id/modalias:dmi:bvnAmericanMegatrendsInternational,LLC.:bvrF1:bd11/29/2022:br5.27:svnGigabyteTechnologyCo.,Ltd.:pnB760GAMINGXAX:pvrDefaultstring:rvnGigabyteTechnologyCo.,Ltd.:rnB760GAMINGXAX:rvrx.x:cvnDefaultstring:ct3:cvrDefaultstring:skuDefaultstring:
/sys/class/dmi/id/board_name:B760 GAMING X AX

and sensors-detect output (can provide in full if needed):

$ bat ite-mb-chip.log 
       File: ite-mb-chip.log
   1   # sudo sensors-detect
   2   Probing for Super-I/O at 0x2e/0x2f
   3   ...
   4   Trying family `ITE'...                                      Yes
   5   Found unknown chip with ID 0x8689
   6   Probing for Super-I/O at 0x4e/0x4f
   7   ...

When I follow steps in #13, I'm able to get gigabyte_wmi sensor with some "sane" values:

gigabyte_wmi-virtual-0
Adapter: Virtual device
temp1:        +32.0°C  
temp2:        +35.0°C  
temp3:        +36.0°C  
temp4:        +33.0°C  
temp5:        +28.0°C  
temp6:        +30.0°C

@drasteirosilva I suppose it'd start working as soon as your patch gets into upstream. But in any case feel free to contact me, if you need any HW IDs or anything as such.

And lastly, thank you both for great work!

BR Arnost

t-8ch commented 1 year ago

FYI the patch from @drasteirosilva would handle only "B760M DS3H DDR4" while you have "B760 GAMING X AX". Another patch would be needed.

dudekaa commented 1 year ago

O.K. My bad, I was thinking when the chip ID is the same it can simply "just work".

So like first question, are you willing to give me some support, as you mentioned in some comments ago? I'm working as developer, but I've no commits to kernel yet. Also if so, I probably should create separate ticket for this new MB?

Thanks in advance

t-8ch commented 1 year ago

when the chip ID is the same it can simply "just work".

The way the driver is currently set up, there is a list of board_name DMI values that can load the driver.

are you willing to give me some support

Sure.

should create separate ticket

If you want to discuss it in a ticket, a new one would be better. Feel also free to send me a mail.