From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> To: alsa-devel@alsa-project.org Cc: linux-kernel@vger.kernel.org, tiwai@suse.de, broonie@kernel.org, vkoul@kernel.org, gregkh@linuxfoundation.org, jank@cadence.com, srinivas.kandagatla@linaro.org, slawomir.blauciak@intel.com, Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>, Sanyog Kale <sanyog.r.kale@intel.com> Subject: [RFC PATCH 02/40] soundwire: cadence_master: add debugfs register dump Date: Thu, 25 Jul 2019 18:39:54 -0500 [thread overview] Message-ID: <20190725234032.21152-3-pierre-louis.bossart@linux.intel.com> (raw) In-Reply-To: <20190725234032.21152-1-pierre-louis.bossart@linux.intel.com> Add debugfs file to dump the Cadence master registers Credits: this patch is based on an earlier internal contribution by Vinod Koul, Sanyog Kale, Shreyas Nc and Hardik Shah. The main change is the use of scnprintf to avoid known issues with snprintf. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> --- drivers/soundwire/cadence_master.c | 98 ++++++++++++++++++++++++++++++ drivers/soundwire/cadence_master.h | 2 + 2 files changed, 100 insertions(+) diff --git a/drivers/soundwire/cadence_master.c b/drivers/soundwire/cadence_master.c index ff4badc9b3de..91e8bacb83e3 100644 --- a/drivers/soundwire/cadence_master.c +++ b/drivers/soundwire/cadence_master.c @@ -8,6 +8,7 @@ #include <linux/delay.h> #include <linux/device.h> +#include <linux/debugfs.h> #include <linux/interrupt.h> #include <linux/io.h> #include <linux/module.h> @@ -223,6 +224,103 @@ static int cdns_clear_bit(struct sdw_cdns *cdns, int offset, u32 value) return -EAGAIN; } +/* + * debugfs + */ + +#define RD_BUF (2 * PAGE_SIZE) + +static ssize_t cdns_sprintf(struct sdw_cdns *cdns, + char *buf, size_t pos, unsigned int reg) +{ + return scnprintf(buf + pos, RD_BUF - pos, + "%4x\t%4x\n", reg, cdns_readl(cdns, reg)); +} + +static ssize_t cdns_reg_read(struct file *file, char __user *user_buf, + size_t count, loff_t *ppos) +{ + struct sdw_cdns *cdns = file->private_data; + char *buf; + ssize_t ret; + int i, j; + + buf = kzalloc(RD_BUF, GFP_KERNEL); + if (!buf) + return -ENOMEM; + + ret = scnprintf(buf, RD_BUF, "Register Value\n"); + ret += scnprintf(buf + ret, RD_BUF - ret, "\nMCP Registers\n"); + for (i = 0; i < 8; i++) /* 8 MCP registers */ + ret += cdns_sprintf(cdns, buf, ret, i * 4); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nStatus & Intr Registers\n"); + for (i = 0; i < 13; i++) /* 13 Status & Intr registers */ + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_STAT + i * 4); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nSSP & Clk ctrl Registers\n"); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_SSP_CTRL0); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_SSP_CTRL1); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_CLK_CTRL0); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_CLK_CTRL1); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn B0 Registers\n"); + for (i = 0; i < 7; i++) { + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDP-%d\n", i); + for (j = 0; j < 6; j++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_DPN_B0_CONFIG(i) + j * 4); + } + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn B1 Registers\n"); + for (i = 0; i < 7; i++) { + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDP-%d\n", i); + + for (j = 0; j < 6; j++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_DPN_B1_CONFIG(i) + j * 4); + } + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn Control Registers\n"); + for (i = 0; i < 7; i++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_PORTCTRL + i * CDNS_PORT_OFFSET); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nPDIn Config Registers\n"); + for (i = 0; i < 7; i++) + ret += cdns_sprintf(cdns, buf, ret, CDNS_PDI_CONFIG(i)); + + ret = simple_read_from_buffer(user_buf, count, ppos, buf, ret); + kfree(buf); + + return ret; +} + +static const struct file_operations cdns_reg_fops = { + .open = simple_open, + .read = cdns_reg_read, + .llseek = default_llseek, +}; + +/** + * sdw_cdns_debugfs_init() - Cadence debugfs init + * @cdns: Cadence instance + * @root: debugfs root + */ +void sdw_cdns_debugfs_init(struct sdw_cdns *cdns, struct dentry *root) +{ + debugfs_create_file("cdns-registers", 0400, root, cdns, &cdns_reg_fops); +} +EXPORT_SYMBOL_GPL(sdw_cdns_debugfs_init); + /* * IO Calls */ diff --git a/drivers/soundwire/cadence_master.h b/drivers/soundwire/cadence_master.h index fe2af62958b1..c0bf6ff00a44 100644 --- a/drivers/soundwire/cadence_master.h +++ b/drivers/soundwire/cadence_master.h @@ -163,6 +163,8 @@ int sdw_cdns_pdi_init(struct sdw_cdns *cdns, struct sdw_cdns_stream_config config); int sdw_cdns_enable_interrupt(struct sdw_cdns *cdns); +void sdw_cdns_debugfs_init(struct sdw_cdns *cdns, struct dentry *root); + int sdw_cdns_get_stream(struct sdw_cdns *cdns, struct sdw_cdns_streams *stream, u32 ch, u32 dir); -- 2.20.1
WARNING: multiple messages have this Message-ID (diff)
From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> To: alsa-devel@alsa-project.org Cc: tiwai@suse.de, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>, vkoul@kernel.org, broonie@kernel.org, srinivas.kandagatla@linaro.org, jank@cadence.com, slawomir.blauciak@intel.com, Sanyog Kale <sanyog.r.kale@intel.com> Subject: [RFC PATCH 02/40] soundwire: cadence_master: add debugfs register dump Date: Thu, 25 Jul 2019 18:39:54 -0500 [thread overview] Message-ID: <20190725234032.21152-3-pierre-louis.bossart@linux.intel.com> (raw) In-Reply-To: <20190725234032.21152-1-pierre-louis.bossart@linux.intel.com> Add debugfs file to dump the Cadence master registers Credits: this patch is based on an earlier internal contribution by Vinod Koul, Sanyog Kale, Shreyas Nc and Hardik Shah. The main change is the use of scnprintf to avoid known issues with snprintf. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> --- drivers/soundwire/cadence_master.c | 98 ++++++++++++++++++++++++++++++ drivers/soundwire/cadence_master.h | 2 + 2 files changed, 100 insertions(+) diff --git a/drivers/soundwire/cadence_master.c b/drivers/soundwire/cadence_master.c index ff4badc9b3de..91e8bacb83e3 100644 --- a/drivers/soundwire/cadence_master.c +++ b/drivers/soundwire/cadence_master.c @@ -8,6 +8,7 @@ #include <linux/delay.h> #include <linux/device.h> +#include <linux/debugfs.h> #include <linux/interrupt.h> #include <linux/io.h> #include <linux/module.h> @@ -223,6 +224,103 @@ static int cdns_clear_bit(struct sdw_cdns *cdns, int offset, u32 value) return -EAGAIN; } +/* + * debugfs + */ + +#define RD_BUF (2 * PAGE_SIZE) + +static ssize_t cdns_sprintf(struct sdw_cdns *cdns, + char *buf, size_t pos, unsigned int reg) +{ + return scnprintf(buf + pos, RD_BUF - pos, + "%4x\t%4x\n", reg, cdns_readl(cdns, reg)); +} + +static ssize_t cdns_reg_read(struct file *file, char __user *user_buf, + size_t count, loff_t *ppos) +{ + struct sdw_cdns *cdns = file->private_data; + char *buf; + ssize_t ret; + int i, j; + + buf = kzalloc(RD_BUF, GFP_KERNEL); + if (!buf) + return -ENOMEM; + + ret = scnprintf(buf, RD_BUF, "Register Value\n"); + ret += scnprintf(buf + ret, RD_BUF - ret, "\nMCP Registers\n"); + for (i = 0; i < 8; i++) /* 8 MCP registers */ + ret += cdns_sprintf(cdns, buf, ret, i * 4); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nStatus & Intr Registers\n"); + for (i = 0; i < 13; i++) /* 13 Status & Intr registers */ + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_STAT + i * 4); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nSSP & Clk ctrl Registers\n"); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_SSP_CTRL0); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_SSP_CTRL1); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_CLK_CTRL0); + ret += cdns_sprintf(cdns, buf, ret, CDNS_MCP_CLK_CTRL1); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn B0 Registers\n"); + for (i = 0; i < 7; i++) { + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDP-%d\n", i); + for (j = 0; j < 6; j++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_DPN_B0_CONFIG(i) + j * 4); + } + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn B1 Registers\n"); + for (i = 0; i < 7; i++) { + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDP-%d\n", i); + + for (j = 0; j < 6; j++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_DPN_B1_CONFIG(i) + j * 4); + } + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nDPn Control Registers\n"); + for (i = 0; i < 7; i++) + ret += cdns_sprintf(cdns, buf, ret, + CDNS_PORTCTRL + i * CDNS_PORT_OFFSET); + + ret += scnprintf(buf + ret, RD_BUF - ret, + "\nPDIn Config Registers\n"); + for (i = 0; i < 7; i++) + ret += cdns_sprintf(cdns, buf, ret, CDNS_PDI_CONFIG(i)); + + ret = simple_read_from_buffer(user_buf, count, ppos, buf, ret); + kfree(buf); + + return ret; +} + +static const struct file_operations cdns_reg_fops = { + .open = simple_open, + .read = cdns_reg_read, + .llseek = default_llseek, +}; + +/** + * sdw_cdns_debugfs_init() - Cadence debugfs init + * @cdns: Cadence instance + * @root: debugfs root + */ +void sdw_cdns_debugfs_init(struct sdw_cdns *cdns, struct dentry *root) +{ + debugfs_create_file("cdns-registers", 0400, root, cdns, &cdns_reg_fops); +} +EXPORT_SYMBOL_GPL(sdw_cdns_debugfs_init); + /* * IO Calls */ diff --git a/drivers/soundwire/cadence_master.h b/drivers/soundwire/cadence_master.h index fe2af62958b1..c0bf6ff00a44 100644 --- a/drivers/soundwire/cadence_master.h +++ b/drivers/soundwire/cadence_master.h @@ -163,6 +163,8 @@ int sdw_cdns_pdi_init(struct sdw_cdns *cdns, struct sdw_cdns_stream_config config); int sdw_cdns_enable_interrupt(struct sdw_cdns *cdns); +void sdw_cdns_debugfs_init(struct sdw_cdns *cdns, struct dentry *root); + int sdw_cdns_get_stream(struct sdw_cdns *cdns, struct sdw_cdns_streams *stream, u32 ch, u32 dir); -- 2.20.1
next prev parent reply other threads:[~2019-07-25 23:43 UTC|newest] Thread overview: 189+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-25 23:39 [RFC PATCH 00/40] soundwire: updates for 5.4 Pierre-Louis Bossart 2019-07-25 23:39 ` [RFC PATCH 01/40] soundwire: add debugfs support Pierre-Louis Bossart 2019-07-25 22:15 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 13:43 ` Pierre-Louis Bossart 2019-07-26 13:43 ` Pierre-Louis Bossart 2019-07-26 9:22 ` Cezary Rojewski 2019-07-26 13:57 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 14:04 ` Greg KH 2019-07-26 15:29 ` Pierre-Louis Bossart 2019-07-25 23:39 ` Pierre-Louis Bossart [this message] 2019-07-25 23:39 ` [RFC PATCH 02/40] soundwire: cadence_master: add debugfs register dump Pierre-Louis Bossart 2019-07-26 14:09 ` Greg KH 2019-07-26 15:32 ` Pierre-Louis Bossart 2019-08-05 7:55 ` Sanyog Kale 2019-08-05 15:20 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:39 ` [RFC PATCH 03/40] soundwire: cadence_master: align debugfs to 8 digits Pierre-Louis Bossart 2019-07-26 9:38 ` Cezary Rojewski 2019-07-26 13:58 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 11:50 ` Vinod Koul 2019-07-25 23:39 ` [RFC PATCH 04/40] soundwire: intel: add debugfs register dump Pierre-Louis Bossart 2019-07-26 9:35 ` Cezary Rojewski 2019-07-26 14:00 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 14:11 ` Greg KH 2019-07-26 14:06 ` Greg KH 2019-07-26 14:09 ` Greg KH 2019-07-26 15:34 ` Pierre-Louis Bossart 2019-07-25 23:39 ` [RFC PATCH 05/40] soundwire: intel: move interrupt enable after interrupt handler registration Pierre-Louis Bossart 2019-08-02 11:53 ` Vinod Koul 2019-08-02 15:08 ` Pierre-Louis Bossart 2019-07-25 23:39 ` [RFC PATCH 06/40] soundwire: intel: prevent possible dereference in hw_params Pierre-Louis Bossart 2019-07-26 9:45 ` Cezary Rojewski 2019-07-26 14:02 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 11:55 ` Vinod Koul 2019-08-02 15:16 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 15:57 ` Vinod Koul 2019-08-02 16:52 ` Pierre-Louis Bossart 2019-08-02 17:37 ` Vinod Koul 2019-07-25 23:39 ` [RFC PATCH 07/40] soundwire: intel: fix channel number reported by hardware Pierre-Louis Bossart 2019-08-02 11:57 ` Vinod Koul 2019-08-02 15:18 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 08/40] soundwire: intel: remove BIOS work-arounds Pierre-Louis Bossart 2019-08-02 11:58 ` Vinod Koul 2019-07-25 23:40 ` [RFC PATCH 09/40] soundwire: cadence_master: fix usage of CONFIG_UPDATE Pierre-Louis Bossart 2019-07-25 22:23 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-25 22:23 ` Guennadi Liakhovetski 2019-07-26 14:05 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 2:11 ` Bard liao 2019-07-26 13:33 ` Pierre-Louis Bossart 2019-07-26 9:53 ` Cezary Rojewski 2019-07-26 9:54 ` Cezary Rojewski 2019-08-02 12:03 ` Vinod Koul 2019-08-02 15:18 ` Pierre-Louis Bossart 2019-08-05 8:51 ` Sanyog Kale 2019-07-25 23:40 ` [RFC PATCH 10/40] soundwire: cadence_master: remove useless wrapper Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 11/40] soundwire: cadence_master: simplify bus clash interrupt clear Pierre-Louis Bossart 2019-08-02 12:07 ` Vinod Koul 2019-07-25 23:40 ` [RFC PATCH 12/40] soundwire: cadence_master: revisit interrupt settings Pierre-Louis Bossart 2019-08-02 12:10 ` Vinod Koul 2019-08-02 15:23 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 13/40] soundwire: cadence_master: fix register definition for SLAVE_STATE Pierre-Louis Bossart 2019-08-02 12:12 ` Vinod Koul 2019-07-25 23:40 ` [RFC PATCH 14/40] soundwire: cadence_master: fix definitions for INTSTAT0/1 Pierre-Louis Bossart 2019-08-02 12:13 ` Vinod Koul 2019-07-25 23:40 ` [RFC PATCH 15/40] soundwire: cadence_master: handle multiple status reports per Slave Pierre-Louis Bossart 2019-07-25 22:31 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-25 22:31 ` Guennadi Liakhovetski 2019-07-26 14:09 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 12:20 ` Vinod Koul 2019-08-02 15:29 ` Pierre-Louis Bossart 2019-08-02 16:01 ` Vinod Koul 2019-08-02 16:41 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 16/40] soundwire: cadence_master: improve startup sequence with link hw_reset Pierre-Louis Bossart 2019-07-26 7:22 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 14:11 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 17/40] soundwire: bus: use runtime_pm_get_sync/pm when enabled Pierre-Louis Bossart 2019-07-26 7:39 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 7:47 ` Jan Kotas 2019-07-26 8:22 ` Guennadi Liakhovetski 2019-07-26 8:33 ` Jan Kotas 2019-07-26 8:42 ` Guennadi Liakhovetski 2019-07-26 18:08 ` Pierre-Louis Bossart 2019-07-26 18:25 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 19:11 ` Andy Shevchenko 2019-07-26 19:08 ` Andy Shevchenko 2019-07-29 22:07 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-30 11:21 ` Andy Shevchenko 2019-07-30 12:57 ` Pierre-Louis Bossart 2019-07-30 15:58 ` Andy Shevchenko 2019-07-30 15:59 ` Andy Shevchenko 2019-08-02 16:58 ` Vinod Koul 2019-08-02 17:20 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 18/40] soundwire: bus: split handling of Device0 events Pierre-Louis Bossart 2019-08-02 16:59 ` Vinod Koul 2019-07-25 23:40 ` [RFC PATCH 19/40] soundwire: bus: improve dynamic debug comments for enumeration Pierre-Louis Bossart 2019-08-02 17:00 ` Vinod Koul 2019-08-02 17:20 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 20/40] soundwire: prototypes for suspend/resume Pierre-Louis Bossart 2019-07-26 10:04 ` Cezary Rojewski 2019-07-26 14:15 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 17:03 ` Vinod Koul 2019-08-02 17:21 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 21/40] soundwire: export helpers to find row and column values Pierre-Louis Bossart 2019-07-26 14:43 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 15:26 ` Pierre-Louis Bossart 2019-08-02 17:04 ` Vinod Koul 2019-08-05 9:39 ` Sanyog Kale 2019-08-05 15:27 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 22/40] soundwire: include mod_devicetable.h to avoid compiling warnings Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 23/40] soundwire: stream: fix disable sequence Pierre-Louis Bossart 2019-07-26 10:14 ` Cezary Rojewski 2019-07-26 14:17 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 14:51 ` Guennadi Liakhovetski 2019-07-26 15:05 ` Pierre-Louis Bossart 2019-08-05 9:56 ` Sanyog Kale 2019-08-05 15:33 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-05 16:32 ` Sanyog Kale 2019-08-05 19:12 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 24/40] soundwire: cadence_master: use BIOS defaults for frame shape Pierre-Louis Bossart 2019-07-26 10:20 ` Cezary Rojewski 2019-07-26 14:22 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 17:10 ` Vinod Koul 2019-08-02 17:24 ` Pierre-Louis Bossart 2019-08-05 10:01 ` Sanyog Kale 2019-07-25 23:40 ` [RFC PATCH 25/40] soundwire: intel: use BIOS information to set clock dividers Pierre-Louis Bossart 2019-08-02 17:17 ` Vinod Koul 2019-08-02 17:29 ` Pierre-Louis Bossart 2019-08-05 10:28 ` Sanyog Kale 2019-08-05 15:40 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 26/40] soundwire: cadence_master: fix divider setting in clock register Pierre-Louis Bossart 2019-07-26 5:19 ` [alsa-devel] " Bard liao 2019-07-26 5:56 ` rander.wang 2019-07-26 14:24 ` Pierre-Louis Bossart 2019-08-02 17:19 ` Vinod Koul 2019-08-02 17:30 ` Pierre-Louis Bossart 2019-08-05 10:40 ` Sanyog Kale 2019-08-05 15:41 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 27/40] soundwire: Add Intel resource management algorithm Pierre-Louis Bossart 2019-07-26 11:07 ` Cezary Rojewski 2019-07-26 14:41 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 15:43 ` Guennadi Liakhovetski 2019-07-26 17:55 ` Pierre-Louis Bossart 2019-08-05 16:54 ` Sanyog Kale 2019-08-05 16:54 ` Sanyog Kale 2019-08-05 19:08 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-05 19:08 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 28/40] soundwire: intel: handle disabled links Pierre-Louis Bossart 2019-08-05 16:57 ` Sanyog Kale 2019-08-05 19:18 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 29/40] soundwire: intel_init: add kernel module parameter to filter out links Pierre-Louis Bossart 2019-07-26 10:30 ` Cezary Rojewski 2019-07-26 14:43 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 30/40] soundwire: cadence_master: add kernel parameter to override interrupt mask Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 31/40] soundwire: intel: move shutdown() callback and don't export symbol Pierre-Louis Bossart 2019-07-26 10:38 ` Cezary Rojewski 2019-07-26 14:46 ` [alsa-devel] " Pierre-Louis Bossart 2019-08-02 17:28 ` Vinod Koul 2019-08-02 17:42 ` Pierre-Louis Bossart 2019-08-14 19:31 ` Pierre-Louis Bossart 2019-08-23 7:34 ` Vinod Koul 2019-08-23 15:57 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 32/40] soundwire: intel: add helper for initialization Pierre-Louis Bossart 2019-07-26 10:42 ` Cezary Rojewski 2019-07-26 14:55 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 33/40] soundwire: intel: Add basic power management support Pierre-Louis Bossart 2019-07-26 10:50 ` Cezary Rojewski 2019-07-26 14:57 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 34/40] soundwire: intel: ignore disabled links for suspend/resume Pierre-Louis Bossart 2019-08-02 17:30 ` Vinod Koul 2019-08-02 17:44 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 35/40] soundwire: intel: export helper to exit reset Pierre-Louis Bossart 2019-07-26 15:52 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 17:22 ` Pierre-Louis Bossart 2019-08-02 17:31 ` Vinod Koul 2019-08-02 17:44 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 36/40] soundwire: intel: disable interrupts on suspend Pierre-Louis Bossart 2019-07-26 15:55 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 17:26 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 37/40] soundwire: cadence_master: add hw_reset capability in debugfs Pierre-Louis Bossart 2019-07-26 14:07 ` Greg KH 2019-07-26 15:01 ` [alsa-devel] " Pierre-Louis Bossart 2019-07-26 15:57 ` Guennadi Liakhovetski 2019-07-26 17:31 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 38/40] soundwire: cadence_master: make clock stop exit configurable on init Pierre-Louis Bossart 2019-07-26 16:02 ` [alsa-devel] " Guennadi Liakhovetski 2019-07-26 17:35 ` Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 39/40] soundwire: intel: add pm_runtime support Pierre-Louis Bossart 2019-07-25 23:40 ` [RFC PATCH 40/40] soundwire: intel: add delay on restart for enumeration Pierre-Louis Bossart 2019-07-26 11:14 ` [RFC PATCH 00/40] soundwire: updates for 5.4 Cezary Rojewski 2019-07-26 15:23 ` [alsa-devel] " Pierre-Louis Bossart
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=20190725234032.21152-3-pierre-louis.bossart@linux.intel.com \ --to=pierre-louis.bossart@linux.intel.com \ --cc=alsa-devel@alsa-project.org \ --cc=broonie@kernel.org \ --cc=gregkh@linuxfoundation.org \ --cc=jank@cadence.com \ --cc=linux-kernel@vger.kernel.org \ --cc=sanyog.r.kale@intel.com \ --cc=slawomir.blauciak@intel.com \ --cc=srinivas.kandagatla@linaro.org \ --cc=tiwai@suse.de \ --cc=vkoul@kernel.org \ /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.