On Tue, Dec 19, 2017 at 5:47 AM, Stefan Monnier
<[email protected]> wrote:
> I've compiled the mainline 4.15rc2 kernel with the patch below for the
> bananapi's DTS (ported from the patch that was applied for the
> cubietruck), but when I boot the sun4i-drm module is not loaded.
>
> My kernel config is based on that Debian's, with most things compiled as
> modules:
>
>     % grep -i sun4i .config
>     CONFIG_MACH_SUN4I=y
>     CONFIG_CAN_SUN4I=m
>     CONFIG_SUN4I_EMAC=m
>     CONFIG_MDIO_SUN4I=y
>     CONFIG_KEYBOARD_SUN4I_LRADC=m
>     CONFIG_TOUCHSCREEN_SUN4I=m
>     CONFIG_SERIO_SUN4I_PS2=m
>     CONFIG_SPI_SUN4I=m
>     CONFIG_PINCTRL_SUN4I_A10=y
>     CONFIG_MFD_SUN4I_GPADC=m
>     CONFIG_DRM_SUN4I=m
>     CONFIG_DRM_SUN4I_HDMI=m
>     CONFIG_DRM_SUN4I_HDMI_CEC=y
>     CONFIG_DRM_SUN4I_BACKEND=m
>     CONFIG_SND_SUN4I_CODEC=m
>     CONFIG_SND_SUN4I_I2S=m
>     CONFIG_SND_SUN4I_SPDIF=m
>     CONFIG_DMA_SUN4I=y
>     CONFIG_SUN4I_A10_CCU=y
>     CONFIG_SUN4I_TIMER=y
>     CONFIG_SUN4I_GPADC=m
>     CONFIG_PWM_SUN4I=m
>     CONFIG_PHY_SUN4I_USB=m
>     CONFIG_CRYPTO_DEV_SUN4I_SS=m
>     CONFIG_CRYPTO_DEV_SUN4I_SS_PRNG=y
>     %
>
> I can `modprobe sun4i_drm` but that gives me nothing in `dmesg` and
> while /sys/class/drm exists, it remains sadly empty (my BananaPi is
> connected via HDMI to a screen where I do get a framebuffer console but
> it's presumably still using the simplefb code).
>
> Is there something missing in my kernel config?  Or DTS?  Or do I need
> to do something else/more than loading sun4i0-drm?  Or did I just
> slaughter the wrong goat?

sun4i-drm is the overall DRM driver, but each separate component in
the display pipeline has its own module as well. If you look at your
config above you'll see DRM_SUN4I_HDMI, DRM_SUN4I_BACKEND. However
if you have the modules installed correctly the kernel should be
able to load them automatically. If not and you are loading them
by hand, you need to load the following:

  - sun4i-tcon
  - sun4i-backend
  - sun4i-hdmi
  - sun4i-drm

With sun4i-drm the last to be loaded. (I think it's not required
as it should be able to defer probing.)


ChenYu

>
>
>         Stefan
>
>
> index 88a1c2363c6c..45da8a282288 100644
> --- a/arch/arm/boot/dts/sun7i-a20-bananapi.dts
> +++ b/arch/arm/boot/dts/sun7i-a20-bananapi.dts
> @@ -63,6 +63,17 @@
>                 stdout-path = "serial0:115200n8";
>         };
>
> + hdmi-connector {
> +         compatible = "hdmi-connector";
> +         type = "a";
> +
> +         port {
> +                 hdmi_con_in: endpoint {
> +                         remote-endpoint = <&hdmi_out_con>;
> +                 };
> +         };
> + };
> +
>         leds {
>                 compatible = "gpio-leds";
>                 pinctrl-names = "default";
> @@ -109,6 +120,10 @@
>                 >;
>  };
>
> +&de {
> + status = "okay";
> +};
> +
>  &ehci0 {
>         status = "okay";
>  };
> @@ -130,6 +145,16 @@
>         };
>  };
>
> +&hdmi {
> + status = "okay";
> +};
> +
> +&hdmi_out {
> + hdmi_out_con: endpoint {
> +         remote-endpoint = <&hdmi_con_in>;
> + };
> +};
> +
>  &i2c0 {
>         pinctrl-names = "default";
>         pinctrl-0 = <&i2c0_pins_a>;
>
> --
> You received this message because you are subscribed to the Google Groups 
> "linux-sunxi" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to