Hi Russell,
Am 18.06.2019 um 06:38 schrieb Russell Mullens russellmullens@gmail.com:
Hey all,
Last year I bought an OMAP5UEVM with the aim of assisting in the development of the Pyra.
Fine! Welcome to the OMAP5 world :)
It's currently hooked up to a HDMI display but I thought that would be enough to get rotation working for all output types. After taking the time to flick through the entirety of the TRM, compiling uboot and the kernel, playing around with the configuration options and reading some of the source code I'm finally up to a stage where I can consider myself lost.
My background is an application developer in Java. I learned a little bit of C when I was younger but the rapid development requirements of business meant Java was better suited. I've normally developed on a Linux machine so know my way around as a user. Looking at the source code has been a big jump. A challenge that I'm hoping I can meet.
Well, the Tiler is amongst the most difficult topics to start with...
I hope that I'm correct that Tiler code is located in /drivers/gpu/drm/omapdrm. What I'm not sure of is where I need to be fixing the 'problem'.
The question is what you consider as "the problem".
We have working Tiler code for the Pyra but it is not mature to be included in kernel.org source trees. It is here:
http://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux/t...
Is it the individual planes that should be rotated? Is it a problem that a viewport is not hooked up to omap_dmm_tiler?
I think my problem is that I don't understand the linux frameworks around either memory allocation or display subsystems (GEM/DRI/DRM/other?) and I don't know where to go looking to start understanding them. I'm not even sure if it could be a DMA issue that I should be looking at.
I have tried doing some searching on the pyra mailing list. https://www.pyra-handheld.com/pipermail/kernel/2016-June/000945.html is a nice discussion but doesn't point me at anything.
https://www.pyra-handheld.com/pipermail/kernel/2018-February/002328.html talks about using tiler for fbdev but that only gets us a 2D context?
I'm currently sitting on the 4.9 branch of the Letux kernel. Is that the correct one I should be aiming for a stable fix of the rotation before moving it to a more recent release?
Try letux kernel 4.19.46 or later where rotation works. At least for the Pyra LCD panel in framebuffer mode (and X11). I also test it from time to time in newer kernels, e.g. letux-5.2-rc4.
Does anyone have resources to text or video that would help me better understand the subsystems that are involved to get TILER working?
Well, the main resource is Matthijs' knowledge. Unfortunately he does not have much time to discuss anything and I am not even sure if he follows these lists.
The toughest question would be is there something that can be pointed to that would help me fix/implement a rotating display so that I could ultimately provide a patch? I don't know if that is going to come in the form of a branch or different repo. I understand if it was easy then this problem probably wouldn't exist.
Hopefully I'm asking in the right places. Pyra because that is the reason I am involved and Letux because that is the repository I am looking at.
Yes, I think we are those who have invested most time into the OMAP5 tiler code.
So welcome again, but we need to define your problem with the existing tiler code first.
BR and thanks, Nikolaus
PS: there is an (almost up-to date) issue list where you can look for topics which need help: http://projects.goldelico.com/p/gta04-kernel/issues/