Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
AM4 Mobos used for Ryzen
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  

What AM4 motherboard do you use. Actually use, not want.
Asus
38%
 38%  [ 28 ]
MSI
20%
 20%  [ 15 ]
Gigabyte
21%
 21%  [ 16 ]
Asrock
19%
 19%  [ 14 ]
Total Votes : 73

Author Message
kajzer
l33t
l33t


Joined: 27 Nov 2014
Posts: 811

PostPosted: Tue Sep 01, 2020 3:35 pm    Post subject: Reply with quote

For IT87 you can find out-of-tree driver here

I patched the kernel driver just to add my sensor (IT8613E) but I ripped the code from there.
I was getting resource conflict though so I had to patch DSDT as well :lol:
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3448

PostPosted: Tue Sep 01, 2020 3:45 pm    Post subject: Reply with quote

Thanks, I've got that page bookmarked. I may have to be back here asking about the DSDT stuff at some point. I've had the stuff sitting in my cart for a while, and an hour or two ago Newegg told me that some price-breaks are about to expire, so I think an order may be in order tonight. But first I found an SSD tutorial, and need to read that and then select the right one.
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
kajzer
l33t
l33t


Joined: 27 Nov 2014
Posts: 811

PostPosted: Tue Sep 01, 2020 4:27 pm    Post subject: Reply with quote

Sure, if needed I can walk you through it, you might not need to do that, only this could work :
Code:
# modprobe it87 ignore_resource_conflict=1


I mean, it will work for sure, in my case the problem was that the system would shutdown after some random number of hours, usually 12 maybe less maybe more.
BIOS would access that area responsible for thermal monitoring, which IT87 uses as well and then it wouldn't get the correct readings, it would think that the CPU temperature is above 127C and it would shutdown.
I've disabled that in BIOS but it would still do it, so I had to fix that in DSDT
Back to top
View user's profile Send private message
saellaven
Guru
Guru


Joined: 23 Jul 2006
Posts: 569

PostPosted: Tue Sep 01, 2020 4:54 pm    Post subject: Reply with quote

depontius wrote:
I'm looking to build a new system soon, a Zen-3 arch, at the moment I'm thinking Ryzen-7 3700X.

Finding the right motherboard is the problem. I've usually bought ASUS, long ago Tyan, and my most recent mobo is Asrock. But more recently I've seen that IT-87 is no longer in the regular kernel, and someone had suggested a different brand in order to avoid IT87. I just checked my cart on Newegg and see that I have an Asrock board there, so I must have given up on that advice.

Anyway on this thread I saw something about an out-of-tree IT87 driver, but don't find anything like that in the portage tree. That and searching also jogged a memory about an "asus_atk0110" driver, so I'm not sure how that fits in.

Can anyone comment about getting lm-sensors working with Ryzen boards, and if this should be driving my decision away from Asrock?


I'm using an Asus Prime X570 Pro with my 3700X. It uses the nct6775 driver and everything just works (currently running vanilla linux 5.8.5 and lm-sensors 3.6.0, BIOS 2606 installed)

Code:

sensors
nct6798-isa-0290
Adapter: ISA adapter
in0:                      920.00 mV (min =  +0.00 V, max =  +1.74 V)
in1:                      992.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in2:                        3.34 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in3:                        3.28 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in4:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:                      744.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:                      992.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in7:                        3.34 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in8:                        3.25 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in9:                      896.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in10:                     368.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in11:                     544.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in12:                       1.03 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in13:                     976.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in14:                     1000.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:                      757 RPM  (min =    0 RPM)
fan2:                     1119 RPM  (min =    0 RPM)
fan3:                        0 RPM  (min =    0 RPM)
fan4:                        0 RPM  (min =    0 RPM)
fan5:                        0 RPM  (min =    0 RPM)
fan6:                        0 RPM  (min =    0 RPM)
fan7:                        0 RPM  (min =    0 RPM)
SYSTIN:                    +40.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
CPUTIN:                    +38.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
AUXTIN0:                   +26.0°C    sensor = thermistor
AUXTIN1:                   +40.0°C    sensor = thermistor
AUXTIN2:                   +21.0°C    sensor = thermistor
AUXTIN3:                   +26.0°C    sensor = thermistor
PECI Agent 0 Calibration:  +43.5°C
PCH_CHIP_CPU_MAX_TEMP:      +0.0°C
PCH_CHIP_TEMP:              +0.0°C
PCH_CPU_TEMP:               +0.0°C
intrusion0:               ALARM
intrusion1:               ALARM
beep_enable:              disabled

