cancel
Showing results for 
Search instead for 
Did you mean: 

Use Raspberry Pi 5'' Touch Display with stm32mp157a

yorick_coleu
Associate

Hi,

 

Unfortunately, I am not able to make it work for now, here is the status:
 
The best resources I have found is the following: https://trac.gateworks.com/wiki/venice/multimedia
I have then made the following changes in stm32mp157a device tree:
 
/ {

chosen {
stdout-path = "serial0:115200n8";
};

aliases {
ethernet0 = &ethernet0;
};

panel {
compatible = "powertip,ph800480t013-idf02";
power-supply = <&attiny>;
backlight = <&attiny>;

port {
panel_in: endpoint {
remote-endpoint = <&bridge_out>;
};
};
};
};

&i2c5 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&i2c5_pins_b>;
pinctrl-1 = <&i2c5_sleep_pins_b>;
i2c-scl-rising-time-ns = <185>;
i2c-scl-falling-time-ns = <20>;
clock-frequency = <400000>;
status = "okay";
/* spare dmas for other usage */
/delete-property/dmas;
/delete-property/dma-names;
#address-cells = <1>;
#size-cells = <0>;
attiny: regulator@45 {
compatible = "raspberrypi,7inch-touchscreen-panel-regulator";
reg = <0x45>;
};
};


&dsi {
status = "okay";
bridge@0 {
compatible ="toshiba,tc358762";
reg = <0>;
vddc-supply = <&attiny>;
status = "okay";

ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
bridge_in: endpoint {
remote-endpoint = <&dsi_out>;
};
};
port@1 {
reg = <1>;
bridge_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;

dsi_out: endpoint {
remote-endpoint = <&bridge_in>;
};
};
};
};

&ltdc {
status = "okay";
};

&gpu {
status = "okay";
};


 
I have also enabled the following kernel config flags:

< CONFIG_PARPORT=y
< CONFIG_TOUCHSCREEN_CHIPONE_ICN8318=y
< CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY=y
< CONFIG_MEDIA_SUPPORT=y
< CONFIG_DRM_DEBUG_MM=y
< CONFIG_DRM_STM_DSI=m
< CONFIG_DRM_PANEL_DSI_CM=m
< CONFIG_DRM_PANEL_SIMPLE=m
< CONFIG_DRM_PANEL_EDP=m
< CONFIG_DRM_PANEL_ILITEK_IL9322=m
< CONFIG_DRM_PANEL_ILITEK_ILI9341=m
< CONFIG_DRM_PANEL_ILITEK_ILI9881C=m
< CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
< CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO=m
> CONFIG_DRM_STM_DSI=y
> CONFIG_DRM_PANEL_SIMPLE=y
< CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
< CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
< CONFIG_DRM_PANEL_RAYDIUM_RM67191=m
< CONFIG_DRM_PANEL_RAYDIUM_RM68200=m
< CONFIG_DRM_PANEL_SAMSUNG_S6D16D0=m
< CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m
< CONFIG_DRM_CHIPONE_ICN6211=m
< CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW=m
< CONFIG_DRM_NWL_MIPI_DSI=m
< CONFIG_DRM_SIMPLE_BRIDGE=m
< CONFIG_DRM_TOSHIBA_TC358762=m
< CONFIG_DRM_TOSHIBA_TC358767=m
< CONFIG_DRM_TOSHIBA_TC358768=m
< CONFIG_DRM_ANALOGIX_ANX6345=m
< CONFIG_DRM_ANALOGIX_ANX78XX=m
< CONFIG_DRM_ANALOGIX_ANX7625=m
> CONFIG_DRM_SII902X=y
< CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
< CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y
< CONFIG_PANEL=y
< CONFIG_CLKSRC_STM32_LP=y
< CONFIG_DYNAMIC_DEBUG=y
< CONFIG_FTRACE=y
< CONFIG_ENABLE_DEFAULT_TRACERS=y
< DRM_DW_MIPI_DSI=y
< DRM_MIPI_DSI=y
 
You will find enclosed the dmesg boot trace.
 
I can see both the touchscreen and the regulator on i2c bus:
 
# i2cdetect  -y 1 ;
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- 38 -- -- -- -- -- -- --
40: -- -- -- -- -- UU -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
 
The regulator, at address 0x45 seems to be correctly handled by rpi_touchscreen_attiny driver.
 
I have probed the i2c bus between regulator and MPI DSI bridge, both communicate with each other.
 
Still, the mipi dsi fails at the probing step.
 

Do you have any idea? Thanks a lot!

 
Yorick
 
1 REPLY 1
Andrew Neil
Evangelist III

Welcome to the STM32 Forums.

You posted this as a reply to an old thread in the MCUs section:

https://community.st.com/t5/stm32-mcus-touchgfx-and-gui/connect-raspberry-pi-7-touch-display-to-stm32f769i-disco-board/td-p/393687/page/2

You're using an MPU - not MCU - so I've moved it to the MPUs section for you.

You haven't said what board you're using.

https://community.st.com/t5/community-guidelines/how-to-write-your-question-to-maximize-your-chances-to-find-a/ta-p/575228