mbox series

[GIT,PULL,for,5.11] CCS PLL feature support improvements

Message ID 20201203152421.GF4351@valkosipuli.retiisi.org.uk (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL,for,5.11] CCS PLL feature support improvements | expand

Pull-request

git://linuxtv.org/sailus/media_tree.git tags/ccs-v4-pll-cphy-2-signed

Message

Sakari Ailus Dec. 3, 2020, 3:24 p.m. UTC
Hi Mauro,

This set adds support for additional CCS PLL features which effectively
allows supporting modern devices from mid-range and up.

I have one more set to post to the list, but I guess that may need to wait
for 5.12. Also, feel free to postpone this until 5.12 if needed.

Please pull.


The following changes since commit 63288c829b1a5991d8f8c15cab596108ed206ba6:

  media: pixfmt-compressed.rst: fix 'bullet' formatting (2020-12-03 12:27:34 +0100)

are available in the Git repository at:

  git://linuxtv.org/sailus/media_tree.git tags/ccs-v4-pll-cphy-2-signed

for you to fetch changes up to 13c167095b90f5260774a59798e1c7c05d0d82d7:

  ccs: Add support for obtaining C-PHY configuration from firmware (2020-12-03 15:54:50 +0200)

----------------------------------------------------------------
CCS PLL feature support improvements

----------------------------------------------------------------
Sakari Ailus (38):
      ccs-pll: Don't use div_u64 to divide a 32-bit number
      ccs-pll: Split limits and PLL configuration into front and back parts
      ccs-pll: Use correct VT divisor for calculating VT SYS divisor
      ccs-pll: End search if there are no better values available
      ccs-pll: Remove parallel bus support
      ccs-pll: Differentiate between CSI-2 D-PHY and C-PHY
      ccs-pll: Move the flags field down, away from 8-bit fields
      ccs-pll: Document the structs in the header as well as the function
      ccs-pll: Use the BIT macro
      ccs-pll: Begin calculation from OP system clock frequency
      ccs-pll: Fix condition for pre-PLL divider lower bound
      ccs-pll: Avoid overflow in pre-PLL divisor lower bound search
      ccs-pll: Fix comment on check against maximum PLL multiplier
      ccs-pll: Fix check for PLL multiplier upper bound
      ccs-pll: Use explicit 32-bit unsigned type
      ccs-pll: Add support for lane speed model
      ccs: Add support for lane speed model
      ccs-pll: Add support for decoupled OP domain calculation
      ccs-pll: Add support for extended input PLL clock divider
      ccs-pll: Support two cycles per pixel on OP domain
      ccs-pll: Add support flexible OP PLL pixel clock divider
      ccs-pll: Add sanity checks
      ccs-pll: Add C-PHY support
      ccs-pll: Split off VT subtree calculation
      ccs-pll: Check for derating and overrating, support non-derating sensors
      ccs-pll: Better separate OP and VT sub-tree calculation
      ccs-pll: Print relevant information on PLL tree
      ccs-pll: Rework bounds checks
      ccs-pll: Make VT divisors 16-bit
      ccs-pll: Fix VT post-PLL divisor calculation
      ccs-pll: Separate VT divisor limit calculation from the rest
      ccs-pll: Add trivial dual PLL support
      ccs: Dual PLL support
      ccs-pll: Add support for DDR OP system and pixel clocks
      ccs: Add support for DDR OP SYS and OP PIX clocks
      ccs: Print written register values
      ccs-pll: Print pixel rates
      ccs: Add support for obtaining C-PHY configuration from firmware

 drivers/media/i2c/ccs-pll.c            | 986 +++++++++++++++++++++++----------
 drivers/media/i2c/ccs-pll.h            | 177 ++++--
 drivers/media/i2c/ccs/ccs-core.c       | 161 ++++--
 drivers/media/i2c/ccs/ccs-quirk.c      |   5 +-
 drivers/media/i2c/ccs/ccs-reg-access.c |   4 +
 5 files changed, 974 insertions(+), 359 deletions(-)

Comments

Jenkins Dec. 3, 2020, 3:46 p.m. UTC | #1
From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/project/linux-media/patch/20201203152421.GF4351@valkosipuli.retiisi.org.uk/
Build log: https://builder.linuxtv.org/job/patchwork/79729/
Build time: 00:15:19
Link: https://lore.kernel.org/linux-media/20201203152421.GF4351@valkosipuli.retiisi.org.uk

gpg: Signature made Thu 03 Dec 2020 03:15:42 PM UTC
gpg:                using DSA key 53AC58A5F5948636C04A1BF8141DFA54A1EC8DEA
gpg:                issuer "sakari.ailus@linux.intel.com"
gpg: Can't check signature: No public key

Summary: got 17/38 patches with issues, being 0 at build time, plus one error when buinding PDF document

Error/warnings:

patches/0002-ccs-pll-Split-limits-and-PLL-configuration-into-fron.patch:

   checkpatch.pl:
	$ cat patches/0002-ccs-pll-Split-limits-and-PLL-configuration-into-fron.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:159: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:363: CHECK: Logical continuations should be on the previous line
	-:416: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:417: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:522: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:523: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:524: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:525: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:552: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:553: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:554: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:555: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:556: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:557: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:558: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:559: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0004-ccs-pll-End-search-if-there-are-no-better-values-ava.patch:

   checkpatch.pl:
	$ cat patches/0004-ccs-pll-End-search-if-there-are-no-better-values-ava.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:23: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0005-ccs-pll-Remove-parallel-bus-support.patch:

   checkpatch.pl:
	$ cat patches/0005-ccs-pll-Remove-parallel-bus-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:57: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0007-ccs-pll-Move-the-flags-field-down-away-from-8-bit-fi.patch:

   checkpatch.pl:
	$ cat patches/0007-ccs-pll-Move-the-flags-field-down-away-from-8-bit-fi.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:28: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0012-ccs-pll-Avoid-overflow-in-pre-PLL-divisor-lower-boun.patch:

   checkpatch.pl:
	$ cat patches/0012-ccs-pll-Avoid-overflow-in-pre-PLL-divisor-lower-boun.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:47: CHECK: Lines should not end with a '('

patches/0015-ccs-pll-Use-explicit-32-bit-unsigned-type.patch:

   checkpatch.pl:
	$ cat patches/0015-ccs-pll-Use-explicit-32-bit-unsigned-type.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:23: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:32: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0016-ccs-pll-Add-support-for-lane-speed-model.patch:

   checkpatch.pl:
	$ cat patches/0016-ccs-pll-Add-support-for-lane-speed-model.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:131: CHECK: Prefer kernel type 'u8' over 'uint8_t'
	-:132: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0020-ccs-pll-Support-two-cycles-per-pixel-on-OP-domain.patch:

   checkpatch.pl:
	$ cat patches/0020-ccs-pll-Support-two-cycles-per-pixel-on-OP-domain.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:26: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:61: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:100: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0023-ccs-pll-Add-C-PHY-support.patch:

   checkpatch.pl:
	$ cat patches/0023-ccs-pll-Add-C-PHY-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:33: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:70: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0024-ccs-pll-Split-off-VT-subtree-calculation.patch:

   checkpatch.pl:
	$ cat patches/0024-ccs-pll-Split-off-VT-subtree-calculation.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:222: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:230: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:231: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:232: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0026-ccs-pll-Better-separate-OP-and-VT-sub-tree-calculati.patch:

   checkpatch.pl:
	$ cat patches/0026-ccs-pll-Better-separate-OP-and-VT-sub-tree-calculati.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:70: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0028-ccs-pll-Rework-bounds-checks.patch:

   checkpatch.pl:
	$ cat patches/0028-ccs-pll-Rework-bounds-checks.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:26: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0029-ccs-pll-Make-VT-divisors-16-bit.patch:

   checkpatch.pl:
	$ cat patches/0029-ccs-pll-Make-VT-divisors-16-bit.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:27: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:28: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:29: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:30: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:31: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:60: CHECK: Alignment should match open parenthesis

patches/0030-ccs-pll-Fix-VT-post-PLL-divisor-calculation.patch:

   checkpatch.pl:
	$ cat patches/0030-ccs-pll-Fix-VT-post-PLL-divisor-calculation.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:29: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:34: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0031-ccs-pll-Separate-VT-divisor-limit-calculation-from-t.patch:

   checkpatch.pl:
	$ cat patches/0031-ccs-pll-Separate-VT-divisor-limit-calculation-from-t.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:25: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:26: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0032-ccs-pll-Add-trivial-dual-PLL-support.patch:

   checkpatch.pl:
	$ cat patches/0032-ccs-pll-Add-trivial-dual-PLL-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:65: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:66: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:67: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:101: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:146: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:147: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:148: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:173: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0034-ccs-pll-Add-support-for-DDR-OP-system-and-pixel-cloc.patch:

   checkpatch.pl:
	$ cat patches/0034-ccs-pll-Add-support-for-DDR-OP-system-and-pixel-cloc.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:74: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:111: CHECK: Prefer kernel type 'u32' over 'uint32_t'


Error #512 when building PDF docs
Jenkins Dec. 7, 2020, 12:09 p.m. UTC | #2
From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/project/linux-media/patch/20201203152421.GF4351@valkosipuli.retiisi.org.uk/
Build log: https://builder.linuxtv.org/job/patchwork/80283/
Build time: 00:13:34
Link: https://lore.kernel.org/linux-media/20201203152421.GF4351@valkosipuli.retiisi.org.uk

gpg: Signature made Thu 03 Dec 2020 03:15:42 PM UTC
gpg:                using DSA key 53AC58A5F5948636C04A1BF8141DFA54A1EC8DEA
gpg:                issuer "sakari.ailus@linux.intel.com"
gpg: Can't check signature: No public key

