Skip to content

Commit 1875e70

Browse files
fix buffer mishandling in spitarget bindings
1 parent dd7056b commit 1875e70

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

shared-bindings/spitarget/SPITarget.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -127,16 +127,16 @@ STATIC mp_obj_t spitarget_spi_target_load_packet(size_t n_args, const mp_obj_t *
127127
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
128128

129129
mp_buffer_info_t mosi_bufinfo;
130-
mp_get_buffer_raise(args[ARG_mosi_packet].u_obj, &mosi_bufinfo, MP_BUFFER_READ);
130+
mp_get_buffer_raise(args[ARG_mosi_packet].u_obj, &mosi_bufinfo, MP_BUFFER_WRITE);
131131

132132
mp_buffer_info_t miso_bufinfo;
133-
mp_get_buffer_raise(args[ARG_mosi_packet].u_obj, &miso_bufinfo, MP_BUFFER_READ);
133+
mp_get_buffer_raise(args[ARG_miso_packet].u_obj, &miso_bufinfo, MP_BUFFER_READ);
134134

135135
if (miso_bufinfo.len != mosi_bufinfo.len) {
136136
mp_raise_ValueError(MP_ERROR_TEXT("Packet buffers for an SPI transfer must have the same length."));
137137
}
138138

139-
common_hal_spitarget_spi_target_transfer_start(self, ((uint8_t *)miso_bufinfo.buf), ((uint8_t *)mosi_bufinfo.buf), miso_bufinfo.len);
139+
common_hal_spitarget_spi_target_transfer_start(self, ((uint8_t *)mosi_bufinfo.buf), ((uint8_t *)miso_bufinfo.buf), mosi_bufinfo.len);
140140
return mp_const_none;
141141
}
142142
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(spitarget_spi_target_load_packet_obj, 1, spitarget_spi_target_load_packet);

0 commit comments

Comments
 (0)