GNU Linux-libre 6.8.9-gnu
[releases.git] / arch / powerpc / platforms / ps3 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 config PPC_PS3
3         bool "Sony PS3"
4         depends on PPC64 && PPC_BOOK3S && CPU_BIG_ENDIAN
5         select PPC_CELL
6         select USB_OHCI_LITTLE_ENDIAN
7         select USB_OHCI_BIG_ENDIAN_MMIO
8         select USB_EHCI_BIG_ENDIAN_MMIO
9         select HAVE_PCI
10         select IRQ_DOMAIN_NOMAP
11         help
12           This option enables support for the Sony PS3 game console
13           and other platforms using the PS3 hypervisor.  Enabling this
14           option will allow building otheros.bld, a kernel image suitable
15           for programming into flash memory, and vmlinux, a kernel image
16           suitable for loading via kexec.
17
18 menu "PS3 Platform Options"
19         depends on PPC_PS3
20
21 config PS3_ADVANCED
22         depends on PPC_PS3
23         bool "PS3 Advanced configuration options"
24         help
25           This gives you access to some advanced options for the PS3. The
26           defaults should be fine for most users, but these options may make
27           it possible to better control the kernel configuration if you know
28           what you are doing.
29
30           Note that the answer to this question won't directly affect the
31           kernel: saying N will just cause the configurator to skip all
32           the questions about these options.
33
34           Most users should say N to this question.
35
36 config PS3_HTAB_SIZE
37         depends on PPC_PS3
38         int "PS3 Platform pagetable size" if PS3_ADVANCED
39         range 18 20
40         default 20
41         help
42           This option is only for experts who may have the desire to fine
43           tune the pagetable size on their system.  The value here is
44           expressed as the log2 of the page table size.  Valid values are
45           18, 19, and 20, corresponding to 256KB, 512KB and 1MB respectively.
46
47           If unsure, choose the default (20) with the confidence that your
48           system will have optimal runtime performance.
49
50 config PS3_DYNAMIC_DMA
51         depends on PPC_PS3
52         bool "PS3 Platform dynamic DMA page table management"
53         help
54           This option will enable kernel support to take advantage of the
55           per device dynamic DMA page table management provided by the Cell
56           processor's IO Controller.  This support incurs some runtime
57           overhead and also slightly increases kernel memory usage.  The
58           current implementation should be considered experimental.
59
60           This support is mainly for Linux kernel development.  If unsure,
61           say N.
62
63 config PS3_VUART
64         depends on PPC_PS3
65         tristate
66
67 config PS3_PS3AV
68         depends on PPC_PS3
69         tristate "PS3 AV settings driver" if PS3_ADVANCED
70         select VIDEO
71         select PS3_VUART
72         default y
73         help
74           Include support for the PS3 AV Settings driver.
75
76           This support is required for PS3 graphics and sound. In
77           general, all users will say Y or M.
78
79 config PS3_SYS_MANAGER
80         depends on PPC_PS3
81         tristate "PS3 System Manager driver" if PS3_ADVANCED
82         select PS3_VUART
83         default y
84         help
85           Include support for the PS3 System Manager.
86
87           This support is required for PS3 system control.  In
88           general, all users will say Y or M.
89
90 config PS3_VERBOSE_RESULT
91         bool "PS3 Verbose LV1 hypercall results" if PS3_ADVANCED
92         depends on PPC_PS3
93         help
94           Enables more verbose log messages for LV1 hypercall results.
95
96           If in doubt, say N here and reduce the size of the kernel by a
97           small amount.
98
99 config PS3_REPOSITORY_WRITE
100         bool "PS3 Repository write support" if PS3_ADVANCED
101         depends on PPC_PS3
102         help
103           Enables support for writing to the PS3 System Repository.
104
105           This support is intended for bootloaders that need to store data
106           in the repository for later boot stages.
107
108           If in doubt, say N here and reduce the size of the kernel by a
109           small amount.
110
111 config PS3_STORAGE
112         depends on PPC_PS3
113         tristate
114
115 config PS3_DISK
116         tristate "PS3 Disk Storage Driver"
117         depends on PPC_PS3 && BLOCK
118         select PS3_STORAGE
119         help
120           Include support for the PS3 Disk Storage.
121
122           This support is required to access the PS3 hard disk.
123           In general, all users will say Y or M.
124
125 config PS3_ROM
126         tristate "PS3 BD/DVD/CD-ROM Storage Driver"
127         depends on PPC_PS3 && SCSI
128         select PS3_STORAGE
129         help
130           Include support for the PS3 ROM Storage.
131
132           This support is required to access the PS3 BD/DVD/CD-ROM drive.
133           In general, all users will say Y or M.
134           Also make sure to say Y or M to "SCSI CDROM support" later.
135
136 config PS3_FLASH
137         tristate "PS3 FLASH ROM Storage Driver"
138         depends on PPC_PS3
139         select PS3_STORAGE
140         help
141           Include support for the PS3 FLASH ROM Storage.
142
143           This support is required to access the PS3 FLASH ROM, which
144           contains the boot loader and some boot options.
145           In general, PS3 OtherOS users will say Y or M.
146
147           As this driver needs a fixed buffer of 256 KiB of memory, it can
148           be disabled on the kernel command line using "ps3flash=off", to
149           not allocate this fixed buffer.
150
151 config PS3_VRAM
152         tristate "PS3 Video RAM Storage Driver"
153         depends on FB_PS3=y && BLOCK && m
154         help
155           This driver allows you to use excess PS3 video RAM as volatile
156           storage or system swap.
157
158 config PS3_LPM
159         tristate "PS3 Logical Performance Monitor support"
160         depends on PPC_PS3
161         help
162           Include support for the PS3 Logical Performance Monitor.
163
164           This support is required to use the logical performance monitor
165           of the PS3's LV1 hypervisor.
166
167           If you intend to use the advanced performance monitoring and
168           profiling support of the Cell processor with programs like
169           perfmon2, then say Y or M, otherwise say N.
170
171 endmenu