Skip to content

ATMEL M4 SPI transfer size truncated #7670

@gamblor21

Description

@gamblor21

CircuitPython version

Adafruit CircuitPython 8.1.0-alpha
Adafruit ItsyBitsy M4 Express with samd51g19

Code/REPL

display_bus.send(42, struct.pack(">hh", 0, 239))
display_bus.send(43, struct.pack(">hh", 80, 319))
display_bus.send(44, gif.bitmap)

Behavior

When sending a large SPI transfer the transfer is truncated. @jepler found reference in the samd51 spec that the block transfer count size in DMA is limited to a 16 bit value which implies the maximum is 64Kb. No error message is raised.

Description

Would be most useful to have the code detect and send larger transfers without the user seeing. Looks like you can chain transfer descriptors together to handle this situation.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions