Re: hwmon (nct6775): Please fix Invalid temperature source error for NCT6798D

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/14/20 5:19 PM, Alexey Galakhov wrote:
> On Tue, 14 Jul 2020 16:58:29 -0700
> Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> 
>> On 7/14/20 4:17 PM, Alexey Galakhov wrote:
>>> Hi,
>>>
>>> I'm facing the same problem. I did some research on my machine.
>>>
>>> On Fri, 2020-07-03 at 10:10 -0700, Guenter Roeck wrote:
>>>   
>>>> There is nothing much if anything we can do about that. The NCT6798D
>>>> datasheet reports temperature source 28 as reserved. You could ask
>>>> Asus for support, but their usual response is that they don't support
>>>> Linux.  
>>>
>>> Looks like there are different versions of the datasheet. The one of
>>> NCT6796D, Revision 0.6 states that 28 (0x1c or 11100) is "Select PECI  
>>
>> We are talking about NCT6798D here.
> 
> I have NCT6798D on my machine and I also double-checked the chip marking
> on the motherboard. I just looked at the 96's datasheet (not found a
> 98's one). Even with 98 this configuration seems to be correct. Looks
> like at least on some revisions of 98 it is not reserved and usable.
> The fan in controlled correctly with this setting.
> 

FWIW: https://patchwork.kernel.org/patch/11663841/

>> I have no idea how to access the "HM Read-Only" registers. The datasheets
>> are not exactly verbal about it.
> 
> I successfully accessed them. The access procedure is poorly described
> but quite simple.
> 
> Each of these "HM Read-Only" registers is just a plain I/O port. Just
> inb() reads them. Their addresses are sequential. The base address
> (address of register 00) is configured similar to the main I/O address
> (the one which is usually 0x295). Its MSB is in register 0x64 and its
> LSB is in 0x65 of the SuperIO. Like that:
> 
>   superio_select(sioreg, NCT6775_LD_HWM);
>   hm_ro_base = superio_inb(sioreg, 0x64) << 8;
>   hm_ro_base |= superio_inb(sioreg, 0x65);
> 
>   // on my machine hm_ro_base == 0x800
> 
>   val = inb(hm_io_base + hm_reg);
> 
> Hope this helps.
> 
Interesting. I'll keep it in mind, but I don't think I'll be able to
submit any patches anytime soon.

Thanks,
Guenter



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux