+ AMD Zen (family 17h) support
+
+
+
+
+ Conrad
+ Meyer
+ cem@FreeBSD.org
+
+
+
+
+
+ This quarter, a bit of work was done to enhance platform
+ support for AMD Zen (Ryzen, Threadripper, Epyc) processors:
+
+
+ - The CPU topology detection code was enhanced to properly
+ detect Zen dies and CCXes. This gives the scheduler more
+ locality information to make scheduling decisions.
+
+ - The x86 topology analysis was enhanced to report dies and
+ CCXes, in addition to the existing reporting on packages,
+ cores, and threads. An example of the new output is
+ "FreeBSD/SMP: 1 package(s) x 2 groups x 2 cache groups
+ x 4 core(s) x 2 hardware threads".
+
+ - The amdsmn(4) driver for accessing SMN (System Management
+ Network) registers was added.
+
+ - CPU temperature monitoring support for Zen was added to
+ amdtemp(4).
+
+ - In cpufreq(4):
+
+ - Added support for decoding Zen P-state info from MSRs
+ (mostly not necessary due to ACPI P-state information,
+ but potentially useful)
+
+ - Work around the apparent Ryzen inability to achieve
+ the P1 state by not busying cores waiting to
+ transition.
+
+
+
+ - The intpm(4) smbus driver was fixed to attach to FCH
+ (Fusion Controller Hub).
+
+ - All MCA banks are now enabled and monitored on Zen
+ CPUs.
+
+ - Feature bit decoding was added for: CLZERO, SVM features,
+ RAS capabilities.
+
+ - SHA intrinsic support was added to the aesni(4) driver.
+ Ryzen is currently the only desktop processor to feature
+ these intrinsics. Support is also present in Intel's
+ Goldmont line of low end SoCs.
+
+
+ Overall, Zen is now a very usable platform for x86
+ workstations and servers.
+
+
+ Dell EMC Isilon
+
+
+ Add HWPMC support for new performance counters in
+ Zen.
+
+ Add support for the CCP (Crypto Co-Processor).
+
+