public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 34/35] sound/pci/hda changes for SMBIOS and System Firmware
@ 2011-05-31 15:54 Prarit Bhargava
  0 siblings, 0 replies; only message in thread
From: Prarit Bhargava @ 2011-05-31 15:54 UTC (permalink / raw)
  To: linux-kernel; +Cc: Prarit Bhargava

sound/pci/hda changes for SMBIOS and System Firmware

---
 sound/pci/hda/patch_sigmatel.c |   29 +++++++++++++----------------
 1 files changed, 13 insertions(+), 16 deletions(-)

diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 7f81cc2..271ea6a 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -28,7 +28,7 @@
 #include <linux/delay.h>
 #include <linux/slab.h>
 #include <linux/pci.h>
-#include <linux/dmi.h>
+#include <linux/smbios.h>
 #include <sound/core.h>
 #include <sound/asoundef.h>
 #include <sound/jack.h>
@@ -4798,26 +4798,23 @@ static void set_hp_led_gpio(struct hda_codec *codec)
 static int find_mute_led_gpio(struct hda_codec *codec, int default_polarity)
 {
 	struct sigmatel_spec *spec = codec->spec;
-	const struct dmi_device *dev = NULL;
+	const char *str;
 
 	if ((codec->subsystem_id >> 16) == PCI_VENDOR_ID_HP) {
-		while ((dev = dmi_find_device(DMI_DEV_TYPE_OEM_STRING,
-								NULL, dev))) {
-			if (sscanf(dev->name, "HP_Mute_LED_%d_%d",
-				  &spec->gpio_led_polarity,
-				  &spec->gpio_led) == 2) {
-				spec->gpio_led = 1 << spec->gpio_led;
-				return 1;
-			}
-			if (sscanf(dev->name, "HP_Mute_LED_%d",
-				  &spec->gpio_led_polarity) == 1) {
-				set_hp_led_gpio(codec);
-				return 1;
-			}
+		str = smbios_match_oem_string("HP_Mute_LED_");
+		if (sscanf(str, "HP_Mute_LED_%d_%d", &spec->gpio_led_polarity,
+			   &spec->gpio_led) == 2) {
+			spec->gpio_led = 1 << spec->gpio_led;
+			return 1;
+		}
+		if (sscanf(str, "HP_Mute_LED_%d",
+			   &spec->gpio_led_polarity) == 1) {
+			set_hp_led_gpio(codec);
+			return 1;
 		}
 
 		/*
-		 * Fallback case - if we don't find the DMI strings,
+		 * Fallback case - if we don't find the SMBIOS strings,
 		 * we statically set the GPIO - if not a B-series system.
 		 */
 		if (!hp_blike_system(codec->subsystem_id)) {
-- 
1.7.5.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2011-05-31 15:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-31 15:54 [RFC PATCH 34/35] sound/pci/hda changes for SMBIOS and System Firmware Prarit Bhargava

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox