2020-03-30 06:54 PM
Hello,
I am fairly new to Linux and am trying to drive a DSI display using the STM32MP15-DK2 (not the one that came with the board) and was looking for some direction. I have been reading through the documentation related to DSI such as the DSI Internal Peripheral Description and DRM/KMS Framework Overview. What I need help with is figuring out where to start. I was thinking I will need to use the STMCubeMX tool to configure the host peripheral for my specific screen, then use Menuconfig to set up the kernel to run DSI, then configure DSI in the device tree? Any help is appreciated!
2020-04-13 02:23 PM
Hello BSunw.1.
We have done it without using the STMCubeMX tool. The DK2 has 2 screen outputs: its 480x800 LCD screen and its HDMI connector. The LCD screen is already used via DSI, so DSI is already supported by the kernel. The idea is to support another DSI device. The new device must be supported by the kernel, so you need a driver, that could be the first entry point. You may need to patch the kernel, if it does not support your device yet. If it does, you may need to reconfigure it, if the driver is not currently enabled.
Then the driver must be activated, usually via a "compatible" property in the DTB (Device Tree). So the idea should there to replace the "panel@0" DT node by one adapted to your device, that is the second step. In theory it should make it, after some problem solving to get the device tree right, and some debugging.