| .. | .. | 
|---|
 | 1 | +# SPDX-License-Identifier: GPL-2.0-only  | 
|---|
| 1 | 2 |  config PSTORE | 
|---|
| 2 | 3 |  	tristate "Persistent store support" | 
|---|
| 3 | 4 |  	select CRYPTO if PSTORE_COMPRESS | 
|---|
| .. | .. | 
|---|
| 114 | 115 |  	  When the option is enabled, pstore will log all kernel | 
|---|
| 115 | 116 |  	  messages, even if no oops or panic happened. | 
|---|
| 116 | 117 |   | 
|---|
| 117 |  | -config PSTORE_CONSOLE_FORCE  | 
|---|
| 118 |  | -	bool "Log kernel console messages ignore loglevel setting"  | 
|---|
| 119 |  | -	depends on PSTORE_CONSOLE  | 
|---|
| 120 |  | -	help  | 
|---|
| 121 |  | -	  When the option is enabled, allow all kernel messages  | 
|---|
| 122 |  | -	  log to the pstore console. Enable this with a kernel bool  | 
|---|
| 123 |  | -	  parameter like "pstore_con_force=1".  | 
|---|
| 124 |  | -  | 
|---|
| 125 |  | -config PSTORE_CONSOLE_FORCE_ON  | 
|---|
| 126 |  | -	bool "Log kernel console messages ignore loglevel setting on by default"  | 
|---|
| 127 |  | -	depends on PSTORE_CONSOLE_FORCE  | 
|---|
| 128 |  | -  | 
|---|
| 129 | 118 |  config PSTORE_PMSG | 
|---|
| 130 | 119 |  	bool "Log user space messages" | 
|---|
| 131 | 120 |  	depends on PSTORE | 
|---|
 | 121 | +	select RT_MUTEXES  | 
|---|
| 132 | 122 |  	help | 
|---|
| 133 | 123 |  	  When the option is enabled, pstore will export a character | 
|---|
| 134 | 124 |  	  interface /dev/pmsg0 to log user space messages. On reboot | 
|---|
| .. | .. | 
|---|
| 153 | 143 |  	tristate "Log panic/oops to a RAM buffer" | 
|---|
| 154 | 144 |  	depends on PSTORE | 
|---|
| 155 | 145 |  	depends on HAS_IOMEM | 
|---|
| 156 |  | -	depends on HAVE_MEMBLOCK  | 
|---|
| 157 | 146 |  	select REED_SOLOMON | 
|---|
| 158 | 147 |  	select REED_SOLOMON_ENC8 | 
|---|
| 159 | 148 |  	select REED_SOLOMON_DEC8 | 
|---|
| .. | .. | 
|---|
| 166 | 155 |   | 
|---|
| 167 | 156 |  	  For more information, see Documentation/admin-guide/ramoops.rst. | 
|---|
| 168 | 157 |   | 
|---|
| 169 |  | -config PSTORE_MCU_LOG  | 
|---|
| 170 |  | -	bool "Print mcu log by linux"  | 
|---|
 | 158 | +config PSTORE_ZONE  | 
|---|
 | 159 | +	tristate  | 
|---|
| 171 | 160 |  	depends on PSTORE | 
|---|
| 172 | 161 |  	help | 
|---|
| 173 |  | -	  When your soc has several mcu, you can get their log by cat command  | 
|---|
 | 162 | +	  The common layer for pstore/blk (and pstore/ram in the future)  | 
|---|
 | 163 | +	  to manage storage in zones.  | 
|---|
 | 164 | +  | 
|---|
 | 165 | +config PSTORE_BLK  | 
|---|
 | 166 | +	tristate "Log panic/oops to a block device"  | 
|---|
 | 167 | +	depends on PSTORE  | 
|---|
 | 168 | +	depends on BLOCK  | 
|---|
 | 169 | +	depends on BROKEN  | 
|---|
 | 170 | +	select PSTORE_ZONE  | 
|---|
 | 171 | +	default n  | 
|---|
 | 172 | +	help  | 
|---|
 | 173 | +	  This enables panic and oops message to be logged to a block dev  | 
|---|
 | 174 | +	  where it can be read back at some later point.  | 
|---|
 | 175 | +  | 
|---|
 | 176 | +	  For more information, see Documentation/admin-guide/pstore-blk.rst  | 
|---|
 | 177 | +  | 
|---|
 | 178 | +	  If unsure, say N.  | 
|---|
 | 179 | +  | 
|---|
 | 180 | +config PSTORE_BLK_BLKDEV  | 
|---|
 | 181 | +	string "block device identifier"  | 
|---|
 | 182 | +	depends on PSTORE_BLK  | 
|---|
 | 183 | +	default ""  | 
|---|
 | 184 | +	help  | 
|---|
 | 185 | +	  Which block device should be used for pstore/blk.  | 
|---|
 | 186 | +  | 
|---|
 | 187 | +	  It accepts the following variants:  | 
|---|
 | 188 | +	  1) <hex_major><hex_minor> device number in hexadecimal representation,  | 
|---|
 | 189 | +	     with no leading 0x, for example b302.  | 
|---|
 | 190 | +	  2) /dev/<disk_name> represents the device name of disk  | 
|---|
 | 191 | +	  3) /dev/<disk_name><decimal> represents the device name and number  | 
