From: Takashi Iwai <tiwai@suse.de>
To: Baojun Xu <baojun.xu@ti.com>
Cc: <robh+dt@kernel.org>, <andriy.shevchenko@linux.intel.com>,
<lgirdwood@gmail.com>, <perex@perex.cz>,
<pierre-louis.bossart@linux.intel.com>, <kevin-lu@ti.com>,
<shenghao-ding@ti.com>, <navada@ti.com>, <13916275206@139.com>,
<v-po@ti.com>, <niranjan.hy@ti.com>,
<alsa-devel@alsa-project.org>, <linux-kernel@vger.kernel.org>,
<liam.r.girdwood@intel.com>, <yung-chuan.liao@linux.intel.com>,
<broonie@kernel.org>, <soyer@irl.hu>
Subject: Re: [PATCH v4 1/3] ALSA: hda/tas2781: Add tas2781 hda driver based on SPI
Date: Tue, 30 Apr 2024 14:58:10 +0200 [thread overview]
Message-ID: <87jzkfm2hp.wl-tiwai@suse.de> (raw)
In-Reply-To: <20240430072544.1877-2-baojun.xu@ti.com>
On Tue, 30 Apr 2024 09:25:42 +0200,
Baojun Xu wrote:
>
> Integrate tas2781 hda spi driver configs for HP (Varcolac).
> Every tas2781 SPI node was added by serial-multi-instantie.c as a SPI device.
> The code support Realtek as the primary codec.
>
> Signed-off-by: Baojun Xu <baojun.xu@ti.com>
>
> ---
> v4:
> - Add old hardware id "TIAS2781" for compatible with old production
> - Add 2 devices in struct smi_node tas2781_hda, to compatible with 4 AMPs
> v3:
> - Move HID up to above /* Non-conforming _HID ... */ in scan.c,
> for avoid misunderstanding.
> - Move HID up to above /* Non-conforming _HID ... */ in
> serial-multi-instantiate.c, for avoid misunderstanding.
> - Change objs to y for snd-hda-scodec-tas2781-spi- in Makefile.
> ---
> drivers/acpi/scan.c | 2 ++
> drivers/platform/x86/serial-multi-instantiate.c | 13 +++++++++++++
> sound/pci/hda/Kconfig | 14 ++++++++++++++
> sound/pci/hda/Makefile | 2 ++
> sound/pci/hda/patch_realtek.c | 13 +++++++++++++
> 5 files changed, 44 insertions(+)
>
> diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
> index d1464324de95..51af181ccf62 100644
> --- a/drivers/acpi/scan.c
> +++ b/drivers/acpi/scan.c
> @@ -1765,6 +1765,8 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device)
> {"CSC3557", },
> {"INT33FE", },
> {"INT3515", },
> + {"TXNW2781", },
> + {"TIAS2781", },
> /* Non-conforming _HID for Cirrus Logic already released */
> {"CLSA0100", },
> {"CLSA0101", },
> diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c
> index 97b9c6392230..d1c766f17b26 100644
> --- a/drivers/platform/x86/serial-multi-instantiate.c
> +++ b/drivers/platform/x86/serial-multi-instantiate.c
> @@ -368,6 +368,17 @@ static const struct smi_node cs35l57_hda = {
> .bus_type = SMI_AUTO_DETECT,
> };
>
> +static const struct smi_node tas2781_hda = {
> + .instances = {
> + { "tas2781-hda", IRQ_RESOURCE_AUTO, 0 },
> + { "tas2781-hda", IRQ_RESOURCE_AUTO, 0 },
> + { "tas2781-hda", IRQ_RESOURCE_AUTO, 0 },
> + { "tas2781-hda", IRQ_RESOURCE_AUTO, 0 },
> + {}
> + },
> + .bus_type = SMI_AUTO_DETECT,
> +};
> +
> /*
> * Note new device-ids must also be added to ignore_serial_bus_ids in
> * drivers/acpi/scan.c: acpi_device_enumeration_by_parent().
> @@ -380,6 +391,8 @@ static const struct acpi_device_id smi_acpi_ids[] = {
> { "CSC3556", (unsigned long)&cs35l56_hda },
> { "CSC3557", (unsigned long)&cs35l57_hda },
> { "INT3515", (unsigned long)&int3515_data },
> + { "TXNW2781", (unsigned long)&tas2781_hda },
> + { "TIAS2781", (unsigned long)&tas2781_hda },
> /* Non-conforming _HID for Cirrus Logic already released */
> { "CLSA0100", (unsigned long)&cs35l41_hda },
> { "CLSA0101", (unsigned long)&cs35l41_hda },
> diff --git a/sound/pci/hda/Kconfig b/sound/pci/hda/Kconfig
> index f806636242ee..15f0e66b77e5 100644
> --- a/sound/pci/hda/Kconfig
> +++ b/sound/pci/hda/Kconfig
> @@ -202,6 +202,20 @@ config SND_HDA_SCODEC_TAS2781_I2C
> comment "Set to Y if you want auto-loading the side codec driver"
> depends on SND_HDA=y && SND_HDA_SCODEC_TAS2781_I2C=m
>
> +config SND_HDA_SCODEC_TAS2781_SPI
> + tristate "Build TAS2781 HD-audio side codec support for SPI Bus"
> + depends on SPI_MASTER
> + depends on ACPI
> + depends on EFI
> + depends on SND_SOC
> + select CRC32_SARWATE
> + help
> + Say Y or M here to include TAS2781 SPI HD-audio side codec support
> + in snd-hda-intel driver, such as ALC287.
> +
> +comment "Set to Y if you want auto-loading the side codec driver"
> + depends on SND_HDA=y && SND_HDA_SCODEC_TAS2781_SPI=m
> +
> config SND_HDA_CODEC_REALTEK
> tristate "Build Realtek HD-audio codec support"
> select SND_HDA_GENERIC
> diff --git a/sound/pci/hda/Makefile b/sound/pci/hda/Makefile
> index 13e04e1f65de..2d5d4d841d87 100644
> --- a/sound/pci/hda/Makefile
> +++ b/sound/pci/hda/Makefile
> @@ -39,6 +39,7 @@ snd-hda-scodec-cs35l56-spi-objs := cs35l56_hda_spi.o
> snd-hda-cs-dsp-ctls-objs := hda_cs_dsp_ctl.o
> snd-hda-scodec-component-objs := hda_component.o
> snd-hda-scodec-tas2781-i2c-objs := tas2781_hda_i2c.o
> +snd-hda-scodec-tas2781-spi-y := tas2781_hda_spi.o tas2781_spi_fwlib.o
A nitpicking: better to align with other lines (i.e. with *-objs
instead of *-y).
The main problem here is, though, that this commit will break the
build, because you introduced a Kconfig that can be enabled, while the
corresponding code for snd-hda-scodec-tas2781-spi isn't present yet.
This is bad for the git-bisection.
You'd need to reorganize better how the code is added piece-by-piece.
thanks,
Takashi
next prev parent reply other threads:[~2024-04-30 12:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-30 7:25 [PATCH v4 0/3] ALSA: hda/tas2781: Add tas2781 driver for SPI Baojun Xu
2024-04-30 7:25 ` [PATCH v4 1/3] ALSA: hda/tas2781: Add tas2781 hda driver based on SPI Baojun Xu
2024-04-30 12:58 ` Takashi Iwai [this message]
2024-04-30 13:45 ` Andy Shevchenko
2024-05-06 7:44 ` [EXTERNAL] " Xu, Baojun
2024-05-06 8:51 ` Andy Shevchenko
2024-05-07 13:05 ` Takashi Iwai
2024-04-30 13:44 ` Andy Shevchenko
2024-04-30 7:25 ` [PATCH v4 2/3] ALSA: hda/tas2781: Tas2781 hda driver for SPI Baojun Xu
2024-04-30 13:07 ` Takashi Iwai
2024-05-06 13:12 ` kernel test robot
2024-04-30 7:25 ` [PATCH v4 3/3] ALSA: hda/tas2781: Firmware load for tas2781 hda driver based on SPI Baojun Xu
2024-04-30 13:10 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87jzkfm2hp.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=13916275206@139.com \
--cc=alsa-devel@alsa-project.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=baojun.xu@ti.com \
--cc=broonie@kernel.org \
--cc=kevin-lu@ti.com \
--cc=lgirdwood@gmail.com \
--cc=liam.r.girdwood@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=navada@ti.com \
--cc=niranjan.hy@ti.com \
--cc=perex@perex.cz \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=robh+dt@kernel.org \
--cc=shenghao-ding@ti.com \
--cc=soyer@irl.hu \
--cc=v-po@ti.com \
--cc=yung-chuan.liao@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).