]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
Merge branch 'tx6-devel' into uboot-merge
authorLothar Waßmann <LW@KARO-electronics.de>
Wed, 5 Mar 2014 14:34:49 +0000 (15:34 +0100)
committerLothar Waßmann <LW@KARO-electronics.de>
Wed, 5 Mar 2014 14:34:49 +0000 (15:34 +0100)
1  2 
board/karo/tx6/tx6qdl.c

diff --combined board/karo/tx6/tx6qdl.c
index 08dd9dd2a549cc81ddd431120283551591a19d06,0ba59ea785f758df70e0739457aaf04b19d6a9f2..5b95e59736e62cf890849660bddf4316099db1c5
@@@ -40,7 -40,7 +40,7 @@@
  
  #define TX6_FEC_RST_GPIO              IMX_GPIO_NR(7, 6)
  #define TX6_FEC_PWR_GPIO              IMX_GPIO_NR(3, 20)
- #define TX6_FEC_INT_GPIO              IMX_GPIO_NR(2, 4)
+ #define TX6_FEC_INT_GPIO              IMX_GPIO_NR(7, 1)
  #define TX6_LED_GPIO                  IMX_GPIO_NR(2, 20)
  
  #define TX6_LCD_PWR_GPIO              IMX_GPIO_NR(2, 31)
@@@ -539,6 -539,9 +539,6 @@@ int board_mmc_init(bd_t *bis
                struct tx6_esdhc_cfg *cfg = &tx6qdl_esdhc_cfg[i];
                int ret;
  
 -              if (i >= CONFIG_SYS_FSL_ESDHC_NUM)
 -                      break;
 -
                cfg->cfg.sdhc_clk = mxc_get_clock(cfg->clkid);
                imx_iomux_v3_setup_multiple_pads(cfg->pads, cfg->num_pads);
  
@@@ -828,6 -831,23 +828,23 @@@ static struct fb_videomode tx6_fb_modes
                .lower_margin   = 525 - 480 - 35,
                .sync           = FB_SYNC_CLK_LAT_FALL,
        },
+       {
+               /* Emerging ET070001DM6 800 x 480 display.
+                * 152.4 mm x 91.44 mm display area.
+                */
+               .name           = "ET070001DM6",
+               .refresh        = 60,
+               .xres           = 800,
+               .yres           = 480,
+               .pixclock       = KHZ2PICOS(33260),
+               .left_margin    = 216 - 128,
+               .hsync_len      = 128,
+               .right_margin   = 1056 - 800 - 216,
+               .upper_margin   = 35 - 2,
+               .vsync_len      = 2,
+               .lower_margin   = 525 - 480 - 35,
+               .sync           = 0,
+       },
  #else
        {
                /* HannStar HSD100PXN1
  };
  
  static int lcd_enabled = 1;
 +static int lcd_bl_polarity;
 +
 +static int lcd_backlight_polarity(void)
 +{
 +      return lcd_bl_polarity;
 +}
  
  void lcd_enable(void)
  {
                udelay(100);
                gpio_set_value(TX6_LCD_RST_GPIO, 1);
                udelay(300000);
 -              gpio_set_value(TX6_LCD_BACKLIGHT_GPIO, is_lvds());
 +              gpio_set_value(TX6_LCD_BACKLIGHT_GPIO,
 +                      lcd_backlight_polarity());
        }
  }
  
@@@ -902,8 -915,7 +919,8 @@@ void lcd_panel_disable(void
  {
        if (lcd_enabled) {
                debug("Switching LCD off\n");
 -              gpio_set_value(TX6_LCD_BACKLIGHT_GPIO, !is_lvds());
 +              gpio_set_value(TX6_LCD_BACKLIGHT_GPIO,
 +                      !lcd_backlight_polarity());
                gpio_set_value(TX6_LCD_RST_GPIO, 0);
                gpio_set_value(TX6_LCD_PWR_GPIO, 0);
        }
@@@ -981,7 -993,6 +998,7 @@@ void lcd_ctrl_init(void *lcdbase
        }
  
        karo_fdt_move_fdt();
 +      lcd_bl_polarity = karo_fdt_get_backlight_polarity(working_fdt);
  
        if (video_mode == NULL) {
                debug("Disabling LCD\n");
@@@ -1338,6 -1349,11 +1355,11 @@@ void ft_board_setup(void *blob, bd_t *b
        const char *baseboard = getenv("baseboard");
        int stk5_v5 = baseboard != NULL && (strcmp(baseboard, "stk5-v5") == 0);
        const char *video_mode = karo_get_vmode(getenv("video_mode"));
+       int ret;
+       ret = fdt_increase_size(blob, 4096);
+       if (ret)
+               printf("Failed to increase FDT size: %s\n", fdt_strerror(ret));
  
        if (stk5_v5)
                karo_fdt_enable_node(blob, "stk5led", 0);