summary refs log tree commit diff
path: root/drivers/soundwire
diff options
context:
space:
mode:
authorVinod Koul <vkoul@kernel.org>2020-02-26 14:18:34 +0530
committerVinod Koul <vkoul@kernel.org>2020-02-26 14:18:34 +0530
commited29a0a67267777d78f7505c7044032329e6ee5f (patch)
tree3b841946fa7da66de46e3c8587ef0d3c32971e34 /drivers/soundwire
parenteb751d9f1fb1cfcd8c2164af8b06ce3180b9efae (diff)
parent2c6cff682d6681fb1cdb03b3cdbbecd3fb0e4c89 (diff)
downloadlinux-ed29a0a67267777d78f7505c7044032329e6ee5f.tar.gz
Merge branch 'topic/asoc' into next
Diffstat (limited to 'drivers/soundwire')
-rw-r--r--drivers/soundwire/bus.c21
1 files changed, 5 insertions, 16 deletions
diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c
index 13887713f311..ccaa590df61e 100644
--- a/drivers/soundwire/bus.c
+++ b/drivers/soundwire/bus.c
@@ -589,22 +589,11 @@ void sdw_extract_slave_id(struct sdw_bus *bus,
 {
 	dev_dbg(bus->dev, "SDW Slave Addr: %llx\n", addr);
 
-	/*
-	 * Spec definition
-	 *   Register		Bit	Contents
-	 *   DevId_0 [7:4]	47:44	sdw_version
-	 *   DevId_0 [3:0]	43:40	unique_id
-	 *   DevId_1		39:32	mfg_id [15:8]
-	 *   DevId_2		31:24	mfg_id [7:0]
-	 *   DevId_3		23:16	part_id [15:8]
-	 *   DevId_4		15:08	part_id [7:0]
-	 *   DevId_5		07:00	class_id
-	 */
-	id->sdw_version = (addr >> 44) & GENMASK(3, 0);
-	id->unique_id = (addr >> 40) & GENMASK(3, 0);
-	id->mfg_id = (addr >> 24) & GENMASK(15, 0);
-	id->part_id = (addr >> 8) & GENMASK(15, 0);
-	id->class_id = addr & GENMASK(7, 0);
+	id->sdw_version = SDW_VERSION(addr);
+	id->unique_id = SDW_UNIQUE_ID(addr);
+	id->mfg_id = SDW_MFG_ID(addr);
+	id->part_id = SDW_PART_ID(addr);
+	id->class_id = SDW_CLASS_ID(addr);
 
 	dev_dbg(bus->dev,
 		"SDW Slave class_id %x, part_id %x, mfg_id %x, unique_id %x, version %x\n",