I am attempting to add framebuffer support for the Wandboard Quad using the imx53 code as a base and modifying it as necessary. At this point I can build run/framebuffer with the seL4 kernel and I see no errors when I run the uImage on the wandboard Quad but I also don't get any HDMI ouput.
I resolved the problem of the bootloader not providing the framebuffer information by hardcoding the framebuffer address, width, height, bpp, and pitch in the framebuffer.cc file. I have tracked down almost all of the addresses that needed to be modified but I am stuck on a couple things.
In /os/src/drivers/platform/spec/imx53/ccm.h lines 82 and 83, what are these addresses? I can't find them anywhere in the imx53 device tree. write<Cscmr2>(0xa2b32f0b); write<Cdcdr>(0x14370092);
In: ./os/src/drivers/platform/spec/imx53/iim.h line 27, ./os/src/drivers/framebuffer/spec/imx53/pwm.h line 22, and ./os/src/drivers/platform/spec/imx53/src.h line 30 I am unclear on the significance of the chosen register/bitfields and if they needs to be changed to match the imx6: struct Fuse_bank0_gp6 : Register<0x878, 32> {}; struct Ctrl_reg : Register<0x0, 32> struct Ipu_rst : Bitfield<3, 1> { };
Can anyone help with these?
Also I have added all of my changes in a branch of the genode code: https://github.com/sand7000/genode/commit/bb7ad099bed584d31542ac237f127798aa... In case anyone is interested or is familiar with the imx53/imx6 and has insight into what else I might need to modify.