* [PATCH v2] soundwire: bus: Make sdw_nwrite() data pointer argument const
@ 2021-06-16 14:59 Richard Fitzgerald
2021-06-20 11:17 ` Vinod Koul
0 siblings, 1 reply; 2+ messages in thread
From: Richard Fitzgerald @ 2021-06-16 14:59 UTC (permalink / raw
To: vkoul, yung-chuan.liao, pierre-louis.bossart, sanyog.r.kale
Cc: patches, alsa-devel, Richard Fitzgerald, linux-kernel
Idiomatically, write functions should take const pointers to the
data buffer, as they don't change the data. They are also likely
to be called from functions that receive a const data pointer.
Internally the pointer is passed to function/structs shared with
the read functions, requiring a cast, but this is an implementation
detail that should be hidden by the public API.
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
---
drivers/soundwire/bus.c | 8 ++++----
include/linux/soundwire/sdw.h | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c
index a9e0aa72654d..49c66deba106 100644
--- a/drivers/soundwire/bus.c
+++ b/drivers/soundwire/bus.c
@@ -394,13 +394,13 @@ sdw_nread_no_pm(struct sdw_slave *slave, u32 addr, size_t count, u8 *val)
}
static int
-sdw_nwrite_no_pm(struct sdw_slave *slave, u32 addr, size_t count, u8 *val)
+sdw_nwrite_no_pm(struct sdw_slave *slave, u32 addr, size_t count, const u8 *val)
{
struct sdw_msg msg;
int ret;
ret = sdw_fill_msg(&msg, slave, addr, count,
- slave->dev_num, SDW_MSG_FLAG_WRITE, val);
+ slave->dev_num, SDW_MSG_FLAG_WRITE, (u8 *)val);
if (ret < 0)
return ret;
@@ -535,9 +535,9 @@ EXPORT_SYMBOL(sdw_nread);
* @slave: SDW Slave
* @addr: Register address
* @count: length
- * @val: Buffer for values to be read
+ * @val: Buffer for values to be written
*/
-int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, u8 *val)
+int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, const u8 *val)
{
int ret;
diff --git a/include/linux/soundwire/sdw.h b/include/linux/soundwire/sdw.h
index ced07f8fde87..ee45d2984334 100644
--- a/include/linux/soundwire/sdw.h
+++ b/include/linux/soundwire/sdw.h
@@ -1040,7 +1040,7 @@ int sdw_write(struct sdw_slave *slave, u32 addr, u8 value);
int sdw_write_no_pm(struct sdw_slave *slave, u32 addr, u8 value);
int sdw_read_no_pm(struct sdw_slave *slave, u32 addr);
int sdw_nread(struct sdw_slave *slave, u32 addr, size_t count, u8 *val);
-int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, u8 *val);
+int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, const u8 *val);
int sdw_compare_devid(struct sdw_slave *slave, struct sdw_slave_id id);
void sdw_extract_slave_id(struct sdw_bus *bus, u64 addr, struct sdw_slave_id *id);
--
2.20.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] soundwire: bus: Make sdw_nwrite() data pointer argument const
2021-06-16 14:59 [PATCH v2] soundwire: bus: Make sdw_nwrite() data pointer argument const Richard Fitzgerald
@ 2021-06-20 11:17 ` Vinod Koul
0 siblings, 0 replies; 2+ messages in thread
From: Vinod Koul @ 2021-06-20 11:17 UTC (permalink / raw
To: Richard Fitzgerald
Cc: alsa-devel, patches, pierre-louis.bossart, linux-kernel,
sanyog.r.kale, yung-chuan.liao
On 16-06-21, 15:59, Richard Fitzgerald wrote:
> Idiomatically, write functions should take const pointers to the
> data buffer, as they don't change the data. They are also likely
> to be called from functions that receive a const data pointer.
>
> Internally the pointer is passed to function/structs shared with
> the read functions, requiring a cast, but this is an implementation
> detail that should be hidden by the public API.
Applied, thanks
--
~Vinod
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-06-20 11:18 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-16 14:59 [PATCH v2] soundwire: bus: Make sdw_nwrite() data pointer argument const Richard Fitzgerald
2021-06-20 11:17 ` Vinod Koul
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).