1if PERCEPIO_DFM 2 3config PERCEPIO_DFM_CFG_FIRMWARE_VERSION 4 string "Firmware version" 5 default "X.Y.Z" 6 help 7 The firmware verison. This needs to be set to differentiate alerts between different versions 8 9config PERCEPIO_DFM_CFG_PRODUCTID 10 int "Product id" 11 default 1 12 help 13 An identifier to identify the product type. 14 15config PERCEPIO_DFM_CFG_ENABLE_DEBUG_PRINT 16 bool "Enable debug messages" 17 default n 18 help 19 Enable Diagnostic messages from DFM_DEBUG( .). Will use DFM_ERROR to output debug information. 20 21menu "Cloudport Config" 22 23choice PERCEPIO_DFM_CFG_CLOUDPORT 24 prompt "Cloudport" 25 default PERCEPIO_DFM_CFG_CLOUDPORT_NONE 26 27config PERCEPIO_DFM_CFG_CLOUDPORT_SERIAL 28 bool "Serial" 29 help 30 Send Alerts and chunks through the serial port, used with a serial terminal and accompanying 31 scripts, which post-processes the data and makes it available in DevAlert. 32 33config PERCEPIO_DFM_CFG_CLOUDPORT_NONE 34 bool "None" 35 help 36 Don't send alerts via the cloudport 37 38endchoice # choice PERCEPIO_DFM_CFG_CLOUDPORT 39 40endmenu # menu "Cloudport Config" 41 42menu "Storageport Config" 43 44choice PERCEPIO_DFM_CFG_STORAGEPORT 45 prompt "Storageport" 46 default PERCEPIO_DFM_CFG_STORAGEPORT_NONE 47 48config PERCEPIO_DFM_CFG_STORAGEPORT_NONE 49 bool "None" 50 help 51 Don't store alerts. 52 53config PERCEPIO_DFM_CFG_STORAGEPORT_FLASH 54 bool "Flash via FCB" 55 depends on (FLASH && FLASH_MAP && FCB) 56 help 57 Storage alerts on flash via the Zephyr FCB module. 58 59config PERCEPIO_DFM_CFG_STORAGEPORT_FILESYSTEM 60 bool "Filesystem" 61 depends on (FLASH && FLASH_MAP && FILE_SYSTEM) 62 help 63 Store alerts in a location on a filesystem. Uses 64 the zephyr file system abstraction. 65 66endchoice # choice PERCEPIO_DFM_CFG_STORAGEPORT 67 68endmenu # menu "Storageport Config" 69 70menu "Buffer Settings" 71 72config PERCEPIO_DFM_CFG_MAX_PAYLOAD_CHUNK_SIZE 73 int "Maximum payload chunk size" 74 default 1000 75 help 76 The maximum size of a "chunk" that will be stored or sent. 77 78config PERCEPIO_DFM_CFG_DEVICE_NAME_MAX_LEN 79 int "Maximum device name length" 80 default 32 81 help 82 The maximum length of the device name. 83 84config PERCEPIO_DFM_CFG_MAX_PAYLOADS 85 int "Max Payloads" 86 default 8 87 help 88 The maximum number of payloads which can be attached to a single alert. 89 90config PERCEPIO_DFM_CFG_MAX_SYMPTOMS 91 int "Max Symptoms" 92 default 8 93 help 94 The maximum number of symptoms which can be attached to a single alert. 95 96config PERCEPIO_DFM_CFG_FIRMWARE_VERSION_MAX_LEN 97 int "Maximum firmware version string length" 98 default 64 99 help 100 The max firmware version string length. 101 102config PERCEPIO_DFM_CFG_DESCRIPTION_MAX_LEN 103 int "Description string maximum length" 104 default 64 105 help 106 The maximum length of the description string. 107 108config PERCEPIO_DFM_CFG_DELAY_BETWEEN_SEND 109 int "Delay between sends" 110 default 0 111 help 112 Create a delay between transfers. Should normally not be needed. 113 114endmenu # menu "Buffer Settings" 115 116menu "Strategy Settings" 117 118choice PERCEPIO_DFM_CFG_SELECTED_STORAGE_STRATEGY 119 prompt "Storage strategy" 120 default PERCEPIO_DFM_CFG_SELECTED_STORAGE_STRATEGY_IGNORE 121 122config PERCEPIO_DFM_CFG_SELECTED_STORAGE_STRATEGY_IGNORE 123 bool "Ignore" 124 help 125 Never store alerts/payloads 126 127config PERCEPIO_DFM_CFG_SELECTED_STORAGE_STRATEGY_OVERWRITE 128 bool "Overwrite" 129 help 130 Overwrite old alerts/payloads if the FCB is full. 131 132config PERCEPIO_DFM_CFG_SELECTED_STORAGE_STRATEGY_SKIP 133 bool "Skip" 134 help 135 Don't save the new alert/payload of the FCB already is full. 136 137endchoice # choice "PERCEPIO_SELECTED_STORAGE_STRATEGY" 138 139choice PERCEPIO_DFM_CFG_SELECTED_CLOUD_STRATEGY 140 prompt "Cloud strategy" 141 default PERCEPIO_DFM_CFG_SELECTED_CLOUD_STRATEGY_ONLINE 142 143config PERCEPIO_DFM_CFG_SELECTED_CLOUD_STRATEGY_ONLINE 144 bool "Online" 145 help 146 Attempt to send alerts/payloads. 147 148config PERCEPIO_DFM_CFG_SELECTED_CLOUD_STRATEGY_OFFLINE 149 bool "Offline" 150 help 151 Don't attempt to send alerts/payloads. 152 153endchoice 154 155choice PERCEPIO_DFM_CFG_SELECTED_SESSIONID_STRATEGY 156 prompt "Session Id Strategy" 157 default PERCEPIO_DFM_CFG_SELECTED_SESSIONID_STRATEGY_ONALERT 158 159config PERCEPIO_DFM_CFG_SELECTED_SESSIONID_STRATEGY_ONSTARTUP 160 bool "On Startup" 161 help 162 Set the session id on startup 163 164config PERCEPIO_DFM_CFG_SELECTED_SESSIONID_STRATEGY_ONALERT 165 bool "On Alert" 166 help 167 Set the session id when an alert is generated 168 169endchoice # choice "PERCEPIO_DFM_CFG_SELECTED_SESSIONID_STRATEGY" 170 171endmenu # menu "Strategy Settings" 172 173config PERCEPIO_DFM_CFG_RETAINED_MEMORY 174 bool "Retained Memory support" 175 depends on (RETAINED_MEM && RETENTION) 176 help 177 Enable the ability to temporarily store alerts in retained RAM. 178 This can be used when the storageport is unavailable from the 179 current context (hardfault). After reboot the alert can be either 180 sent to cloudport or saved to storageport. 181 This requires that you set up a retained memory region called 182 retention0 in a devicetree overlay. Depending on your use case 183 you might have to disable the mutex usage protecting this memory 184 in order to write to it (such as writing from a hardfault context). 185 186config PERCEPIO_DFM_CFG_ENABLE_COREDUMPS 187 bool "Enable Core Dump support" 188 default n 189 depends on (DEBUG_COREDUMP && DEBUG_COREDUMP_BACKEND_OTHER && DEBUG_COREDUMP_MEMORY_DUMP_MIN) 190 help 191 Support for adding Core Dumps to alerts. 192 193if PERCEPIO_DFM_CFG_ENABLE_COREDUMPS 194 195choice PERCEPIO_DFM_CFG_COREDUMP_STRATEGY 196 prompt "Core Dump strategy" 197 default PERCEPIO_DFM_CFG_COREDUMP_RETAIN 198 199config PERCEPIO_DFM_CFG_COREDUMP_RETAIN 200 bool "Save in Retained Memory" 201 help 202 This requires that Retained Memory has been enabled and configured properly. 203 See the Getting Started guide for more details. 204 205config PERCEPIO_DFM_CFG_COREDUMP_STORE 206 bool "Store using selected storageport" 207 help 208 Core Dumps will be stored using the selected storageport. If the storageport 209 isn't compatible with the context where the coredump is generated then it will not work. 210 211endchoice # choice "PERCEPIO_DFM_CFG_COREDUMP_STRATEGY" 212 213config PERCEPIO_DFM_CFG_STACKDUMP_SIZE 214 int "Stack Dump size" 215 default 300 216 help 217 How many bytes to dump from the stack (relative to the current stack pointer) 218 219config PERCEPIO_DFM_CFG_MAX_COREDUMP_SIZE 220 int "Core Dump size" 221 default 1000 222 help 223 Maximum total size of the Core Dump. Since this uses a buffer in memory as a temporary work area, 224 this will affect memory usage. 225 226config PERCEPIO_DFM_CFG_ADD_TRACE 227 bool "Save Trace" 228 depends on (PERCEPIO_TRACERECORDER && PERCEPIO_TRC_CFG_STREAM_PORT_RINGBUFFER) 229 default y 230 help 231 If this is set to true, crashcatcher will always try to save a trace with the Alert. 232 Please not that this feature requires the Percepio Trace Recorder to be included in 233 the project as well. 234 235endif # PERCEPIO_DFM_ENABLE_COREDUMPS 236 237if PERCEPIO_DFM_CFG_STORAGEPORT_FLASH 238rsource "storageports/Flash/Kconfig" 239endif # PERCEPIO_DFM_CFG_STORAGEPORT_FLASH 240 241if PERCEPIO_DFM_CFG_STORAGEPORT_FILESYSTEM 242rsource "storageports/Filesystem/Kconfig" 243endif # PERCEPIO_DFM_CFG_STORAGEPORT_FILESYSTEM 244 245endif # PERCEPIO_DFM 246