Skip to content
Snippets Groups Projects
Kconfig 3.97 KiB

mainmenu "WR PTP Core software configuration"

config RAMSIZE
       int "Size of the RAM in the FPGA for this program"
       default 90112
       help
         The usual configuration for wrpc-sw is 0x16000 bytes
	 (i.e. 88kB = 90112 bytes) but if your project has less or
	 more features you may want to adjust the FPGA size and
	 choose your preferred value here.

choice
       prompt "Choose your preferred ptp engine"
       default PTP_NOPOSIX

config PTP_NOPOSIX
       boolean "ptp-noposix"
       help
	 Select this option for the ptp-noposix engine

config PPSI
       boolean "ppsi"
       help
	 Select this option for the ppsi engine. Warning: this option is
	 work in progress, may not work or not compile at all.

endchoice

config PPSI_VERBOSITY
	depends on PPSI
	int "Default verbosity for PPSI"
	help
	  This option makes you select the verbosity of PPSI at startup:
	  0 means silent
	  1 means normal verbosity messages
	  2 means more verbose messages
	default 0
	range 0 2

config PPSI_RUNTIME_VERBOSITY
       depends on PPSI
       boolean "Enable runtime verbosity setting"
       default n
       help
         If set, this option permits to change the verbosity of PPSI engine
         runtime. This causes a bigger RAM occupation, so it is suggested
         to set it only for debugging purpose.

config STACKSIZE
       int "Size of the stack area needed by this program"
       default 3584 if PPSI
       default 2048
       help
         The linker complains if the code doesn't fit into RAM, but
	 we must also consider the stack, or the program will crash
	 badly at run time.

config MPRINTF
	boolean "Use the old mprintf implementation for printf"
	depends on !PPSI
	default y
	help
	  wrpc-sw has traditionally used mprintf as its printf engine.
	  Unfortunately, the code base has unclear copyright status,
	  and we are now able to run pp_printf instead. Such implementation
	  however has had little testing in wrpc-sw by now. Mprintf
	  is scheduled to be removed in the future, as soon as pp_printf
	  is more tested on the field.
	  If unsure, say y for the time being.

config PP_PRINTF
       boolean
       default !MPRINTF

choice
	prompt "Implementation of pp_printf"
	depends on PP_PRINTF
	default PRINTF_XINT

config PRINTF_FULL
 	bool "full"
	help
	  This selects an implementation that supports all standard
	  formats with modifiers, like "%08X" and "%.5s". It costs
	  around 2k of compiled code more than XINT.
	  See pp_printf/README for details.

config PRINTF_XINT
 	bool "hex-and-int"
	help
	  This selects a printf that can only print decimal and hex
	  numbers, without obeying the format modifiers. %c and %s are
	  supported too, and %p is equivalente to %x.
	  See pp_printf/README for details.

config PRINTF_MINI
 	bool "minimal"
	help
	  This selects a printf that prints all integers as hex,
	  without obeying the format modifiers. %c and %s are
	  supported too. See pp_printf/README for details.
	  This is not probably what you want for wrpc-sw.

config PRINTF_NONE
 	bool "empty"
	help
	  This selects a printf that prints the format string
	  alone and ignores all further arguments. Minimal size,
	  but not suited for wrpc-sw. See pp_printf/README for details.
endchoice


config PRINT_BUFSIZE
       depends on PP_PRINTF
       int "Size for the temporary output string of pp_printf"
       default 128

config ETHERBONE
	boolean "Compile Etherbone support in wrpc-sw"
	help
	  This allows to run LM32 code that is aware of Etherbone.
	  You need to run a gateware file that includes Etherbone support.
	  If in doubt, say No.

config DETERMINISTIC_BINARY
       boolean "Build a binary that is the same every time"
       help
         This option is used to #ifdef __DATE__ and __TIME__ strings
	 out of the compiled WRC binary. If you set it you'll get the
	 same binary bit-by-bit at each rebuild.  I am using this
	 option to hack the build procedure and use a simple "diff"
	 between the old and new output to verify I didn't introduce
	 changes.

	 If in doubt, say No.