[PATCH 2/2] thermal: amlogic: Add support for A9 thermal controller
Xianwei Zhao via B4 Relay <[email protected]> Thu, 30 Jul 2026 08:34:38 +0000
| Newsgroups | org.infradead.lists.linux-amlogic,org.kernel.feeds.b4-sent,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm |
|---|---|
| Message-ID | <[email protected]> |
RnJvbTogWGlhbndlaSBaaGFvIDx4aWFud2VpLnpoYW9AYW1sb2dpYy5jb20+CgpBZGQgc3VwcG9y dCBmb3IgdGhlIEFtbG9naWMgQTkgdGhlcm1hbCBjb250cm9sbGVyLgoKVGhlIEE5IHRoZXJtYWwg Y29udHJvbGxlciB1c2VzIGRpZmZlcmVudCBjYWxpYnJhdGlvbiBwYXJhbWV0ZXJzLCByZXF1aXJl cwpzZXBhcmF0ZSBjb3JlIGFuZCBidXMgY2xvY2tzLCBhbmQgc3VwcG9ydHMgYSBoYXJkd2FyZSBv dmVyLXRlbXBlcmF0dXJlCnJlc2V0IG1lY2hhbmlzbS4KCkFkZCB0aGUgQTkgY2FsaWJyYXRpb24g ZGF0YSwgcmV0cmlldmUgdGhlIGNsb2NrcyBieSBuYW1lLCBhbmQgY29uZmlndXJlCnRoZSBoYXJk d2FyZSByZXNldCB0ZW1wZXJhdHVyZSB0aHJvdWdoIHRoZSBvcHRpb25hbCAnYW1sb2dpYyxody1y ZXNldC10ZW1wJwpEVCBwcm9wZXJ0eS4gV2hlbiB0aGUgcHJvcGVydHkgaXMgYWJzZW50LCB1c2Ug dGhlIGRlZmF1bHQgcmVzZXQgdGVtcGVyYXR1cmUKb2YgMTEwwrBDLgoKQWxzbyByZXN0b3JlIHRo ZSBoYXJkd2FyZSByZXNldCBjb25maWd1cmF0aW9uIGFmdGVyIHJlc3VtZS4KClNpZ25lZC1vZmYt Ynk6IFhpYW53ZWkgWmhhbyA8eGlhbndlaS56aGFvQGFtbG9naWMuY29tPgotLS0KIGRyaXZlcnMv dGhlcm1hbC9hbWxvZ2ljX3RoZXJtYWwuYyB8IDEwNyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDEwNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9hbWxvZ2ljX3RoZXJtYWwuYyBi L2RyaXZlcnMvdGhlcm1hbC9hbWxvZ2ljX3RoZXJtYWwuYwppbmRleCBhMGI1MzA2MjRiNjAuLmM5 YzM1MTQ5NjY1MyAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2FtbG9naWNfdGhlcm1hbC5j CisrKyBiL2RyaXZlcnMvdGhlcm1hbC9hbWxvZ2ljX3RoZXJtYWwuYwpAQCAtNDUsNiArNDUsMTgg QEAKIAkJIFRTRU5TT1JfQ0ZHX1JFRzFfREVNX0VOIHwJXAogCQkgVFNFTlNPUl9DRkdfUkVHMV9D SF9TRUwpCiAKKyNkZWZpbmUgVFNFTlNPUl9DRkdfUkVHMgkJCTB4OAorCSNkZWZpbmUgVFNFTlNP Ul9DRkdfUkVHMl9ISVRFTVBfRU4JQklUKDMxKQorCSNkZWZpbmUgVFNFTlNPUl9DRkdfUkVHMl9S RUJPT1RfRU4JQklUKDMwKQorCSNkZWZpbmUgVFNFTlNPUl9DRkdfUkVHMl9SRUJPT1RfQ09ERQlH RU5NQVNLKDE1LCA0KQorCSNkZWZpbmUgVFNFTlNPUl9DRkdfUkVHMl9SRUJPT1RfVElNRQlHRU5N QVNLKDIzLCAxNikKKwkjZGVmaW5lIFRTRU5TT1JfQ0ZHX1JFRzJfRU5BQkxFCQlcCisJCShUU0VO U09SX0NGR19SRUcyX0hJVEVNUF9FTiB8CVwKKwkJIFRTRU5TT1JfQ0ZHX1JFRzJfUkVCT09UX0VO IHwJXAorCQkgVFNFTlNPUl9DRkdfUkVHMl9SRUJPT1RfVElNRSkKKworI2RlZmluZSBUU0VOU09S X1RFTVBfQ0FMCQkxCisKICNkZWZpbmUgVFNFTlNPUl9TVEFUMAkJCTB4NDAKIAogI2RlZmluZSBU U0VOU09SX1NUQVQ5CQkJMHg2NApAQCAtNjMsNiArNzUsNyBAQAogCiAjZGVmaW5lIFRTRU5TT1Jf Q0FMSUJfT0ZGU0VUCTEKICNkZWZpbmUgVFNFTlNPUl9DQUxJQl9TSElGVAk0CisjZGVmaW5lIFRT RU5TT1JfSFdfUkVTRVRfREVGQVVMVF9URU1QCTExMDAwMAogCiAvKioKICAqIHN0cnVjdCBhbWxv Z2ljX3RoZXJtYWxfc29jX2NhbGliX2RhdGEKQEAgLTkzLDYgKzEwNiw3IEBAIHN0cnVjdCBhbWxv Z2ljX3RoZXJtYWxfZGF0YSB7CiAJY29uc3Qgc3RydWN0IGFtbG9naWNfdGhlcm1hbF9zb2NfY2Fs aWJfZGF0YSAqY2FsaWJyYXRpb25fcGFyYW1ldGVyczsKIAljb25zdCBzdHJ1Y3QgcmVnbWFwX2Nv bmZpZyAqcmVnbWFwX2NvbmZpZzsKIAlib29sIHVzZV9zbTsKKwlib29sIGhhc19zeXNjbGs7CiB9 OwogCiBzdHJ1Y3QgYW1sb2dpY190aGVybWFsIHsKQEAgLTEwMSw4ICsxMTUsMTAgQEAgc3RydWN0 IGFtbG9naWNfdGhlcm1hbCB7CiAJc3RydWN0IHJlZ21hcCAqcmVnbWFwOwogCXN0cnVjdCByZWdt YXAgKnNlY19hb19tYXA7CiAJc3RydWN0IGNsayAqY2xrOworCXN0cnVjdCBjbGsgKnN5c2NsazsK IAlzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkOwogCXUzMiB0cmltX2luZm87CisJdTMy IHRlbXBfY29kZTsKIAlzdHJ1Y3QgbWVzb25fc21fZmlybXdhcmUgKnNtX2Z3OwogCXUzMiB0c2Vu c29yX2lkOwogfTsKQEAgLTEzOCw2ICsxNTQsNDYgQEAgc3RhdGljIGludCBhbWxvZ2ljX3RoZXJt YWxfY29kZV90b19taWxsaWNlbHNpdXMoc3RydWN0IGFtbG9naWNfdGhlcm1hbCAqcGRhdGEsCiAJ cmV0dXJuIHRlbXA7CiB9CiAKKy8qCisgKiBDYWxjdWxhdGUgYSB0ZW1wZXJhdHVyZSBjb2RlIGZy b20gYSB0ZW1wZXJhdHVyZSB2YWx1ZSAuCisgKiBUaGUgdW5pdCBvZiB0aGUgdGVtcGVyYXR1cmUg aXMgZGVncmVlIG1pbGxpQ2Vsc2l1cy4KKyAqLworc3RhdGljIHUzMiBhbWxvZ2ljX3RoZXJtYWxf bWlsbGljZWxzaXVzX3RvX2NvZGUoc3RydWN0IGFtbG9naWNfdGhlcm1hbCAqcGRhdGEsIGludCBt aWxsaWNlbHNpdXMpCit7CisJY29uc3Qgc3RydWN0IGFtbG9naWNfdGhlcm1hbF9zb2NfY2FsaWJf ZGF0YSAqcGFyYW0gPQorCQkJCQlwZGF0YS0+ZGF0YS0+Y2FsaWJyYXRpb25fcGFyYW1ldGVyczsK KwlzNjQgZmFjdG9yLCB1cHRhdCwgdWVmdXNlOworCXUzMiB0ZW1wX2NvZGU7CisKKwl1ZWZ1c2Ug PSBwZGF0YS0+dHJpbV9pbmZvICYgVFNFTlNPUl9UUklNX1NJR05fTUFTSyA/CisJCQkgICAgIH4o cGRhdGEtPnRyaW1faW5mbyAmIFRTRU5TT1JfVFJJTV9URU1QX01BU0spICsgMSA6CisJCQkgICAg IChwZGF0YS0+dHJpbV9pbmZvICYgVFNFTlNPUl9UUklNX1RFTVBfTUFTSyk7CisKKwlmYWN0b3Ig PSBwYXJhbS0+QiArIGRpdl9zNjQobWlsbGljZWxzaXVzLCAxMDApOworCWZhY3RvciA9IEJJVCgx NikgKiBmYWN0b3I7CisJZmFjdG9yID0gZGl2X3M2NChmYWN0b3IsIHBhcmFtLT5BKTsKKwlmYWN0 b3IgPSBmYWN0b3IgLSAodWVmdXNlICYgVFNFTlNPUl9UUklNX1RFTVBfTUFTSyk7CisKKwl1cHRh dCA9IHBhcmFtLT5uICogZmFjdG9yOworCXVwdGF0ID0gZGl2X3M2NCh1cHRhdCwgQklUKDE2KSk7 CisJdXB0YXQgPSBwYXJhbS0+bSAtIHVwdGF0OworCisJZmFjdG9yID0gZmFjdG9yICogMTAwOwor CWZhY3RvciA9IGRpdl9zNjQoZmFjdG9yLCB1cHRhdCk7CisKKwl0ZW1wX2NvZGUgPSAoKGZhY3Rv ciA+PiAweDQpICYgVFNFTlNPUl9URU1QX01BU0spICsgVFNFTlNPUl9URU1QX0NBTDsKKworCXJl dHVybiB0ZW1wX2NvZGU7Cit9CisKK3N0YXRpYyB2b2lkIGFtbG9naWNfdHNlbnNvcl9zZXR1cF9o d19yZXNldChzdHJ1Y3QgYW1sb2dpY190aGVybWFsICpkYXRhKQoreworCXJlZ21hcF91cGRhdGVf Yml0cyhkYXRhLT5yZWdtYXAsIFRTRU5TT1JfQ0ZHX1JFRzIsIFRTRU5TT1JfQ0ZHX1JFRzJfUkVC T09UX0NPREUsCisJCQkgICBkYXRhLT50ZW1wX2NvZGUgPDwgMHg0KTsKKwlyZWdtYXBfdXBkYXRl X2JpdHMoZGF0YS0+cmVnbWFwLCBUU0VOU09SX0NGR19SRUcyLAorCQkJICAgVFNFTlNPUl9DRkdf UkVHMl9FTkFCTEUsIFRTRU5TT1JfQ0ZHX1JFRzJfRU5BQkxFKTsKK30KKwogc3RhdGljIGludCBh bWxvZ2ljX3RoZXJtYWxfZW5hYmxlKHN0cnVjdCBhbWxvZ2ljX3RoZXJtYWwgKmRhdGEpCiB7CiAJ aW50IHJldDsKQEAgLTI1NCw2ICszMTAsMTMgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbWxvZ2lj X3RoZXJtYWxfc29jX2NhbGliX2RhdGEgYW1sb2dpY190aGVybWFsX2cxMmEgPSB7CiAJLm4gPSAz MjQsCiB9OwogCitzdGF0aWMgY29uc3Qgc3RydWN0IGFtbG9naWNfdGhlcm1hbF9zb2NfY2FsaWJf ZGF0YSBhbWxvZ2ljX3RoZXJtYWxfYTkgPSB7CisJLkEgPSA5MTY0LAorCS5CID0gMjc0NywKKwku bSA9IDM3MCwKKwkubiA9IDI3MCwKK307CisKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYW1sb2dpY190 aGVybWFsX2RhdGEgYW1sb2dpY190aGVybWFsX2cxMmFfY3B1X3BhcmFtID0gewogCS51X2VmdXNl X29mZiA9IDB4MTI4LAogCS5jYWxpYnJhdGlvbl9wYXJhbWV0ZXJzID0gJmFtbG9naWNfdGhlcm1h bF9nMTJhLApAQCAtMjcyLDYgKzMzNSwxMyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFtbG9naWNf dGhlcm1hbF9kYXRhIGFtbG9naWNfdGhlcm1hbF9hMV9jcHVfcGFyYW0gPSB7CiAJLnJlZ21hcF9j b25maWcgPSAmYW1sb2dpY190aGVybWFsX3JlZ21hcF9jb25maWdfZzEyYSwKIH07CiAKK3N0YXRp YyBjb25zdCBzdHJ1Y3QgYW1sb2dpY190aGVybWFsX2RhdGEgYW1sb2dpY190aGVybWFsX2E5X3Bh cmFtID0geworCS51c2Vfc20JCQk9IHRydWUsCisJLmhhc19zeXNjbGsJCT0gdHJ1ZSwKKwkuY2Fs aWJyYXRpb25fcGFyYW1ldGVycwk9ICZhbWxvZ2ljX3RoZXJtYWxfYTksCisJLnJlZ21hcF9jb25m aWcJCT0gJmFtbG9naWNfdGhlcm1hbF9yZWdtYXBfY29uZmlnX2cxMmEsCit9OworCiBzdGF0aWMg Y29uc3Qgc3RydWN0IGFtbG9naWNfdGhlcm1hbF9kYXRhIGFtbG9naWNfdGhlcm1hbF90N19wYXJh bSA9IHsKIAkudXNlX3NtCQkJPSB0cnVlLAogCS5jYWxpYnJhdGlvbl9wYXJhbWV0ZXJzCT0gJmFt bG9naWNfdGhlcm1hbF9nMTJhLApAQCAtMjkxLDYgKzM2MSwxMCBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IG9mX2RldmljZV9pZCBvZl9hbWxvZ2ljX3RoZXJtYWxfbWF0Y2hbXSA9IHsKIAkJLmNvbXBh dGlibGUgPSAiYW1sb2dpYyxhMS1jcHUtdGhlcm1hbCIsCiAJCS5kYXRhID0gJmFtbG9naWNfdGhl cm1hbF9hMV9jcHVfcGFyYW0sCiAJfSwKKwl7CisJCS5jb21wYXRpYmxlID0gImFtbG9naWMsYTkt dGhlcm1hbCIsCisJCS5kYXRhID0gJmFtbG9naWNfdGhlcm1hbF9hOV9wYXJhbSwKKwl9LAogCXsK IAkJLmNvbXBhdGlibGUgPSAiYW1sb2dpYyx0Ny10aGVybWFsIiwKIAkJLmRhdGEgPSAmYW1sb2dp Y190aGVybWFsX3Q3X3BhcmFtLApAQCAtMzA1LDYgKzM3OSw3IEBAIHN0YXRpYyBpbnQgYW1sb2dp Y190aGVybWFsX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJc3RydWN0IGRl dmljZSAqZGV2ID0gJnBkZXYtPmRldjsKIAl2b2lkIF9faW9tZW0gKmJhc2U7CiAJaW50IHJldDsK Kwl1MzIgcmVzZXRfdGVtcDsKIAogCXBkYXRhID0gZGV2bV9remFsbG9jKGRldiwgc2l6ZW9mKCpw ZGF0YSksIEdGUF9LRVJORUwpOwogCWlmICghcGRhdGEpCkBAIC0zMjMsOSArMzk4LDI0IEBAIHN0 YXRpYyBpbnQgYW1sb2dpY190aGVybWFsX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpCiAJaWYgKElTX0VSUihwZGF0YS0+cmVnbWFwKSkKIAkJcmV0dXJuIFBUUl9FUlIocGRhdGEt PnJlZ21hcCk7CiAKLQlwZGF0YS0+Y2xrID0gZGV2bV9jbGtfZ2V0KGRldiwgTlVMTCk7Ci0JaWYg KElTX0VSUihwZGF0YS0+Y2xrKSkKLQkJcmV0dXJuIGRldl9lcnJfcHJvYmUoZGV2LCBQVFJfRVJS KHBkYXRhLT5jbGspLCAiZmFpbGVkIHRvIGdldCBjbG9ja1xuIik7CisJaWYgKHBkYXRhLT5kYXRh LT5oYXNfc3lzY2xrKSB7CisJCXBkYXRhLT5jbGsgPSBkZXZtX2Nsa19nZXQoZGV2LCAiY29yZSIp OworCQlpZiAoSVNfRVJSKHBkYXRhLT5jbGspKQorCQkJcmV0dXJuIGRldl9lcnJfcHJvYmUoZGV2 LCBQVFJfRVJSKHBkYXRhLT5jbGspLCAiZmFpbGVkIHRvIGdldCBjb3JlIGNsa1xuIik7CisJCXBk YXRhLT5zeXNjbGsgPSBkZXZtX2Nsa19nZXRfZW5hYmxlZChkZXYsICJwY2xrIik7CisJCWlmIChJ U19FUlIocGRhdGEtPnN5c2NsaykpCisJCQlyZXR1cm4gZGV2X2Vycl9wcm9iZShkZXYsIFBUUl9F UlIocGRhdGEtPnN5c2NsayksICJmYWlsZWQgdG8gZ2V0IHBjbGtcbiIpOworCX0gZWxzZSB7CisJ CXBkYXRhLT5jbGsgPSBkZXZtX2Nsa19nZXQoZGV2LCBOVUxMKTsKKwkJaWYgKElTX0VSUihwZGF0 YS0+Y2xrKSkKKwkJCXJldHVybiBkZXZfZXJyX3Byb2JlKGRldiwgUFRSX0VSUihwZGF0YS0+Y2xr KSwgImZhaWxlZCB0byBnZXQgY2xvY2tcbiIpOworCX0KKworCWlmIChvZl9wcm9wZXJ0eV9yZWFk X3UzMihwZGV2LT5kZXYub2Zfbm9kZSwgImFtbG9naWMsaHctcmVzZXQtdGVtcCIsICZyZXNldF90 ZW1wKSkgeworCQlkZXZfZGJnKGRldiwgInVzaW5nIGRlZmF1bHQgaGFyZHdhcmUgcmVzZXQgdGVt cGVyYXR1cmVcbiIpOworCQlyZXNldF90ZW1wID0gVFNFTlNPUl9IV19SRVNFVF9ERUZBVUxUX1RF TVA7CisJfQorCiAKIAlpZiAocGRhdGEtPmRhdGEtPnVzZV9zbSkKIAkJcmV0ID0gYW1sb2dpY190 aGVybWFsX3Byb2JlX3NtKHBkZXYsIHBkYXRhKTsKQEAgLTM0Niw2ICs0MzYsMTAgQEAgc3RhdGlj IGludCBhbWxvZ2ljX3RoZXJtYWxfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikK IAogCWRldm1fdGhlcm1hbF9hZGRfaHdtb25fc3lzZnMoJnBkZXYtPmRldiwgcGRhdGEtPnR6ZCk7 CiAKKwlwZGF0YS0+dGVtcF9jb2RlID0gYW1sb2dpY190aGVybWFsX21pbGxpY2Vsc2l1c190b19j b2RlKHBkYXRhLCByZXNldF90ZW1wKTsKKworCWFtbG9naWNfdHNlbnNvcl9zZXR1cF9od19yZXNl dChwZGF0YSk7CisKIAlyZXQgPSBhbWxvZ2ljX3RoZXJtYWxfZW5hYmxlKHBkYXRhKTsKIAogCXJl dHVybiByZXQ7CkBAIC0zNTUsNiArNDQ5LDggQEAgc3RhdGljIHZvaWQgYW1sb2dpY190aGVybWFs X3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogewogCXN0cnVjdCBhbWxvZ2lj X3RoZXJtYWwgKmRhdGEgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsKIAorCWlmIChkYXRh LT5kYXRhLT5oYXNfc3lzY2xrKQorCQljbGtfZGlzYWJsZV91bnByZXBhcmUoZGF0YS0+c3lzY2xr KTsKIAlhbWxvZ2ljX3RoZXJtYWxfZGlzYWJsZShkYXRhKTsKIH0KIApAQCAtMzYzLDYgKzQ1OSw4 IEBAIHN0YXRpYyBpbnQgYW1sb2dpY190aGVybWFsX3N1c3BlbmQoc3RydWN0IGRldmljZSAqZGV2 KQogCXN0cnVjdCBhbWxvZ2ljX3RoZXJtYWwgKmRhdGEgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsK IAogCWFtbG9naWNfdGhlcm1hbF9kaXNhYmxlKGRhdGEpOworCWlmIChkYXRhLT5kYXRhLT5oYXNf c3lzY2xrKQorCQljbGtfZGlzYWJsZV91bnByZXBhcmUoZGF0YS0+c3lzY2xrKTsKIAogCXJldHVy biAwOwogfQpAQCAtMzcxLDYgKzQ2OSw5IEBAIHN0YXRpYyBpbnQgYW1sb2dpY190aGVybWFsX3Jl c3VtZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGFtbG9naWNfdGhlcm1hbCAqZGF0 YSA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwogCisJYW1sb2dpY190c2Vuc29yX3NldHVwX2h3X3Jl c2V0KGRhdGEpOworCWlmIChkYXRhLT5kYXRhLT5oYXNfc3lzY2xrKQorCQljbGtfcHJlcGFyZV9l bmFibGUoZGF0YS0+c3lzY2xrKTsKIAlyZXR1cm4gYW1sb2dpY190aGVybWFsX2VuYWJsZShkYXRh KTsKIH0KIAoKLS0gCjIuNTIuMAoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpsaW51eC1hbWxvZ2ljIG1haWxpbmcgbGlzdApsaW51eC1hbWxvZ2ljQGxp c3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0 aW5mby9saW51eC1hbWxvZ2ljCg==