Ticket #1067 (closed defect: fixed)

Opened 5 years ago

Last modified 5 years ago

artifacts when doing glamo HW rotation

Reported by: olv@… Owned by: dodji@…
Priority: high Milestone:
Component: kernel Version: current svn head
Severity: normal Keywords:
Cc: buglog@…, dodji@… Blocked By:
Blocking: Estimated Completion (week):
HasPatchForReview: PatchReviewResult:
Reproducible:

Description

I got artifacts when hardware rotating (reg 0x1106) the screen with 90 or 270
degrees. It happens in both VGA and QVGA modes, when DCLK ratio is 2:1 or 3:1
(refer to svn rev. 3113).

It works fine in both modes when I raise DCLK ratio to 4:1. However, this gives
lower refresh rate. QVGA looks fine under this refresh rate, but VGA has
serious flicker issue, to my eyes.

Attachments

sany0014.jpg (618.9 KB) - added by olv@… 5 years ago.
artifacts
fb.modes (2.7 KB) - added by olv@… 5 years ago.
fb.modes
regview.txt (8.5 KB) - added by dodji@… 5 years ago.
the dump of glamo register after rotation is done
mine (8.5 KB) - added by olv@… 5 years ago.
my lcd controller reg dump after rotation

Change History

comment:1 Changed 5 years ago by olv@…

  • Status changed from new to assigned

comment:2 Changed 5 years ago by olv@…

BTW, under the same pclk, the refresh rate for qvga is about 4 times the refresh
rate for vga.

comment:3 Changed 5 years ago by olv@…

  • dependson set to 1087

comment:4 Changed 5 years ago by dodji@…

  • Status changed from assigned to new
  • Owner changed from olv@… to dodji@…

comment:5 Changed 5 years ago by dodji@…

Hello,

So, I could reproduce the artifact when rotating the LCD to 90 or 270 degres.

In console mode, what happens is that screen becomes blurry, flickers a lot, and
the glyphs in the console can't be read because they are really small and don't
looks more like chunks of lines rather than glyphs.

This is what happens with a pixel clock timing (as returned by fbset) of 50 000
pico second per pixel. This more or less equals to 65Hz of frame rate for a
screen resolution of 640x480 pixels.

Using fbset -pixclock 100 000 to lower the pixel clock rate (setting it to 100
000 pico seconds per pixel which equals to around 33Hz), I was still seeing the
artifacts.

I have made the test using olv's framebuffer driver patch that is at
http://people.openmoko.org/olv/tmp/smedia-fbset-support-12-05.patch. I added
that patch to the linux-openmoko_2.6.22.5.bb file from monotone.openmoko.org,
branch org.openembedded.dev.

Changed 5 years ago by olv@…

artifacts

Changed 5 years ago by olv@…

fb.modes

comment:6 Changed 5 years ago by dodji@…

I tried your scripts, with your fb.modes as described.
qvga/vga mode setting works in console mode.

But rotating the screen to 90 still leads me to the artifacts I described. All
the screen has the artifacts.

If you need some dumps or traces to understand more what it happening on my
device, please let me know.

comment:7 Changed 5 years ago by olv@…

Could you post the register dump of the LCD controller, after:

(booted)
$ ./vgaqvga vga
$ rotate lcd 90 degrees

Changed 5 years ago by dodji@…

the dump of glamo register after rotation is done

Changed 5 years ago by olv@…

my lcd controller reg dump after rotation

comment:8 Changed 5 years ago by dodji@…

  • blocked set to 1145

comment:9 Changed 5 years ago by dodji@…

Right, I finally got it working. thanks.

comment:10 Changed 5 years ago by dodji@…

  • Status changed from new to closed
  • Resolution set to fixed

Okay to overcome the artifacts, the solution is just to set the right pixclock
depending on the orientation. Basically 50000 picoseconds for 480x640 and 100000
picoseconds for 640x480.

So closing this bug now.

Note: See TracTickets for help on using tickets.