|---|
 | 192 | +	     of partition - device number of disk plus the partition number  | 
|---|
 | 193 | +	  4) /dev/<disk_name>p<decimal> - same as the above, this form is  | 
|---|
 | 194 | +	     used when disk name of partitioned disk ends with a digit.  | 
|---|
 | 195 | +	  5) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the  | 
|---|
 | 196 | +	     unique id of a partition if the partition table provides it.  | 
|---|
 | 197 | +	     The UUID may be either an EFI/GPT UUID, or refer to an MSDOS  | 
|---|
 | 198 | +	     partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero-  | 
|---|
 | 199 | +	     filled hex representation of the 32-bit "NT disk signature", and PP  | 
|---|
 | 200 | +	     is a zero-filled hex representation of the 1-based partition number.  | 
|---|
 | 201 | +	  6) PARTUUID=<UUID>/PARTNROFF=<int> to select a partition in relation  | 
|---|
 | 202 | +	     to a partition with a known unique id.  | 
|---|
 | 203 | +	  7) <major>:<minor> major and minor number of the device separated by  | 
|---|
 | 204 | +	     a colon.  | 
|---|
 | 205 | +  | 
|---|
 | 206 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 207 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 208 | +  | 
|---|
 | 209 | +config PSTORE_BLK_KMSG_SIZE  | 
|---|
 | 210 | +	int "Size in Kbytes of kmsg dump log to store"  | 
|---|
 | 211 | +	depends on PSTORE_BLK  | 
|---|
 | 212 | +	default 64  | 
|---|
 | 213 | +	help  | 
|---|
 | 214 | +	  This just sets size of kmsg dump (oops, panic, etc) log for  | 
|---|
 | 215 | +	  pstore/blk. The size is in KB and must be a multiple of 4.  | 
|---|
 | 216 | +  | 
|---|
 | 217 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 218 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 219 | +  | 
|---|
 | 220 | +config PSTORE_BLK_MAX_REASON  | 
|---|
 | 221 | +	int "Maximum kmsg dump reason to store"  | 
|---|
 | 222 | +	depends on PSTORE_BLK  | 
|---|
 | 223 | +	default 2  | 
|---|
 | 224 | +	help  | 
|---|
 | 225 | +	  The maximum reason for kmsg dumps to store. The default is  | 
|---|
 | 226 | +	  2 (KMSG_DUMP_OOPS), see include/linux/kmsg_dump.h's  | 
|---|
 | 227 | +	  enum kmsg_dump_reason for more details.  | 
|---|
 | 228 | +  | 
|---|
 | 229 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 230 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 231 | +  | 
|---|
 | 232 | +config PSTORE_BLK_PMSG_SIZE  | 
|---|
 | 233 | +	int "Size in Kbytes of pmsg to store"  | 
|---|
 | 234 | +	depends on PSTORE_BLK  | 
|---|
 | 235 | +	depends on PSTORE_PMSG  | 
|---|
 | 236 | +	default 64  | 
|---|
 | 237 | +	help  | 
|---|
 | 238 | +	  This just sets size of pmsg (pmsg_size) for pstore/blk. The size is  | 
|---|
 | 239 | +	  in KB and must be a multiple of 4.  | 
|---|
 | 240 | +  | 
|---|
 | 241 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 242 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 243 | +  | 
|---|
 | 244 | +config PSTORE_BLK_CONSOLE_SIZE  | 
|---|
 | 245 | +	int "Size in Kbytes of console log to store"  | 
|---|
 | 246 | +	depends on PSTORE_BLK  | 
|---|
 | 247 | +	depends on PSTORE_CONSOLE  | 
|---|
 | 248 | +	default 64  | 
|---|
 | 249 | +	help  | 
|---|
 | 250 | +	  This just sets size of console log (console_size) to store via  | 
|---|
 | 251 | +	  pstore/blk. The size is in KB and must be a multiple of 4.  | 
|---|
 | 252 | +  | 
|---|
 | 253 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 254 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 255 | +  | 
|---|
 | 256 | +config PSTORE_BLK_FTRACE_SIZE  | 
|---|
 | 257 | +	int "Size in Kbytes of ftrace log to store"  | 
|---|
 | 258 | +	depends on PSTORE_BLK  | 
|---|
 | 259 | +	depends on PSTORE_FTRACE  | 
|---|
 | 260 | +	default 64  | 
|---|
 | 261 | +	help  | 
|---|
 | 262 | +	  This just sets size of ftrace log (ftrace_size) for pstore/blk. The  | 
|---|
 | 263 | +	  size is in KB and must be a multiple of 4.  | 
|---|
 | 264 | +  | 
|---|
 | 265 | +	  NOTE that, both Kconfig and module parameters can configure  | 
|---|
 | 266 | +	  pstore/blk, but module parameters have priority over Kconfig.  | 
|---|
 | 267 | +  | 
|---|
 | 268 | +config PSTORE_BOOT_LOG  | 
|---|
 | 269 | +	bool "Print boot log by linux"  | 
|---|
 | 270 | +	depends on PSTORE  | 
|---|
 | 271 | +	help  | 
|---|
 | 272 | +	  Collect log from loader,uboot,ATF and so on, you can get their log by cat command  | 
|---|
| 174 | 273 |  	  through linux shell | 
|---|
| 175 | 274 |  	  If unsure, say N. | 
|---|