k10temp-pci-00c3
Adapter: PCI adapter
Vcore:       931.00 mV
Vsoc:          1.09 V
Tctl:         +50.8°C
Tdie:         +50.8°C
Tccd1:        +40.0°C
Icore:         5.00 A
Isoc:          5.75 A

_________________
Ryzen 3700X, Asus Prime X570-Pro, 32 GB DDR4 3200, GeForce 1050 Ti
openrc-0.17, ~vanilla-sources, ~nvidia-drivers, gcc-9.3.0
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3448

PostPosted: Tue Sep 01, 2020 5:01 pm    Post subject: Reply with quote

saellaven wrote:
depontius wrote:
I'm looking to build a new system soon, a Zen-3 arch, at the moment I'm thinking Ryzen-7 3700X.

Finding the right motherboard is the problem. I've usually bought ASUS, long ago Tyan, and my most recent mobo is Asrock. But more recently I've seen that IT-87 is no longer in the regular kernel, and someone had suggested a different brand in order to avoid IT87. I just checked my cart on Newegg and see that I have an Asrock board there, so I must have given up on that advice.

Anyway on this thread I saw something about an out-of-tree IT87 driver, but don't find anything like that in the portage tree. That and searching also jogged a memory about an "asus_atk0110" driver, so I'm not sure how that fits in.

Can anyone comment about getting lm-sensors working with Ryzen boards, and if this should be driving my decision away from Asrock?


I'm using an Asus Prime X570 Pro with my 3700X. It uses the nct6775 driver and everything just works (currently running vanilla linux 5.8.5 and lm-sensors 3.6.0, BIOS 2606 installed)

Code:

sensors
nct6798-isa-0290
Adapter: ISA adapter
in0:                      920.00 mV (min =  +0.00 V, max =  +1.74 V)
in1:                      992.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in2:                        3.34 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in3:                        3.28 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in4:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:                      744.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:                      992.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in7:                        3.34 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in8:                        3.25 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in9:                      896.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in10:                     368.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in11:                     544.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in12:                       1.03 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in13:                     976.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in14:                     1000.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:                      757 RPM  (min =    0 RPM)
fan2:                     1119 RPM  (min =    0 RPM)
fan3:                        0 RPM  (min =    0 RPM)
fan4:                        0 RPM  (min =    0 RPM)
fan5:                        0 RPM  (min =    0 RPM)
fan6:                        0 RPM  (min =    0 RPM)
fan7:                        0 RPM  (min =    0 RPM)
SYSTIN:                    +40.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
CPUTIN:                    +38.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
AUXTIN0:                   +26.0°C    sensor = thermistor
AUXTIN1:                   +40.0°C    sensor = thermistor
AUXTIN2:                   +21.0°C    sensor = thermistor
AUXTIN3:                   +26.0°C    sensor = thermistor
PECI Agent 0 Calibration:  +43.5°C
PCH_CHIP_CPU_MAX_TEMP:      +0.0°C
PCH_CHIP_TEMP:              +0.0°C
PCH_CPU_TEMP:               +0.0°C
intrusion0:               ALARM
intrusion1:               ALARM
beep_enable:              disabled

k10temp-pci-00c3
Adapter: PCI adapter
Vcore:       931.00 mV
Vsoc:          1.09 V
Tctl:         +50.8°C
Tdie:         +50.8°C
Tccd1:        +40.0°C
Icore:         5.00 A
Isoc:          5.75 A


