Skip to content

Commit 2e46b4e

Browse files
jhovoldgregkh
authored andcommitted
Revert "usb: typec: ucsi: Add support for message out data structure"
This reverts commit db00286. The new buffer management code that this feature relies on is broken so revert for now. As for the in buffer, nothing prevents the out message size and buffer from being modified while the message is being processed due to lack of serialisation. Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://patch.msgid.link/20251222152204.2846-4-johan@kernel.org
1 parent 174e7d0 commit 2e46b4e

3 files changed

Lines changed: 0 additions & 32 deletions

File tree

drivers/usb/typec/ucsi/ucsi.c

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,20 +67,6 @@ int ucsi_sync_control_common(struct ucsi *ucsi, u64 command, u32 *cci)
6767

6868
reinit_completion(&ucsi->complete);
6969

70-
if (ucsi->message_out_size > 0) {
71-
if (!ucsi->ops->write_message_out) {
72-
ucsi->message_out_size = 0;
73-
ret = -EOPNOTSUPP;
74-
goto out_clear_bit;
75-
}
76-
77-
ret = ucsi->ops->write_message_out(ucsi, ucsi->message_out,
78-
ucsi->message_out_size);
79-
ucsi->message_out_size = 0;
80-
if (ret)
81-
goto out_clear_bit;
82-
}
83-
8470
ret = ucsi->ops->async_control(ucsi, command);
8571
if (ret)
8672
goto out_clear_bit;

drivers/usb/typec/ucsi/ucsi.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ struct dentry;
6969
* @read_cci: Read CCI register
7070
* @poll_cci: Read CCI register while polling with notifications disabled
7171
* @read_message_in: Read message data from UCSI
72-
* @write_message_out: Write message data to UCSI
7372
* @sync_control: Blocking control operation
7473
* @async_control: Non-blocking control operation
7574
* @update_altmodes: Squashes duplicate DP altmodes
@@ -85,7 +84,6 @@ struct ucsi_operations {
8584
int (*read_cci)(struct ucsi *ucsi, u32 *cci);
8685
int (*poll_cci)(struct ucsi *ucsi, u32 *cci);
8786
int (*read_message_in)(struct ucsi *ucsi, void *val, size_t val_len);
88-
int (*write_message_out)(struct ucsi *ucsi, void *data, size_t data_len);
8987
int (*sync_control)(struct ucsi *ucsi, u64 command, u32 *cci);
9088
int (*async_control)(struct ucsi *ucsi, u64 command);
9189
bool (*update_altmodes)(struct ucsi *ucsi, u8 recipient,

drivers/usb/typec/ucsi/ucsi_acpi.c

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -86,21 +86,6 @@ static int ucsi_acpi_read_message_in(struct ucsi *ucsi, void *val, size_t val_le
8686
return 0;
8787
}
8888

89-
static int ucsi_acpi_write_message_out(struct ucsi *ucsi, void *data, size_t data_len)
90-
{
91-
struct ucsi_acpi *ua = ucsi_get_drvdata(ucsi);
92-
93-
if (!data || !data_len)
94-
return -EINVAL;
95-
96-
if (ucsi->version <= UCSI_VERSION_1_2)
97-
memcpy(ua->base + UCSI_MESSAGE_OUT, data, data_len);
98-
else
99-
memcpy(ua->base + UCSIv2_MESSAGE_OUT, data, data_len);
100-
101-
return 0;
102-
}
103-
10489
static int ucsi_acpi_async_control(struct ucsi *ucsi, u64 command)
10590
{
10691
struct ucsi_acpi *ua = ucsi_get_drvdata(ucsi);
@@ -116,7 +101,6 @@ static const struct ucsi_operations ucsi_acpi_ops = {
116101
.read_cci = ucsi_acpi_read_cci,
117102
.poll_cci = ucsi_acpi_poll_cci,
118103
.read_message_in = ucsi_acpi_read_message_in,
119-
.write_message_out = ucsi_acpi_write_message_out,
120104
.sync_control = ucsi_sync_control_common,
121105
.async_control = ucsi_acpi_async_control
122106
};

0 commit comments

Comments
 (0)