From 2703344f929d7613b87cb10282a34c2a06b052f5 Mon Sep 17 00:00:00 2001 From: Grigoriy Peters Date: Tue, 16 Apr 2024 17:34:44 +0700 Subject: [PATCH] Fix "demanding attitude" of the FPD-Link channel --- kernel/d3/drivers/d3/ub960/ub960.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/kernel/d3/drivers/d3/ub960/ub960.c b/kernel/d3/drivers/d3/ub960/ub960.c index 011de26..7c97998 100644 --- a/kernel/d3/drivers/d3/ub960/ub960.c +++ b/kernel/d3/drivers/d3/ub960/ub960.c @@ -1120,6 +1120,11 @@ static int ub960_port_configure(struct ub960 *self, struct ub960_port *port) struct mutex *lock = &self->indirect_access_lock; unsigned chan_id = port->index; unsigned val; + struct reg_sequence seq[] = { + {UB960_REG_AEQ_CTL, 0x71}, + {UB960_REG_SFILTER_CFG, 0xA9}, + {UB960_REG_LINK_ERROR_CNT, 0x33}, + }; mutex_lock(lock); @@ -1131,6 +1136,8 @@ static int ub960_port_configure(struct ub960 *self, struct ub960_port *port) // Route FrameSync to BC_GPIO0 TRY_MUTEX(lock, err, regmap_update_bits(self->map, UB960_REG_BC_GPIO_CTL0, 0xF << 0, 0xa << 0)); + TRY(err, regmap_multi_reg_write(self->map, seq, ARRAY_SIZE(seq))); + // Enable TX port 0 TRY_MUTEX(lock, err, regmap_write(self->map, UB960_REG_CSI_PORT_SEL, 0x1));