Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-04-28 Thread Anatolij Gustschin
On Thu, 26 Apr 2012 23:50:57 +0200
Pali Rohár pali.ro...@gmail.com wrote:

 On Thursday 26 April 2012 23:45:52 Anatolij Gustschin wrote:
  Hi,
  
  On Tue, 24 Jan 2012 15:28:02 +0100
  
  Pali Rohár pali.ro...@gmail.com wrote:
* Use correct buffer size, do not damage screen output
  
  It seems that I can reproduce similar problem on the
  beagleboard now. Will try to debug and find a solution for it.
 
 Ok, thanks! I played a lot of with u-boot on nokia n900, but I 
 did not find reason...

Probably the issue is caused by cached frame buffer data. This [1]
patch is supposed to fix it. Could you please test it on N900?
Additional cache flushing also needs to be added to your extensions
for cfb_console to fix the menu output.

Thanks,
Anatolij

[1] http://patchwork.ozlabs.org/patch/155662/
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-04-28 Thread Pali Rohár
On Saturday 28 April 2012 17:11:51 Anatolij Gustschin wrote:
 On Thu, 26 Apr 2012 23:50:57 +0200

 Pali Rohár pali.ro...@gmail.com wrote:
  On Thursday 26 April 2012 23:45:52 Anatolij Gustschin wrote:
   Hi,
  
   On Tue, 24 Jan 2012 15:28:02 +0100
  
   Pali Rohár pali.ro...@gmail.com wrote:
 * Use correct buffer size, do not damage screen output
  
   It seems that I can reproduce similar problem on the
   beagleboard now. Will try to debug and find a solution for
   it.
 
  Ok, thanks! I played a lot of with u-boot on nokia n900, but
  I
  did not find reason...

 Probably the issue is caused by cached frame buffer data. This
 [1] patch is supposed to fix it. Could you please test it on
 N900? Additional cache flushing also needs to be added to your
 extensions for cfb_console to fix the menu output.

 Thanks,
 Anatolij

 [1] http://patchwork.ozlabs.org/patch/155662/

Hi, your patch fixing this problem. Thanks!

--
Pali Rohár
pali.ro...@gmail.com

signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-04-26 Thread Anatolij Gustschin
Hi,

On Tue, 24 Jan 2012 15:28:02 +0100
Pali Rohár pali.ro...@gmail.com wrote:

  * Use correct buffer size, do not damage screen output

It seems that I can reproduce similar problem on the beagleboard now.
Will try to debug and find a solution for it.

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-04-26 Thread Pali Rohár
On Thursday 26 April 2012 23:45:52 Anatolij Gustschin wrote:
 Hi,

 On Tue, 24 Jan 2012 15:28:02 +0100

 Pali Rohár pali.ro...@gmail.com wrote:
   * Use correct buffer size, do not damage screen output

 It seems that I can reproduce similar problem on the
 beagleboard now. Will try to debug and find a solution for it.

 Thanks,
 Anatolij

Ok, thanks! I played a lot of with u-boot on nokia n900, but I
did not find reason...

--
Pali Rohár
pali.ro...@gmail.com

signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-23 Thread Anatolij Gustschin
Hi,

On Thu, 22 Mar 2012 01:58:02 -0700 (PDT)
Pali Rohár pali.ro...@gmail.com wrote:
...
 Do you think that mapped address of framebuffer is only problem?

I wrote that it could be a problem. I do not know much about
your system and U-Boot port and do not know exactly what you
meant by damaged screen output and when exactly it happens,
so I can only speculate.

 Why 
 then framebuffer output on n900 screen working without problem if I 
 do NOT read framebuffer memory? Problem with garbaged display output 
 seems happends only for read operations (console_scrollup, negation 
 of pixels for cursor,...) but not for write-only operations (clear 
 console, clear line, set black/white cursror, render fonsts...). I 
 think if there is problem with address space, then garbaged screen 
 should be also for framebuffer write operations...

