This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/AM3354:SPI LCD 时序

Guru**** 2593120 points
Other Parts Discussed in Thread: AM3354

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/588461/linux-am3354-spi-lcd-timing

器件型号:AM3354

工具/软件:Linux

您好:

我正在使用定制的 AM3354板。 我们必须使其仅在3.2.0内核上运行。

Linux… 3.2.0 #71抢占 Thu APR 13 07:34:59 CEST 2017 ARMV7L GNU/Linux

我们正在集成使用 ST7789V IC 的 KD024FM-1B (2.4英寸 LCD) LCD。 我们已收到 LCD 制造商提供的3线 SPI 的 LCD 初始化代码。

下面是我的板级配置文件中的代码片段;

/* SPI */

#include

静态结构 pinmux_config SPI_pin_mux[]={
   {"McASP0_aclkx.SPI1_SCLK"、   OMAP-MUX_MODE3 | AM33XX_PULL_ENBL | AM33XX_INPUT_EN}、
   {"McASP0_axr0.SPI1_D1"、       OMAP-MUX_MODE3 | AM33XX_PULL_ENBL | AM33XX_INPUT_EN}、   
   {"McASP0_ahclkr.SPI1_cs0"、  OMAP-MUX_MODE3 | AM33XX_PULL_ENBL | AM33XX_PULL_UP | AM33XX_INPUT_EN}、
   {NULL、0}、
};

/* LCD 控制器*/
静态常量结构 st7789fb_platform_data lcd_st7789fb_data ={
   .rst_gpio   = GPIO_TO_PIN (3、8)、
   0.dc_GPIO   = GPIO_TO_PIN (0、7)、
};

静态结构 SPI_board_info LCD_SPI1_SLAVE_INFO[]={
   {
      modalias     ="st7789fb"、
      platform_data   =&lcd_st7789fb_data、
      IRQ      =-1、
      .max_speed_Hz = 3000000、      //目前的问题是计时,最高尝试32MHz
      bus_num      = 2、
      .chip_select  = 0、
      .mode         = SPI_MODE_0、
   }、
};

/*设置 LCD SPI1 */
静态空_init SPI_init (空)

   SETUP_PIN_mux (SPI_PIN_mux);
   SPI_REGISTER_board_INFO (LCD_SPI1_SLAVE_INFO、ARRAGE_SIZE (LCD_SPI1_SLAVE_INFO));

 

基于 https://github.com/ohporter/linux-am33x/tree/st7735fb 上的代码 ;我已根据 ST7789修改了初始化脚本

在包含驱动程序代码之后、register_framebuffer 出现问题、通过修补/修改以下内容来解决;

1、确保 st7735 DMA 的安全、和

fbmem .c

我无法正确获取时序。 请建议。

注意:我们能够使用类似的方法使 ST7775正常工作。

此致、

Waman Prabhu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    抱歉、内核 v3.2已过时、TI 不再支持。 我们对此无能为力。 我将使该线程保持打开状态、以便其他用户可以发布。