OSDN Git Service

counter: Add Renesas RZ/G2L MTU3a counter driver
authorBiju Das <biju.das.jz@bp.renesas.com>
Thu, 30 Mar 2023 11:16:30 +0000 (12:16 +0100)
committerLee Jones <lee@kernel.org>
Wed, 26 Apr 2023 10:40:35 +0000 (11:40 +0100)
commit0be8907359df4c62319f5cb2c6981ff0d9ebf35a
tree2d03f6a7a0213fe1d98cffd7e8d694d2815ca3b5
parent7bb985ac03c4a91d185c006f68c4fadfb71e1cca
counter: Add Renesas RZ/G2L MTU3a counter driver

Add RZ/G2L MTU3a counter driver. This IP supports the following
phase counting modes on MTU1 and MTU2 channels

1) 16-bit phase counting modes on MTU1 and MTU2 channels.
2) 32-bit phase counting mode by cascading MTU1 and MTU2 channels.

This patch adds 3 counter value channels.
count0: 16-bit phase counter value channel on MTU1
count1: 16-bit phase counter value channel on MTU2
count2: 32-bit phase counter value channel by cascading
                MTU1 and MTU2 channels.

The external input phase clock pin for the counter value channels
are as follows:
count0: "MTCLKA-MTCLKB"
count1: "MTCLKA-MTCLKB" or "MTCLKC-MTCLKD"
count2: "MTCLKA-MTCLKB" or "MTCLKC-MTCLKD"

Use the sysfs variable "external_input_phase_clock_select" to select the
external input phase clock pin and "cascade_counts_enable" to enable/
disable cascading of channels.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: William Breathitt Gray <william.gray@linaro.org>
Acked-by: William Breathitt Gray <william.gray@linaro.org>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20230330111632.169434-5-biju.das.jz@bp.renesas.com
drivers/counter/Kconfig
drivers/counter/Makefile
drivers/counter/rz-mtu3-cnt.c [new file with mode: 0644]