Driver Problem using LCD RGB interface

1 965
I am trying to make a custom base board for the Lemaker Guitar. I want to use the LCD0 interface with a 24-bit Parallel RGB display. To do this I need to mux the necessary pins on the S500 using the device tree. I checked out the DTS used for the bubblegum board (the base level device tree for the Guitar) which specifies the pinctrl entry for the relevant pins like so:

    rgb_state_default: rgb_default {
                rgb_mux {
                        actions,groups = "mfp0_25_23","mfp1_16_14", "mfp1_22_21", "mfp1_13_12", "mfp1_11_10", "mfp1_6_5", "mfp2_30_29", "mfp2_28_27";
                        actions,function = "lcd0";

I crossreferenced these groups with the actual pins on the S500 and found that these MFP groups contain all LCD0 pins _except_ for GPIO C3 which is used for the LCD0_D2 pin. I want to use the full 24-bits of LCD data pins with my LCD screen and I can't do that without LCD0_D2. The MFP group for GPIO_C3 is "dsi_dummy" and when you check out the possible funcs for that group in [the source code](https://github.com/LeMaker/linux ... ctrl_data-atm7059.c) you will see in the owl_dsi_dummy_funcs array that only "OWL_MUX_DSI" is available when I expected to see "OWL_MUX_DSI" and "OWL_MUX_LCD0". Is there any reason that LCD0 was omitted from GPIO C3? If no, how can I add it back?

While you are looking in the area I found that GPIO B3 should be able to be used for PWM4 and PWM0 but in the source code linked above you can see in the owl_mfp1_31_29_ks_in0_funcs array that only PWM0 is specified (albeit specified three times). I would like to see PWM4 in its funcs array as well.

I could try adding the requested functionality myself, but if something went wrong then I wouldn't really know how to fix it. The rev b. addon board doesn't expose the entire LCD interface so the only way I could test it would be to finish my custom base board for the lemaker guitar, pray it is perfectly designed, then test the new kernel against it. If something goes wrong then there is little I can do to deteremine whether it was because my hardware design is faulty or my device tree/driver changes are faulty.

You need to check the compatibility of the LCD with the system you are using. I think the versions of both of them needs to be matched for a smooth connection. From the details you have mentioned, it looks like both of them are not matching.        paris muse private tours       

You have to log in before you can reply Login | Sign Up

Points Rules