AMD 7840 Fan and Temp issue (negative temp, fan is not starting)

I found a workaround using fw-fanctl.
By changing the temperature reading module to use the k10temp AMD sensor, I’ve made the laptop usable.
The modified module is src/fw_fanctrl/hardwareController/EctoolHardwareController.py

Function:

    def get_temperature(self):
        # Priority: k10temp -> EC sensors -> fallback

        # k10temp
        try:
            with open('/sys/class/hwmon/hwmon8/temp1_input', 'r') as f:
                temp_millidegrees = int(f.read().strip())
                temp_celsius = temp_millidegrees / 1000.0
                return float(round(temp_celsius, 2))
        except:
            pass

        # EC Sensors
        if self.noBatterySensorMode:
            raw_out = "".join(
                [
                    subprocess.run(
                        "ectool temps " + x,
                        stdout=subprocess.PIPE,
                        shell=True,
                        text=True,
                    ).stdout
                    for x in self.nonBatterySensors
                ]
            )
        else:
            raw_out = subprocess.run(
                "ectool temps all",
                stdout=subprocess.PIPE,
                shell=True,
                text=True,
            ).stdout

        raw_temps = re.findall(r"\(= (\d+) C\)", raw_out)
        temps = sorted([x for x in [int(x) for x in raw_temps] if x > 0], reverse=True)

        # safety fallback
        if len(temps) == 0:
            return 50
        return float(round(temps[0], 2))