From nobody Sun Jan 12 12:14:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YWDpR0rM1z5kZwY; Sun, 12 Jan 2025 12:14:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YWDpQ60TWz4Xlh; Sun, 12 Jan 2025 12:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1736684062; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YeTKfNsNYngssNtc7kntYN/2QF1eXxrr10Apm7ltuL4=; b=LISWJ+dLKHyqiUTPjmOkK05IwN017rgeE1DT+T+NvAcr/Ud2wgzyoErvmfmwOhpId42we+ fvTtt9hEOTkDUzGM8dTJ6PKrdLXp15aAItdTIzVOLNAmP3KTYAWgy0MX34AgEoy/gfjTwZ ry3MZwkG23ExKaG8DO/AeObWFc6nDvoAqpYM1K4m7h3LmUM1ACbIk/x5G+5oj1sKdmb0W5 iAr6hgS5JWEzXu7UsJSetjIg88426lrH9H9/XjBRjWovcJYHjLKWJb7H4lkbLAirjrDqXV 4llaQyCKbZ4I90o1pJh/etehpTmSFuWuyBQEYLQcE42dIts4ugvEBFMOc8JRrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1736684062; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YeTKfNsNYngssNtc7kntYN/2QF1eXxrr10Apm7ltuL4=; b=mDApgEqenXL8/4lklsqM/LiSsXwtoZKT4S7b6h2d32JgB2zuaxxdaH04wjWKS9X2GGLYUr ECuL7mwq3xTJEnZephwekllZsyXmjuw1Z+Ex62DLTSQaX6KK7ecR22qTnCre2lxRUoAZeh ntmaQ5e1q7X88y3fsMLbv6x+niib5uY6e9PgsUi9cujHhafARAFO8HM8vYd8HPdF7g+Mv5 HOyJvp8usBYVao/2QOI4GQfeh2uwiOAvNsyjDR/wlijQO+lWYChBJxHspQGW/ABXC0YKej MhrjnuYaaYAIEAw7cSn/r4VV24Z09QG2dEnl0/Y+xZHqA56vl/zP4BRRrl8eRQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1736684062; a=rsa-sha256; cv=none; b=P85/fhdKs4QETK2XlSvR4+XQ7R7TA/8nIGV0nPTYmRn1ilP8joscbgGLFbLLx1IweohENl Flc7fwjoQAZKhQc86gevYM8WsZ/hOiiELocDGfb0UgbS1wXHO75328iYvLDfoNkrOsXoma 1IPLdmcuvlQ1Np0vp1H6LgdNgR8p8xIBILszIa14th/ICCjG10k+vSG2lDtNEh3wgJsEkq iPEQjk1zow3Oa7rF8v3vHCSSeiRxY+4IIVS97dWnGrZcekdbZCaleECvpDCJUOjFqmjy6/ vtQprh+Z6rDpVg1Deq9MPwxVPUvD8jOXzCdMd8wQXo8liUivjFmg61jTSNkerA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YWDpQ5SkFzkvr; Sun, 12 Jan 2025 12:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 50CCEMJB026758; Sun, 12 Jan 2025 12:14:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 50CCEMHl026755; Sun, 12 Jan 2025 12:14:22 GMT (envelope-from git) Date: Sun, 12 Jan 2025 12:14:22 GMT Message-Id: <202501121214.50CCEMHl026755@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: a9a71513ccfc - main - amdsmn(4), amdtemp(4): add support for Zen 5 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a9a71513ccfcb38346c84b006b43d45511d1652c Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a9a71513ccfcb38346c84b006b43d45511d1652c commit a9a71513ccfcb38346c84b006b43d45511d1652c Author: Simon Wells AuthorDate: 2025-01-12 11:46:05 +0000 Commit: Konstantin Belousov CommitDate: 2025-01-12 12:14:01 +0000 amdsmn(4), amdtemp(4): add support for Zen 5 Zen 5 support, tested on Ryzen 7 9700X PR: 284010 MFC after: 1 week --- sys/dev/amdsmn/amdsmn.c | 3 ++- sys/dev/amdtemp/amdtemp.c | 28 +++++++++++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/sys/dev/amdsmn/amdsmn.c b/sys/dev/amdsmn/amdsmn.c index 9f5c55b1abd6..1fc93a68fbf3 100644 --- a/sys/dev/amdsmn/amdsmn.c +++ b/sys/dev/amdsmn/amdsmn.c @@ -60,7 +60,7 @@ #define PCI_DEVICE_ID_AMD_17H_M60H_ROOT 0x1630 /* Also F19H M50H */ #define PCI_DEVICE_ID_AMD_19H_M10H_ROOT 0x14a4 #define PCI_DEVICE_ID_AMD_19H_M40H_ROOT 0x14b5 -#define PCI_DEVICE_ID_AMD_19H_M60H_ROOT 0x14d8 +#define PCI_DEVICE_ID_AMD_19H_M60H_ROOT 0x14d8 /* Also F1AH M40H */ #define PCI_DEVICE_ID_AMD_19H_M70H_ROOT 0x14e8 struct pciid; @@ -211,6 +211,7 @@ amdsmn_probe(device_t dev) case 0x15: case 0x17: case 0x19: + case 0x1a: break; default: return (ENXIO); diff --git a/sys/dev/amdtemp/amdtemp.c b/sys/dev/amdtemp/amdtemp.c index 0c423e0b2502..b609c0944499 100644 --- a/sys/dev/amdtemp/amdtemp.c +++ b/sys/dev/amdtemp/amdtemp.c @@ -115,7 +115,7 @@ struct amdtemp_softc { #define DEVICEID_AMD_HOSTB17H_M60H_ROOT 0x1630 /* Also F19H M50H */ #define DEVICEID_AMD_HOSTB19H_M10H_ROOT 0x14a4 #define DEVICEID_AMD_HOSTB19H_M40H_ROOT 0x14b5 -#define DEVICEID_AMD_HOSTB19H_M60H_ROOT 0x14d8 +#define DEVICEID_AMD_HOSTB19H_M60H_ROOT 0x14d8 /* Also F1AH M40H */ #define DEVICEID_AMD_HOSTB19H_M70H_ROOT 0x14e8 static const struct amdtemp_product { @@ -230,6 +230,7 @@ static int32_t amdtemp_gettemp15hm60h(device_t dev, amdsensor_t sensor); static int32_t amdtemp_gettemp17h(device_t dev, amdsensor_t sensor); static void amdtemp_probe_ccd_sensors17h(device_t dev, uint32_t model); static void amdtemp_probe_ccd_sensors19h(device_t dev, uint32_t model); +static void amdtemp_probe_ccd_sensors1ah(device_t dev, uint32_t model); static int amdtemp_sysctl(SYSCTL_HANDLER_ARGS); static device_method_t amdtemp_methods[] = { @@ -317,6 +318,7 @@ amdtemp_probe(device_t dev) case 0x16: case 0x17: case 0x19: + case 0x1a: break; default: return (ENXIO); @@ -476,6 +478,7 @@ amdtemp_attach(device_t dev) break; case 0x17: case 0x19: + case 0x1a: sc->sc_ntemps = 1; sc->sc_gettemp = amdtemp_gettemp17h; needsmn = true; @@ -539,6 +542,8 @@ amdtemp_attach(device_t dev) amdtemp_probe_ccd_sensors17h(dev, model); else if (family == 0x19) amdtemp_probe_ccd_sensors19h(dev, model); + else if (family == 0x1a) + amdtemp_probe_ccd_sensors1ah(dev, model); else if (sc->sc_ntemps > 1) { SYSCTL_ADD_PROC(sysctlctx, SYSCTL_CHILDREN(sysctlnode), @@ -892,3 +897,24 @@ amdtemp_probe_ccd_sensors19h(device_t dev, uint32_t model) amdtemp_probe_ccd_sensors(dev, maxreg); } + +static void +amdtemp_probe_ccd_sensors1ah(device_t dev, uint32_t model) +{ + struct amdtemp_softc *sc = device_get_softc(dev); + uint32_t maxreg; + + switch (model) { + case 0x40 ... 0x4f: /* Zen5 Ryzen "Granite Ridge" */ + sc->sc_temp_base = AMDTEMP_ZEN4_CCD_TMP_BASE; + maxreg = 8; + _Static_assert((int)NUM_CCDS >= 8, ""); + break; + default: + device_printf(dev, + "Unrecognized Family 1ah Model: %02xh\n", model); + return; + } + + amdtemp_probe_ccd_sensors(dev, maxreg); +}