Kconfig 3.08 KB
Newer Older
1 2 3

mainmenu "WR PTP Core software configuration"

4 5 6 7 8 9 10 11 12
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.

13 14 15 16 17 18 19 20
config STACKSIZE
       int "Size of the stack area needed by this program"
       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.

21
config MPRINTF
22
	boolean "Use the old mprintf implementation for printf"
23
	default y
24 25 26 27 28 29 30 31 32
	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.
33

34 35 36 37
config PP_PRINTF
       boolean
       default !MPRINTF

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
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


76 77 78 79 80
config PRINT_BUFSIZE
       depends on PP_PRINTF
       int "Size for the temporary output string of pp_printf"
       default 128

81 82 83 84 85 86
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.
87 88 89 90 91 92 93 94 95 96 97 98

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.
99 100 101 102 103

# The following will soon become a choice with ppsi
config PTP_NOPOSIX
       boolean
       default y