aboutsummaryrefslogtreecommitdiffstats
path: root/src/Kconfig
blob: ea2300ecffd949d128052c33cc8f0e04f9acd5f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# Main Kconfig settings

mainmenu "Klipper Firmware Configuration"

config LOW_LEVEL_OPTIONS
    bool "Enable extra low-level configuration options"
    default n
    help
        Enable low-level configuration options that (if modified) may
        result in a build that does not function correctly.

choice
    prompt "Micro-controller Architecture"
    config MACH_AVR
        bool "Atmega AVR"
    config MACH_ATSAM
        bool "SAM3/SAM4/SAM E70 (Due and Duet)"
    config MACH_ATSAMD
        bool "SAMD21/SAMD51"
    config MACH_LPC176X
        bool "LPC176x (Smoothieboard)"
    config MACH_STM32
        bool "STMicroelectronics STM32"
    config MACH_RP2040
        bool "Raspberry Pi RP2040"
    config MACH_PRU
        bool "Beaglebone PRU"
    config MACH_LINUX
        bool "Linux process"
    config MACH_SIMU
        bool "Host simulator"
endchoice

source "src/avr/Kconfig"
source "src/atsam/Kconfig"
source "src/atsamd/Kconfig"
source "src/lpc176x/Kconfig"
source "src/stm32/Kconfig"
source "src/rp2040/Kconfig"
source "src/pru/Kconfig"
source "src/linux/Kconfig"
source "src/simulator/Kconfig"

# Generic configuration options for serial ports
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.

# Generic configuration options for USB
config USB_VENDOR_ID
    default 0x1d50
config USB_DEVICE_ID
    default 0x614e
config USB_SERIAL_NUMBER_CHIPID
    depends on HAVE_CHIPID
    default y
config USB_SERIAL_NUMBER
    default "12345"

menu "USB ids"
    depends on USBSERIAL && LOW_LEVEL_OPTIONS
config USB_VENDOR_ID
    hex "USB vendor ID"
config USB_DEVICE_ID
    hex "USB device ID"
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
endmenu

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.

# The HAVE_x options allow boards to disable support for some commands
# if the hardware does not support the feature.
config HAVE_GPIO
    bool
    default n
config HAVE_GPIO_ADC
    bool
    default n
config HAVE_GPIO_SPI
    bool
    default n
config HAVE_GPIO_I2C
    bool
    default n
config HAVE_GPIO_HARD_PWM
    bool
    default n
config HAVE_GPIO_BITBANGING
    bool
    default n
config HAVE_STRICT_TIMING
    bool
    default n
config HAVE_CHIPID
    bool
    default n
config HAVE_STEPPER_BOTH_EDGE
    bool
    default n

config INLINE_STEPPER_HACK
    # Enables gcc to inline stepper_event() into the main timer irq handler
    bool
    depends on HAVE_GPIO
    default y