From: Andy Shevchenko <andy.shevchenko@gmail.com> To: Lucas tanure <tanureal@opensource.cirrus.com> Cc: "Rafael J . Wysocki" <rafael@kernel.org>, Len Brown <lenb@kernel.org>, Hans de Goede <hdegoede@redhat.com>, Mark Gross <markgross@kernel.org>, Liam Girdwood <lgirdwood@gmail.com>, Jaroslav Kysela <perex@perex.cz>, Mark Brown <broonie@kernel.org>, Takashi Iwai <tiwai@suse.com>, ALSA Development Mailing List <alsa-devel@alsa-project.org>, ACPI Devel Maling List <linux-acpi@vger.kernel.org>, patches@opensource.cirrus.com, Platform Driver <platform-driver-x86@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org> Subject: Re: [PATCH v6 07/10] hda: cs35l41: Add support for CS35L41 in HDA systems Date: Thu, 13 Jan 2022 20:13:36 +0200 [thread overview] Message-ID: <CAHp75Vc=x0AanRhkGHvbgs0M9VLdZfEFKJUxRTEMFvT5YwDtzA@mail.gmail.com> (raw) In-Reply-To: <66351fd6-f434-775f-d8d5-2a6baf098269@opensource.cirrus.com> On Thu, Jan 13, 2022 at 6:53 PM Lucas tanure <tanureal@opensource.cirrus.com> wrote: > On 1/6/22 12:29, Andy Shevchenko wrote: > > On Fri, Dec 17, 2021 at 5:45 PM Lucas Tanure > > <tanureal@opensource.cirrus.com> wrote: ... > >> + * Device CLSA0100 doesn't have _DSD so a gpiod_get by the label reset won't work. > > > > So, you need to add mapping tables and switch to regular APIs, tell > > me, why it won't work. > I will submit a patch series to fix most of the issues you pointed out. Thanks! > The part about how the driver access the ACPI table is going to be > improved later if possible. > The laptop has already shipped and doesn't have a _DSD node, so the > driver needs to read the reset GPIO from a hard coded index inside a > node that contains more than one cs35l41. We have a lot of cases like this, hint: `git grep -n -w devm_acpi_dev_add_driver_gpios`. ... > >> +int cs35l41_hda_probe(struct device *dev, const char *device_name, int id, int irq, > >> + struct regmap *regmap) > > > >> + if (IS_ERR(regmap)) > >> + return PTR_ERR(regmap); > > > > Why? > It is up to the I2C/SPI module to create the regmap and provide to the > main module. If that fails the main module can't continue. So, this is band-aiding the issue, which is in the caller. Caller shouldn't call this function without the regmap being ready-to-use. ... > >> + {"CLSA0100", 0 }, > >> + {"CSC3551", 0 }, > > > > I believe these IDs are officially allocated by the Cirrus Logic, right? > CLSA010* is not a valid id for Cirrus Logic, but the Bios is already in > production, so we must support it. > CSC3551 is a valid id for Cirrus Logic. Thank you for elaborating. Can we be sure that there won't be any abuse of ACPI specification in the future (meaning all IDs will follow the ACPI/PNP registries and be allocated by certain vendor)? -- With Best Regards, Andy Shevchenko
WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andy.shevchenko@gmail.com> To: Lucas tanure <tanureal@opensource.cirrus.com> Cc: ALSA Development Mailing List <alsa-devel@alsa-project.org>, ACPI Devel Maling List <linux-acpi@vger.kernel.org>, "Rafael J . Wysocki" <rafael@kernel.org>, patches@opensource.cirrus.com, Takashi Iwai <tiwai@suse.com>, Liam Girdwood <lgirdwood@gmail.com>, Mark Gross <markgross@kernel.org>, Hans de Goede <hdegoede@redhat.com>, Mark Brown <broonie@kernel.org>, Platform Driver <platform-driver-x86@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, Len Brown <lenb@kernel.org> Subject: Re: [PATCH v6 07/10] hda: cs35l41: Add support for CS35L41 in HDA systems Date: Thu, 13 Jan 2022 20:13:36 +0200 [thread overview] Message-ID: <CAHp75Vc=x0AanRhkGHvbgs0M9VLdZfEFKJUxRTEMFvT5YwDtzA@mail.gmail.com> (raw) In-Reply-To: <66351fd6-f434-775f-d8d5-2a6baf098269@opensource.cirrus.com> On Thu, Jan 13, 2022 at 6:53 PM Lucas tanure <tanureal@opensource.cirrus.com> wrote: > On 1/6/22 12:29, Andy Shevchenko wrote: > > On Fri, Dec 17, 2021 at 5:45 PM Lucas Tanure > > <tanureal@opensource.cirrus.com> wrote: ... > >> + * Device CLSA0100 doesn't have _DSD so a gpiod_get by the label reset won't work. > > > > So, you need to add mapping tables and switch to regular APIs, tell > > me, why it won't work. > I will submit a patch series to fix most of the issues you pointed out. Thanks! > The part about how the driver access the ACPI table is going to be > improved later if possible. > The laptop has already shipped and doesn't have a _DSD node, so the > driver needs to read the reset GPIO from a hard coded index inside a > node that contains more than one cs35l41. We have a lot of cases like this, hint: `git grep -n -w devm_acpi_dev_add_driver_gpios`. ... > >> +int cs35l41_hda_probe(struct device *dev, const char *device_name, int id, int irq, > >> + struct regmap *regmap) > > > >> + if (IS_ERR(regmap)) > >> + return PTR_ERR(regmap); > > > > Why? > It is up to the I2C/SPI module to create the regmap and provide to the > main module. If that fails the main module can't continue. So, this is band-aiding the issue, which is in the caller. Caller shouldn't call this function without the regmap being ready-to-use. ... > >> + {"CLSA0100", 0 }, > >> + {"CSC3551", 0 }, > > > > I believe these IDs are officially allocated by the Cirrus Logic, right? > CLSA010* is not a valid id for Cirrus Logic, but the Bios is already in > production, so we must support it. > CSC3551 is a valid id for Cirrus Logic. Thank you for elaborating. Can we be sure that there won't be any abuse of ACPI specification in the future (meaning all IDs will follow the ACPI/PNP registries and be allocated by certain vendor)? -- With Best Regards, Andy Shevchenko
next prev parent reply other threads:[~2022-01-13 18:15 UTC|newest] Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-12-17 11:56 [PATCH v6 00/10] Add support for CS35L41 in HDA systems Lucas Tanure 2021-12-17 11:56 ` Lucas Tanure 2021-12-17 11:56 ` [PATCH v6 01/10] ASoC: cs35l41: Convert tables to shared source code Lucas Tanure 2021-12-17 11:56 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 02/10] ASoC: cs35l41: Move cs35l41_otp_unpack to shared code Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 03/10] ASoC: cs35l41: Move power initializations to reg_sequence Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 04/10] ASoC: cs35l41: Create shared function for errata patches Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 05/10] ASoC: cs35l41: Create shared function for setting channels Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 06/10] ASoC: cs35l41: Create shared function for boost configuration Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 07/10] hda: cs35l41: Add support for CS35L41 in HDA systems Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2022-01-05 9:58 ` Charles Keepax 2022-01-05 9:58 ` Charles Keepax 2022-01-06 12:29 ` Andy Shevchenko 2022-01-06 12:29 ` Andy Shevchenko 2022-01-10 10:19 ` Andy Shevchenko 2022-01-10 10:19 ` Andy Shevchenko 2022-01-13 16:53 ` Lucas tanure 2022-01-13 16:53 ` Lucas tanure 2022-01-13 18:13 ` Andy Shevchenko [this message] 2022-01-13 18:13 ` Andy Shevchenko 2022-01-13 18:19 ` Andy Shevchenko 2022-01-13 18:19 ` Andy Shevchenko 2022-10-31 5:38 ` Dmitry Torokhov 2022-10-31 5:38 ` Dmitry Torokhov 2022-10-31 14:34 ` Andy Shevchenko 2022-10-31 14:34 ` Andy Shevchenko 2021-12-17 11:57 ` [PATCH v6 08/10] ACPI / scan: Create platform device for CLSA0100 and CSC3551 ACPI nodes Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 17:19 ` Rafael J. Wysocki 2021-12-17 17:19 ` Rafael J. Wysocki 2021-12-17 18:26 ` Hans de Goede 2021-12-17 18:26 ` Hans de Goede 2021-12-20 13:01 ` Mark Brown 2021-12-20 13:01 ` Mark Brown 2021-12-20 17:24 ` Stefan Binding 2021-12-20 17:24 ` Stefan Binding 2022-01-12 13:05 ` Lucas tanure 2022-01-12 13:05 ` Lucas tanure 2022-01-12 20:00 ` Cameron Berkenpas 2022-01-12 20:00 ` Cameron Berkenpas 2022-01-13 15:52 ` tanureal 2022-01-13 15:52 ` tanureal 2021-12-17 11:57 ` [PATCH v6 09/10] ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-17 11:57 ` [PATCH v6 10/10] ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops Lucas Tanure 2021-12-17 11:57 ` Lucas Tanure 2021-12-31 14:39 ` (subset) [PATCH v6 00/10] Add support for CS35L41 in HDA systems Mark Brown 2021-12-31 14:39 ` Mark Brown 2022-01-04 13:07 ` Takashi Iwai 2022-01-04 13:07 ` Takashi Iwai 2022-01-05 16:32 ` Takashi Iwai 2022-01-05 16:32 ` 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='CAHp75Vc=x0AanRhkGHvbgs0M9VLdZfEFKJUxRTEMFvT5YwDtzA@mail.gmail.com' \ --to=andy.shevchenko@gmail.com \ --cc=alsa-devel@alsa-project.org \ --cc=broonie@kernel.org \ --cc=hdegoede@redhat.com \ --cc=lenb@kernel.org \ --cc=lgirdwood@gmail.com \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=markgross@kernel.org \ --cc=patches@opensource.cirrus.com \ --cc=perex@perex.cz \ --cc=platform-driver-x86@vger.kernel.org \ --cc=rafael@kernel.org \ --cc=tanureal@opensource.cirrus.com \ --cc=tiwai@suse.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.