zoukankan      html  css  js  c++  java
  • I.MX6 U-boot Kernel backlight setting

    /*********************************************************************
     *              I.MX6 U-boot Kernel backlight setting
     * 说明:
     *     本文主要记录I.MX6 U-boot、Kernel中如何打开、关闭背光设置。
     * 
     *                                   2016-3-7 深圳 南山平山村 曾剑锋
     ********************************************************************/
    
    
    1. cat bootable/bootloader/uboot-imx/board/freescale/mx6q_sabresd/mx6q_sabresd.c
        ......
        #ifdef CONFIG_LCD
        void lcd_enable(void)
        {
            ......
            /*
             * Set LVDS panel CABC_EN0 to low to disable
             * CABC function. This function will turn backlight
             * automatically according to display content, so
             * simply disable it to get rid of annoying unstable
             * backlight phenomena.
             * 
             * • GPIO direction register (GPIO_GDIR)
             * • Data register (GPIO_DR)
             *
             * 2015-10-8 zengjf modify fot lvds backlight
             */
            reg = readl(GPIO6_BASE_ADDR + GPIO_GDIR);
            reg |= (1 << 15);
            writel(reg, GPIO6_BASE_ADDR + GPIO_GDIR);
            
            reg = readl(GPIO6_BASE_ADDR + GPIO_DR);
            //reg &= ~(1 << 15);
            reg |= (1 << 15);
            writel(reg, GPIO6_BASE_ADDR + GPIO_DR);
            
            /*
             * Set LVDS panel CABC_EN1 to low to disable
             * CABC function.
             */
            reg = readl(GPIO6_BASE_ADDR + GPIO_GDIR);
            reg |= (1 << 16);
            writel(reg, GPIO6_BASE_ADDR + GPIO_GDIR);
            
            reg = readl(GPIO6_BASE_ADDR + GPIO_DR);
            //reg &= ~(1 << 16);
            reg |= (1 << 16);
            writel(reg, GPIO6_BASE_ADDR + GPIO_DR);
            ......
        }
        ......
    
    2. cat arch/arm/mach-mx6/board-mx6q_sabresd.c
        ......
        /*!
         * Board specific initialization.
         */
        static void __init mx6_sabresd_board_init(void)
        {
            ......
            /*
             * Disable HannStar touch panel CABC function,
             * this function turns the panel's backlight automatically
             * according to the content shown on the panel which
             * may cause annoying unstable backlight issue.
             * 
             * zengjf 2015-10-8 this also has down in uboot 
             */
            gpio_request(SABRESD_CABC_EN0, "cabc-en0");
            gpio_direction_output(SABRESD_CABC_EN0, 1);
            gpio_request(SABRESD_CABC_EN1, "cabc-en1");
            gpio_direction_output(SABRESD_CABC_EN1, 1);
            
            ......
        }
        ......
  • 相关阅读:
    钱多多软件制作04
    团队项目01应用场景
    HDU 4411 arrest
    HDU 4406 GPA
    HDU 3315 My Brute
    HDU 3667 Transportation
    HDU 2676 Matrix
    欧拉回路三水题 POJ 1041 POJ 2230 POJ 1386
    SPOJ 371 BOXES
    POJ 3422 Kaka's Matrix Travels
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/5249437.html
Copyright © 2011-2022 走看看