2016-05-25 18:37:40 +03:00
|
|
|
# Main Kconfig settings
|
|
|
|
|
|
|
|
mainmenu "Klipper Firmware Configuration"
|
|
|
|
|
2019-01-09 21:10:23 +03:00
|
|
|
config LOW_LEVEL_OPTIONS
|
|
|
|
bool "Enable extra low-level configuration options"
|
|
|
|
help
|
|
|
|
Enable low-level configuration options that (if modified) may
|
|
|
|
result in a build that does not function correctly.
|
|
|
|
|
2016-05-25 18:37:40 +03:00
|
|
|
choice
|
|
|
|
prompt "Micro-controller Architecture"
|
|
|
|
config MACH_AVR
|
|
|
|
bool "Atmega AVR"
|
2019-01-13 04:14:50 +03:00
|
|
|
config MACH_ATSAM
|
2021-08-18 22:01:59 +03:00
|
|
|
bool "SAM3/SAM4/SAM E70 (Due and Duet)"
|
2019-01-13 04:14:50 +03:00
|
|
|
config MACH_ATSAMD
|
2023-01-16 09:32:31 +03:00
|
|
|
bool "SAMC21/SAMD21/SAMD51/SAME5x"
|
2018-05-08 04:32:27 +03:00
|
|
|
config MACH_LPC176X
|
|
|
|
bool "LPC176x (Smoothieboard)"
|
2019-07-29 06:15:54 +03:00
|
|
|
config MACH_STM32
|
2019-09-17 04:39:29 +03:00
|
|
|
bool "STMicroelectronics STM32"
|
2022-12-19 01:05:51 +03:00
|
|
|
config MACH_HC32F460
|
|
|
|
bool "Huada Semiconductor HC32F460"
|
2021-06-20 04:43:26 +03:00
|
|
|
config MACH_RP2040
|
|
|
|
bool "Raspberry Pi RP2040"
|
2017-05-07 04:47:04 +03:00
|
|
|
config MACH_PRU
|
|
|
|
bool "Beaglebone PRU"
|
2023-02-21 04:15:01 +03:00
|
|
|
config MACH_AR100
|
|
|
|
bool "Allwinner A64 AR100"
|
2017-07-20 07:02:43 +03:00
|
|
|
config MACH_LINUX
|
|
|
|
bool "Linux process"
|
2016-05-25 18:37:40 +03:00
|
|
|
config MACH_SIMU
|
|
|
|
bool "Host simulator"
|
|
|
|
endchoice
|
|
|
|
|
|
|
|
source "src/avr/Kconfig"
|
2019-01-13 04:14:50 +03:00
|
|
|
source "src/atsam/Kconfig"
|
|
|
|
source "src/atsamd/Kconfig"
|
2018-05-08 04:32:27 +03:00
|
|
|
source "src/lpc176x/Kconfig"
|
2019-07-29 06:15:54 +03:00
|
|
|
source "src/stm32/Kconfig"
|
2022-12-19 01:05:51 +03:00
|
|
|
source "src/hc32f460/Kconfig"
|
2021-06-20 04:43:26 +03:00
|
|
|
source "src/rp2040/Kconfig"
|
2017-05-07 04:47:04 +03:00
|
|
|
source "src/pru/Kconfig"
|
2023-02-21 04:15:01 +03:00
|
|
|
source "src/ar100/Kconfig"
|
2017-07-20 07:02:43 +03:00
|
|
|
source "src/linux/Kconfig"
|
2016-05-25 18:37:40 +03:00
|
|
|
source "src/simulator/Kconfig"
|
|
|
|
|
2019-01-26 01:55:57 +03:00
|
|
|
# Generic configuration options for serial ports
|
2022-06-16 21:59:03 +03:00
|
|
|
config SERIAL
|
|
|
|
bool
|
2019-01-26 01:55:57 +03:00
|
|
|
config SERIAL_BAUD
|
|
|
|
depends on SERIAL
|
|
|
|
int "Baud rate for serial port" if LOW_LEVEL_OPTIONS
|
|
|
|
default 250000
|
|
|
|
help
|
|
|
|
Specify the baud rate of the serial port. This should be set
|
|
|
|
to 250000. Read the FAQ before changing this value.
|
2018-08-07 02:03:54 +03:00
|
|
|
|
2019-01-26 03:02:01 +03:00
|
|
|
# Generic configuration options for USB
|
2022-06-16 21:59:03 +03:00
|
|
|
config USBSERIAL
|
|
|
|
bool
|
2022-06-09 04:03:11 +03:00
|
|
|
config USBCANBUS
|
|
|
|
bool
|
2022-08-17 04:12:42 +03:00
|
|
|
config USB
|
|
|
|
bool
|
|
|
|
default y if USBSERIAL || USBCANBUS
|
2019-01-26 03:02:01 +03:00
|
|
|
config USB_VENDOR_ID
|
2020-06-01 03:44:22 +03:00
|
|
|
default 0x1d50
|
2019-01-26 03:02:01 +03:00
|
|
|
config USB_DEVICE_ID
|
2020-06-01 03:44:22 +03:00
|
|
|
default 0x614e
|
2019-11-21 19:54:20 +03:00
|
|
|
config USB_SERIAL_NUMBER_CHIPID
|
2022-08-17 04:12:42 +03:00
|
|
|
depends on USB && HAVE_CHIPID
|
2019-11-21 19:54:20 +03:00
|
|
|
default y
|
2019-11-21 19:34:11 +03:00
|
|
|
config USB_SERIAL_NUMBER
|
|
|
|
default "12345"
|
2019-01-26 03:02:01 +03:00
|
|
|
|
2020-06-01 03:45:59 +03:00
|
|
|
menu "USB ids"
|
2022-08-17 04:12:42 +03:00
|
|
|
depends on USB && LOW_LEVEL_OPTIONS
|
2020-06-01 03:45:59 +03:00
|
|
|
config USB_VENDOR_ID
|
2022-06-09 04:03:11 +03:00
|
|
|
hex "USB vendor ID" if USBSERIAL
|
2020-06-01 03:45:59 +03:00
|
|
|
config USB_DEVICE_ID
|
2022-06-09 04:03:11 +03:00
|
|
|
hex "USB device ID" if USBSERIAL
|
2020-06-01 03:45:59 +03:00
|
|
|
config USB_SERIAL_NUMBER_CHIPID
|
|
|
|
bool "USB serial number from CHIPID" if HAVE_CHIPID
|
|
|
|
config USB_SERIAL_NUMBER
|
|
|
|
string "USB serial number" if !USB_SERIAL_NUMBER_CHIPID
|
2019-01-26 03:02:01 +03:00
|
|
|
endmenu
|
|
|
|
|
2023-06-08 18:20:59 +03:00
|
|
|
# Optional features that can be disabled (for devices with small flash sizes)
|
|
|
|
config WANT_GPIO_BITBANGING
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO
|
|
|
|
default y
|
|
|
|
config WANT_DISPLAYS
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO
|
|
|
|
default y
|
|
|
|
config WANT_SENSORS
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO_I2C || HAVE_GPIO_SPI
|
|
|
|
default y
|
2023-08-10 04:49:37 +03:00
|
|
|
config WANT_LIS2DW
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO_SPI
|
|
|
|
default y
|
2023-06-08 18:20:59 +03:00
|
|
|
config WANT_SOFTWARE_I2C
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO && HAVE_GPIO_I2C
|
|
|
|
default y
|
|
|
|
config WANT_SOFTWARE_SPI
|
|
|
|
bool
|
|
|
|
depends on HAVE_GPIO && HAVE_GPIO_SPI
|
|
|
|
default y
|
2023-12-18 01:59:25 +03:00
|
|
|
config NEED_SENSOR_BULK
|
|
|
|
bool
|
|
|
|
depends on WANT_SENSORS || WANT_LIS2DW
|
|
|
|
default y
|
2023-06-08 18:20:59 +03:00
|
|
|
menu "Optional features (to reduce code size)"
|
|
|
|
depends on HAVE_LIMITED_CODE_SIZE
|
|
|
|
config WANT_GPIO_BITBANGING
|
|
|
|
bool "Support GPIO \"bit-banging\" devices"
|
|
|
|
depends on HAVE_GPIO
|
|
|
|
config WANT_DISPLAYS
|
|
|
|
bool "Support LCD devices"
|
|
|
|
depends on HAVE_GPIO
|
|
|
|
config WANT_SENSORS
|
|
|
|
bool "Support external sensor devices"
|
|
|
|
depends on HAVE_GPIO_I2C || HAVE_GPIO_SPI
|
2023-08-10 04:49:37 +03:00
|
|
|
config WANT_LIS2DW
|
|
|
|
bool "Support lis2dw 3-axis accelerometer"
|
|
|
|
depends on HAVE_GPIO_SPI
|
2023-06-08 18:20:59 +03:00
|
|
|
config WANT_SOFTWARE_I2C
|
|
|
|
bool "Support software based I2C \"bit-banging\""
|
|
|
|
depends on HAVE_GPIO && HAVE_GPIO_I2C
|
|
|
|
config WANT_SOFTWARE_SPI
|
|
|
|
bool "Support software based SPI \"bit-banging\""
|
|
|
|
depends on HAVE_GPIO && HAVE_GPIO_SPI
|
|
|
|
endmenu
|
|
|
|
|
2022-06-12 18:55:46 +03:00
|
|
|
# Generic configuration options for CANbus
|
2022-06-16 21:59:03 +03:00
|
|
|
config CANSERIAL
|
|
|
|
bool
|
2022-06-12 02:37:30 +03:00
|
|
|
config CANBUS
|
|
|
|
bool
|
2022-06-09 04:03:11 +03:00
|
|
|
default y if CANSERIAL || USBCANBUS
|
2022-06-12 18:55:46 +03:00
|
|
|
config CANBUS_FREQUENCY
|
2022-06-12 02:37:30 +03:00
|
|
|
int "CAN bus speed" if LOW_LEVEL_OPTIONS && CANBUS
|
2023-05-20 23:49:48 +03:00
|
|
|
default 1000000
|
2022-06-12 01:19:53 +03:00
|
|
|
config CANBUS_FILTER
|
|
|
|
bool
|
|
|
|
default y if CANSERIAL
|
2022-06-12 18:55:46 +03:00
|
|
|
|
|
|
|
# Support setting gpio state at startup
|
2019-03-18 03:41:52 +03:00
|
|
|
config INITIAL_PINS
|
|
|
|
string "GPIO pins to set at micro-controller startup"
|
|
|
|
depends on LOW_LEVEL_OPTIONS
|
|
|
|
help
|
|
|
|
One may specify a comma separated list of gpio pins to set
|
|
|
|
during the micro-controller startup sequence. By default the
|
|
|
|
pins will be set to output high - preface a pin with a '!'
|
|
|
|
character to set that pin to output low.
|
|
|
|
|
2019-11-21 19:34:11 +03:00
|
|
|
# The HAVE_x options allow boards to disable support for some commands
|
|
|
|
# if the hardware does not support the feature.
|
2017-07-20 06:59:35 +03:00
|
|
|
config HAVE_GPIO
|
|
|
|
bool
|
2016-06-09 02:32:06 +03:00
|
|
|
config HAVE_GPIO_ADC
|
|
|
|
bool
|
2016-06-09 02:35:45 +03:00
|
|
|
config HAVE_GPIO_SPI
|
|
|
|
bool
|
2023-02-21 03:52:36 +03:00
|
|
|
config HAVE_GPIO_SDIO
|
|
|
|
bool
|
2018-10-26 10:37:21 +03:00
|
|
|
config HAVE_GPIO_I2C
|
|
|
|
bool
|
2016-06-09 02:44:34 +03:00
|
|
|
config HAVE_GPIO_HARD_PWM
|
|
|
|
bool
|
2020-05-25 07:27:18 +03:00
|
|
|
config HAVE_STRICT_TIMING
|
|
|
|
bool
|
2019-11-21 19:34:11 +03:00
|
|
|
config HAVE_CHIPID
|
|
|
|
bool
|
2021-10-29 00:10:10 +03:00
|
|
|
config HAVE_STEPPER_BOTH_EDGE
|
|
|
|
bool
|
2022-12-19 19:54:19 +03:00
|
|
|
config HAVE_BOOTLOADER_REQUEST
|
|
|
|
bool
|
2023-06-08 18:20:59 +03:00
|
|
|
config HAVE_LIMITED_CODE_SIZE
|
|
|
|
bool
|
2016-06-09 02:32:06 +03:00
|
|
|
|
2016-05-25 18:37:40 +03:00
|
|
|
config INLINE_STEPPER_HACK
|
|
|
|
# Enables gcc to inline stepper_event() into the main timer irq handler
|
|
|
|
bool
|
2017-07-20 06:59:35 +03:00
|
|
|
depends on HAVE_GPIO
|
2016-06-14 21:27:30 +03:00
|
|
|
default y
|