This is another issue then. Can you test read/write access to
the frame buffer area by available memory commands cp, md,
mm, cmp? Can you also verify that reading from frame buffer
area by using these memory commands is not working?

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-22 Thread Pali Rohár
On Wednesday 21 March 2012 23:58:10 Anatolij Gustschin wrote:
 On Wed, 21 Mar 2012 19:50:34 +0100
 Pali Rohár pali.ro...@gmail.com wrote:
 ...

  Hi, can you show me how to fix this? How to correctly use
  framebuffer?

 Hi,

 Not really. This would be a new project to rewrite U-Boot driver
 for OMAP3 DSS. There is a driver under drivers/video/omap3_dss.c,
 but it doesn't do what we need here. You can try to set
 gdev.frameAdrs to point to another address range in RAM which is
 not used by U-Boot. Then get OMAP3430 TRM and read DSS
 documentation how to configure the display controller so that is
 displays frame buffer data from this address range. Currently I do
 not have time nor resources to rewrite the existing omap3_dss
 driver.

 Thanks,
 Anatolij

Do you think that mapped address of framebuffer is only problem? Why
then framebuffer output on n900 screen working without problem if I
do NOT read framebuffer memory? Problem with garbaged display output
seems happends only for read operations (console_scrollup, negation
of pixels for cursor,...) but not for write-only operations (clear
console, clear line, set black/white cursror, render fonsts...). I
think if there is problem with address space, then garbaged screen
should be also for framebuffer write operations...

--
Pali Rohár
pali.ro...@gmail.com

signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Anatolij Gustschin
Hi,

On Tue, 24 Jan 2012 15:28:02 +0100
Pali Rohár pali.ro...@gmail.com wrote:

  * Use correct buffer size, do not damage screen output
 
 Signed-off-by: Pali Rohár pali.ro...@gmail.com
 ---
 Changes since original version:
- Fixed commit message
 
  drivers/video/cfb_console.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
 index 904caf7..9092399 100644
 --- a/drivers/video/cfb_console.c
 +++ b/drivers/video/cfb_console.c
 @@ -701,7 +701,7 @@ static void console_scrollup(void)
   );
  #else
   memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
 - CONSOLE_SCROLL_SIZE  2);
 + CONSOLE_SCROLL_SIZE);

NAK. This change is wrong. CONSOLE_SCROLL_SIZE is the size of the
visible frame buffer - size of one row in bytes. We are using memcpyl()
here, so the division by 4 (size  2) is correct. With your change
we end up copying 4 times more data then needed.

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Marek Vasut
Dear Anatolij Gustschin,

 Hi,
 
 On Tue, 24 Jan 2012 15:28:02 +0100
 
 Pali Rohár pali.ro...@gmail.com wrote:
   * Use correct buffer size, do not damage screen output
  
  Signed-off-by: Pali Rohár pali.ro...@gmail.com
  ---
  
  Changes since original version:
 - Fixed commit message
   
   drivers/video/cfb_console.c |2 +-
   1 files changed, 1 insertions(+), 1 deletions(-)
  
  diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
  index 904caf7..9092399 100644
  --- a/drivers/video/cfb_console.c
  +++ b/drivers/video/cfb_console.c
  @@ -701,7 +701,7 @@ static void console_scrollup(void)
  
  );
   
   #else
   
  memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
  
  -   CONSOLE_SCROLL_SIZE  2);
  +   CONSOLE_SCROLL_SIZE);
 
 NAK. This change is wrong. CONSOLE_SCROLL_SIZE is the size of the
 visible frame buffer - size of one row in bytes. We are using memcpyl()
 here, so the division by 4 (size  2) is correct. With your change
 we end up copying 4 times more data then needed.

What kind of a problem are we fixing here? And what are the symptoms of it?

 
 Thanks,
 Anatolij


Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Anatolij Gustschin
Hi Marek,

On Wed, 21 Mar 2012 11:20:38 +0100
Marek Vasut ma...@denx.de wrote:

 Dear Anatolij Gustschin,
 
  Hi,
  
  On Tue, 24 Jan 2012 15:28:02 +0100
  
  Pali Rohár pali.ro...@gmail.com wrote:
