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*cfd9b1dbSRandy 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 171c26afe9eSHector Martinconfig PS3GELIC_UDBG 172c26afe9eSHector Martin bool "PS3 udbg output via UDP broadcasts on Ethernet" 173c26afe9eSHector Martin depends on PPC_PS3 174c26afe9eSHector Martin help 175c26afe9eSHector Martin Enables udbg early debugging output by sending broadcast UDP 176c26afe9eSHector Martin via the Ethernet port (UDP port number 18194). 177c26afe9eSHector Martin 178c26afe9eSHector Martin This driver uses a trivial implementation and is independent 17902ec92b3SGeoff Levand from the main PS3 gelic network driver. 180c26afe9eSHector Martin 181c26afe9eSHector Martin If in doubt, say N here. 182c26afe9eSHector Martin 183f58a9d17SGeoff Levandendmenu 184