blob: acb5796d09e3e3e25780c5260ee3db78cc34eee3 [file] [log] [blame]
Patrick Georgi8480c0b2020-05-08 22:50:46 +02001## SPDX-License-Identifier: GPL-2.0-only
Martin Roth888a98b2016-03-13 13:00:43 -06002
Martin Rothe51e1042016-07-06 15:05:19 -06003config PXE
Martin Roth888a98b2016-03-13 13:00:43 -06004 prompt "Add a PXE ROM"
Martin Rothe51e1042016-07-06 15:05:19 -06005 def_bool n
Martin Roth888a98b2016-03-13 13:00:43 -06006 depends on ARCH_X86
Martin Rothe51e1042016-07-06 15:05:19 -06007
8if PXE
9menu "PXE Options"
10
11choice
12 prompt "PXE ROM to use"
13 default PXE_ROM
Martin Roth888a98b2016-03-13 13:00:43 -060014
15config PXE_ROM
16 bool "Add an existing PXE ROM image"
17 help
18 Select this option if you have a PXE ROM image that you would
19 like to add to your ROM.
20
21config BUILD_IPXE
22 bool "Build and add an iPXE ROM"
23 help
24 Select this option to fetch and build a ROM from the iPXE project.
25
26endchoice
27
Martin Roth888a98b2016-03-13 13:00:43 -060028config PXE_ROM_FILE
29 string "PXE ROM filename"
30 depends on PXE_ROM
31 default "pxe.rom"
32 help
33 The path and filename of the file to use as PXE ROM.
34
35config PXE_ROM_ID
36 string "network card PCI IDs"
Martin Roth888a98b2016-03-13 13:00:43 -060037 default "10ec,8168"
38 help
39 The comma-separated PCI vendor and device ID that would associate
40 your PXE ROM to your network card.
41
42 Example: 10ec,8168
43
44 In the above example 10ec is the PCI vendor ID (in hex, but without
45 the "0x" prefix) and 8168 specifies the PCI device ID of the
46 network card (also in hex, without "0x" prefix).
47
48 Under GNU/Linux you can run `lspci -nn` to list the IDs of your PCI devices.
Martin Rothe51e1042016-07-06 15:05:19 -060049
Felix Singer596c6f32023-11-05 01:56:07 +000050if BUILD_IPXE
51
52choice
53 prompt "iPXE version"
54 default IPXE_STABLE
55
56config IPXE_STABLE
57 bool "2022.1"
58 help
59 iPXE uses a rolling release with no stable version, for
60 reproducibility, use the last commit of a given month as the
61 'stable' version.
62 This is iPXE from the end of January, 2022.
63
64config IPXE_MASTER
65 bool "master"
66 help
67 Newest iPXE version.
68
69endchoice
70
Michał Żygowski9839eff2018-06-26 13:12:49 +020071config PXE_SERIAL_CONSOLE
72 bool "Enable iPXE serial console"
73 def_bool y
74 help
75 Enable/disable iPXE serial console. Since SeaBIOS supports serial
76 console this option might be helpful to avoid duplicated output.
77
78 Unselect to let only SeaBIOS handle printing output.
79
Angel Ponsfa276862020-05-28 23:40:24 +020080config PXE_NO_PROMPT
Patrick Rudolph23cb12b2017-07-25 19:36:25 +020081 bool "Do not show prompt to boot from PXE"
82 default n
Patrick Rudolph23cb12b2017-07-25 19:36:25 +020083 help
84 Don't wait for the user to press Ctrl-B.
85 The PXE still can be run as it shows up in SeaBIOS's payload list.
86
87config PXE_ADD_SCRIPT
88 bool "Embed an iPXE script for automated provisioning"
Patrick Rudolph23cb12b2017-07-25 19:36:25 +020089 default n
90 help
91 Enable to embed a script that is run instead of an iPXE shell.
92
93config PXE_SCRIPT
94 string "Embedded iPXE script path and filename"
95 depends on PXE_ADD_SCRIPT
96 default ""
97 help
98 Path to a script that is embedded into the iPXE binary.
99 Example: startup.ipxe
100
101 Uses the ipxe script instead showing the prompt:
102 "Press Ctrl-B to start iPXE..."
103
Felix Singerc7f47362019-01-25 03:44:20 +0100104config PXE_HAS_HTTPS
105 bool "Enable HTTPS protocol"
106 default y
Felix Singerc7f47362019-01-25 03:44:20 +0100107 help
108 Enable HTTPS protocol, which allows you to encrypt all communication
109 with a web server and to verify the server's identity
110
Felix Singer596c6f32023-11-05 01:56:07 +0000111endif # BUILD_IPXE
Martin Rothe51e1042016-07-06 15:05:19 -0600112endmenu
Felix Singer596c6f32023-11-05 01:56:07 +0000113
114endif # PXE