Skip to content

Commit 66f95de

Browse files
plbossartvinodkoul
authored andcommitted
soundwire: cadence: further simplify low-level xfer_msg_defer() callback
The message pointer is already stored in the bus->defer structure, not need to pass it as an argument. Suggested-by: Ranjani Sridharan <[email protected]> Signed-off-by: Pierre-Louis Bossart <[email protected]> Reviewed-by: Ranjani Sridharan <[email protected]> Signed-off-by: Bard Liao <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]>
1 parent dd0b961 commit 66f95de

File tree

4 files changed

+8
-6
lines changed

4 files changed

+8
-6
lines changed

drivers/soundwire/bus.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ static inline int do_transfer_defer(struct sdw_bus *bus,
237237
init_completion(&defer->complete);
238238

239239
for (i = 0; i <= retry; i++) {
240-
resp = bus->ops->xfer_msg_defer(bus, msg);
240+
resp = bus->ops->xfer_msg_defer(bus);
241241
ret = find_response_code(resp);
242242
/* if cmd is ok or ignored return */
243243
if (ret == 0 || ret == -ENODATA)

drivers/soundwire/cadence_master.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -749,10 +749,11 @@ cdns_xfer_msg(struct sdw_bus *bus, struct sdw_msg *msg)
749749
EXPORT_SYMBOL(cdns_xfer_msg);
750750

751751
enum sdw_command_response
752-
cdns_xfer_msg_defer(struct sdw_bus *bus,
753-
struct sdw_msg *msg)
752+
cdns_xfer_msg_defer(struct sdw_bus *bus)
754753
{
755754
struct sdw_cdns *cdns = bus_to_cdns(bus);
755+
struct sdw_defer *defer = &bus->defer_msg;
756+
struct sdw_msg *msg = defer->msg;
756757
int cmd = 0, ret;
757758

758759
/* for defer only 1 message is supported */

drivers/soundwire/cadence_master.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ enum sdw_command_response
184184
cdns_xfer_msg(struct sdw_bus *bus, struct sdw_msg *msg);
185185

186186
enum sdw_command_response
187-
cdns_xfer_msg_defer(struct sdw_bus *bus, struct sdw_msg *msg);
187+
cdns_xfer_msg_defer(struct sdw_bus *bus);
188188

189189
u32 cdns_read_ping_status(struct sdw_bus *bus);
190190

include/linux/soundwire/sdw.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -837,7 +837,8 @@ struct sdw_defer {
837837
* @read_prop: Read Master properties
838838
* @override_adr: Override value read from firmware (quirk for buggy firmware)
839839
* @xfer_msg: Transfer message callback
840-
* @xfer_msg_defer: Defer version of transfer message callback
840+
* @xfer_msg_defer: Defer version of transfer message callback. The message is handled with the
841+
* bus struct @sdw_defer
841842
* @set_bus_conf: Set the bus configuration
842843
* @pre_bank_switch: Callback for pre bank switch
843844
* @post_bank_switch: Callback for post bank switch
@@ -851,7 +852,7 @@ struct sdw_master_ops {
851852
enum sdw_command_response (*xfer_msg)
852853
(struct sdw_bus *bus, struct sdw_msg *msg);
853854
enum sdw_command_response (*xfer_msg_defer)
854-
(struct sdw_bus *bus, struct sdw_msg *msg);
855+
(struct sdw_bus *bus);
855856
int (*set_bus_conf)(struct sdw_bus *bus,
856857
struct sdw_bus_params *params);
857858
int (*pre_bank_switch)(struct sdw_bus *bus);

0 commit comments

Comments
 (0)