dm: video: Add support for the NXP PTN3460 bridge

This chip provides an eDP to LVDS bridge which is useful for SoCs that don't
support LVDS displays (or it would waste scarce pins). There is no setup
required by this chip, other than to adjust power-down and reset pins, and
those are managed by the uclass.

Signed-off-by: Simon Glass <sjg@chromium.org>
master
Simon Glass 9 years ago
parent bcd5dfffe6
commit 048dba0191
  1. 9
      drivers/video/bridge/Kconfig
  2. 1
      drivers/video/bridge/Makefile
  3. 38
      drivers/video/bridge/ptn3460.c

@ -16,3 +16,12 @@ config VIDEO_BRIDGE_PARADE_PS862X
to be connected to an eDP output device such as an SoC that lacks
LVDS capability, or where LVDS requires too many signals to route
on the PCB. Setup parameters are provided in the device tree.
config VIDEO_BRIDGE_NXP_PTN3460
bool "Support NXP PTN3460 DP->LVDS bridge"
depends on VIDEO_BRIDGE
help
The NXP PTN3460 is a DisplayPort-to-LVDS (Low voltage differential
signalling) converter. It enables an LVDS LCD panel to be connected
to an eDP output device such as an SoC that lacks LVDS capability,
or where LVDS requires too many signals to route on the PCB.

@ -6,3 +6,4 @@
obj-$(CONFIG_VIDEO_BRIDGE) += video-bridge-uclass.o
obj-$(CONFIG_VIDEO_BRIDGE_PARADE_PS862X) += ps862x.o
obj-$(CONFIG_VIDEO_BRIDGE_NXP_PTN3460) += ptn3460.o

@ -0,0 +1,38 @@
/*
* Copyright (C) 2015 Google, Inc
* Written by Simon Glass <sjg@chromium.org>
*
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
#include <dm.h>
#include <video_bridge.h>
static int ptn3460_attach(struct udevice *dev)
{
int ret;
debug("%s: %s\n", __func__, dev->name);
ret = video_bridge_set_active(dev, true);
if (ret)
return ret;
return 0;
}
struct video_bridge_ops ptn3460_ops = {
.attach = ptn3460_attach,
};
static const struct udevice_id ptn3460_ids[] = {
{ .compatible = "nxp,ptn3460", },
{ }
};
U_BOOT_DRIVER(parade_ptn3460) = {
.name = "nmp_ptn3460",
.id = UCLASS_VIDEO_BRIDGE,
.of_match = ptn3460_ids,
.ops = &ptn3460_ops,
};
Loading…
Cancel
Save