Summary: got 17/38 patches with issues, being 0 at build time

Error/warnings:

patches/0002-ccs-pll-Split-limits-and-PLL-configuration-into-fron.patch:

   checkpatch.pl:
	$ cat patches/0002-ccs-pll-Split-limits-and-PLL-configuration-into-fron.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:159: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:363: CHECK: Logical continuations should be on the previous line
	-:416: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:417: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:522: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:523: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:524: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:525: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:552: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:553: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:554: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:555: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:556: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:557: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:558: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:559: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0004-ccs-pll-End-search-if-there-are-no-better-values-ava.patch:

   checkpatch.pl:
	$ cat patches/0004-ccs-pll-End-search-if-there-are-no-better-values-ava.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:23: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0005-ccs-pll-Remove-parallel-bus-support.patch:

   checkpatch.pl:
	$ cat patches/0005-ccs-pll-Remove-parallel-bus-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:57: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0007-ccs-pll-Move-the-flags-field-down-away-from-8-bit-fi.patch:

   checkpatch.pl:
	$ cat patches/0007-ccs-pll-Move-the-flags-field-down-away-from-8-bit-fi.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:28: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0012-ccs-pll-Avoid-overflow-in-pre-PLL-divisor-lower-boun.patch:

   checkpatch.pl:
	$ cat patches/0012-ccs-pll-Avoid-overflow-in-pre-PLL-divisor-lower-boun.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:47: CHECK: Lines should not end with a '('

patches/0015-ccs-pll-Use-explicit-32-bit-unsigned-type.patch:

   checkpatch.pl:
	$ cat patches/0015-ccs-pll-Use-explicit-32-bit-unsigned-type.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:23: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:32: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0016-ccs-pll-Add-support-for-lane-speed-model.patch:

   checkpatch.pl:
	$ cat patches/0016-ccs-pll-Add-support-for-lane-speed-model.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:131: CHECK: Prefer kernel type 'u8' over 'uint8_t'
	-:132: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0020-ccs-pll-Support-two-cycles-per-pixel-on-OP-domain.patch:

   checkpatch.pl:
	$ cat patches/0020-ccs-pll-Support-two-cycles-per-pixel-on-OP-domain.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:26: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:61: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:100: CHECK: Prefer kernel type 'u8' over 'uint8_t'

patches/0023-ccs-pll-Add-C-PHY-support.patch:

   checkpatch.pl:
	$ cat patches/0023-ccs-pll-Add-C-PHY-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:33: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:70: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0024-ccs-pll-Split-off-VT-subtree-calculation.patch:

   checkpatch.pl:
	$ cat patches/0024-ccs-pll-Split-off-VT-subtree-calculation.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:222: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:230: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:231: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:232: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0026-ccs-pll-Better-separate-OP-and-VT-sub-tree-calculati.patch:

   checkpatch.pl:
	$ cat patches/0026-ccs-pll-Better-separate-OP-and-VT-sub-tree-calculati.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:70: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0028-ccs-pll-Rework-bounds-checks.patch:

   checkpatch.pl:
	$ cat patches/0028-ccs-pll-Rework-bounds-checks.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:26: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0029-ccs-pll-Make-VT-divisors-16-bit.patch:

   checkpatch.pl:
	$ cat patches/0029-ccs-pll-Make-VT-divisors-16-bit.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:27: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:28: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:29: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:30: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:31: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:60: CHECK: Alignment should match open parenthesis

patches/0030-ccs-pll-Fix-VT-post-PLL-divisor-calculation.patch:

   checkpatch.pl:
	$ cat patches/0030-ccs-pll-Fix-VT-post-PLL-divisor-calculation.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:29: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:34: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0031-ccs-pll-Separate-VT-divisor-limit-calculation-from-t.patch:

   checkpatch.pl:
	$ cat patches/0031-ccs-pll-Separate-VT-divisor-limit-calculation-from-t.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:25: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:26: CHECK: Prefer kernel type 'u16' over 'uint16_t'

patches/0032-ccs-pll-Add-trivial-dual-PLL-support.patch:

   checkpatch.pl:
	$ cat patches/0032-ccs-pll-Add-trivial-dual-PLL-support.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:65: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:66: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:67: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:101: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:146: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:147: CHECK: Prefer kernel type 'u16' over 'uint16_t'
	-:148: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:173: CHECK: Prefer kernel type 'u32' over 'uint32_t'

patches/0034-ccs-pll-Add-support-for-DDR-OP-system-and-pixel-cloc.patch:

   checkpatch.pl:
	$ cat patches/0034-ccs-pll-Add-support-for-DDR-OP-system-and-pixel-cloc.patch | formail -c | ./scripts/checkpatch.pl --terse --mailback --no-summary --strict
	-:74: CHECK: Prefer kernel type 'u32' over 'uint32_t'
	-:111: CHECK: Prefer kernel type 'u32' over 'uint32_t'