That's worth knowing. Right now I have an Asrock B550M Steel Legend sitting in my cart, but I'm not terribly vested in it. I've puzzled a bit about which of the AMD 5xx chipsets to get - X570 vs B550. The former was earlier and seems to have more raw performance, but the latter is newer and has some nice features. Plus the performance of the former may be in areas not terribly important to me.
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
Anon-E-moose
Advocate
Advocate


Joined: 23 May 2008
Posts: 4866
Location: Dallas area

PostPosted: Tue Sep 01, 2020 5:52 pm    Post subject: Reply with quote

Don't know anything about the b550's, but I would make sure there's a clear upgrade path with the ryzen if you go that way.

Like saellaven, I bought the prime x570 pro, w/3770x and I've been happy with it.

Edit to add: I just looked at the asrock board, micro-atx, not a lot of pci slots, whereas the asus prime is a regular atx size, so there's a size constraint, if you need it.
_________________
PRIME x570-pro, 3700x, RX 550 - 5.8 zen kernel
Acer E5-575 (laptop), i3-7100u - i965 - 5.5 zen kernel
---both---
gcc 9.3.0, profile 17.1 (no-pie & modified) amd64-no-multilib, eudev, openrc, openbox, palemoon
Back to top
View user's profile Send private message
nick_gentoo
Tux's lil' helper
Tux's lil' helper


Joined: 07 Jan 2019
Posts: 120

PostPosted: Wed Sep 02, 2020 7:24 am    Post subject: Reply with quote

kajzer wrote:
For IT87 you can find out-of-tree driver here

I patched the kernel driver just to add my sensor (IT8613E) but I ripped the code from there.
I was getting resource conflict though so I had to patch DSDT as well :lol:


I am also interested in this, hoping that I'll be able to use the onboard IT8686E.
Is it possible to simply replace the it87.c file of a newer kernel, or should the two files be merged somehow (as the linked file is 2 years old)?
Back to top
View user's profile Send private message
kajzer
l33t
l33t


Joined: 27 Nov 2014
Posts: 811

PostPosted: Wed Sep 02, 2020 7:40 am    Post subject: Reply with quote

nick_gentoo wrote:
kajzer wrote:
For IT87 you can find out-of-tree driver here

I patched the kernel driver just to add my sensor (IT8613E) but I ripped the code from there.
I was getting resource conflict though so I had to patch DSDT as well :lol:


I am also interested in this, hoping that I'll be able to use the onboard IT8686E.
Is it possible to simply replace the it87.c file of a newer kernel, or should the two files be merged somehow (as the linked file is 2 years old)?


That's not possible, you can't just replace that file, even though the same guy wrote those drivers they are different .
If out-of-tree driver is working fine for you there shouldn't be a problem to make a patch.
The patch I made for me is just for my sensor, I didn't add them all because I have no need for them.
I might take a look later to see if I can add your sensor.

Meanwhile here's the patch I use

Code:
--- a/drivers/hwmon/it87.c   2020-08-26 14:43:49.315721428 +0200
+++ b/drivers/hwmon/it87.c   2020-08-27 17:16:49.184790191 +0200
@@ -63,7 +63,7 @@
 
 enum chips { it87, it8712, it8716, it8718, it8720, it8721, it8728, it8732,
         it8771, it8772, it8781, it8782, it8783, it8786, it8790,
-        it8792, it8603, it8620, it8622, it8628 };
+        it8792, it8603, it8613, it8620, it8622, it8628 };
 
 static unsigned short force_id;
 module_param(force_id, ushort, 0);
@@ -153,6 +153,7 @@
 #define IT8786E_DEVID 0x8786
 #define IT8790E_DEVID 0x8790
 #define IT8603E_DEVID 0x8603
+#define IT8613E_DEVID 0x8613
 #define IT8620E_DEVID 0x8620
 #define IT8622E_DEVID 0x8622
 #define IT8623E_DEVID 0x8623
