Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

media: ccs-pll: Document the CCS PLL flags

Document the CCS PLL flags with short comments. The CCS spec has more
information on them while the added documentation helps finding the
relevant information in the CCS spec.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>

authored by

Sakari Ailus and committed by
Hans Verkuil
220ea143 de651469

+25 -4
+1 -1
drivers/media/i2c/ccs-pll.c
··· 129 129 { 130 130 dev_dbg(dev, "PLL flags%s%s%s%s%s%s%s%s%s%s%s\n", 131 131 pll->flags & PLL_FL(OP_PIX_CLOCK_PER_LANE) ? " op-pix-clock-per-lane" : "", 132 - pll->flags & PLL_FL(NO_OP_CLOCKS) ? " no-op-clocks" : "", 133 132 pll->flags & PLL_FL(EVEN_PLL_MULTIPLIER) ? " even-pll-multiplier" : "", 133 + pll->flags & PLL_FL(NO_OP_CLOCKS) ? " no-op-clocks" : "", 134 134 pll->flags & PLL_FL(LANE_SPEED_MODEL) ? " lane-speed" : "", 135 135 pll->flags & PLL_FL(EXT_IP_PLL_DIVIDER) ? 136 136 " ext-ip-pll-divider" : "",
+24 -3
drivers/media/i2c/ccs-pll.h
··· 18 18 #define CCS_PLL_BUS_TYPE_CSI2_DPHY 0x00 19 19 #define CCS_PLL_BUS_TYPE_CSI2_CPHY 0x01 20 20 21 - /* Old SMIA and implementation specific flags */ 22 - /* op pix clock is for all lanes in total normally */ 21 + /* Old SMIA and implementation specific flags. */ 22 + /* OP PIX clock is for all lanes in total normally. */ 23 23 #define CCS_PLL_FLAG_OP_PIX_CLOCK_PER_LANE BIT(0) 24 - #define CCS_PLL_FLAG_NO_OP_CLOCKS BIT(1) 24 + /* If set, the PLL multipliers are required to be even. */ 25 25 #define CCS_PLL_FLAG_EVEN_PLL_MULTIPLIER BIT(3) 26 + 26 27 /* CCS PLL flags */ 28 + 29 + /* The sensor doesn't have OP clocks at all. */ 30 + #define CCS_PLL_FLAG_NO_OP_CLOCKS BIT(1) 31 + /* System speed model if this flag is unset. */ 27 32 #define CCS_PLL_FLAG_LANE_SPEED_MODEL BIT(2) 33 + /* If set, the pre-PLL divider may have odd values, too. */ 28 34 #define CCS_PLL_FLAG_EXT_IP_PLL_DIVIDER BIT(4) 35 + /* 36 + * If set, the OP PIX clock doesn't have to exactly match with data rate, it may 37 + * be higher. See "OP Domain Formulas" in MIPI CCS 1.1 spec. 38 + */ 29 39 #define CCS_PLL_FLAG_FLEXIBLE_OP_PIX_CLK_DIV BIT(5) 40 + /* If set, the VT domain may run faster than the OP domain. */ 30 41 #define CCS_PLL_FLAG_FIFO_DERATING BIT(6) 42 + /* If set, the VT domain may run slower than the OP domain. */ 31 43 #define CCS_PLL_FLAG_FIFO_OVERRATING BIT(7) 44 + /* If set, the PLL tree has two PLLs instead of one. */ 32 45 #define CCS_PLL_FLAG_DUAL_PLL BIT(8) 46 + /* 47 + * If set, the OP SYS clock is a dual data rate clock, transferring two bits per 48 + * cycle instead of one. 49 + */ 33 50 #define CCS_PLL_FLAG_OP_SYS_DDR BIT(9) 51 + /* 52 + * If set, the OP PIX clock is a dual data rate clock, transferring two pixels 53 + * per cycle instead of one. 54 + */ 34 55 #define CCS_PLL_FLAG_OP_PIX_DDR BIT(10) 35 56 36 57 /**