Перехожу с ядра 3.10.17 на 4.1.15 для IMX6S-oem
Практически всё заработало со старым dts, кроме эрана
Экран каким-то чудом заработал, но у клока частота вместо 25мгц 27мгц,
и размер буфера нужен 640х480
# cat /sys/class/graphics/fb0/virtual_size
800,480
Провозился весь вечер с настройкой таймингов lcd, но ума так и не дал.
В ядре 3.10.17 я указывал на структуру, в которую я прописывал тайминги своего экрана (MI0570KT1)
mxcfb1: fb@0 {
compatible = "fsl,mxc_sdc_fb";
disp_dev = "lcd";
interface_pix_fmt = "RGB666";
mode_str ="MI0570KT1";
default_bpp = <18>;
int_clk = <0>;
late_init = <0>;
status = "okay";
};
lcd@0 {
compatible = "fsl,lcd";
ipu_id = <0>;
disp_id = <0>;
default_ifmt = "RGB666";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ipu1_lcd_oem>;
status = "okay";
};
В ядре 4.1.15 я так понял, этот метод упразднен, теперь тайминги указываются в DTS
http://elixir.free-electrons.com/linux/v4.1.15/source/Documentation/devicetree/bindings/video/display-timing.txt
смысл структуры ниже из dts starterkit я так и не уловил,
.................................
.................................
&ldb {
status = "okay";
lvds-channel@0 {
fsl,data-mapping = "spwg";
fsl,data-width = <24>;
primary;
status = "okay";
display-timings {
native-mode = <&timing0>;
timing0: hsd100pxn1 {
clock-frequency = <33000000>;
hactive = <800>;
vactive = <480>;
hback-porch = <220>;
hfront-porch = <40>;
vback-porch = <21>;
vfront-porch = <7>;
hsync-len = <60>;
vsync-len = <10>;
};
};
};
помогите пожалуйста это дело мне прикрутить к шине.