hw/i2c: Implement Broadcom Serial Controller (BSC)
authorRayhan Faizel <rayhan.faizel@gmail.com>
Sat, 24 Feb 2024 19:10:36 +0000 (00:40 +0530)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 5 Mar 2024 13:22:55 +0000 (13:22 +0000)
commit9cf3bc65afdb63f6fc28560274600b4e6e0c91ca
tree2d89a4e154436f71a562c7bb3eb71df8e9a6bb2f
parent4eac9dfbd72d346505642fb45ac3141c7eb2c516
hw/i2c: Implement Broadcom Serial Controller (BSC)

A few deficiencies in the current device model need to be noted.

1. FIFOs are not used. All sends and receives are done directly.
2. Repeated starts are not emulated. Repeated starts can be triggered in real
hardware by sending a new read transfer request in the window time between
transfer active set of write transfer request and done bit set of the same.

Signed-off-by: Rayhan Faizel <rayhan.faizel@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20240224191038.2409945-2-rayhan.faizel@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
docs/system/arm/raspi.rst
hw/i2c/Kconfig
hw/i2c/bcm2835_i2c.c [new file with mode: 0644]
hw/i2c/meson.build
include/hw/i2c/bcm2835_i2c.h [new file with mode: 0644]