-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
From Zero to FBTFT - How to configure a new kernel #18
Comments
Hello, I'm also interested in getting the FBTFT module in a plain raspberry pi kernel. Regards |
FBTFT is waiting to be include in the official Pi kernel: raspberrypi/linux#836 |
I am back into looking into the SPI drivers and I guess I will do a "short" patch to fix some low-hanging fruit (especially with regards to latencies) before handling the "bigger" task of adding DMA. But there are some questions around it (especially your requirements/use-cases for long transfers). I fear that this approach is what will more likely get accepted than a full blown rewrite with lots of new infrastructure to make it DMA only with minimal interrupts... (things like dmaengine would need to get extended,...) |
BTW: if you patch the spi-bcm2835 driver to include also |
Actually I have it on my list to look into spi-bcm2835 and DMA.
I have contemplated on that, and the transfers can't be too long if there's a touch controller on the same SPI bus.
I think it's better to change the Device Tree compatible property instead, using an overlay: https://github.com/notro/fbdbi/blob/master/dts/overlays/rpi/hy28aX-overlay.dts#L15 |
There are a few thing: As for latency for touch: either you separate the transfers into multiple sections (if possible) so that you can interleave calls to query touch, but I guess that could lead to display artifacts like tearing and possibly color mismatches on the "border" - unless you align them on a pixel boundary... That trick with device-tree is nice - I did not think of that - but under some circumstances it would be helpfull to load multiple devices. But then, maybe we could go the other way: implement a compatibility in the old driver and ask the foundation to start using spi-bcm2835 in the dt overlays they provide. The big advantage of the spi-bcm2835 is that it ist already upstream, so we get the official review from kernel and have less of a fight when we incorporate it officially... So what are my low-hanging fruit:
Those are easier and a necessity for the cleanup. Then we can address dma for long transfers. Finally I might get back to my vision of a fully dma-pipelined dma-driver that would trigger one irq per spi-message and only for completion.. Your thought? |
@notro: do you have an idea where the foundation hides their dt-overlay sources, so that I can provide a merge request to prepare the move to spi-bcm2835? |
@notro: I restarted on my spi-bcm2835 branch with now some wiki pages that now also include observations (and in the near future logic analyzer screenshots to prove the statements) |
I find all the above quite interesting - yet I am unable to follow you ;) Coming back to my initial request (which, I assume, is valid for everyone else not deeply into the device tree situation either): Could you please post a commandline walkthrough (which I'd be very happy to turn into a documentation for you) on how to compile FBTFT as a module for the current kernels? |
I noticed a very good, yet very (very very) hidden walkthrough within the staging area as it has just been issued by notro - https://github.com/torvalds/linux/blob/master/drivers/staging/fbtft/README . Thank you! |
I am having a lot of trouble seeing clearly through the new fog that is Device Trees.
May I request a rewrite of the whole process of how to get from one of the "naked" Raspberry Pi's kernel branches at https://github.com/raspberrypi/linux to a kernel that is FBTFT enabled, please?
I have read through the documentation you kindly offer, yet the concept of how to get the device tree overlays working with a newly created kernel (I need a few modules that are not included in the custom install, yet would very much like to have my FBTFT display working) somehow eludes me.
If I can be of any help in writing something I'd be glad to accept any scraps you can throw at me and will try to turn them into something that everyone can follow.
Again, thanks for your work!
The text was updated successfully, but these errors were encountered: