smntemp
typedef struct smntemp smntemp_t;
smntemp_t *smntemp = &smntemp_data;
if (smntemp->smn_dip != NULL) {
smntemp->smn_dip = dip;
smntemp->smn_fam = chiprev_family(cpuid_getchiprev(CPU));
smntemp->smn_ndf = amdzen_c_df_count();
if (smntemp->smn_ndf == 0) {
smntemp->smn_df = kmem_zalloc(sizeof (smntemp_df_t) * smntemp->smn_ndf,
for (uint32_t dfno = 0; dfno < smntemp->smn_ndf; dfno++) {
smntemp_df_t *df = &smntemp->smn_df[dfno];
df->sd_nccd = THM_DIE_MAX_UNITS(smntemp->smn_fam);
if (!smntemp_create_tctl(smntemp, df, &df->sd_tctl)) {
if (!smntemp_create_tdie(smntemp, df,
ddi_set_driver_private(dip, smntemp);
smntemp_cleanup(smntemp);
smntemp_t *smntemp = &smntemp_data;
if (smntemp->smn_dip == NULL) {
dev_err(smntemp->smn_dip, CE_WARN, "!asked to detach smn "
smntemp_cleanup(smntemp);