2416245_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2416245_ja-JP

2416245_ja-JP

カーネル6.12を使用したimx93 lvds

imx93カスタムボード上でLVDSディスプレイを動作させようとしています。このエラーで困っています。

imx-lcdif 4ae30000.lcd-controller: probe with driver imx-lcdif failed with error -2

トレースを追加すると、これはドライバのこのライン(関数lcdif_load)から来ます

 lcdif->clk_axi = devm_clk_get(drm->dev, "axi");
if (IS_ERR(lcdif->clk_axi))
return PTR_ERR(lcdif->clk_axi);

つまり、「axi」クロックが見つからないようです。

私はカーネルのデバイスツリー、imx93.dtsiを使用しています。ベースとして、以下の行が含まれます。

 clock-names = "pix", "disp-axi", "disp-apb";
assigned-clocks = <&clk IMX93_CLK_VIDEO_PLL>,
<&clk IMX93_CLK_MEDIA_DISP_PIX>,
<&clk IMX93_CLK_MEDIA_AXI>,
<&clk IMX93_CLK_MEDIA_APB>;

つまり、デバイスツリーとドライバの間には多少の矛盾があります。問題は、時計が正確かどうか、どの時計を使うべきか分からないことです。


6.18のブランチに何があるか確認しようとしましたが、この部分(LCDIFコントローラー)はIMX93.dtsiファイルから完全に消えてしまいました。


何かヒントはありますか?



Re: imx93 lvds with kernel 6.12わかりました。原因が一つ分かりました。これは間違ったドライバを使っていたことです。今はlcdif_v3ドライバなのでクロックの問題はありません。

一方で、この問題はまだあります
IMX93-LDB LDB-Display-Controller: 4ae30000.lcd-controllerとデバイスリンク(0x180)を作成できません

何かヒントはありますか?
Re: imx93 lvds with kernel 6.12

こんにちは、 @julienblanc

お元気でお過ごしのことと思います。


まだ問題は解決していませんか?


よろしくお願いいたします。

サラス。

Re: imx93 lvds with kernel 6.12

残念ながら、いいえ。

同じエラーが繰り返し発生します。私が試した設定方法は以下のとおりです。

backlight_lvds: backlight-lvds {
compatible = "pwm-backlight";
status = "okay";
power-supply = <&display_power_12v>;
brightness-levels = < 0 5
10 15
20 25
30 35
40 45
50 55
60 65
70 75
80 85
90 95
100>;
default-brightness-level = <30>;
pwms = <&pwm_backlight 0 1000000 0>;
};
pwm_backlight: pwm_gpio {
compatible = "pwm-gpio";
#pwm-cells = <3>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_clko4_gpio>;
gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; // gpio controller &gpio4, pin 29
status = "okay";
};
panel {
compatible = "panel-lvds";
width-mm = <224>;
height-mm = <126>;
backlight = <&backlight_lvds>;
status = "okay";
port {
panel_in: endpoint {
remote-endpoint = <&lvds_ldb_out>;
};
};
panel-timing {
clock-frequency = <72400000>;
hactive = <1280>;
vactive = <800>;
hfront-porch = <72>;
hback-porch = <88>;
hsync-len = <20>;
vfront-porch = <15>;
vback-porch = <23>;
vsync-len = <10>;
de-active = <1>;
pixelclk-active = <1>;
};
};

&ldb {
status = "okay";

lvds-channel@0 {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
port@1 {
reg = <1>;
lvds_ldb_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
&ldb_phy {
status = "okay";
};

display_powerはExander上でGPIOを大量に消費します。

display_power_12v: gpio_regulator {
gpio-hog;
gpios = <12 GPIO_ACTIVE_HIGH>;
output-high;
label = "DISPLAY12V";
};

これは主にデバイスツリー内のいくつかの例から引用したものです。何が問題なのか、なぜディスプレイが表示されず、バックライトも表示されないのか分かりません。ソフトウェアGPIOではなくTPMを使うべきだと分かっていますが、それはハードウェアの修正が必要で、今は対応していて、それが問題だとは思いません。

ご支援ありがとうございます。


よろしくお願いいたします。

ジュリアン

Tags (1)
No ratings
Version history
Last update:
Wednesday
Updated by: