mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-09-08 01:08:03 -04:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
467
arch/tile/Kconfig
Normal file
467
arch/tile/Kconfig
Normal file
|
@ -0,0 +1,467 @@
|
|||
# For a description of the syntax of this configuration file,
|
||||
# see Documentation/kbuild/kconfig-language.txt.
|
||||
|
||||
config TILE
|
||||
def_bool y
|
||||
select HAVE_PERF_EVENTS
|
||||
select USE_PMC if PERF_EVENTS
|
||||
select HAVE_DMA_ATTRS
|
||||
select HAVE_DMA_API_DEBUG
|
||||
select HAVE_KVM if !TILEGX
|
||||
select GENERIC_FIND_FIRST_BIT
|
||||
select SYSCTL_EXCEPTION_TRACE
|
||||
select CC_OPTIMIZE_FOR_SIZE
|
||||
select HAVE_DEBUG_KMEMLEAK
|
||||
select GENERIC_IRQ_PROBE
|
||||
select GENERIC_PENDING_IRQ if SMP
|
||||
select GENERIC_IRQ_SHOW
|
||||
select HAVE_DEBUG_BUGVERBOSE
|
||||
select VIRT_TO_BUS
|
||||
select SYS_HYPERVISOR
|
||||
select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
|
||||
select ARCH_HAVE_NMI_SAFE_CMPXCHG
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select MODULES_USE_ELF_RELA
|
||||
select HAVE_ARCH_TRACEHOOK
|
||||
select HAVE_SYSCALL_TRACEPOINTS
|
||||
select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
|
||||
select HAVE_DEBUG_STACKOVERFLOW
|
||||
select ARCH_WANT_FRAME_POINTERS
|
||||
|
||||
# FIXME: investigate whether we need/want these options.
|
||||
# select HAVE_IOREMAP_PROT
|
||||
# select HAVE_OPTPROBES
|
||||
# select HAVE_REGS_AND_STACK_ACCESS_API
|
||||
# select HAVE_HW_BREAKPOINT
|
||||
# select PERF_EVENTS
|
||||
# select HAVE_USER_RETURN_NOTIFIER
|
||||
# config NO_BOOTMEM
|
||||
# config ARCH_SUPPORTS_DEBUG_PAGEALLOC
|
||||
# config HUGETLB_PAGE_SIZE_VARIABLE
|
||||
|
||||
config MMU
|
||||
def_bool y
|
||||
|
||||
config GENERIC_CSUM
|
||||
def_bool y
|
||||
|
||||
config HAVE_ARCH_ALLOC_REMAP
|
||||
def_bool y
|
||||
|
||||
config HAVE_SETUP_PER_CPU_AREA
|
||||
def_bool y
|
||||
|
||||
config NEED_PER_CPU_PAGE_FIRST_CHUNK
|
||||
def_bool y
|
||||
|
||||
config SYS_SUPPORTS_HUGETLBFS
|
||||
def_bool y
|
||||
|
||||
# Support for additional huge page sizes besides HPAGE_SIZE.
|
||||
# The software support is currently only present in the TILE-Gx
|
||||
# hypervisor. TILEPro in any case does not support page sizes
|
||||
# larger than the default HPAGE_SIZE.
|
||||
config HUGETLB_SUPER_PAGES
|
||||
depends on HUGETLB_PAGE && TILEGX
|
||||
def_bool y
|
||||
|
||||
config GENERIC_TIME_VSYSCALL
|
||||
def_bool y
|
||||
|
||||
# Enable PMC if PERF_EVENTS, OPROFILE, or WATCHPOINTS are enabled.
|
||||
config USE_PMC
|
||||
bool
|
||||
|
||||
# FIXME: tilegx can implement a more efficient rwsem.
|
||||
config RWSEM_GENERIC_SPINLOCK
|
||||
def_bool y
|
||||
|
||||
# We only support gcc 4.4 and above, so this should work.
|
||||
config ARCH_SUPPORTS_OPTIMIZED_INLINING
|
||||
def_bool y
|
||||
|
||||
config ARCH_PHYS_ADDR_T_64BIT
|
||||
def_bool y
|
||||
|
||||
config ARCH_DMA_ADDR_T_64BIT
|
||||
def_bool y
|
||||
|
||||
config NEED_DMA_MAP_STATE
|
||||
def_bool y
|
||||
|
||||
config ARCH_HAS_DMA_SET_COHERENT_MASK
|
||||
bool
|
||||
|
||||
config LOCKDEP_SUPPORT
|
||||
def_bool y
|
||||
|
||||
config STACKTRACE_SUPPORT
|
||||
def_bool y
|
||||
select STACKTRACE
|
||||
|
||||
# We use discontigmem for now; at some point we may want to switch
|
||||
# to sparsemem (Tilera bug 7996).
|
||||
config ARCH_DISCONTIGMEM_ENABLE
|
||||
def_bool y
|
||||
|
||||
config ARCH_DISCONTIGMEM_DEFAULT
|
||||
def_bool y
|
||||
|
||||
config TRACE_IRQFLAGS_SUPPORT
|
||||
def_bool y
|
||||
|
||||
config STRICT_DEVMEM
|
||||
def_bool y
|
||||
|
||||
# SMP is required for Tilera Linux.
|
||||
config SMP
|
||||
def_bool y
|
||||
|
||||
config HVC_TILE
|
||||
depends on TTY
|
||||
select HVC_DRIVER
|
||||
select HVC_IRQ if TILEGX
|
||||
def_bool y
|
||||
|
||||
config TILEGX
|
||||
bool "Building for TILE-Gx (64-bit) processor"
|
||||
select SPARSE_IRQ
|
||||
select GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
|
||||
select HAVE_FUNCTION_TRACER
|
||||
select HAVE_FUNCTION_GRAPH_TRACER
|
||||
select HAVE_DYNAMIC_FTRACE
|
||||
select HAVE_FTRACE_MCOUNT_RECORD
|
||||
select HAVE_KPROBES
|
||||
select HAVE_KRETPROBES
|
||||
select HAVE_ARCH_KGDB
|
||||
select ARCH_SUPPORTS_ATOMIC_RMW
|
||||
|
||||
config TILEPRO
|
||||
def_bool !TILEGX
|
||||
|
||||
config 64BIT
|
||||
def_bool TILEGX
|
||||
|
||||
config ARCH_DEFCONFIG
|
||||
string
|
||||
default "arch/tile/configs/tilepro_defconfig" if !TILEGX
|
||||
default "arch/tile/configs/tilegx_defconfig" if TILEGX
|
||||
|
||||
source "init/Kconfig"
|
||||
|
||||
source "kernel/Kconfig.freezer"
|
||||
|
||||
menu "Tilera-specific configuration"
|
||||
|
||||
config NR_CPUS
|
||||
int "Maximum number of tiles (2-255)"
|
||||
range 2 255
|
||||
depends on SMP
|
||||
default "64"
|
||||
---help---
|
||||
Building with 64 is the recommended value, but a slightly
|
||||
smaller kernel memory footprint results from using a smaller
|
||||
value on chips with fewer tiles.
|
||||
|
||||
if TILEGX
|
||||
|
||||
choice
|
||||
prompt "Kernel page size"
|
||||
default PAGE_SIZE_64KB
|
||||
help
|
||||
This lets you select the page size of the kernel. For best
|
||||
performance on memory-intensive applications, a page size of 64KB
|
||||
is recommended. For workloads involving many small files, many
|
||||
connections, etc., it may be better to select 16KB, which uses
|
||||
memory more efficiently at some cost in TLB performance.
|
||||
|
||||
Note that this option is TILE-Gx specific; currently
|
||||
TILEPro page size is set by rebuilding the hypervisor.
|
||||
|
||||
config PAGE_SIZE_16KB
|
||||
bool "16KB"
|
||||
|
||||
config PAGE_SIZE_64KB
|
||||
bool "64KB"
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
source "kernel/Kconfig.hz"
|
||||
|
||||
config KEXEC
|
||||
bool "kexec system call"
|
||||
---help---
|
||||
kexec is a system call that implements the ability to shutdown your
|
||||
current kernel, and to start another kernel. It is like a reboot
|
||||
but it is independent of the system firmware. It is used
|
||||
to implement the "mboot" Tilera booter.
|
||||
|
||||
The name comes from the similarity to the exec system call.
|
||||
|
||||
config COMPAT
|
||||
bool "Support 32-bit TILE-Gx binaries in addition to 64-bit"
|
||||
depends on TILEGX
|
||||
select COMPAT_BINFMT_ELF
|
||||
default y
|
||||
---help---
|
||||
If enabled, the kernel will support running TILE-Gx binaries
|
||||
that were built with the -m32 option.
|
||||
|
||||
config SYSVIPC_COMPAT
|
||||
def_bool y
|
||||
depends on COMPAT && SYSVIPC
|
||||
|
||||
# We do not currently support disabling HIGHMEM on tilepro.
|
||||
config HIGHMEM
|
||||
bool # "Support for more than 512 MB of RAM"
|
||||
default !TILEGX
|
||||
---help---
|
||||
Linux can use the full amount of RAM in the system by
|
||||
default. However, the address space of TILE processors is
|
||||
only 4 Gigabytes large. That means that, if you have a large
|
||||
amount of physical memory, not all of it can be "permanently
|
||||
mapped" by the kernel. The physical memory that's not
|
||||
permanently mapped is called "high memory".
|
||||
|
||||
If you are compiling a kernel which will never run on a
|
||||
machine with more than 512 MB total physical RAM, answer
|
||||
"false" here. This will result in the kernel mapping all of
|
||||
physical memory into the top 1 GB of virtual memory space.
|
||||
|
||||
If unsure, say "true".
|
||||
|
||||
config ZONE_DMA
|
||||
def_bool y
|
||||
|
||||
config IOMMU_HELPER
|
||||
bool
|
||||
|
||||
config NEED_SG_DMA_LENGTH
|
||||
bool
|
||||
|
||||
config SWIOTLB
|
||||
bool
|
||||
default TILEGX
|
||||
select IOMMU_HELPER
|
||||
select NEED_SG_DMA_LENGTH
|
||||
select ARCH_HAS_DMA_SET_COHERENT_MASK
|
||||
|
||||
# We do not currently support disabling NUMA.
|
||||
config NUMA
|
||||
bool # "NUMA Memory Allocation and Scheduler Support"
|
||||
depends on SMP && DISCONTIGMEM
|
||||
default y
|
||||
---help---
|
||||
NUMA memory allocation is required for TILE processors
|
||||
unless booting with memory striping enabled in the
|
||||
hypervisor, or with only a single memory controller.
|
||||
It is recommended that this option always be enabled.
|
||||
|
||||
config NODES_SHIFT
|
||||
int "Log base 2 of the max number of memory controllers"
|
||||
default 2
|
||||
depends on NEED_MULTIPLE_NODES
|
||||
---help---
|
||||
By default, 2, i.e. 2^2 == 4 DDR2 controllers.
|
||||
In a system with more controllers, this value should be raised.
|
||||
|
||||
choice
|
||||
depends on !TILEGX
|
||||
prompt "Memory split" if EXPERT
|
||||
default VMSPLIT_3G
|
||||
---help---
|
||||
Select the desired split between kernel and user memory.
|
||||
|
||||
If the address range available to the kernel is less than the
|
||||
physical memory installed, the remaining memory will be available
|
||||
as "high memory". Accessing high memory is a little more costly
|
||||
than low memory, as it needs to be mapped into the kernel first.
|
||||
Note that increasing the kernel address space limits the range
|
||||
available to user programs, making the address space there
|
||||
tighter. Selecting anything other than the default 3G/1G split
|
||||
will also likely make your kernel incompatible with binary-only
|
||||
kernel modules.
|
||||
|
||||
If you are not absolutely sure what you are doing, leave this
|
||||
option alone!
|
||||
|
||||
config VMSPLIT_3_75G
|
||||
bool "3.75G/0.25G user/kernel split (no kernel networking)"
|
||||
config VMSPLIT_3_5G
|
||||
bool "3.5G/0.5G user/kernel split"
|
||||
config VMSPLIT_3G
|
||||
bool "3G/1G user/kernel split"
|
||||
config VMSPLIT_2_75G
|
||||
bool "2.75G/1.25G user/kernel split (for full 1G low memory)"
|
||||
config VMSPLIT_2_5G
|
||||
bool "2.5G/1.5G user/kernel split"
|
||||
config VMSPLIT_2_25G
|
||||
bool "2.25G/1.75G user/kernel split"
|
||||
config VMSPLIT_2G
|
||||
bool "2G/2G user/kernel split"
|
||||
config VMSPLIT_1G
|
||||
bool "1G/3G user/kernel split"
|
||||
endchoice
|
||||
|
||||
config PAGE_OFFSET
|
||||
hex
|
||||
depends on !64BIT
|
||||
default 0xF0000000 if VMSPLIT_3_75G
|
||||
default 0xE0000000 if VMSPLIT_3_5G
|
||||
default 0xB0000000 if VMSPLIT_2_75G
|
||||
default 0xA0000000 if VMSPLIT_2_5G
|
||||
default 0x90000000 if VMSPLIT_2_25G
|
||||
default 0x80000000 if VMSPLIT_2G
|
||||
default 0x40000000 if VMSPLIT_1G
|
||||
default 0xC0000000
|
||||
|
||||
source "mm/Kconfig"
|
||||
|
||||
source "kernel/Kconfig.preempt"
|
||||
|
||||
config CMDLINE_BOOL
|
||||
bool "Built-in kernel command line"
|
||||
default n
|
||||
---help---
|
||||
Allow for specifying boot arguments to the kernel at
|
||||
build time. On some systems (e.g. embedded ones), it is
|
||||
necessary or convenient to provide some or all of the
|
||||
kernel boot arguments with the kernel itself (that is,
|
||||
to not rely on the boot loader to provide them.)
|
||||
|
||||
To compile command line arguments into the kernel,
|
||||
set this option to 'Y', then fill in the
|
||||
the boot arguments in CONFIG_CMDLINE.
|
||||
|
||||
Systems with fully functional boot loaders (e.g. mboot, or
|
||||
if booting over PCI) should leave this option set to 'N'.
|
||||
|
||||
config CMDLINE
|
||||
string "Built-in kernel command string"
|
||||
depends on CMDLINE_BOOL
|
||||
default ""
|
||||
---help---
|
||||
Enter arguments here that should be compiled into the kernel
|
||||
image and used at boot time. If the boot loader provides a
|
||||
command line at boot time, it is appended to this string to
|
||||
form the full kernel command line, when the system boots.
|
||||
|
||||
However, you can use the CONFIG_CMDLINE_OVERRIDE option to
|
||||
change this behavior.
|
||||
|
||||
In most cases, the command line (whether built-in or provided
|
||||
by the boot loader) should specify the device for the root
|
||||
file system.
|
||||
|
||||
config CMDLINE_OVERRIDE
|
||||
bool "Built-in command line overrides boot loader arguments"
|
||||
default n
|
||||
depends on CMDLINE_BOOL
|
||||
---help---
|
||||
Set this option to 'Y' to have the kernel ignore the boot loader
|
||||
command line, and use ONLY the built-in command line.
|
||||
|
||||
This is used to work around broken boot loaders. This should
|
||||
be set to 'N' under normal conditions.
|
||||
|
||||
config VMALLOC_RESERVE
|
||||
hex
|
||||
default 0x2000000
|
||||
|
||||
config HARDWALL
|
||||
bool "Hardwall support to allow access to user dynamic network"
|
||||
default y
|
||||
|
||||
config KERNEL_PL
|
||||
int "Processor protection level for kernel"
|
||||
range 1 2
|
||||
default 2 if TILEGX
|
||||
default 1 if !TILEGX
|
||||
---help---
|
||||
Since MDE 4.2, the Tilera hypervisor runs the kernel
|
||||
at PL2 by default. If running under an older hypervisor,
|
||||
or as a KVM guest, you must run at PL1. (The current
|
||||
hypervisor may also be recompiled with "make HV_PL=2" to
|
||||
allow it to run a kernel at PL1, but clients running at PL1
|
||||
are not expected to be supported indefinitely.)
|
||||
|
||||
If you're not sure, don't change the default.
|
||||
|
||||
source "arch/tile/gxio/Kconfig"
|
||||
|
||||
endmenu # Tilera-specific configuration
|
||||
|
||||
menu "Bus options"
|
||||
|
||||
config PCI
|
||||
bool "PCI support"
|
||||
default y
|
||||
select PCI_DOMAINS
|
||||
select GENERIC_PCI_IOMAP
|
||||
select TILE_GXIO_TRIO if TILEGX
|
||||
select PCI_MSI if TILEGX
|
||||
---help---
|
||||
Enable PCI root complex support, so PCIe endpoint devices can
|
||||
be attached to the Tile chip. Many, but not all, PCI devices
|
||||
are supported under Tilera's root complex driver.
|
||||
|
||||
config PCI_DOMAINS
|
||||
bool
|
||||
|
||||
config NO_IOMEM
|
||||
def_bool !PCI
|
||||
|
||||
config NO_IOPORT_MAP
|
||||
def_bool !PCI
|
||||
|
||||
config TILE_PCI_IO
|
||||
bool "PCI I/O space support"
|
||||
default n
|
||||
depends on PCI
|
||||
depends on TILEGX
|
||||
---help---
|
||||
Enable PCI I/O space support on TILEGx. Since the PCI I/O space
|
||||
is used by few modern PCIe endpoint devices, its support is disabled
|
||||
by default to save the TRIO PIO Region resource for other purposes.
|
||||
|
||||
source "drivers/pci/Kconfig"
|
||||
|
||||
source "drivers/pci/pcie/Kconfig"
|
||||
|
||||
config TILE_USB
|
||||
tristate "Tilera USB host adapter support"
|
||||
default y
|
||||
depends on USB
|
||||
depends on TILEGX
|
||||
select TILE_GXIO_USB_HOST
|
||||
---help---
|
||||
Provides USB host adapter support for the built-in EHCI and OHCI
|
||||
interfaces on TILE-Gx chips.
|
||||
|
||||
source "drivers/pci/hotplug/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
menu "Executable file formats"
|
||||
|
||||
source "fs/Kconfig.binfmt"
|
||||
|
||||
endmenu
|
||||
|
||||
source "net/Kconfig"
|
||||
|
||||
source "drivers/Kconfig"
|
||||
|
||||
source "fs/Kconfig"
|
||||
|
||||
source "arch/tile/Kconfig.debug"
|
||||
|
||||
source "security/Kconfig"
|
||||
|
||||
source "crypto/Kconfig"
|
||||
|
||||
source "lib/Kconfig"
|
||||
|
||||
source "arch/tile/kvm/Kconfig"
|
Loading…
Add table
Add a link
Reference in a new issue