@@ -433,6 +434,15 @@
         | FEAT_AVCC3 | FEAT_PWM_FREQ2,
       .peci_mask = 0x07,
    },
+   [it8613] = {
+      .name = "it8613",
+      .suffix = "E",
+      .features = FEAT_NEWER_AUTOPWM | FEAT_12MV_ADC | FEAT_16BIT_FANS
+        | FEAT_TEMP_PECI | FEAT_FIVE_FANS
+        | FEAT_FIVE_PWM | FEAT_IN7_INTERNAL | FEAT_PWM_FREQ2
+        | FEAT_AVCC3,
+      .peci_mask = 0x07,
+   },
    [it8620] = {
       .name = "it8620",
       .suffix = "E",
@@ -573,6 +583,8 @@
       lsb = 109;
    else
       lsb = 160;
+   if (data->type == it8613)
+      lsb = 110;
    if (data->in_scaled & BIT(nr))
       lsb <<= 1;
    return lsb;
@@ -2449,6 +2461,9 @@
    case IT8790E_DEVID:
       sio_data->type = it8790;
       break;
+   case IT8613E_DEVID:
+      sio_data->type = it8613;
+      break;   
    case IT8603E_DEVID:
    case IT8623E_DEVID:
       sio_data->type = it8603;
@@ -2610,6 +2625,43 @@
 
       sio_data->beep_pin = superio_inb(sioaddr,
                    IT87_SIO_BEEP_PIN_REG) & 0x3f;
+   } else if (sio_data->type == it8613) {
+      int reg27, reg29, reg2a;
+
+      superio_select(sioaddr, GPIO);
+
+      /* Check for pwm3, fan3, pwm5, fan5 */
+      reg27 = superio_inb(sioaddr, IT87_SIO_GPIO3_REG);
+      if (reg27 & BIT(1))
+         sio_data->skip_fan |= BIT(4);
+      if (reg27 & BIT(3))
+         sio_data->skip_pwm |= BIT(4);
+      if (reg27 & BIT(6))
+         sio_data->skip_pwm |= BIT(2);
+      if (reg27 & BIT(7))
+         sio_data->skip_fan |= BIT(2);
+
+      /* Check for pwm2, fan2 */
+      reg29 = superio_inb(sioaddr, IT87_SIO_GPIO5_REG);
+      if (reg29 & BIT(1))
+         sio_data->skip_pwm |= BIT(1);
+      if (reg29 & BIT(2))
+         sio_data->skip_fan |= BIT(1);
+
+      /* Check for pwm4, fan4 */
+      reg2a = superio_inb(sioaddr, IT87_SIO_PINX1_REG);
+      if (!(reg2a & BIT(0)) || (reg29 & BIT(7))) {
+         sio_data->skip_fan |= BIT(3);
+         sio_data->skip_pwm |= BIT(3);
+      }
+
+      sio_data->skip_pwm |= BIT(0); /* No pwm1 */
+      sio_data->skip_fan |= BIT(0); /* No fan1 */
+      sio_data->skip_in |= BIT(3);  /* No VIN3 */
+      sio_data->skip_in |= BIT(6);  /* No VIN6 */
+
+      sio_data->beep_pin = superio_inb(sioaddr,
+                   IT87_SIO_BEEP_PIN_REG) & 0x3f;               
    } else if (sio_data->type == it8620 || sio_data->type == it8628) {
       int reg;
 
Back to top
View user's profile Send private message
nick_gentoo
Tux's lil' helper
Tux's lil' helper


Joined: 07 Jan 2019
Posts: 120

PostPosted: Wed Sep 02, 2020 10:41 am    Post subject: Reply with quote

Thanks!
I'll give it a try this weekend, and also have a better look at the diff between the in-tree and out-of-tree files.
Back to top
View user's profile Send private message
nick_gentoo
Tux's lil' helper
Tux's lil' helper


Joined: 07 Jan 2019
Posts: 120

PostPosted: Sat Sep 05, 2020 11:46 am    Post subject: Reply with quote

kajzer wrote:
nick_gentoo wrote:
kajzer wrote:
For IT87 you can find out-of-tree driver here

I patched the kernel driver just to add my sensor (IT8613E) but I ripped the code from there.
I was getting resource conflict though so I had to patch DSDT as well :lol:


I am also interested in this, hoping that I'll be able to use the onboard IT8686E.
Is it possible to simply replace the it87.c file of a newer kernel, or should the two files be merged somehow (as the linked file is 2 years old)?


That's not possible, you can't just replace that file, even though the same guy wrote those drivers they are different .
If out-of-tree driver is working fine for you there shouldn't be a problem to make a patch.
The patch I made for me is just for my sensor, I didn't add them all because I have no need for them.
I might take a look later to see if I can add your sensor.


Maybe I'm lucky, but it seems to be working directly with the out-of-tree driver (after many kernel rebuilds). Thank you for the hints!
The key for me was to compile it87 as a module (I had it built-in) and load it as you showed:
Code:
# modprobe it87 ignore_resource_conflict=1

Combined with the lm-sensors config file taken from https://github.com/lm-sensors/lm-sensors/blob/master/configs/Gigabyte/X470-AORUS-ULTRA-GAMING.conf (my board is a Gigabyte B450 AORUS PRO), the measured voltages now start to make sense.
I'll wait and see how it behaves.
Back to top
View user's profile Send private message
kajzer
l33t
l33t


Joined: 27 Nov 2014
Posts: 811

PostPosted: Sat Sep 05, 2020 12:06 pm    Post subject: Reply with quote

nick_gentoo wrote:

Maybe I'm lucky, but it seems to be working directly with the out-of-tree driver (after many kernel rebuilds). Thank you for the hints!
The key for me was to compile it87 as a module (I had it built-in) and load it as you showed:
Code:
# modprobe it87 ignore_resource_conflict=1

Combined with the lm-sensors config file taken from https://github.com/lm-sensors/lm-sensors/blob/master/configs/Gigabyte/X470-AORUS-ULTRA-GAMING.conf (my board is a Gigabyte B450 AORUS PRO), the measured voltages now start to make sense.
I'll wait and see how it behaves.


If you are compiling and using out-of-tree driver you don't need to rebuild kernel, just disable in kernel it87, of course with every kernel update you would have to make that driver manually each time.
You can auto load that module by making "/etc/modules-load.d/it87.conf" with "it87" inside that file, also you will need to make this file "/etc/modprobe.d/it87.conf" and place this inside "options it87 ignore_resource_conflict=1"

btw I was looking at your sensor and tried to make a patch so that you would avoid using out-of-tree driver and have it always built in the kernel, but it's little more complicated than mine was, it's not a problem to patch it but I'm not sure would it work or not, it has more stuff.
Back to top
View user's profile Send private message
nick_gentoo
Tux's lil' helper
Tux's lil' helper


Joined: 07 Jan 2019
Posts: 120

PostPosted: Sat Sep 05, 2020 4:33 pm    Post subject: Reply with quote

kajzer wrote:

If you are compiling and using out-of-tree driver you don't need to rebuild kernel, just disable in kernel it87, of course with every kernel update you would have to make that driver manually each time.
You can auto load that module by making "/etc/modules-load.d/it87.conf" with "it87" inside that file, also you will need to make this file "/etc/modprobe.d/it87.conf" and place this inside "options it87 ignore_resource_conflict=1"

That's cool, and I remember reading about this some time ago, I'll check how to do it.

Quote:
btw I was looking at your sensor and tried to make a patch so that you would avoid using out-of-tree driver and have it always built in the kernel, but it's little more complicated than mine was, it's not a problem to patch it but I'm not sure would it work or not, it has more stuff.

I also saw this, that's why I gave up on it and switched completely to the out-of-tree driver. Luckily it works for me. And it's a pity that some datasheet/documentation does not exist, from searching around it seems to be a pretty common device.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7
Page 7 of 7

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum