maple: init_block_write depends on 32-bit accesses
The <uint8_t> template instantiation was causing 8-bit writes to the command buffer, when they were intended to be 32-bit writes. This garbled and truncated the data ultimately sent to the VMU LCD.
This commit is contained in:
parent
2689ad4011
commit
5d1e2f7225
@ -99,7 +99,7 @@ void init_block_write(uint32_t * command_buf, uint32_t * receive_buf,
|
|||||||
destination_ap, block_write::command_code, (sizeof (struct block_write::data_fields<uint8_t[0]>)) + data_size,
|
destination_ap, block_write::command_code, (sizeof (struct block_write::data_fields<uint8_t[0]>)) + data_size,
|
||||||
true);
|
true);
|
||||||
|
|
||||||
auto host_command = reinterpret_cast<struct host_command<block_write::data_fields<uint8_t[0]>> *>(command_buf);
|
auto host_command = reinterpret_cast<struct host_command<block_write::data_fields<uint32_t[0]>> *>(command_buf);
|
||||||
|
|
||||||
auto& fields = host_command->bus_data.data_fields;
|
auto& fields = host_command->bus_data.data_fields;
|
||||||
// BW LCD function type
|
// BW LCD function type
|
||||||
|
Loading…
x
Reference in New Issue
Block a user