1# SPDX-License-Identifier: GPL-2.0-only
2#
3# For a description of the syntax of this configuration file,
4# see Documentation/kbuild/kconfig-language.rst.
5#
6# Parport configuration.
7#
8
9config ARCH_MIGHT_HAVE_PC_PARPORT
10	bool
11	help
12	  Select this config option from the architecture Kconfig if
13	  the architecture might have PC parallel port hardware.
14
15menuconfig PARPORT
16	tristate "Parallel port support"
17	depends on HAS_IOMEM
18	help
19	  If you want to use devices connected to your machine's parallel port
20	  (the connector at the computer with 25 holes), e.g. printer, ZIP
21	  drive, PLIP link (Parallel Line Internet Protocol is mainly used to
22	  create a mini network by connecting the parallel ports of two local
23	  machines) etc., then you need to say Y here; please read
24	  <file:Documentation/admin-guide/parport.rst> and
25	  <file:drivers/parport/BUGS-parport>.
26
27	  For extensive information about drivers for many devices attaching
28	  to the parallel port see <http://www.torque.net/linux-pp.html> on
29	  the WWW.
30
31	  It is possible to share a single parallel port among several devices
32	  and it is safe to compile all the corresponding drivers into the
33	  kernel. To compile parallel port support as a module, choose M here:
34	  the module will be called parport.
35	  If you have more than one parallel port and want to specify which
36	  port and IRQ to be used by this driver at module load time, take a
37	  look at <file:Documentation/admin-guide/parport.rst>.
38
39	  If unsure, say Y.
40
41if PARPORT
42
43config PARPORT_PC
44	tristate "PC-style hardware"
45	depends on ARCH_MIGHT_HAVE_PC_PARPORT || (PCI && !S390)
46	help
47	  You should say Y here if you have a PC-style parallel port. All
48	  IBM PC compatible computers and some Alphas have PC-style
49	  parallel ports.  PA-RISC owners should only say Y here if they
50	  have a SuperIO parallel port.
51
52	  To compile this driver as a module, choose M here: the
53	  module will be called parport_pc.
54
55	  If unsure, say Y.
56
57config PARPORT_SERIAL
58	tristate "Multi-IO cards (parallel and serial)"
59	depends on SERIAL_8250_PCI && PARPORT_PC && PCI
60	help
61	  This adds support for multi-IO PCI cards that have parallel and
62	  serial ports.  You should say Y or M here.  If you say M, the module
63	  will be called parport_serial.
64
65config PARPORT_PC_FIFO
66	bool "Use FIFO/DMA if available"
67	depends on PARPORT_PC
68	help
69	  Many parallel port chipsets provide hardware that can speed up
70	  printing. Say Y here if you want to take advantage of that.
71
72	  As well as actually having a FIFO, or DMA capability, the kernel
73	  will need to know which IRQ the parallel port has.  By default,
74	  parallel port interrupts will not be used, and so neither will the
75	  FIFO.  See <file:Documentation/admin-guide/parport.rst> to find out how to
76	  specify which IRQ/DMA to use.
77
78config PARPORT_PC_SUPERIO
79	bool "SuperIO chipset support"
80	depends on ARCH_MIGHT_HAVE_PC_PARPORT && PARPORT_PC && !PARISC
81	help
82	  Saying Y here enables some probes for Super-IO chipsets in order to
83	  find out things like base addresses, IRQ lines and DMA channels.  It
84	  is safe to say N.
85
86config PARPORT_PC_PCMCIA
87	tristate "Support for PCMCIA management for PC-style ports"
88	depends on PCMCIA && PARPORT_PC
89	help
90	  Say Y here if you need PCMCIA support for your PC-style parallel
91	  ports. If unsure, say N.
92
93config PARPORT_IP32
94	tristate "SGI IP32 builtin port"
95	depends on SGI_IP32
96	select PARPORT_NOT_PC
97	help
98	  Say Y here if you need support for the parallel port on
99	  SGI O2 machines. This code is also available as a module (say M),
100	  called parport_ip32.  If in doubt, saying N is the safe plan.
101
102config PARPORT_AMIGA
103	tristate "Amiga builtin port"
104	depends on AMIGA
105	select PARPORT_NOT_PC
106	help
107	  Say Y here if you need support for the parallel port hardware on
108	  Amiga machines. This code is also available as a module (say M),
109	  called parport_amiga. If in doubt, saying N is the safe plan.
110
111config PARPORT_MFC3
112	tristate "Multiface III parallel port"
113	depends on ZORRO
114	select PARPORT_NOT_PC
115	help
116	  Say Y here if you need parallel port support for the MFC3 card.
117	  This code is also available as a module (say M), called
118	  parport_mfc3. If in doubt, saying N is the safe plan.
119
120config PARPORT_ATARI
121	tristate "Atari hardware"
122	depends on ATARI
123	select PARPORT_NOT_PC
124	help
125	  Say Y here if you need support for the parallel port hardware on
126	  Atari machines. This code is also available as a module (say M),
127	  called parport_atari. If in doubt, saying N is the safe plan.
128
129config PARPORT_GSC
130	tristate
131	default GSC
132	select PARPORT_NOT_PC
133
134config PARPORT_SUNBPP
135	tristate "Sparc hardware"
136	depends on SBUS
137	select PARPORT_NOT_PC
138	help
139	  This driver provides support for the bidirectional parallel port
140	  found on many Sun machines. Note that many of the newer Ultras
141	  actually have pc style hardware instead.
142
143config PARPORT_AX88796
144	tristate "AX88796 Parallel Port"
145	select PARPORT_NOT_PC
146	help
147	  Say Y here if you need support for the parallel port hardware on
148	  the AX88796 network controller chip. This code is also available
149	  as a module (say M), called parport_ax88796.
150
151	  The driver is not dependent on the AX88796 network driver, and
152	  should not interfere with the networking functions of the chip.
153
154config PARPORT_1284
155	bool "IEEE 1284 transfer modes"
156	help
157	  If you have a printer that supports status readback or device ID, or
158	  want to use a device that uses enhanced parallel port transfer modes
159	  such as EPP and ECP, say Y here to enable advanced IEEE 1284
160	  transfer modes. Also say Y if you want device ID information to
161	  appear in /proc/sys/dev/parport/*/autoprobe*. It is safe to say N.
162
163config PARPORT_NOT_PC
164	bool
165
166endif # PARPORT
167