From: Stephen Warren Date: Wed, 23 Nov 2011 20:33:25 +0000 (-0700) Subject: ASoC: Tegra I2S: Remove dependency on pdev->id X-Git-Tag: v3.3-rc1~14^2~308 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d4a2eca781bfd7323bfd98dbc7fd63c7d613fef2;p=pandora-kernel.git ASoC: Tegra I2S: Remove dependency on pdev->id When devices are instantiated from device-tree, pdev->id is set to -1. Rework the driver so it doesn't depend on the ID. Tegra I2S instantiated from board files are configured with pdev name "tegra-i2s" and ID 0 or 1. The driver core then names the device "tegra-i2s.0" or "tegra-i2s.1". This is not changing. When a device is instantiated from device-tree, it will have pdev->name="" and pdev->id=-1. For this reason, the pdev->id value is not something we can rely on. This patch doesn't actually change any names though: When a device is instantiated from device-tree, the overall device name will be "${unit_address}.${node_name}". This causes issues such as clk_get() failures due to lack of a device-name match. To solve that, AUXDATA was invented, to force a specific device name, thus allowing dev_name() to return the same as the non-device-tree case. Tegra currently uses AUXDATA for the I2S controllers. Eventually, AUXDATA will go away, most likely replaced by phandle-based references within the device tree. Signed-off-by: Stephen Warren Signed-off-by: Mark Brown --- Reading git-diff-tree failed