diff --git a/drivers/lcd/Kconfig b/drivers/lcd/Kconfig index b4dc69b76fe..029ffb5ffbe 100644 --- a/drivers/lcd/Kconfig +++ b/drivers/lcd/Kconfig @@ -749,6 +749,10 @@ config LCD_ST7789_MIRRORY bool "ST7789 Mirror Y" default n +config LCD_ST7789_MIRRORV + bool "ST7789 Mirror V" + default n + config LCD_ST7789_INVCOLOR bool "ST7789 Invert Color" default y diff --git a/drivers/lcd/st7789.c b/drivers/lcd/st7789.c index 7d061d6f05d..8e4fd02d32a 100644 --- a/drivers/lcd/st7789.c +++ b/drivers/lcd/st7789.c @@ -477,7 +477,11 @@ static void st7789_setorientation(FAR struct st7789_dev_s *dev) #endif - /* Mirror X/Y for current setting */ + /* Mirror X/Y/V for current setting */ + +#ifdef CONFIG_LCD_ST7789_MIRRORV + madctl ^= 0x20; +#endif #ifdef CONFIG_LCD_ST7789_MIRRORX madctl ^= 0x40;