RTEMS | Add the support for i2c driver in the aarch64/raspberrypi bsp (!363)

Shaunak Datar (@skdatar) gitlab at rtems.org
Tue Mar 25 18:41:15 UTC 2025




Shaunak Datar commented on a discussion on bsps/aarch64/raspberrypi/i2c/raspberrypi-i2c.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/363#note_121768

 > -{
 > -    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)) {

Fixed this with a macro.

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/363#note_121768
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/6cf769dc/attachment-0001.htm>


More information about the bugs mailing list