On Sat, Aug 08, 2026 at 01:37:51PM +0530, [email protected] wrote:
> From: Sunyun Yang <[email protected]>
> 
> LT9611C(EX/UXD) is an I2C-controlled chip that Receiver signal/dual port
> mipi dsi and output hdmi, differences in hardware features:
> - LT9611C: supports 1-port mipi dsi to hdmi 1.4
> - LT9611EX: supports 2-port mipi dsi to hdmi 1.4
> - LT9611UXD: supports 2-port mipi dsi to hdmi 1.4/2.0
> 
> Signed-off-by: Sunyun Yang <[email protected]>
> Co-developed-by: Mohit Dsor <[email protected]>
> Signed-off-by: Mohit Dsor <[email protected]>
> ---
>  Documentation/ABI/testing/sysfs-lontium-firmware |   10 +
>  drivers/gpu/drm/bridge/Kconfig                   |   18 +
>  drivers/gpu/drm/bridge/Makefile                  |    1 +
>  drivers/gpu/drm/bridge/lontium-lt9611c.c         | 1283 
> ++++++++++++++++++++++
>  4 files changed, 1312 insertions(+)
> 
> diff --git a/Documentation/ABI/testing/sysfs-lontium-firmware 
> b/Documentation/ABI/testing/sysfs-lontium-firmware
> new file mode 100644
> index 000000000000..8700933ba0f0
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-lontium-firmware
> @@ -0,0 +1,10 @@
> +What:                /sys/bus/i2c/drivers/<driver>/.../firmware
> +Date:                July 2026
> +KernelVersion:       7.3
> +Contact:     Mohit Dsor <[email protected]>
> +Description:
> +             Read: Returns the current firmware version loaded on the
> +             Lontium bridge chip in hex format (e.g. "0x0105").
> +
> +             Write: Triggers a firmware upgrade of the chip using the
> +             firmware file loaded via the firmware loader.
> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> index 4a57d49b4c6d..d1597548e578 100644
> --- a/drivers/gpu/drm/bridge/Kconfig
> +++ b/drivers/gpu/drm/bridge/Kconfig
> @@ -177,6 +177,24 @@ config DRM_LONTIUM_LT9611
>         HDMI signals
>         Please say Y if you have such hardware.
>  
> +config DRM_LONTIUM_LT9611C
> +     tristate "Lontium LT9611C DSI/HDMI bridge"
> +     select SND_SOC_HDMI_CODEC if SND_SOC
> +     depends on OF && I2C
> +     select CRC8
> +     select FW_LOADER
> +     select DRM_PANEL_BRIDGE
> +     select DRM_KMS_HELPER
> +     select DRM_MIPI_DSI
> +     select DRM_DISPLAY_HELPER
> +     select DRM_DISPLAY_HDMI_STATE_HELPER
> +     select REGMAP_I2C
> +     help
> +       Driver for the Lontium LT9611C(EX/UXD) DSI to HDMI bridge chip.
> +       It converts single or dual MIPI DSI and I2S signals to HDMI
> +       output. Supports HDMI 1.4 (LT9611C/EX) and HDMI 2.0 (LT9611UXD).
> +       Say Y if you have hardware using this chip.
> +
>  config DRM_LONTIUM_LT9611UXC
>       tristate "Lontium LT9611UXC DSI/HDMI bridge"
>       select SND_SOC_HDMI_CODEC if SND_SOC
> diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
> index 15cc821d85b7..f322f3f89f6b 100644
> --- a/drivers/gpu/drm/bridge/Makefile
> +++ b/drivers/gpu/drm/bridge/Makefile
> @@ -16,6 +16,7 @@ obj-$(CONFIG_DRM_ITE_IT6505) += ite-it6505.o
>  obj-$(CONFIG_DRM_LONTIUM_LT8912B) += lontium-lt8912b.o
>  obj-$(CONFIG_DRM_LONTIUM_LT9211) += lontium-lt9211.o
>  obj-$(CONFIG_DRM_LONTIUM_LT9611) += lontium-lt9611.o
> +obj-$(CONFIG_DRM_LONTIUM_LT9611C) += lontium-lt9611c.o
>  obj-$(CONFIG_DRM_LONTIUM_LT9611UXC) += lontium-lt9611uxc.o
>  obj-$(CONFIG_DRM_LONTIUM_LT8713SX) += lontium-lt8713sx.o
>  obj-$(CONFIG_DRM_LVDS_CODEC) += lvds-codec.o
> diff --git a/drivers/gpu/drm/bridge/lontium-lt9611c.c 
> b/drivers/gpu/drm/bridge/lontium-lt9611c.c
> new file mode 100644
> index 000000000000..e6887f2c89a6
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/lontium-lt9611c.c
> @@ -0,0 +1,1283 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2026 Lontium Semiconductor, Inc.
> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> + */
> +
> +#include <linux/crc8.h>
> +#include <linux/firmware.h>
> +#include <linux/gpio/consumer.h>
> +#include <linux/i2c.h>
> +#include <linux/interrupt.h>
> +#include <linux/media-bus-format.h>
> +#include <linux/module.h>
> +#include <linux/mutex.h>
> +#include <linux/of_graph.h>
> +#include <linux/platform_device.h>
> +#include <linux/regmap.h>
> +#include <linux/regulator/consumer.h>
> +#include <linux/unaligned.h>
> +#include <drm/drm_atomic_helper.h>
> +#include <drm/drm_bridge.h>
> +#include <drm/drm_connector.h>
> +#include <drm/drm_drv.h>
> +#include <drm/drm_edid.h>
> +#include <drm/drm_mipi_dsi.h>
> +#include <drm/drm_modes.h>
> +#include <drm/drm_of.h>
> +#include <drm/drm_print.h>
> +#include <drm/drm_probe_helper.h>
> +#include <drm/display/drm_hdmi_audio_helper.h>
> +#include <drm/display/drm_hdmi_state_helper.h>
> +#include <sound/hdmi-codec.h>
> +
> +#define FW_SIZE (64 * 1024)
> +#define LT_PAGE_SIZE 256
> +#define FW_FILE  "lt9611c_fw.bin"

Lontium/lt9611c_fw.bin

With that fixed:


Reviewed-by: Dmitry Baryshkov <[email protected]>



-- 
With best wishes
Dmitry

Reply via email to