xref: /linux/arch/powerpc/platforms/ps3/Kconfig (revision b7e1e969c887c897947fdc3754fe9b0c24acb155)
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
10e37af801SMarc 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
70*7edd0623SRandy Dunlap	select VIDEO
717626e78dSGeoff Levand	select PS3_VUART
7211227fd1SGeert Uytterhoeven	default y
7311227fd1SGeert Uytterhoeven	help
7411227fd1SGeert Uytterhoeven	  Include support for the PS3 AV Settings driver.
7511227fd1SGeert Uytterhoeven
7602ec92b3SGeoff Levand	  This support is required for PS3 graphics and sound. In
7711227fd1SGeert Uytterhoeven	  general, all users will say Y or M.
7811227fd1SGeert Uytterhoeven
79fde5efd0SGeoff Levandconfig PS3_SYS_MANAGER
807626e78dSGeoff Levand	depends on PPC_PS3
817626e78dSGeoff Levand	tristate "PS3 System Manager driver" if PS3_ADVANCED
827626e78dSGeoff Levand	select PS3_VUART
83eb8dc843SMichael Ellerman	default y
84fde5efd0SGeoff Levand	help
85fde5efd0SGeoff Levand	  Include support for the PS3 System Manager.
86fde5efd0SGeoff Levand
8702ec92b3SGeoff Levand	  This support is required for PS3 system control.  In
887626e78dSGeoff Levand	  general, all users will say Y or M.
89fde5efd0SGeoff Levand
906caebff1SGeoff Levandconfig PS3_VERBOSE_RESULT
916caebff1SGeoff Levand	bool "PS3 Verbose LV1 hypercall results" if PS3_ADVANCED
926caebff1SGeoff Levand	depends on PPC_PS3
936caebff1SGeoff Levand	help
948617982dSColin Ian King	  Enables more verbose log messages for LV1 hypercall results.
956caebff1SGeoff Levand
966caebff1SGeoff Levand	  If in doubt, say N here and reduce the size of the kernel by a
976caebff1SGeoff Levand	  small amount.
986caebff1SGeoff Levand
9907c044c8SGeoff Levandconfig PS3_REPOSITORY_WRITE
10007c044c8SGeoff Levand	bool "PS3 Repository write support" if PS3_ADVANCED
10107c044c8SGeoff Levand	depends on PPC_PS3
10207c044c8SGeoff Levand	help
10307c044c8SGeoff Levand	  Enables support for writing to the PS3 System Repository.
10407c044c8SGeoff Levand
10507c044c8SGeoff Levand	  This support is intended for bootloaders that need to store data
10607c044c8SGeoff Levand	  in the repository for later boot stages.
10707c044c8SGeoff Levand
10807c044c8SGeoff Levand	  If in doubt, say N here and reduce the size of the kernel by a
10907c044c8SGeoff Levand	  small amount.
11007c044c8SGeoff Levand
11180071802SGeert Uytterhoevenconfig PS3_STORAGE
11280071802SGeert Uytterhoeven	depends on PPC_PS3
11380071802SGeert Uytterhoeven	tristate
11480071802SGeert Uytterhoeven
115c6131fa5SGeert Uytterhoevenconfig PS3_DISK
116c6131fa5SGeert Uytterhoeven	tristate "PS3 Disk Storage Driver"
117c6131fa5SGeert Uytterhoeven	depends on PPC_PS3 && BLOCK
118c6131fa5SGeert Uytterhoeven	select PS3_STORAGE
119c6131fa5SGeert Uytterhoeven	help
120c6131fa5SGeert Uytterhoeven	  Include support for the PS3 Disk Storage.
121c6131fa5SGeert Uytterhoeven
122c6131fa5SGeert Uytterhoeven	  This support is required to access the PS3 hard disk.
123c6131fa5SGeert Uytterhoeven	  In general, all users will say Y or M.
124c6131fa5SGeert Uytterhoeven
1259aea8cbfSGeert Uytterhoevenconfig PS3_ROM
1269aea8cbfSGeert Uytterhoeven	tristate "PS3 BD/DVD/CD-ROM Storage Driver"
1279aea8cbfSGeert Uytterhoeven	depends on PPC_PS3 && SCSI
1289aea8cbfSGeert Uytterhoeven	select PS3_STORAGE
1299aea8cbfSGeert Uytterhoeven	help
1309aea8cbfSGeert Uytterhoeven	  Include support for the PS3 ROM Storage.
1319aea8cbfSGeert Uytterhoeven
1329aea8cbfSGeert Uytterhoeven	  This support is required to access the PS3 BD/DVD/CD-ROM drive.
1339aea8cbfSGeert Uytterhoeven	  In general, all users will say Y or M.
1349aea8cbfSGeert Uytterhoeven	  Also make sure to say Y or M to "SCSI CDROM support" later.
1359aea8cbfSGeert Uytterhoeven
136f9652635SGeert Uytterhoevenconfig PS3_FLASH
137f9652635SGeert Uytterhoeven	tristate "PS3 FLASH ROM Storage Driver"
138f9652635SGeert Uytterhoeven	depends on PPC_PS3
139f9652635SGeert Uytterhoeven	select PS3_STORAGE
140f9652635SGeert Uytterhoeven	help
141f9652635SGeert Uytterhoeven	  Include support for the PS3 FLASH ROM Storage.
142f9652635SGeert Uytterhoeven
143f9652635SGeert Uytterhoeven	  This support is required to access the PS3 FLASH ROM, which
144f9652635SGeert Uytterhoeven	  contains the boot loader and some boot options.
14502ec92b3SGeoff Levand	  In general, PS3 OtherOS users will say Y or M.
146f9652635SGeert Uytterhoeven
147f9652635SGeert Uytterhoeven	  As this driver needs a fixed buffer of 256 KiB of memory, it can
148f9652635SGeert Uytterhoeven	  be disabled on the kernel command line using "ps3flash=off", to
149f9652635SGeert Uytterhoeven	  not allocate this fixed buffer.
150f9652635SGeert Uytterhoeven
151f507cd22SGeert Uytterhoevenconfig PS3_VRAM
152f507cd22SGeert Uytterhoeven	tristate "PS3 Video RAM Storage Driver"
153f507cd22SGeert Uytterhoeven	depends on FB_PS3=y && BLOCK && m
154f507cd22SGeert Uytterhoeven	help
155f507cd22SGeert Uytterhoeven	  This driver allows you to use excess PS3 video RAM as volatile
156f507cd22SGeert Uytterhoeven	  storage or system swap.
157f507cd22SGeert Uytterhoeven
158781749a4STakashi Yamamotoconfig PS3_LPM
159781749a4STakashi Yamamoto	tristate "PS3 Logical Performance Monitor support"
160781749a4STakashi Yamamoto	depends on PPC_PS3
161781749a4STakashi Yamamoto	help
162781749a4STakashi Yamamoto	  Include support for the PS3 Logical Performance Monitor.
163781749a4STakashi Yamamoto
164781749a4STakashi Yamamoto	  This support is required to use the logical performance monitor
165781749a4STakashi Yamamoto	  of the PS3's LV1 hypervisor.
166781749a4STakashi Yamamoto
167781749a4STakashi Yamamoto	  If you intend to use the advanced performance monitoring and
168781749a4STakashi Yamamoto	  profiling support of the Cell processor with programs like
16962ccae78SChristophe Leroy	  perfmon2, then say Y or M, otherwise say N.
170781749a4STakashi Yamamoto
171f58a9d17SGeoff Levandendmenu
172