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