* Use correct buffer size, do not damage screen output
   
   Signed-off-by: Pali Rohár pali.ro...@gmail.com
   ---
   
   Changes since original version:
  - Fixed commit message

drivers/video/cfb_console.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
   
   diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
   index 904caf7..9092399 100644
   --- a/drivers/video/cfb_console.c
   +++ b/drivers/video/cfb_console.c
   @@ -701,7 +701,7 @@ static void console_scrollup(void)
   
 );

#else

 memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
   
   - CONSOLE_SCROLL_SIZE  2);
   + CONSOLE_SCROLL_SIZE);
  
  NAK. This change is wrong. CONSOLE_SCROLL_SIZE is the size of the
  visible frame buffer - size of one row in bytes. We are using memcpyl()
  here, so the division by 4 (size  2) is correct. With your change
  we end up copying 4 times more data then needed.
 
 What kind of a problem are we fixing here? And what are the symptoms of it?

Actually I'm not aware of any problem in current console_scrollup().
At least on two test setups with different framebuffer drivers and
in one setup with HW accelerated scrolling I didn't see any problems
with current code.

The description in the commit log of this patch:
Use correct buffer size, do not damage screen output
doesn't say much about the problem. If the GraphicDevice structure
returned by video_hw_init() is setup correctly, the scrolling should be
working fine. From the other patch [1] I can see that the structure
is setup as follows:

/* fill in Graphic Device */
gdev.frameAdrs = 0x8f9c;
gdev.winSizeX = 800;
gdev.winSizeY = 480;
gdev.gdfBytesPP = 2;
gdev.gdfIndex = GDF_16BIT_565RGB;
memset((void *)gdev.frameAdrs, 0, 0xbb800);
return (void *) gdev;

Most likely using 0x8f9c as framebuffer address is the first _big_
problem. The framebuffer address range is not allocated properly and
could be used by malloc area. The board has 256 MB of RAM starting at
0x8000, if U-Boot relocated itself to the upper RAM, the problems
should be expected.

AFAIK the N900 port doesn't use a framebuffer driver but probably uses
pre-initialized display controller configuration. This should be fixed
first.

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Anatolij Gustschin
On Wed, 21 Mar 2012 12:32:16 +0100
Anatolij Gustschin ag...@denx.de wrote:
...
 doesn't say much about the problem. If the GraphicDevice structure
 returned by video_hw_init() is setup correctly, the scrolling should be
 working fine. From the other patch [1] I can see that the structure

I forgot to include a link [1] to the mentioned patch, sorry.
Here it is:

[1] http://patchwork.ozlabs.org/patch/137567/

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Pali Rohár
On Wednesday 21 March 2012 12:32:16 Anatolij Gustschin wrote:
 Hi Marek,

 On Wed, 21 Mar 2012 11:20:38 +0100

 Marek Vasut ma...@denx.de wrote:
  Dear Anatolij Gustschin,
 
   Hi,
  
   On Tue, 24 Jan 2012 15:28:02 +0100
  
   Pali Rohár pali.ro...@gmail.com wrote:
 * Use correct buffer size, do not damage screen output
   
Signed-off-by: Pali Rohár pali.ro...@gmail.com
---
   
Changes since original version:
   - Fixed commit message
   
 drivers/video/cfb_console.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
   
diff --git a/drivers/video/cfb_console.c
b/drivers/video/cfb_console.c index 904caf7..9092399 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -701,7 +701,7 @@ static void console_scrollup(void)
   
);
   
 #else
   
memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
   
