xref: /openbmc/linux/arch/powerpc/platforms/ps3/Kconfig (revision e37af801)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
272e77a1bSKumar Galaconfig PPC_PS3
3332a7b3eSGeoff Levand	bool "Sony PS3"
4e5e16d8fSBoqun Feng	depends on PPC64 && PPC_BOOK3S && CPU_BIG_ENDIAN
572e77a1bSKumar Gala	select PPC_CELL
672e77a1bSKumar Gala	select USB_OHCI_LITTLE_ENDIAN
772e77a1bSKumar Gala	select USB_OHCI_BIG_ENDIAN_MMIO
872e77a1bSKumar Gala	select USB_EHCI_BIG_ENDIAN_MMIO
9eb01d42aSChristoph Hellwig	select HAVE_PCI
10*e37af801SMarc Zyngier	select IRQ_DOMAIN_NOMAP
1172e77a1bSKumar Gala	help
1272e77a1bSKumar Gala	  This option enables support for the Sony PS3 game console
13332a7b3eSGeoff Levand	  and other platforms using the PS3 hypervisor.  Enabling this
14332a7b3eSGeoff Levand	  option will allow building otheros.bld, a kernel image suitable
15332a7b3eSGeoff Levand	  for programming into flash memory, and vmlinux, a kernel image
16332a7b3eSGeoff Levand	  suitable for loading via kexec.
1772e77a1bSKumar Gala
18f58a9d17SGeoff Levandmenu "PS3 Platform Options"
19f58a9d17SGeoff Levand	depends on PPC_PS3
20f58a9d17SGeoff Levand
213f555c70SGeert Uytterhoevenconfig PS3_ADVANCED
223f555c70SGeert Uytterhoeven	depends on PPC_PS3
233f555c70SGeert Uytterhoeven	bool "PS3 Advanced configuration options"
243f555c70SGeert Uytterhoeven	help
253f555c70SGeert Uytterhoeven	  This gives you access to some advanced options for the PS3. The
263f555c70SGeert Uytterhoeven	  defaults should be fine for most users, but these options may make
273f555c70SGeert Uytterhoeven	  it possible to better control the kernel configuration if you know
283f555c70SGeert Uytterhoeven	  what you are doing.
293f555c70SGeert Uytterhoeven
303f555c70SGeert Uytterhoeven	  Note that the answer to this question won't directly affect the
313f555c70SGeert Uytterhoeven	  kernel: saying N will just cause the configurator to skip all
323f555c70SGeert Uytterhoeven	  the questions about these options.
333f555c70SGeert Uytterhoeven
343f555c70SGeert Uytterhoeven	  Most users should say N to this question.
353f555c70SGeert Uytterhoeven
36f58a9d17SGeoff Levandconfig PS3_HTAB_SIZE
37f58a9d17SGeoff Levand	depends on PPC_PS3
383f555c70SGeert Uytterhoeven	int "PS3 Platform pagetable size" if PS3_ADVANCED
39f58a9d17SGeoff Levand	range 18 20
40f58a9d17SGeoff Levand	default 20
41f58a9d17SGeoff Levand	help
42f58a9d17SGeoff Levand	  This option is only for experts who may have the desire to fine
43f58a9d17SGeoff Levand	  tune the pagetable size on their system.  The value here is
44f58a9d17SGeoff Levand	  expressed as the log2 of the page table size.  Valid values are
45f58a9d17SGeoff Levand	  18, 19, and 20, corresponding to 256KB, 512KB and 1MB respectively.
46f58a9d17SGeoff Levand
47f58a9d17SGeoff Levand	  If unsure, choose the default (20) with the confidence that your
48f58a9d17SGeoff Levand	  system will have optimal runtime performance.
49f58a9d17SGeoff Levand
50f58a9d17SGeoff Levandconfig PS3_DYNAMIC_DMA
51ec879059SKees Cook	depends on PPC_PS3
52f58a9d17SGeoff Levand	bool "PS3 Platform dynamic DMA page table management"
53f58a9d17SGeoff Levand	help
54f58a9d17SGeoff Levand	  This option will enable kernel support to take advantage of the
55f58a9d17SGeoff Levand	  per device dynamic DMA page table management provided by the Cell
56f58a9d17SGeoff Levand	  processor's IO Controller.  This support incurs some runtime
57f58a9d17SGeoff Levand	  overhead and also slightly increases kernel memory usage.  The
58f58a9d17SGeoff Levand	  current implementation should be considered experimental.
59f58a9d17SGeoff Levand
60f58a9d17SGeoff Levand	  This support is mainly for Linux kernel development.  If unsure,
61f58a9d17SGeoff Levand	  say N.
62f58a9d17SGeoff Levand
6374e95d5dSGeoff Levandconfig PS3_VUART
6474e95d5dSGeoff Levand	depends on PPC_PS3
657626e78dSGeoff Levand	tristate
6674e95d5dSGeoff Levand
6711227fd1SGeert Uytterhoevenconfig PS3_PS3AV
687626e78dSGeoff Levand	depends on PPC_PS3
693f555c70SGeert Uytterhoeven	tristate "PS3 AV settings driver" if PS3_ADVANCED
707626e78dSGeoff Levand	select PS3_VUART
7111227fd1SGeert Uytterhoeven	default y
7211227fd1SGeert Uytterhoeven	help
7311227fd1SGeert Uytterhoeven	  Include support for the PS3 AV Settings driver.
7411227fd1SGeert Uytterhoeven
7502ec92b3SGeoff Levand	  This support is required for PS3 graphics and sound. In
7611227fd1SGeert Uytterhoeven	  general, all users will say Y or M.
7711227fd1SGeert Uytterhoeven
78fde5efd0SGeoff Levandconfig PS3_SYS_MANAGER
797626e78dSGeoff Levand	depends on PPC_PS3
807626e78dSGeoff Levand	tristate "PS3 System Manager driver" if PS3_ADVANCED
817626e78dSGeoff Levand	select PS3_VUART
82eb8dc843SMichael Ellerman	default y
83fde5efd0SGeoff Levand	help
84fde5efd0SGeoff Levand	  Include support for the PS3 System Manager.
85fde5efd0SGeoff Levand
8602ec92b3SGeoff Levand	  This support is required for PS3 system control.  In
877626e78dSGeoff Levand	  general, all users will say Y or M.
88fde5efd0SGeoff Levand
8907c044c8SGeoff Levandconfig PS3_REPOSITORY_WRITE
9007c044c8SGeoff Levand	bool "PS3 Repository write support" if PS3_ADVANCED
9107c044c8SGeoff Levand	depends on PPC_PS3
9207c044c8SGeoff Levand	help
9307c044c8SGeoff Levand	  Enables support for writing to the PS3 System Repository.
9407c044c8SGeoff Levand
9507c044c8SGeoff Levand	  This support is intended for bootloaders that need to store data
9607c044c8SGeoff Levand	  in the repository for later boot stages.
9707c044c8SGeoff Levand
9807c044c8SGeoff Levand	  If in doubt, say N here and reduce the size of the kernel by a
9907c044c8SGeoff Levand	  small amount.
10007c044c8SGeoff Levand
10180071802SGeert Uytterhoevenconfig PS3_STORAGE
10280071802SGeert Uytterhoeven	depends on PPC_PS3
10380071802SGeert Uytterhoeven	tristate
10480071802SGeert Uytterhoeven
105c6131fa5SGeert Uytterhoevenconfig PS3_DISK
106c6131fa5SGeert Uytterhoeven	tristate "PS3 Disk Storage Driver"
107c6131fa5SGeert Uytterhoeven	depends on PPC_PS3 && BLOCK
108c6131fa5SGeert Uytterhoeven	select PS3_STORAGE
109c6131fa5SGeert Uytterhoeven	help
110c6131fa5SGeert Uytterhoeven	  Include support for the PS3 Disk Storage.
111c6131fa5SGeert Uytterhoeven
112c6131fa5SGeert Uytterhoeven	  This support is required to access the PS3 hard disk.
113c6131fa5SGeert Uytterhoeven	  In general, all users will say Y or M.
114c6131fa5SGeert Uytterhoeven
1159aea8cbfSGeert Uytterhoevenconfig PS3_ROM
1169aea8cbfSGeert Uytterhoeven	tristate "PS3 BD/DVD/CD-ROM Storage Driver"
1179aea8cbfSGeert Uytterhoeven	depends on PPC_PS3 && SCSI
1189aea8cbfSGeert Uytterhoeven	select PS3_STORAGE
1199aea8cbfSGeert Uytterhoeven	help
1209aea8cbfSGeert Uytterhoeven	  Include support for the PS3 ROM Storage.
1219aea8cbfSGeert Uytterhoeven
1229aea8cbfSGeert Uytterhoeven	  This support is required to access the PS3 BD/DVD/CD-ROM drive.
1239aea8cbfSGeert Uytterhoeven	  In general, all users will say Y or M.
1249aea8cbfSGeert Uytterhoeven	  Also make sure to say Y or M to "SCSI CDROM support" later.
1259aea8cbfSGeert Uytterhoeven
126f9652635SGeert Uytterhoevenconfig PS3_FLASH
127f9652635SGeert Uytterhoeven	tristate "PS3 FLASH ROM Storage Driver"
128f9652635SGeert Uytterhoeven	depends on PPC_PS3
129f9652635SGeert Uytterhoeven	select PS3_STORAGE
130f9652635SGeert Uytterhoeven	help
131f9652635SGeert Uytterhoeven	  Include support for the PS3 FLASH ROM Storage.
132f9652635SGeert Uytterhoeven
133f9652635SGeert Uytterhoeven	  This support is required to access the PS3 FLASH ROM, which
134f9652635SGeert Uytterhoeven	  contains the boot loader and some boot options.
13502ec92b3SGeoff Levand	  In general, PS3 OtherOS users will say Y or M.
136f9652635SGeert Uytterhoeven
137f9652635SGeert Uytterhoeven	  As this driver needs a fixed buffer of 256 KiB of memory, it can
138f9652635SGeert Uytterhoeven	  be disabled on the kernel command line using "ps3flash=off", to
139f9652635SGeert Uytterhoeven	  not allocate this fixed buffer.
140f9652635SGeert Uytterhoeven
141f507cd22SGeert Uytterhoevenconfig PS3_VRAM
142f507cd22SGeert Uytterhoeven	tristate "PS3 Video RAM Storage Driver"
143f507cd22SGeert Uytterhoeven	depends on FB_PS3=y && BLOCK && m
144f507cd22SGeert Uytterhoeven	help
145f507cd22SGeert Uytterhoeven	  This driver allows you to use excess PS3 video RAM as volatile
146f507cd22SGeert Uytterhoeven	  storage or system swap.
147f507cd22SGeert Uytterhoeven
148781749a4STakashi Yamamotoconfig PS3_LPM
149781749a4STakashi Yamamoto	tristate "PS3 Logical Performance Monitor support"
150781749a4STakashi Yamamoto	depends on PPC_PS3
151781749a4STakashi Yamamoto	help
152781749a4STakashi Yamamoto	  Include support for the PS3 Logical Performance Monitor.
153781749a4STakashi Yamamoto
154781749a4STakashi Yamamoto	  This support is required to use the logical performance monitor
155781749a4STakashi Yamamoto	  of the PS3's LV1 hypervisor.
156781749a4STakashi Yamamoto
157781749a4STakashi Yamamoto	  If you intend to use the advanced performance monitoring and
158781749a4STakashi Yamamoto	  profiling support of the Cell processor with programs like
159781749a4STakashi Yamamoto	  oprofile and perfmon2, then say Y or M, otherwise say N.
160781749a4STakashi Yamamoto
161c26afe9eSHector Martinconfig PS3GELIC_UDBG
162c26afe9eSHector Martin	bool "PS3 udbg output via UDP broadcasts on Ethernet"
163c26afe9eSHector Martin	depends on PPC_PS3
164c26afe9eSHector Martin	help
165c26afe9eSHector Martin	  Enables udbg early debugging output by sending broadcast UDP
166c26afe9eSHector Martin	  via the Ethernet port (UDP port number 18194).
167c26afe9eSHector Martin
168c26afe9eSHector Martin	  This driver uses a trivial implementation and is independent
16902ec92b3SGeoff Levand	  from the main PS3 gelic network driver.
170c26afe9eSHector Martin
171c26afe9eSHector Martin	  If in doubt, say N here.
172c26afe9eSHector Martin
173f58a9d17SGeoff Levandendmenu
174