RTEMS | Add the support for i2c driver in the aarch64/raspberrypi bsp (!363)
Kinsey Moore (@opticron)
gitlab at rtems.org
Tue Mar 25 18:28:18 UTC 2025
Kinsey Moore commented on a discussion on bsps/aarch64/raspberrypi/i2c/raspberrypi-i2c.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/363#note_121759
> -{
> - while (bus->remaining_bytes >= 1)
> +static int rpi_i2c_bus_transfer(raspberrypi_i2c_bus *bus) {
> + if (bus->read_transfer)
> {
> - if (bus->read_transfer)
> - {
> - I2C_POLLING((BCM2835_REG(bus->base_address + BCM2711_I2C_STATUS) & (1 << 5)) == 0);
> - *(bus->current_buffer) = BCM2835_REG(bus->base_address + BCM2711_I2C_FIFO) & 0xFF;
> - }
> - else
> - {
> - I2C_POLLING((BCM2835_REG(bus->base_address + BCM2711_I2C_STATUS) & (1 << 2)) == 0);
> - BCM2835_REG(bus->base_address + BCM2711_I2C_FIFO) = *(bus->current_buffer);
> + while (!(BCM2835_REG(bus->base_address + BCM2711_I2C_STATUS) & S_DONE )) {
> + while ((BCM2835_REG(bus->base_address + BCM2711_I2C_STATUS) & S_RXD ) && (bus->remaining_bytes > 0)) {
Some of this was broken out into different functions, but the request for reduction of line length was not resolved.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/363#note_121759
You're receiving this email because of your account on gitlab.rtems.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20250325/1b12d929/attachment-0001.htm>
More information about the bugs
mailing list