ASoC: Intel: Skylake: use hda_bus instead of hdac_bus
Use hda_bus instead of hdac_bus in the SKL ASoC platform driver to enable reuse of legacy HDA codec drivers. Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
这个提交包含在:
@@ -33,6 +33,7 @@
|
||||
#include <sound/hda_register.h>
|
||||
#include <sound/hdaudio.h>
|
||||
#include <sound/hda_i915.h>
|
||||
#include <sound/hda_codec.h>
|
||||
#include "skl.h"
|
||||
#include "skl-sst-dsp.h"
|
||||
#include "skl-sst-ipc.h"
|
||||
@@ -673,7 +674,7 @@ static int probe_codec(struct hdac_bus *bus, int addr)
|
||||
mutex_unlock(&bus->cmd_mutex);
|
||||
if (res == -1)
|
||||
return -EIO;
|
||||
dev_dbg(bus->dev, "codec #%d probed OK\n", addr);
|
||||
dev_dbg(bus->dev, "codec #%d probed OK: %x\n", addr, res);
|
||||
|
||||
hdev = devm_kzalloc(&skl->pci->dev, sizeof(*hdev), GFP_KERNEL);
|
||||
if (!hdev)
|
||||
@@ -816,7 +817,7 @@ static int skl_create(struct pci_dev *pci,
|
||||
{
|
||||
struct skl *skl;
|
||||
struct hdac_bus *bus;
|
||||
|
||||
struct hda_bus *hbus;
|
||||
int err;
|
||||
|
||||
*rskl = NULL;
|
||||
@@ -831,6 +832,7 @@ static int skl_create(struct pci_dev *pci,
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
hbus = skl_to_hbus(skl);
|
||||
bus = skl_to_bus(skl);
|
||||
snd_hdac_ext_bus_init(bus, &pci->dev, &bus_core_ops, io_ops, NULL);
|
||||
bus->use_posbuf = 1;
|
||||
@@ -838,6 +840,11 @@ static int skl_create(struct pci_dev *pci,
|
||||
INIT_WORK(&skl->probe_work, skl_probe_work);
|
||||
bus->bdl_pos_adj = 0;
|
||||
|
||||
mutex_init(&hbus->prepare_mutex);
|
||||
hbus->pci = pci;
|
||||
hbus->mixer_assigned = -1;
|
||||
hbus->modelname = "sklbus";
|
||||
|
||||
*rskl = skl;
|
||||
|
||||
return 0;
|
||||
|
在新工单中引用
屏蔽一个用户