Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0
config CONFIG_PPC_PS3
	bool "Sony PS3"
	depends on CONFIG_PPC64 && CONFIG_PPC_BOOK3S && CONFIG_CPU_BIG_ENDIAN
	select CONFIG_PPC_CELL
	select CONFIG_USB_OHCI_LITTLE_ENDIAN
	select CONFIG_USB_OHCI_BIG_ENDIAN_MMIO
	select CONFIG_USB_EHCI_BIG_ENDIAN_MMIO
	select CONFIG_HAVE_PCI
	help
	  This option enables support for the Sony PS3 game console
	  and other platforms using the PS3 hypervisor.  Enabling this
	  option will allow building otheros.bld, a kernel image suitable
	  for programming into flash memory, and vmlinux, a kernel image
	  suitable for loading via kexec.

menu "PS3 Platform Options"
	depends on CONFIG_PPC_PS3

config CONFIG_PS3_ADVANCED
	depends on CONFIG_PPC_PS3
	bool "PS3 Advanced configuration options"
	help
	  This gives you access to some advanced options for the PS3. The
	  defaults should be fine for most users, but these options may make
	  it possible to better control the kernel configuration if you know
	  what you are doing.

	  Note that the answer to this question won't directly affect the
	  kernel: saying N will just cause the configurator to skip all
	  the questions about these options.

	  Most users should say N to this question.

config CONFIG_PS3_HTAB_SIZE
	depends on CONFIG_PPC_PS3
	int "PS3 Platform pagetable size" if CONFIG_PS3_ADVANCED
	range 18 20
	default 20
	help
	  This option is only for experts who may have the desire to fine
	  tune the pagetable size on their system.  The value here is
	  expressed as the log2 of the page table size.  Valid values are
	  18, 19, and 20, corresponding to 256KB, 512KB and 1MB respectively.

	  If unsure, choose the default (20) with the confidence that your
	  system will have optimal runtime performance.

config CONFIG_PS3_DYNAMIC_DMA
	depends on CONFIG_PPC_PS3
	bool "PS3 Platform dynamic DMA page table management"
	help
	  This option will enable kernel support to take advantage of the
	  per device dynamic DMA page table management provided by the Cell
	  processor's IO Controller.  This support incurs some runtime
	  overhead and also slightly increases kernel memory usage.  The
	  current implementation should be considered experimental.

	  This support is mainly for Linux kernel development.  If unsure,
	  say N.

config CONFIG_PS3_VUART
	depends on CONFIG_PPC_PS3
	tristate

config CONFIG_PS3_PS3AV
	depends on CONFIG_PPC_PS3
	tristate "PS3 AV settings driver" if CONFIG_PS3_ADVANCED
	select CONFIG_PS3_VUART
	default y
	help
	  Include support for the PS3 AV Settings driver.

	  This support is required for PS3 graphics and sound. In
	  general, all users will say Y or CONFIG_M.

config CONFIG_PS3_SYS_MANAGER
	depends on CONFIG_PPC_PS3
	tristate "PS3 System Manager driver" if CONFIG_PS3_ADVANCED
	select CONFIG_PS3_VUART
	default y
	help
	  Include support for the PS3 System Manager.

	  This support is required for PS3 system control.  In
	  general, all users will say Y or CONFIG_M.

config CONFIG_PS3_REPOSITORY_WRITE
	bool "PS3 Repository write support" if CONFIG_PS3_ADVANCED
	depends on CONFIG_PPC_PS3
	help
	  Enables support for writing to the PS3 System Repository.

	  This support is intended for bootloaders that need to store data
	  in the repository for later boot stages.

	  If in doubt, say N here and reduce the size of the kernel by a
	  small amount.

config CONFIG_PS3_STORAGE
	depends on CONFIG_PPC_PS3
	tristate

config CONFIG_PS3_DISK
	tristate "PS3 Disk Storage Driver"
	depends on CONFIG_PPC_PS3 && CONFIG_BLOCK
	select CONFIG_PS3_STORAGE
	help
	  Include support for the PS3 Disk Storage.

	  This support is required to access the PS3 hard disk.
	  In general, all users will say Y or CONFIG_M.

config CONFIG_PS3_ROM
	tristate "PS3 BD/DVD/CD-ROM Storage Driver"
	depends on CONFIG_PPC_PS3 && CONFIG_SCSI
	select CONFIG_PS3_STORAGE
	help
	  Include support for the PS3 CONFIG_ROM Storage.

	  This support is required to access the PS3 BD/DVD/CD-CONFIG_ROM drive.
	  In general, all users will say Y or CONFIG_M.
	  Also make sure to say Y or CONFIG_M to "SCSI CDROM support" later.

config CONFIG_PS3_FLASH
	tristate "PS3 FLASH ROM Storage Driver"
	depends on CONFIG_PPC_PS3
	select CONFIG_PS3_STORAGE
	help
	  Include support for the PS3 FLASH CONFIG_ROM Storage.

	  This support is required to access the PS3 FLASH CONFIG_ROM, which
	  contains the boot loader and some boot options.
	  In general, PS3 OtherOS users will say Y or CONFIG_M.

	  As this driver needs a fixed buffer of 256 KiB of memory, it can
	  be disabled on the kernel command line using "ps3flash=off", to
	  not allocate this fixed buffer.

config CONFIG_PS3_VRAM
	tristate "PS3 Video RAM Storage Driver"
	depends on CONFIG_FB_PS3=y && CONFIG_BLOCK && m
	help
	  This driver allows you to use excess PS3 video RAM as volatile
	  storage or system swap.

config CONFIG_PS3_LPM
	tristate "PS3 Logical Performance Monitor support"
	depends on CONFIG_PPC_PS3
	help
	  Include support for the PS3 Logical Performance Monitor.

	  This support is required to use the logical performance monitor
	  of the PS3's LV1 hypervisor.

	  If you intend to use the advanced performance monitoring and
	  profiling support of the Cell processor with programs like
	  oprofile and perfmon2, then say Y or CONFIG_M, otherwise say N.

config CONFIG_PS3GELIC_UDBG
	bool "PS3 udbg output via UDP broadcasts on Ethernet"
	depends on CONFIG_PPC_PS3
	help
	  Enables udbg early debugging output by sending broadcast UDP
	  via the Ethernet port (UDP port number 18194).

	  This driver uses a trivial implementation and is independent
	  from the main PS3 gelic network driver.

	  If in doubt, say N here.

endmenu