From 6397c663d7086b87ca5cbba323ea3dcd0ecd3200 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Wed, 13 Nov 2024 16:19:15 +0100
Subject: [PATCH] sof-hda-dsp: Fix the case where sysfs dmi product_name
 attribute is not set

  !!DMI Information
  !!---------------

  Manufacturer:
  Product Name:
  Product Version:
  Firmware Version:  R6G07
  System SKU:        Default string
  Board Vendor:      Default string
  Board Name:        Default string

BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2292583
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
 ucm2/Intel/sof-hda-dsp/HiFi-sof.conf | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf b/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf
index c755ba26..5fd1843f 100644
--- a/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf
+++ b/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf
@@ -3,6 +3,7 @@
 # File paths for controlling SOF processing
 
 Define.SOFVendor "$${sys:devices/virtual/dmi/id/sys_vendor}"
+Define.SOFProduct "$${sys:devices/virtual/dmi/id/product_name}"
 
 If.SOFVendor {
 	Condition {
@@ -12,6 +13,14 @@ If.SOFVendor {
 	True.Define.SOFVendor "${sys:devices/virtual/dmi/id/board_vendor}"
 }
 
+If.SOFProduct {
+	Condition {
+		Type String
+		Empty "${var:SOFProduct}"
+	}
+	True.Define.SOFProduct "${sys:devices/virtual/dmi/id/board_name}"
+}
+
 If.SOFIPCVer {
 	Condition {
 		Type ControlExists
@@ -43,7 +52,7 @@ If.SOFPath {
 		HeadphoneIirBlob "${var:BlobPath}/eq_iir/pass.blob"
 		HeadphoneFirBlob "${var:BlobPath}/eq_fir/pass.blob"
 		HeadphoneDrcBlob "${var:BlobPath}/drc/passthrough.blob"
-		ConfPathFromDMI "${var:SOFVendor}/${sys:devices/virtual/dmi/id/product_name}.conf"
+		ConfPathFromDMI "${var:SOFVendor}/${var:SOFProduct}"
 		SOFProductConfig "/blobs/sof/product_configs/${var:ConfPathFromDMI}"
 		SOFConfFullPath "${ConfTopDir}${var:SOFProductConfig}"
 		SOFUserConfig "/blobs/sof/user_configs/${var:ConfPathFromDMI}"