-   CONSOLE_SCROLL_SIZE  2);
+   CONSOLE_SCROLL_SIZE);
  
   NAK. This change is wrong. CONSOLE_SCROLL_SIZE is the size of
   the
   visible frame buffer - size of one row in bytes. We are using
   memcpyl() here, so the division by 4 (size  2) is correct.
   With your change we end up copying 4 times more data then
   needed.
 
  What kind of a problem are we fixing here? And what are the
  symptoms of it?
 Actually I'm not aware of any problem in current
 console_scrollup(). At least on two test setups with different
 framebuffer drivers and in one setup with HW accelerated scrolling
 I didn't see any problems with current code.

 The description in the commit log of this patch:
 Use correct buffer size, do not damage screen output
 doesn't say much about the problem. If the GraphicDevice structure
 returned by video_hw_init() is setup correctly, the scrolling
 should be working fine. From the other patch [1] I can see that
 the structure is setup as follows:

 /* fill in Graphic Device */
 gdev.frameAdrs = 0x8f9c;
 gdev.winSizeX = 800;
 gdev.winSizeY = 480;
 gdev.gdfBytesPP = 2;
 gdev.gdfIndex = GDF_16BIT_565RGB;
 memset((void *)gdev.frameAdrs, 0, 0xbb800);
 return (void *) gdev;

 Most likely using 0x8f9c as framebuffer address is the first
 _big_ problem. The framebuffer address range is not allocated
 properly and could be used by malloc area. The board has 256 MB of
 RAM starting at 0x8000, if U-Boot relocated itself to the
 upper RAM, the problems should be expected.

 AFAIK the N900 port doesn't use a framebuffer driver but probably
 uses pre-initialized display controller configuration. This should
 be fixed first.

 Thanks,
 Anatolij

Hi, can you show me how to fix this? How to correctly use
framebuffer?

--
Pali Rohár
pali.ro...@gmail.com

signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-03-21 Thread Anatolij Gustschin
On Wed, 21 Mar 2012 19:50:34 +0100
Pali Rohár pali.ro...@gmail.com wrote:
...
 Hi, can you show me how to fix this? How to correctly use 
 framebuffer?

Hi,

Not really. This would be a new project to rewrite U-Boot driver for
OMAP3 DSS. There is a driver under drivers/video/omap3_dss.c,
but it doesn't do what we need here. You can try to set gdev.frameAdrs
to point to another address range in RAM which is not used by U-Boot.
Then get OMAP3430 TRM and read DSS documentation how to configure the
display controller so that is displays frame buffer data from this
address range. Currently I do not have time nor resources to rewrite
the existing omap3_dss driver.

Thanks,
Anatolij
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-01-25 Thread Marek Vasut
  * Use correct buffer size, do not damage screen output

What are the symptoms, how does this fix the issue?

Ccing Anatolij, I think he's the right one for this patch. Again, keep the 
correct CC!!!

 
 Signed-off-by: Pali Rohár pali.ro...@gmail.com
 ---
 Changes since original version:
- Fixed commit message
 
  drivers/video/cfb_console.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
 index 904caf7..9092399 100644
 --- a/drivers/video/cfb_console.c
 +++ b/drivers/video/cfb_console.c
 @@ -701,7 +701,7 @@ static void console_scrollup(void)
   );
  #else
   memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
 - CONSOLE_SCROLL_SIZE  2);
 + CONSOLE_SCROLL_SIZE);
  #endif
 
   /* clear the last one */
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-01-25 Thread Pali Rohár
On Wednesday 25 January 2012 19:06:51 Marek Vasut wrote:
   * Use correct buffer size, do not damage screen output

 What are the symptoms, how does this fix the issue?

 Ccing Anatolij, I think he's the right one for this patch. Again, keep the
 correct CC!!!


Output on n900 screen is damged after function console_scrollup is called.

--
Pali Rohár
pali.ro...@gmail.com

signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 05/14] cfb_console: Fix function console_scrollup

2012-01-24 Thread Pali Rohár
 * Use correct buffer size, do not damage screen output

Signed-off-by: Pali Rohár pali.ro...@gmail.com
---
Changes since original version:
   - Fixed commit message

 drivers/video/cfb_console.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 904caf7..9092399 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -701,7 +701,7 @@ static void console_scrollup(void)
);
 #else
memcpyl(CONSOLE_ROW_FIRST, CONSOLE_ROW_SECOND,
-   CONSOLE_SCROLL_SIZE  2);
+   CONSOLE_SCROLL_SIZE);
 #endif
 
/* clear the last one */
-- 
1.7.5.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot