Re: lm(4) temperature

2021-11-27 Thread Mihai Popescu
>> OK, with expectations adjusted,
>> does anyone know what the three numbers
>> are _supposed_ to be?
>>
I guess you are talking about those numbers:
> dev/ic/lm78var.h talks about Temperature 1, 2, 3;

The 1,2,3 are the corresponding ports from the chip itself, there are
3 ports for temperature reading, numbered from 1 to 3, so the
programmer kept the numbering and duplicated it in the actual C code
variables names.

> > > but man lm(4) only says
> > >
> > > Temp uK Motherboard Temperature

The manual says this:
"The original LM78 hardware monitor ..."
That is _NOT_ your case, since your sensor is reported as:
> > > wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
> > > lm1 at wbsio0 port 0x290/8: W83627HF
LM78=/=W83627HF.
It has been included in the lm driver, maybe to avoid another extra
work and code duplication for a new driver, something like CD_ROMs put
on scsi drivers or something like this.

> Yes.  Temperature readings from multiple places on the motherboard.
Not quite in this case, only the first is a temperature reading, the
rest are bogus since the pins are not connected (i.e. floating,
reading whatever EMI is throwing to them).

Again, what you read on your specific hardware is the CPU die
temperature as the first temperature reported, the remaining 2
readings on temperature are bogus, they have no real meaning since the
pins have no sensors connected on them. At least this is if you read
the ALIX schematics.



Re: lm(4) temperature

2021-11-27 Thread Patrick Wildt
Am Sat, Nov 27, 2021 at 03:35:05PM +0100 schrieb Jan Stary:
> > > This is current/i386 on an ALIX.1E (dmesg below).
> > > I am trying to monitor the CPU temperature with
> > > 
> > > wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
> > > lm1 at wbsio0 port 0x290/8: W83627HF
> > > 
> > > $ sysctl hw.sensors.lm1
> > > hw.sensors.lm1.temp0=69.00 degC
> > > hw.sensors.lm1.temp1=57.00 degC
> > > hw.sensors.lm1.temp2=49.00 degC
> > > hw.sensors.lm1.volt0=1.26 VDC (VCore A)
> > > hw.sensors.lm1.volt1=2.64 VDC (VCore B)
> > > hw.sensors.lm1.volt2=3.42 VDC (+3.3V)
> > > hw.sensors.lm1.volt3=5.11 VDC (+5V)
> > > hw.sensors.lm1.volt4=0.00 VDC (+12V)
> > > hw.sensors.lm1.volt5=-14.91 VDC (-12V)
> > > hw.sensors.lm1.volt6=-7.71 VDC (-5V)
> > > hw.sensors.lm1.volt7=5.07 VDC (5VSB)
> > > hw.sensors.lm1.volt8=0.00 VDC (VBAT)
> > > 
> > > There are three temperatures reported,
> > > and dev/ic/lm78var.h talks about Temperature 1, 2, 3;
> > > but man lm(4) only says
> > > 
> > >   Temp uK Motherboard Temperature
> > > 
> > > Does anyone know what exactly they are?
> > 
> > 
> > There is a chip in the machine.
> > It has pins.
> > Those pins are monitored by the driver, as specific registers.
> > 
> > The pins wired to who the hell knows where by each board manufacturer.
> > 
> > Sometimes the chips need special registers and capacitors
> > 
> > Quite often, the board engineer sent to add this part to the board
> > choose the wrong registers and capacitors, and sometimes they compensate
> > for these errors with private tables in the BIOS or various monitoring
> > programs which move around machine to machine.
> > 
> > 
> > We monitor registers.  We assume the vendor did the right thing.
> > 
> > No that I've described what a shitshow it is, I hope you can adjust your
> > expectations.
> 
> OK, with expectations adjusted,
> does anyone know what the three numbers
> are _supposed_ to be?
> 

Yes.  Temperature readings from multiple places on the motherboard.



Re: lm(4) temperature

2021-11-27 Thread Jan Stary
> > This is current/i386 on an ALIX.1E (dmesg below).
> > I am trying to monitor the CPU temperature with
> > 
> > wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
> > lm1 at wbsio0 port 0x290/8: W83627HF
> > 
> > $ sysctl hw.sensors.lm1
> > hw.sensors.lm1.temp0=69.00 degC
> > hw.sensors.lm1.temp1=57.00 degC
> > hw.sensors.lm1.temp2=49.00 degC
> > hw.sensors.lm1.volt0=1.26 VDC (VCore A)
> > hw.sensors.lm1.volt1=2.64 VDC (VCore B)
> > hw.sensors.lm1.volt2=3.42 VDC (+3.3V)
> > hw.sensors.lm1.volt3=5.11 VDC (+5V)
> > hw.sensors.lm1.volt4=0.00 VDC (+12V)
> > hw.sensors.lm1.volt5=-14.91 VDC (-12V)
> > hw.sensors.lm1.volt6=-7.71 VDC (-5V)
> > hw.sensors.lm1.volt7=5.07 VDC (5VSB)
> > hw.sensors.lm1.volt8=0.00 VDC (VBAT)
> > 
> > There are three temperatures reported,
> > and dev/ic/lm78var.h talks about Temperature 1, 2, 3;
> > but man lm(4) only says
> > 
> > Temp uK Motherboard Temperature
> > 
> > Does anyone know what exactly they are?
> 
> 
> There is a chip in the machine.
> It has pins.
> Those pins are monitored by the driver, as specific registers.
> 
> The pins wired to who the hell knows where by each board manufacturer.
> 
> Sometimes the chips need special registers and capacitors
> 
> Quite often, the board engineer sent to add this part to the board
> choose the wrong registers and capacitors, and sometimes they compensate
> for these errors with private tables in the BIOS or various monitoring
> programs which move around machine to machine.
> 
> 
> We monitor registers.  We assume the vendor did the right thing.
> 
> No that I've described what a shitshow it is, I hope you can adjust your
> expectations.

OK, with expectations adjusted,
does anyone know what the three numbers
are _supposed_ to be?



Re: lm(4) temperature

2021-11-22 Thread Mihai Popescu
> it looks like it goes to the LX memory controller. So it must be the
temperature of the board itself, more or less.

Looking at the LX Geode processor specs, the memory controller is
integrated in the CPU. So looking again at the pins names (AL17, AK17), it
looks like there is a diode inside the CPU die.
So you have the CPU die temperature.


Re: lm(4) temperature

2021-11-22 Thread Mihai Popescu
ALIX.1E has schematics available. W83627HF has specifications available too.

>From the W83627HF one can see there are 3 ports for temperature monitoring:

PIN# | PURPOSE | FUNCTION

102 | VTIN3 | Temperature sensor 3 input (used for CPU2 temperature)

103 | VTIN2 | Temperature sensor 2 input (used for CPU1 temperature)

104 | VTIN1 | Temperature sensor 1 input (used for system temperature)

>From the ALIX.1E schematics, page 10, there is only PIN# 104
connected, from those enumerated, the rest are not.

Unless they are using another way to measure temperatures (which i
didn't checked on schematics), there is only one temperature
monitored. As for the place the input is connected, it looks like it
goes to the LX memory controller. So it must be the temperature of the
board itself, more or less.

Same goes for voltages.

I think you can address this issue to pcengines support, they are
generally very responsive.


Re: lm(4) temperature

2021-11-20 Thread gwes




On 11/20/21 2:42 PM, Theo de Raadt wrote:

Jan Stary  wrote:


This is current/i386 on an ALIX.1E (dmesg below).
I am trying to monitor the CPU temperature with

wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
lm1 at wbsio0 port 0x290/8: W83627HF

$ sysctl hw.sensors.lm1
hw.sensors.lm1.temp0=69.00 degC
hw.sensors.lm1.temp1=57.00 degC
hw.sensors.lm1.temp2=49.00 degC
hw.sensors.lm1.volt0=1.26 VDC (VCore A)
hw.sensors.lm1.volt1=2.64 VDC (VCore B)
hw.sensors.lm1.volt2=3.42 VDC (+3.3V)
hw.sensors.lm1.volt3=5.11 VDC (+5V)
hw.sensors.lm1.volt4=0.00 VDC (+12V)
hw.sensors.lm1.volt5=-14.91 VDC (-12V)
hw.sensors.lm1.volt6=-7.71 VDC (-5V)
hw.sensors.lm1.volt7=5.07 VDC (5VSB)
hw.sensors.lm1.volt8=0.00 VDC (VBAT)

There are three temperatures reported,
and dev/ic/lm78var.h talks about Temperature 1, 2, 3;
but man lm(4) only says

Temp uK Motherboard Temperature

Does anyone know what exactly they are?


There is a chip in the machine.
It has pins.
Those pins are monitored by the driver, as specific registers.

The pins wired to who the hell knows where by each board manufacturer.

Sometimes the chips need special registers and capacitors

Quite often, the board engineer sent to add this part to the board
choose the wrong registers and capacitors, and sometimes they compensate
for these errors with private tables in the BIOS or various monitoring
programs which move around machine to machine.


We monitor registers.  We assume the vendor did the right thing.


No that I've described what a shitshow it is, I hope you can adjust your
expectations.  Otherwise, maybe it is time to give up and delete these
sensor drivers..


Boot the machine to startup BIOS.
Search for a hardware monitor screen.
Write down what it says - values and descriptions.
Any correlation between that and what sysctl.hw.sensors says is purely
in the mind of the viewer.




Re: lm(4) temperature

2021-11-20 Thread Theo de Raadt
Jan Stary  wrote:

> This is current/i386 on an ALIX.1E (dmesg below).
> I am trying to monitor the CPU temperature with
> 
> wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
> lm1 at wbsio0 port 0x290/8: W83627HF
> 
> $ sysctl hw.sensors.lm1
> hw.sensors.lm1.temp0=69.00 degC
> hw.sensors.lm1.temp1=57.00 degC
> hw.sensors.lm1.temp2=49.00 degC
> hw.sensors.lm1.volt0=1.26 VDC (VCore A)
> hw.sensors.lm1.volt1=2.64 VDC (VCore B)
> hw.sensors.lm1.volt2=3.42 VDC (+3.3V)
> hw.sensors.lm1.volt3=5.11 VDC (+5V)
> hw.sensors.lm1.volt4=0.00 VDC (+12V)
> hw.sensors.lm1.volt5=-14.91 VDC (-12V)
> hw.sensors.lm1.volt6=-7.71 VDC (-5V)
> hw.sensors.lm1.volt7=5.07 VDC (5VSB)
> hw.sensors.lm1.volt8=0.00 VDC (VBAT)
> 
> There are three temperatures reported,
> and dev/ic/lm78var.h talks about Temperature 1, 2, 3;
> but man lm(4) only says
> 
>   Temp uK Motherboard Temperature
> 
> Does anyone know what exactly they are?


There is a chip in the machine.
It has pins.
Those pins are monitored by the driver, as specific registers.

The pins wired to who the hell knows where by each board manufacturer.

Sometimes the chips need special registers and capacitors

Quite often, the board engineer sent to add this part to the board
choose the wrong registers and capacitors, and sometimes they compensate
for these errors with private tables in the BIOS or various monitoring
programs which move around machine to machine.


We monitor registers.  We assume the vendor did the right thing.


No that I've described what a shitshow it is, I hope you can adjust your
expectations.  Otherwise, maybe it is time to give up and delete these
sensor drivers..



lm(4) temperature

2021-11-20 Thread Jan Stary
This is current/i386 on an ALIX.1E (dmesg below).
I am trying to monitor the CPU temperature with

wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
lm1 at wbsio0 port 0x290/8: W83627HF

$ sysctl hw.sensors.lm1
hw.sensors.lm1.temp0=69.00 degC
hw.sensors.lm1.temp1=57.00 degC
hw.sensors.lm1.temp2=49.00 degC
hw.sensors.lm1.volt0=1.26 VDC (VCore A)
hw.sensors.lm1.volt1=2.64 VDC (VCore B)
hw.sensors.lm1.volt2=3.42 VDC (+3.3V)
hw.sensors.lm1.volt3=5.11 VDC (+5V)
hw.sensors.lm1.volt4=0.00 VDC (+12V)
hw.sensors.lm1.volt5=-14.91 VDC (-12V)
hw.sensors.lm1.volt6=-7.71 VDC (-5V)
hw.sensors.lm1.volt7=5.07 VDC (5VSB)
hw.sensors.lm1.volt8=0.00 VDC (VBAT)

There are three temperatures reported,
and dev/ic/lm78var.h talks about Temperature 1, 2, 3;
but man lm(4) only says

Temp uK Motherboard Temperature

Does anyone know what exactly they are?

Jan


OpenBSD 7.0-current (GENERIC) #276: Wed Nov 10 11:36:02 MST 2021
dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
real mem  = 259207168 (247MB)
avail mem = 238137344 (227MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: date 07/19/10, BIOS32 rev. 0 @ 0xfa950
apm0 at bios0: Power Management spec V1.2 (slowidle)
pcibios0 at bios0: rev 2.1 @ 0xf/0xdfb4
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/128 (6 entries)
pcibios0: PCI Exclusive IRQs: 5 10 11
pcibios0: no compatible PCI ICU found: ICU vendor 0x1022 product 0x2090
pcibios0: Warning, unable to fix up PCI interrupt routing
pcibios0: PCI bus #0 is the last bus
bios0: ROM list: 0xc/0x8000 0xc8000/0xa800 0xef000/0x1000!
cpu0 at mainbus0: (uniprocessor)
cpu0: Geode(TM) Integrated Processor by AMD PCS ("AuthenticAMD" 586-class) 499 
MHz, 05-0a-02
cpu0: FPU,DE,PSE,TSC,MSR,CX8,SEP,PGE,CMOV,CFLUSH,MMX,MMXX,3DNOW2,3DNOW
mtrr: K6-family MTRR support (2 registers)
amdmsr0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 1 function 0 "AMD Geode LX" rev 0x33
vga1 at pci0 dev 1 function 1 "AMD Geode LX Video" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
glxsb0 at pci0 dev 1 function 2 "AMD Geode LX Crypto" rev 0x00: RNG AES
vr0 at pci0 dev 13 function 0 "VIA VT6105M RhineIII" rev 0x96: irq 11, address 
00:0d:b9:0e:9e:f4
ukphy0 at vr0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x004063, 
model 0x0034
glxpcib0 at pci0 dev 15 function 0 "AMD CS5536 ISA" rev 0x03: rev 3, 32-bit 
3579545Hz timer, watchdog, gpio, i2c
gpio0 at glxpcib0: 32 pins
iic0 at glxpcib0
pciide0 at pci0 dev 15 function 2 "AMD CS5536 IDE" rev 0x01: DMA, channel 0 
wired to compatibility, channel 1 wired to compatibility
wd0 at pciide0 channel 0 drive 0: 
wd0: 1-sector PIO, LBA48, 15279MB, 31293360 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
pciide0: channel 1 ignored (disabled)
auglx0 at pci0 dev 15 function 3 "AMD CS5536 Audio" rev 0x01: irq 11, CS5536 
AC97
ac97: codec id 0x414c4770 (Avance Logic ALC203 rev 0)
ac97: codec features headphone, 20 bit DAC, 18 bit ADC, No 3D Stereo
audio0 at auglx0
ohci0 at pci0 dev 15 function 4 "AMD CS5536 USB" rev 0x02: irq 5, version 1.0, 
legacy support
ehci0 at pci0 dev 15 function 5 "AMD CS5536 USB" rev 0x02: irq 5
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "AMD EHCI root hub" rev 2.00/1.00 
addr 1
isa0 at glxpcib0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
com0: console
com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
wbsio0 at isa0 port 0x2e/2: W83627HF rev 0x41
lm1 at wbsio0 port 0x290/8: W83627HF
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
usb1 at ohci0: USB revision 1.0
uhub1 at usb1 configuration 1 interface 0 "AMD OHCI root hub" rev 1.00/1.00 
addr 1
dt: 445 probes
umass0 at uhub0 port 4 configuration 1 interface 0 "JMicron USB to ATA/ATAPI 
bridge" rev 2.00/1.00 addr 2
umass0: using SCSI over Bulk-Only
scsibus1 at umass0: 2 targets, initiator 0
sd0 at scsibus1 targ 1 lun 0:  
serial.152d2329801130168383
sd0: 228936MB, 512 bytes/sector, 468862128 sectors
vscsi0 at root
scsibus2 at vscsi0: 256 targets
softraid0 at root
scsibus3 at softraid0: 256 targets
root on wd0a (cfeae50a002d1e1d.a) swap on wd0b dump on wd0b