[alsa-devel] [PATCH v6 1/3] ALSA: hdac_ext: add extended HDA bus

Takashi Iwai tiwai at suse.de
Mon Jun 8 11:03:12 CEST 2015


One thing forgot...

At Thu,  4 Jun 2015 15:23:20 +0530,
Vinod Koul wrote:
> 
> +/**
> + * snd_hdac_ext_device_init - initialize the HDA extended codec base device
> + * @sbus: hdac extended bus to attach to
> + * @addr: codec address
> + *
> + * Returns zero for success or a negative error code.
> + */
> +int snd_hdac_ext_bus_device_init(struct hdac_ext_bus *sbus, int addr)
> +{
> +	struct hdac_device *hdev = NULL;
> +	struct hdac_bus *bus = hdac_bus(sbus);
> +	char name[15];
> +	int ret;
> +
> +	hdev = kzalloc(sizeof(*hdev), GFP_KERNEL);
> +	if (!hdev)
> +		return -ENOMEM;
> +
> +	snprintf(name, sizeof(name), "hda-codec#%03x", addr);
> +
> +	ret  = snd_hdac_device_init(hdev, bus, name, addr);

The device name must be unique to the whole system.  Using only the
codec address as an id would conflict if there are multiple cards.
The legacy HDA device consists of "hdaudioC%dD%d" indicating both the
card number and the codec address, for example.


Takashi


More information about the Alsa-devel mailing list