From: Hans de Goede <hdegoede@redhat.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 15/17] sunxi: Ippo_q8h defconfigs: Enable the LCD panel found on these tablets.
Date: Tue, 30 Dec 2014 11:26:51 +0100 [thread overview]
Message-ID: <54A27DEB.1000005@redhat.com> (raw)
In-Reply-To: <20141230121802.36365251@i7>
Hi,
On 30-12-14 11:18, Siarhei Siamashka wrote:
> On Thu, 25 Dec 2014 11:59:55 +0100
> Hans de Goede <hdegoede@redhat.com> wrote:
>
>> Hi,
>>
>> On 25-12-14 11:00, Chen-Yu Tsai wrote:
>>> Hi,
>>>
>>> On Thu, Dec 25, 2014 at 3:06 AM, Hans de Goede <hdegoede@redhat.com> wrote:
>>>> Enable the new LCD support on Ippo_q8h tablets.
>>>>
>>>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>>> ---
>>>> configs/Ippo_q8h_v1_2_defconfig | 5 ++++-
>>>> configs/Ippo_q8h_v5_defconfig | 5 ++++-
>>>> 2 files changed, 8 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/configs/Ippo_q8h_v1_2_defconfig b/configs/Ippo_q8h_v1_2_defconfig
>>>> index fefed32..c773f5f 100644
>>>> --- a/configs/Ippo_q8h_v1_2_defconfig
>>>> +++ b/configs/Ippo_q8h_v1_2_defconfig
>>>> @@ -1,7 +1,10 @@
>>>> CONFIG_SPL=y
>>>> CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
>>>> CONFIG_FDTFILE="sun8i-a23-ippo-q8h-v1.2.dtb"
>>>> -CONFIG_VIDEO=n
>>>> +CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:0,vmode:0"
>>>> +CONFIG_VIDEO_LCD_POWER="PH7"
>>>> +CONFIG_VIDEO_LCD_BL_EN="PH6"
>>>> +CONFIG_VIDEO_LCD_BL_PWM="PH0"
>>>> CONFIG_USB_KEYBOARD=n
>>>> +S:CONFIG_ARM=y
>>>> +S:CONFIG_ARCH_SUNXI=y
>>>> diff --git a/configs/Ippo_q8h_v5_defconfig b/configs/Ippo_q8h_v5_defconfig
>>>> index b8d3afe..ce4f0b8 100644
>>>> --- a/configs/Ippo_q8h_v5_defconfig
>>>> +++ b/configs/Ippo_q8h_v5_defconfig
>>>> @@ -1,7 +1,10 @@
>>>> CONFIG_SPL=y
>>>> CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
>>>> CONFIG_FDTFILE="sun8i-a23-ippo-q8h-v5.dtb"
>>>> -CONFIG_VIDEO=n
>>>> +CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:0,vmode:0"
>>>
>>> The display on my Q8H is a bit off to the left. With the simplefb
>>> bindings from your kernel sunxi-wip branch, I get a nice console.
>>> Though I've no way to type, at least I can tell my tablet is on. :)
>>>
>>> Could you briefly explain how to convert the values in the fex
>>> file to the mode line here? It could also help others with
>>> enabling display on their tablets.
>>
>> Ah yes, I used the slightly different timings from the olimex 7" lcd
>> panel for olinuxino boards, and since those worked fine on my a23
>> tablet I never adjusted things. Here is a translation table:
>>
>>
>> CONFIG_VIDEO_LCD_MODE fex value(s)
>>
>> x lcd_x
>> y lcd_y
>> depth:18 lcd_frm = 1
>> pclk_khz lcd_dclk_freq * 1000
>> hs lcd_hv_hspw (with a minimum of 1)
>> vs lcd_hv_vspw (with a minimum of 1)
>> le lcd_hbp - hs
>> ri lcd_ht - lcd_x - lcd_hbp
>> up lcd_vbp - vs
>>
>> On sun4i/sun5i/sun7i:
>> lo (lcd_vt / 2) - lcd_y - lcd_vbp
>> On sun8i:
>> lo lcd_vt - lcd_y - lcd_vbp
>>
>> sync 0
>> mode 0
>>
>> I notice that the Ippo_q8h_v5 fex uses 0 for lcd_hv_hspw and lcd_hv_vspw, which
>> is not a valid value as the register value contains hspw - 1, so the minimum is 1,
>> and looking at a register dump under android with my A23 tablet the value indeed
>> should be 1.
>
> That's interesting. What would be the correct general formula for the
> hs/vs values then? "max(lcd_hv_hspw, 1)" or maybe "lcd_hv_hspw + 1"?
Looking at the register values set by android vs the fex file, the correct
formula is "max(lcd_hv_hspw, 1)".
> BTW, I have done a preliminary automatic conversion for all FEX
> files from sunxi-boards, which enable lcd0 in fex. The results are
> now available at the all the same http://linux-sunxi.org/LCD wiki page.
Cool, thanks for doing this!
> If "hs = lcd_hv_hspw + 1" is a better choice, then the whole table
> probably needs to be re-generated.
>
> Also additional explanations about GPIO related options (what would be
> the exact rules to interpret FEX?) and more details about "lcd_frm" and
> "lcd_if" would help a lot to get a better understanding about what
> still needs to be done to get LCD displays supported on all devices.
Currently basically only lcd_if = 0 and lcd_frm = 1 are supported, it
should be possible to add support for other lcd_frm = x values easily,
so if you encounter those let me know, lcd_if != 0 is going to be much
harder to support and currently is not on my schedule.
> If I understand it correctly, the kernel sources from the Allwinner SDK
> contain the relevant code for handling the information from FEX, and
> this code is the best reference. And it's more reliable to refer to
> A23 SDK for interpreting the FEX files originally snatched from A23
> devices, and likewise A31 SDK for A31 devices. For example, it is not
> uncommon to see both 'lcd_pwm_used' and 'lcd_pwm_not_used' variables
> defined in FEX. And sometimes the values of these variables even
> contradict each other. So the fine details about the relative
> priorities of these variables and other similar things might need
> to be discovered for perfectly correct conversion.
All I can say here is that I agree with the above, I'm afraid I'm not
familiar enough with the (quite large) sunxi display code in the SDK
kernels to provide answers here.
Regards,
Hans
next prev parent reply other threads:[~2014-12-30 10:26 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-24 19:06 [U-Boot] sunxi: video: Add LCD output and A13-Olinuxino VGA output support Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 01/17] videomodes: Add support for refresh and pclk_khz to video_get_params() Hans de Goede
2014-12-28 9:27 ` Ian Campbell
2015-01-08 17:23 ` Anatolij Gustschin
2014-12-24 19:06 ` [U-Boot] [PATCH 02/17] sunxi: gpio: Properly sort mux defines by port number Hans de Goede
2014-12-28 9:28 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 03/17] sunxi: gpio: Add support for gpio pins on the AXP209 pmic Hans de Goede
2014-12-28 9:34 ` Ian Campbell
2014-12-28 10:35 ` Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 04/17] sunxi: video: Drop disabling of backend / lcdc / hdmi encoder on modeset Hans de Goede
2014-12-28 9:34 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 05/17] sunxi: video: Improve monitor video-mode option handling Hans de Goede
2014-12-28 9:40 ` Ian Campbell
2014-12-28 10:55 ` Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 06/17] sunxi: video: Prepare for lcd support Hans de Goede
2014-12-28 9:41 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 07/17] sunxi: video: Modify sunxi_lcdc_pll_set to work with both tcon0 and tcon1 Hans de Goede
2014-12-29 13:36 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 08/17] sunxi: video: Move sunxi_drc_init Hans de Goede
2014-12-25 9:08 ` Chen-Yu Tsai
2014-12-25 10:22 ` Hans de Goede
2014-12-29 13:37 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 09/17] sunxi: video: Add lcd output support Hans de Goede
2014-12-29 13:43 ` Ian Campbell
2014-12-31 11:59 ` Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 10/17] sunxi: video: Add suppport SoCs without HDMI, e.g. the A13 and A23 Hans de Goede
2014-12-29 13:50 ` Ian Campbell
2014-12-31 12:07 ` Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 11/17] sunxi: video: Add support for VGA via external DACs connected to the LCD pins Hans de Goede
2014-12-29 13:51 ` Ian Campbell
2014-12-29 19:25 ` Hans de Goede
2014-12-30 2:21 ` Chen-Yu Tsai
2014-12-30 10:21 ` Hans de Goede
2014-12-24 19:06 ` [U-Boot] [PATCH 12/17] sunxi: sunxi-common.h: Reduce bootm_size to take the framebuffer into account Hans de Goede
2014-12-29 13:52 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 13/17] sunxi: A13-OLinuXino defconfigs: Enable VGA output, add lcd-mode for 7" LCD Hans de Goede
2014-12-29 13:53 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 14/17] sunxi: Add 2 defconfigs for using the Olimex 7" lcd with olinuxino boards Hans de Goede
2014-12-29 13:55 ` Ian Campbell
2014-12-29 19:27 ` Hans de Goede
2014-12-30 7:25 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 15/17] sunxi: Ippo_q8h defconfigs: Enable the LCD panel found on these tablets Hans de Goede
2014-12-25 10:00 ` Chen-Yu Tsai
2014-12-25 10:59 ` Hans de Goede
2014-12-26 6:44 ` Chen-Yu Tsai
2014-12-26 10:48 ` Hans de Goede
2014-12-29 13:57 ` Ian Campbell
2014-12-29 15:56 ` Chen-Yu Tsai
2014-12-29 19:31 ` Hans de Goede
2014-12-30 10:18 ` Siarhei Siamashka
2014-12-30 10:26 ` Hans de Goede [this message]
2014-12-30 10:36 ` Hans de Goede
2014-12-30 11:25 ` Siarhei Siamashka
2014-12-31 11:22 ` Hans de Goede
2014-12-30 12:17 ` Siarhei Siamashka
2014-12-31 11:22 ` Hans de Goede
2015-01-01 2:35 ` Chen-Yu Tsai
2015-01-01 12:36 ` Hans de Goede
2015-01-02 11:02 ` Siarhei Siamashka
2015-01-04 20:22 ` Hans de Goede
2015-01-01 20:03 ` Siarhei Siamashka
2015-01-01 20:15 ` Hans de Goede
2015-01-01 21:05 ` Siarhei Siamashka
2014-12-24 19:06 ` [U-Boot] [PATCH 16/17] sunxi: video: Remove sunxi_display.enabled variable Hans de Goede
2014-12-29 13:57 ` Ian Campbell
2014-12-24 19:06 ` [U-Boot] [PATCH 17/17] sunxi: video: Use sunxi_lcdc_get_clk_delay to calculate tcon1 delay Hans de Goede
2014-12-29 13:58 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54A27DEB.1000005@redhat.com \
--to=hdegoede@redhat.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox