mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 02:24:24 +02:00
media: qcom: camss: csiphy-3ph: Add CSIPHY 2ph DPHY v2.0.1 init sequence
This is the CSI PHY version found in QCS2290/QCM2290 SoCs. The table is extracted from downstream camera driver. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com> Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Signed-off-by: Bryan O'Donoghue <bod@kernel.org> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
This commit is contained in:
parent
f0fc808a46
commit
ce63fbdf84
|
|
@ -319,6 +319,90 @@ csiphy_lane_regs lane_regs_sm8250[] = {
|
|||
{0x0884, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
};
|
||||
|
||||
/* 14nm 2PH v 2.0.1 2p5Gbps 4 lane DPHY mode */
|
||||
static const struct
|
||||
csiphy_lane_regs lane_regs_qcm2290[] = {
|
||||
{0x0030, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x002c, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0034, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0028, 0x04, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x003c, 0xb8, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x001c, 0x0a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0000, 0xd7, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0004, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0020, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0008, 0x04, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||
{0x000c, 0xff, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x0010, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0038, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0060, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0064, 0x3f, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
|
||||
{0x0730, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x072c, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0734, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0728, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x073c, 0xb8, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x071c, 0x0a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0700, 0xc0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0704, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0720, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0708, 0x04, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||
{0x070c, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0710, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0738, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0760, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0764, 0x3f, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
|
||||
{0x0230, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x022c, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0234, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0228, 0x04, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x023c, 0xb8, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x021c, 0x0a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0200, 0xd7, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0204, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0220, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0208, 0x04, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||
{0x020c, 0xff, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x0210, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0238, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0260, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0264, 0x3f, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
|
||||
{0x0430, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x042c, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0434, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0428, 0x04, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x043c, 0xb8, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x041c, 0x0a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0400, 0xd7, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0404, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0420, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0408, 0x04, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||
{0x040C, 0xff, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x0410, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0438, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0460, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0464, 0x3f, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
|
||||
{0x0630, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x062c, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0634, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0628, 0x04, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x063c, 0xb8, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x061c, 0x0a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0600, 0xd7, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0604, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0620, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0608, 0x04, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||
{0x060C, 0xff, 0x00, CSIPHY_DNP_PARAMS},
|
||||
{0x0610, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0638, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0660, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
{0x0664, 0x3f, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||
};
|
||||
|
||||
/* GEN2 2.1.2 2PH DPHY mode */
|
||||
static const struct
|
||||
csiphy_lane_regs lane_regs_sm8550[] = {
|
||||
|
|
@ -744,6 +828,7 @@ static bool csiphy_is_gen2(u32 version)
|
|||
bool ret = false;
|
||||
|
||||
switch (version) {
|
||||
case CAMSS_2290:
|
||||
case CAMSS_7280:
|
||||
case CAMSS_8250:
|
||||
case CAMSS_8280XP:
|
||||
|
|
@ -829,6 +914,10 @@ static int csiphy_init(struct csiphy_device *csiphy)
|
|||
regs->lane_regs = &lane_regs_sdm845[0];
|
||||
regs->lane_array_size = ARRAY_SIZE(lane_regs_sdm845);
|
||||
break;
|
||||
case CAMSS_2290:
|
||||
regs->lane_regs = &lane_regs_qcm2290[0];
|
||||
regs->lane_array_size = ARRAY_SIZE(lane_regs_qcm2290);
|
||||
break;
|
||||
case CAMSS_7280:
|
||||
case CAMSS_8250:
|
||||
regs->lane_regs = &lane_regs_sm8250[0];
|
||||
|
|
|
|||
|
|
@ -78,6 +78,7 @@ enum pm_domain {
|
|||
|
||||
enum camss_version {
|
||||
CAMSS_660,
|
||||
CAMSS_2290,
|
||||
CAMSS_7280,
|
||||
CAMSS_8x16,
|
||||
CAMSS_8x53,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user