From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches the manual.
Date: Wed, 11 Jan 2012 22:39:41 +0000 [thread overview]
Message-ID: <4F0E0FAD.6080404@gmx.de> (raw)
In-Reply-To: <4F0AF7F8.8040300@atmel.com>
Hi Nicolas, Alexander,
On 01/09/2012 02:21 PM, Nicolas Ferre wrote:
> On 10/05/2011 09:59 AM, Alexander Stein :
>> In the AT91SAM9263 Manual the HFP part in LCDTIM2 is described as follows:
>> * HFP: Horizontal Front Porch
>> Number of idle LCDDOTCK cycles at the end of the line.
>> Idle period is (HFP+2) LCDDOTCK cycles.
>
> Hi Alexander,
>
> Unfortunately this is not true for all the SoC that embed the
> atmel_lcdfb... So I may need to rework this patch but it is certainly
> not applicable in the current form.
>
> Florian, can you please remove it from your git tree?
Done, I reverted this patch for now.
For the other patches, those that are currently in my tree, I will ask Linus to
pull them really soon. For the others I'll take care of them after the merge
window is closed.
Best regards,
Florian Tobias Schandinat
>
> Thanks,
>
> Best regards,
>
>> It is only a minor issue. I also changed all boards using atmel_lcdfb
>> I found to respect the new calculation.
>>
>> Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
>> ---
>> arch/arm/mach-at91/board-cap9adk.c | 2 +-
>> arch/arm/mach-at91/board-neocore926.c | 2 +-
>> arch/arm/mach-at91/board-sam9261ek.c | 4 ++-
>> arch/arm/mach-at91/board-sam9263ek.c | 2 +-
>> arch/arm/mach-at91/board-sam9m10g45ek.c | 2 +-
>> arch/arm/mach-at91/board-sam9rlek.c | 2 +-
>> drivers/video/atmel_lcdfb.c | 4 ++--
>> 7 files changed, 9 insertions(+), 9 deletions(-)
>>
>> diff --git a/arch/arm/mach-at91/board-cap9adk.c b/arch/arm/mach-at91/board-cap9adk.c
>> index 679b0b7..ae962bf 100644
>> --- a/arch/arm/mach-at91/board-cap9adk.c
>> +++ b/arch/arm/mach-at91/board-cap9adk.c
>> @@ -304,7 +304,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-neocore926.c b/arch/arm/mach-at91/board-neocore926.c
>> index 9bc6ab3..583878e 100644
>> --- a/arch/arm/mach-at91/board-neocore926.c
>> +++ b/arch/arm/mach-at91/board-neocore926.c
>> @@ -235,7 +235,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(5000),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9261ek.c b/arch/arm/mach-at91/board-sam9261ek.c
>> index 5096a0e..8dda83b 100644
>> --- a/arch/arm/mach-at91/board-sam9261ek.c
>> +++ b/arch/arm/mach-at91/board-sam9261ek.c
>> @@ -370,7 +370,7 @@ static struct fb_videomode at91_stn_modes[] = {
>> .xres = 320, .yres = 240,
>> .pixclock = KHZ2PICOS(1440),
>>
>> - .left_margin = 1, .right_margin = 1,
>> + .left_margin = 1, .right_margin = 2,
>> .upper_margin = 0, .lower_margin = 0,
>> .hsync_len = 1, .vsync_len = 1,
>>
>> @@ -431,7 +431,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9263ek.c b/arch/arm/mach-at91/board-sam9263ek.c
>> index ea8f185..e260070 100644
>> --- a/arch/arm/mach-at91/board-sam9263ek.c
>> +++ b/arch/arm/mach-at91/board-sam9263ek.c
>> @@ -258,7 +258,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9m10g45ek.c b/arch/arm/mach-at91/board-sam9m10g45ek.c
>> index ad234cc..5e9a5ca 100644
>> --- a/arch/arm/mach-at91/board-sam9m10g45ek.c
>> +++ b/arch/arm/mach-at91/board-sam9m10g45ek.c
>> @@ -197,7 +197,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 480, .yres = 272,
>> .pixclock = KHZ2PICOS(9000),
>>
>> - .left_margin = 1, .right_margin = 1,
>> + .left_margin = 1, .right_margin = 2,
>> .upper_margin = 40, .lower_margin = 1,
>> .hsync_len = 45, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9rlek.c b/arch/arm/mach-at91/board-sam9rlek.c
>> index 4f14b54..ad9e5c9 100644
>> --- a/arch/arm/mach-at91/board-sam9rlek.c
>> +++ b/arch/arm/mach-at91/board-sam9rlek.c
>> @@ -154,7 +154,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/drivers/video/atmel_lcdfb.c b/drivers/video/atmel_lcdfb.c
>> index 817ab60..816d528 100644
>> --- a/drivers/video/atmel_lcdfb.c
>> +++ b/drivers/video/atmel_lcdfb.c
>> @@ -393,7 +393,7 @@ static int atmel_lcdfb_check_var(struct fb_var_screeninfo *var,
>> var->lower_margin = min_t(u32, var->lower_margin,
>> ATMEL_LCDC_VFP);
>> var->right_margin = min_t(u32, var->right_margin,
>> - (ATMEL_LCDC_HFP >> ATMEL_LCDC_HFP_OFFSET) + 1);
>> + (ATMEL_LCDC_HFP >> ATMEL_LCDC_HFP_OFFSET) + 2);
>> var->hsync_len = min_t(u32, var->hsync_len,
>> (ATMEL_LCDC_HPW >> ATMEL_LCDC_HPW_OFFSET) + 1);
>> var->left_margin = min_t(u32, var->left_margin,
>> @@ -578,7 +578,7 @@ static int atmel_lcdfb_set_par(struct fb_info *info)
>> lcdc_writel(sinfo, ATMEL_LCDC_TIM1, value);
>>
>> /* Horizontal timing */
>> - value = (info->var.right_margin - 1) << ATMEL_LCDC_HFP_OFFSET;
>> + value = (info->var.right_margin - 2) << ATMEL_LCDC_HFP_OFFSET;
>> value |= (info->var.hsync_len - 1) << ATMEL_LCDC_HPW_OFFSET;
>> value |= (info->var.left_margin - 1);
>> dev_dbg(info->device, " * LCDTIM2 = %08lx\n", value);
>
>
WARNING: multiple messages have this Message-ID (diff)
From: FlorianSchandinat@gmx.de (Florian Tobias Schandinat)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches the manual.
Date: Wed, 11 Jan 2012 22:39:41 +0000 [thread overview]
Message-ID: <4F0E0FAD.6080404@gmx.de> (raw)
In-Reply-To: <4F0AF7F8.8040300@atmel.com>
Hi Nicolas, Alexander,
On 01/09/2012 02:21 PM, Nicolas Ferre wrote:
> On 10/05/2011 09:59 AM, Alexander Stein :
>> In the AT91SAM9263 Manual the HFP part in LCDTIM2 is described as follows:
>> * HFP: Horizontal Front Porch
>> Number of idle LCDDOTCK cycles at the end of the line.
>> Idle period is (HFP+2) LCDDOTCK cycles.
>
> Hi Alexander,
>
> Unfortunately this is not true for all the SoC that embed the
> atmel_lcdfb... So I may need to rework this patch but it is certainly
> not applicable in the current form.
>
> Florian, can you please remove it from your git tree?
Done, I reverted this patch for now.
For the other patches, those that are currently in my tree, I will ask Linus to
pull them really soon. For the others I'll take care of them after the merge
window is closed.
Best regards,
Florian Tobias Schandinat
>
> Thanks,
>
> Best regards,
>
>> It is only a minor issue. I also changed all boards using atmel_lcdfb
>> I found to respect the new calculation.
>>
>> Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
>> ---
>> arch/arm/mach-at91/board-cap9adk.c | 2 +-
>> arch/arm/mach-at91/board-neocore926.c | 2 +-
>> arch/arm/mach-at91/board-sam9261ek.c | 4 ++-
>> arch/arm/mach-at91/board-sam9263ek.c | 2 +-
>> arch/arm/mach-at91/board-sam9m10g45ek.c | 2 +-
>> arch/arm/mach-at91/board-sam9rlek.c | 2 +-
>> drivers/video/atmel_lcdfb.c | 4 ++--
>> 7 files changed, 9 insertions(+), 9 deletions(-)
>>
>> diff --git a/arch/arm/mach-at91/board-cap9adk.c b/arch/arm/mach-at91/board-cap9adk.c
>> index 679b0b7..ae962bf 100644
>> --- a/arch/arm/mach-at91/board-cap9adk.c
>> +++ b/arch/arm/mach-at91/board-cap9adk.c
>> @@ -304,7 +304,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-neocore926.c b/arch/arm/mach-at91/board-neocore926.c
>> index 9bc6ab3..583878e 100644
>> --- a/arch/arm/mach-at91/board-neocore926.c
>> +++ b/arch/arm/mach-at91/board-neocore926.c
>> @@ -235,7 +235,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(5000),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9261ek.c b/arch/arm/mach-at91/board-sam9261ek.c
>> index 5096a0e..8dda83b 100644
>> --- a/arch/arm/mach-at91/board-sam9261ek.c
>> +++ b/arch/arm/mach-at91/board-sam9261ek.c
>> @@ -370,7 +370,7 @@ static struct fb_videomode at91_stn_modes[] = {
>> .xres = 320, .yres = 240,
>> .pixclock = KHZ2PICOS(1440),
>>
>> - .left_margin = 1, .right_margin = 1,
>> + .left_margin = 1, .right_margin = 2,
>> .upper_margin = 0, .lower_margin = 0,
>> .hsync_len = 1, .vsync_len = 1,
>>
>> @@ -431,7 +431,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9263ek.c b/arch/arm/mach-at91/board-sam9263ek.c
>> index ea8f185..e260070 100644
>> --- a/arch/arm/mach-at91/board-sam9263ek.c
>> +++ b/arch/arm/mach-at91/board-sam9263ek.c
>> @@ -258,7 +258,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9m10g45ek.c b/arch/arm/mach-at91/board-sam9m10g45ek.c
>> index ad234cc..5e9a5ca 100644
>> --- a/arch/arm/mach-at91/board-sam9m10g45ek.c
>> +++ b/arch/arm/mach-at91/board-sam9m10g45ek.c
>> @@ -197,7 +197,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 480, .yres = 272,
>> .pixclock = KHZ2PICOS(9000),
>>
>> - .left_margin = 1, .right_margin = 1,
>> + .left_margin = 1, .right_margin = 2,
>> .upper_margin = 40, .lower_margin = 1,
>> .hsync_len = 45, .vsync_len = 1,
>>
>> diff --git a/arch/arm/mach-at91/board-sam9rlek.c b/arch/arm/mach-at91/board-sam9rlek.c
>> index 4f14b54..ad9e5c9 100644
>> --- a/arch/arm/mach-at91/board-sam9rlek.c
>> +++ b/arch/arm/mach-at91/board-sam9rlek.c
>> @@ -154,7 +154,7 @@ static struct fb_videomode at91_tft_vga_modes[] = {
>> .xres = 240, .yres = 320,
>> .pixclock = KHZ2PICOS(4965),
>>
>> - .left_margin = 1, .right_margin = 33,
>> + .left_margin = 1, .right_margin = 34,
>> .upper_margin = 1, .lower_margin = 0,
>> .hsync_len = 5, .vsync_len = 1,
>>
>> diff --git a/drivers/video/atmel_lcdfb.c b/drivers/video/atmel_lcdfb.c
>> index 817ab60..816d528 100644
>> --- a/drivers/video/atmel_lcdfb.c
>> +++ b/drivers/video/atmel_lcdfb.c
>> @@ -393,7 +393,7 @@ static int atmel_lcdfb_check_var(struct fb_var_screeninfo *var,
>> var->lower_margin = min_t(u32, var->lower_margin,
>> ATMEL_LCDC_VFP);
>> var->right_margin = min_t(u32, var->right_margin,
>> - (ATMEL_LCDC_HFP >> ATMEL_LCDC_HFP_OFFSET) + 1);
>> + (ATMEL_LCDC_HFP >> ATMEL_LCDC_HFP_OFFSET) + 2);
>> var->hsync_len = min_t(u32, var->hsync_len,
>> (ATMEL_LCDC_HPW >> ATMEL_LCDC_HPW_OFFSET) + 1);
>> var->left_margin = min_t(u32, var->left_margin,
>> @@ -578,7 +578,7 @@ static int atmel_lcdfb_set_par(struct fb_info *info)
>> lcdc_writel(sinfo, ATMEL_LCDC_TIM1, value);
>>
>> /* Horizontal timing */
>> - value = (info->var.right_margin - 1) << ATMEL_LCDC_HFP_OFFSET;
>> + value = (info->var.right_margin - 2) << ATMEL_LCDC_HFP_OFFSET;
>> value |= (info->var.hsync_len - 1) << ATMEL_LCDC_HPW_OFFSET;
>> value |= (info->var.left_margin - 1);
>> dev_dbg(info->device, " * LCDTIM2 = %08lx\n", value);
>
>
next prev parent reply other threads:[~2012-01-11 22:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-05 7:59 [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches the manual Alexander Stein
2011-10-05 7:59 ` Alexander Stein
2011-10-05 7:59 ` [PATCH 2/2] atmel_lcdfb: Use proper blanking on negative contrast polarity Alexander Stein
2011-10-05 7:59 ` Alexander Stein
2012-01-09 16:17 ` [PATCH 2/2] atmel_lcdfb: Use proper blanking on negative contrast Nicolas Ferre
2012-01-09 16:17 ` [PATCH 2/2] atmel_lcdfb: Use proper blanking on negative contrast polarity Nicolas Ferre
2011-11-12 0:14 ` [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches Florian Tobias Schandinat
2011-11-12 0:14 ` [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches the manual Florian Tobias Schandinat
2012-01-09 14:21 ` [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches Nicolas Ferre
2012-01-09 14:21 ` [PATCH 1/2] atmel_lcdfb: Adjust HFP calculation so it matches the manual Nicolas Ferre
2012-01-11 22:39 ` Florian Tobias Schandinat [this message]
2012-01-11 22:39 ` Florian Tobias Schandinat
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=4F0E0FAD.6080404@gmx.de \
--to=florianschandinat@gmx.de \
--cc=linux-arm-kernel@lists.infradead.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.