481 lines
12 KiB
Plaintext
481 lines
12 KiB
Plaintext
# Kconfig.k64 - K64_FTM PWM configuration options
|
|
#
|
|
#
|
|
# Copyright (c) 2016 Intel Corporation
|
|
# Copyright (c) 2016 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
################################################
|
|
# K64 Flex Timer Module (FTM)
|
|
################################################
|
|
|
|
menuconfig PWM_K64_FTM
|
|
bool "PWM with Freescale K64 Flex Timer Module (FTM)"
|
|
depends on PWM && SOC_MK64F12
|
|
default n
|
|
help
|
|
Enable Pulse Width Modulation driver for Freescale
|
|
K64 Flex Timer Module (FTM).
|
|
|
|
if PWM_K64_FTM
|
|
|
|
config SYS_LOG_PWM_K64_FTM_LEVEL
|
|
int
|
|
prompt "Sets log level for pwm_ftm driver"
|
|
depends on PWM_K64_FTM
|
|
default 0
|
|
help
|
|
Sets log level for pwm_ftm driver.
|
|
|
|
Levels are:
|
|
|
|
- 0 OFF, do not write
|
|
|
|
- 1 ERROR, only write SYS_LOG_ERR
|
|
|
|
- 2 WARNING, write SYS_LOG_WRN in addition to previous level
|
|
|
|
- 3 INFO, write SYS_LOG_INF in addition to previous levels
|
|
|
|
- 4 DEBUG, write SYS_LOG_DBG in addition to previous levels
|
|
|
|
#### FTM0 #####
|
|
|
|
config PWM_K64_FTM_0
|
|
bool "K64 FTM PWM Module 0"
|
|
depends on PWM_K64_FTM
|
|
default n
|
|
help
|
|
Enable config PWM options for FTM0 source module.
|
|
|
|
config PWM_K64_FTM_0_DEV_NAME
|
|
string "K64 FTM PWM Module 0 Device Name"
|
|
depends on PWM_K64_FTM_0
|
|
default "PWM_0"
|
|
help
|
|
Specify the device name for the FTM0 source module.
|
|
|
|
config PWM_K64_FTM_0_PRESCALE
|
|
int "K64 FTM0 prescale value"
|
|
default 1
|
|
depends on PWM_K64_FTM_0
|
|
help
|
|
Specify the FTM timer prescale value. The valid values are
|
|
1, 2, 4, 8, 16, 32, 64, or 128.
|
|
|
|
config PWM_K64_FTM_0_PERIOD
|
|
int "K64 FTM0 period value"
|
|
default 65535
|
|
depends on PWM_K64_FTM_0
|
|
help
|
|
Specify the FTM0 PWM period in ticks
|
|
|
|
menu "K64 FTM0 Clock Source"
|
|
depends on PWM_K64_FTM_0
|
|
|
|
choice PWM_K64_FTM_0_CLOCK_SOURCE_CHOICE
|
|
prompt "Choose the K64 FTM0 clock source"
|
|
default PWM_K64_FTM_0_CLOCK_SOURCE_SYSTEM
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE_NONE
|
|
bool "No clock selected (FTM counter disable)"
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE_SYSTEM
|
|
bool "System clock"
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE_FIXED
|
|
bool "Fixed Frequency Clock"
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE_EXTERNAL
|
|
bool "External Clock"
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE_QUAD
|
|
bool "Quadrature Decoder"
|
|
|
|
endchoice
|
|
|
|
endmenu
|
|
|
|
config PWM_K64_FTM_0_CLOCK_SOURCE
|
|
int
|
|
# Omit prompt to signify "hidden" option
|
|
depends on PWM_K64_FTM_0
|
|
default 0 if PWM_K64_FTM_0_CLOCK_SOURCE_NONE
|
|
default 1 if PWM_K64_FTM_0_CLOCK_SOURCE_SYSTEM
|
|
default 2 if PWM_K64_FTM_0_CLOCK_SOURCE_FIXED
|
|
default 3 if PWM_K64_FTM_0_CLOCK_SOURCE_EXTERNAL
|
|
default 4 if PWM_K64_FTM_0_CLOCK_SOURCE_QUAD
|
|
help
|
|
Specify K64 FTM0 clock source
|
|
|
|
config PWM_K64_FTM_0_PHASE_ENABLE_0
|
|
bool "FTM0 Enable Phase for channel 0"
|
|
depends on PWM_K64_FTM_0
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM0 channel 0. This configures
|
|
channels 0 and 1 to be in combine mode therefore
|
|
channel 1 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_0_PHASE_ENABLE_2
|
|
bool "FTM0 Enable Phase for channel 2"
|
|
depends on PWM_K64_FTM_0
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM0 channel 2. This configures
|
|
channels 2 and 3 to be in combine mode therefore
|
|
channel 3 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_0_PHASE_ENABLE_4
|
|
bool "FTM0 Enable Phase for channel 4"
|
|
depends on PWM_K64_FTM_0
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM0 channel 4. This configures
|
|
channels 4 and 5 to be in combine mode therefore
|
|
channel 5 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_0_PHASE_ENABLE_6
|
|
bool "FTM0 Enable Phase for channel 6"
|
|
depends on PWM_K64_FTM_0
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM0 channel 6. This configures
|
|
channels 6 and 7 to be in combine mode therefore
|
|
channel 7 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
#### FTM1 #####
|
|
|
|
config PWM_K64_FTM_1
|
|
bool "K64 FTM PWM Module 1"
|
|
depends on PWM_K64_FTM
|
|
default n
|
|
help
|
|
Enable config PWM options for FTM1 source module.
|
|
|
|
config PWM_K64_FTM_1_DEV_NAME
|
|
string "K64 FTM PWM Module 1 Device Name"
|
|
depends on PWM_K64_FTM_1
|
|
default "PWM_1"
|
|
help
|
|
Specify the device name for the FTM1 source module.
|
|
|
|
config PWM_K64_FTM_1_PRESCALE
|
|
int "FTM1 prescale value"
|
|
default 1
|
|
depends on PWM_K64_FTM_1
|
|
help
|
|
Specify the FTM1 timer prescale value. The valid values are
|
|
1, 2, 4, 8, 16, 32, 64, or 128
|
|
|
|
config PWM_K64_FTM_1_PERIOD
|
|
int "FTM1 period value"
|
|
default 65535
|
|
depends on PWM_K64_FTM_1
|
|
help
|
|
Specify the FTM1 PWM period in ticks
|
|
|
|
menu "K64 FTM1 Clock Source"
|
|
depends on PWM_K64_FTM_1
|
|
|
|
choice PWM_K64_FTM_1_CLOCK_SOURCE_CHOICE
|
|
prompt "Choose the FTM1 clock source"
|
|
default PWM_K64_FTM_1_CLOCK_SOURCE_SYSTEM
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE_NONE
|
|
bool "No clock selected (FTM counter disable)"
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE_SYSTEM
|
|
bool "System clock"
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE_FIXED
|
|
bool "Fixed Frequency Clock"
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE_EXTERNAL
|
|
bool "External Clock"
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE_QUAD
|
|
bool "Quadrature Decoder"
|
|
|
|
endchoice
|
|
|
|
endmenu
|
|
|
|
config PWM_K64_FTM_1_CLOCK_SOURCE
|
|
int
|
|
# Omit prompt to signify "hidden" option
|
|
depends on PWM_K64_FTM_1
|
|
default 0 if PWM_K64_FTM_1_CLOCK_SOURCE_NONE
|
|
default 1 if PWM_K64_FTM_1_CLOCK_SOURCE_SYSTEM
|
|
default 2 if PWM_K64_FTM_1_CLOCK_SOURCE_FIXED
|
|
default 3 if PWM_K64_FTM_1_CLOCK_SOURCE_EXTERNAL
|
|
default 4 if PWM_K64_FTM_1_CLOCK_SOURCE_QUAD
|
|
help
|
|
Specify K64 FTM1 clock source
|
|
|
|
config PWM_K64_FTM_1_PHASE_ENABLE_0
|
|
bool "FTM1 Enable Phase for channel 0"
|
|
depends on PWM_K64_FTM_1
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM1 channel 0. This configures
|
|
channels 0 and 1 to be in combine mode therefore
|
|
channel 1 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_FTM_1_PHASE_ENABLE_2
|
|
bool "FTM1 Enable Phase for channel 2"
|
|
depends on PWM_K64_FTM_1
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM1 channel 2. This configures
|
|
channels 2 and 3 to be in combine mode therefore
|
|
channel 3 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_FTM_1_PHASE_ENABLE_4
|
|
bool "FTM1 Enable Phase for channel 4"
|
|
depends on PWM_K64_FTM_1
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM1 channel 4. This configures
|
|
channels 4 and 5 to be in combine mode therefore
|
|
channel 5 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_FTM_1_PHASE_ENABLE_6
|
|
bool "FTM1 Enable Phase for channel 6"
|
|
depends on PWM_K64_FTM_1
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM1 channel 6. This configures
|
|
channels 6 and 7 to be in combine mode therefore
|
|
channel 7 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
#### FTM2 #####
|
|
|
|
config PWM_K64_FTM_2
|
|
bool "K64 FTM PWM Module 2"
|
|
depends on PWM_K64_FTM
|
|
default n
|
|
help
|
|
Enable config PWM options for FTM2 source module.
|
|
|
|
config PWM_K64_FTM_2_DEV_NAME
|
|
string "K64 FTM PWM Module 2 Device Name"
|
|
depends on PWM_K64_FTM_2
|
|
default "PWM_2"
|
|
help
|
|
Specify the device name for the FTM2 source module.
|
|
|
|
config PWM_K64_FTM_2_PRESCALE
|
|
int "FTM2 prescale value"
|
|
default 1
|
|
depends on PWM_K64_FTM_2
|
|
help
|
|
Specify the FTM2 timer prescale value. The valid values are
|
|
1, 2, 4, 8, 16, 32, 64, or 128
|
|
|
|
config PWM_K64_FTM_2_PERIOD
|
|
int "FTM2 period value"
|
|
default 65535
|
|
depends on PWM_K64_FTM_2
|
|
help
|
|
Specify the FTM2 PWM period in ticks
|
|
|
|
menu "K64 FTM2 Clock Source"
|
|
depends on PWM_K64_FTM_2
|
|
|
|
choice PWM_K64_FTM_2_CLOCK_SOURCE_CHOICE
|
|
prompt "Choose the FTM2 clock source"
|
|
default PWM_K64_FTM_2_CLOCK_SOURCE_SYSTEM
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE_NONE
|
|
bool "No clock selected (FTM counter disable)"
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE_SYSTEM
|
|
bool "System clock"
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE_FIXED
|
|
bool "Fixed Frequency Clock"
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE_EXTERNAL
|
|
bool "External Clock"
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE_QUAD
|
|
bool "Quadrature Decoder"
|
|
|
|
endchoice
|
|
|
|
endmenu
|
|
|
|
config PWM_K64_FTM_2_CLOCK_SOURCE
|
|
int
|
|
# Omit prompt to signify "hidden" option
|
|
depends on PWM_K64_FTM_2
|
|
default 0 if PWM_K64_FTM_2_CLOCK_SOURCE_NONE
|
|
default 1 if PWM_K64_FTM_2_CLOCK_SOURCE_SYSTEM
|
|
default 2 if PWM_K64_FTM_2_CLOCK_SOURCE_FIXED
|
|
default 3 if PWM_K64_FTM_2_CLOCK_SOURCE_EXTERNAL
|
|
default 4 if PWM_K64_FTM_2_CLOCK_SOURCE_QUAD
|
|
help
|
|
Specify K64 FTM2 clock source
|
|
|
|
config PWM_K64_FTM_2_PHASE_ENABLE_0
|
|
bool "FTM2 Enable Phase for channel 0"
|
|
depends on PWM_K64_FTM_2
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM2 channel 0. This configures
|
|
channels 0 and 1 to be in combine mode therefore
|
|
channel 1 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_2_PHASE_ENABLE_2
|
|
bool "FTM2 Enable Phase for channel 2"
|
|
depends on PWM_K64_FTM_2
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM2 channel 2. This configures
|
|
channels 2 and 3 to be in combine mode therefore
|
|
channel 3 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_2_PHASE_ENABLE_4
|
|
bool "FTM2 Enable Phase for channel 4"
|
|
depends on PWM_K64_FTM_2
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM2 channel 4. This configures
|
|
channels 4 and 5 to be in combine mode therefore
|
|
channel 5 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_2_PHASE_ENABLE_6
|
|
bool "FTM2 Enable Phase for channel 6"
|
|
depends on PWM_K64_FTM_2
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM2 channel 6. This configures
|
|
channels 6 and 7 to be in combine mode therefore
|
|
channel 7 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
#### FTM3 #####
|
|
|
|
config PWM_K64_FTM_3
|
|
bool "K64 FTM PWM Module 3"
|
|
depends on PWM_K64_FTM
|
|
default n
|
|
help
|
|
Enable config PWM options for K64 FTM3 source module.
|
|
|
|
config PWM_K64_FTM_3_DEV_NAME
|
|
string "K64 FTM PWM Module 3 Device Name"
|
|
depends on PWM_K64_FTM_3
|
|
default "PWM_3"
|
|
help
|
|
Specify the device name for the FTM3 source module.
|
|
|
|
config PWM_K64_FTM_3_PRESCALE
|
|
int "FTM3 prescale value"
|
|
default 3
|
|
depends on PWM_K64_FTM_3
|
|
help
|
|
Specify the FTM timer prescale value. The valid values are
|
|
1, 2, 4, 8, 16, 32, 64, or 128
|
|
|
|
config PWM_K64_FTM_3_PERIOD
|
|
int "FTM3 period value"
|
|
default 65535
|
|
depends on PWM_K64_FTM_3
|
|
help
|
|
Specify the FTM3 PWM period in ticks
|
|
|
|
menu "K64 FTM3 Clock Source"
|
|
depends on PWM_K64_FTM_3
|
|
|
|
choice PWM_K64_FTM_3_CLOCK_SOURCE_CHOICE
|
|
prompt "Choose the FTM3 clock source"
|
|
default PWM_K64_FTM_3_CLOCK_SOURCE_SYSTEM
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE_NONE
|
|
bool "No clock selected (FTM counter disable)"
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE_SYSTEM
|
|
bool "System clock"
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE_FIXED
|
|
bool "Fixed Frequency Clock"
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE_EXTERNAL
|
|
bool "External Clock"
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE_QUAD
|
|
bool "Quadrature Decoder"
|
|
|
|
endchoice
|
|
|
|
endmenu
|
|
|
|
config PWM_K64_FTM_3_CLOCK_SOURCE
|
|
int
|
|
# Omit prompt to signify "hidden" option
|
|
depends on PWM_K64_FTM_3
|
|
default 0 if PWM_K64_FTM_3_CLOCK_SOURCE_NONE
|
|
default 1 if PWM_K64_FTM_3_CLOCK_SOURCE_SYSTEM
|
|
default 2 if PWM_K64_FTM_3_CLOCK_SOURCE_FIXED
|
|
default 3 if PWM_K64_FTM_3_CLOCK_SOURCE_EXTERNAL
|
|
default 4 if PWM_K64_FTM_3_CLOCK_SOURCE_QUAD
|
|
help
|
|
Specify K64 FTM3 clock source
|
|
|
|
config PWM_K64_FTM_3_PHASE_ENABLE_0
|
|
bool "FTM3 Enable Phase for channel 0"
|
|
depends on PWM_K64_FTM_3
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM3 channel 0. This configures
|
|
channels 0 and 1 to be in combine mode therefore
|
|
channel 1 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_3_PHASE_ENABLE_2
|
|
bool "FTM3 Enable Phase for channel 2"
|
|
depends on PWM_K64_FTM_3
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM3 channel 2. This configures
|
|
channels 2 and 3 to be in combine mode therefore
|
|
channel 3 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_3_PHASE_ENABLE_4
|
|
bool "FTM3 Enable Phase for channel 4"
|
|
depends on PWM_K64_FTM_3
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM3 channel 4. This configures
|
|
channels 4 and 5 to be in combine mode therefore
|
|
channel 5 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
config PWM_K64_FTM_3_PHASE_ENABLE_6
|
|
bool "FTM3 Enable Phase for channel 6"
|
|
depends on PWM_K64_FTM_3
|
|
default n
|
|
help
|
|
Allow a phase offset on FTM3 channel 6. This configures
|
|
channels 6 and 7 to be in combine mode therefore
|
|
channel 7 is not valid as an output signal.
|
|
Note: phase is an unsupported feature.
|
|
|
|
endif # PWM_K64_FTM
|