Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (37 commits) [POWERPC] EEH: Make sure warning message is printed [POWERPC] Make altivec code in swsusp_32.S depend on CONFIG_ALTIVEC [POWERPC] windfarm: Fix windfarm thread freezer interaction [POWERPC] Fix si_addr value on low level hash failures [POWERPC] Refresh ppc64_defconfig and enable pasemi-related options [POWERPC] pasemi: Update defconfig [POWERPC] iSeries: Fix ref counting in vio setup [POWERPC] ] Fix memset size error [POWERPC] Fix link errors for allyesconfig [POWERPC] iSeries_init_IRQ non-PCI tidy [POWERPC] Change fallocate to match unistd.h on powerpc [POWERPC] EEH: Avoid crash on null device [POWERPC] EEH: Drivers that need reset trump others [POWERPC] EEH: Clean up comments [POWERPC] Fix off-by-one error in setting decrementer on Book E/4xx (v2) [POWERPC] Fix switch_slb handling of 1T ESID values [POWERPC] Fix build failure when CONFIG_VIRT_CPU_ACCOUNTING is not defined [POWERPC] Include udbg.h when using udbg_printf [POWERPC] Fix cache line vs. block size confusion [POWERPC] Fix sysctl table check failure on PowerMac ...
This commit is contained in:
commit
c4888f9ffa
53 changed files with 1001 additions and 365 deletions
|
@ -52,6 +52,7 @@ Table of Contents
|
|||
i) Freescale QUICC Engine module (QE)
|
||||
j) CFI or JEDEC memory-mapped NOR flash
|
||||
k) Global Utilities Block
|
||||
l) Xilinx IP cores
|
||||
|
||||
VII - Specifying interrupt information for devices
|
||||
1) interrupts property
|
||||
|
@ -851,12 +852,18 @@ address which can extend beyond that limit.
|
|||
/cpus/PowerPC,970FX@0
|
||||
/cpus/PowerPC,970FX@1
|
||||
(unit addresses do not require leading zeroes)
|
||||
- d-cache-line-size : one cell, L1 data cache line size in bytes
|
||||
- i-cache-line-size : one cell, L1 instruction cache line size in
|
||||
- d-cache-block-size : one cell, L1 data cache block size in bytes (*)
|
||||
- i-cache-block-size : one cell, L1 instruction cache block size in
|
||||
bytes
|
||||
- d-cache-size : one cell, size of L1 data cache in bytes
|
||||
- i-cache-size : one cell, size of L1 instruction cache in bytes
|
||||
|
||||
(*) The cache "block" size is the size on which the cache management
|
||||
instructions operate. Historically, this document used the cache
|
||||
"line" size here which is incorrect. The kernel will prefer the cache
|
||||
block size and will fallback to cache line size for backward
|
||||
compatibility.
|
||||
|
||||
Recommended properties:
|
||||
|
||||
- timebase-frequency : a cell indicating the frequency of the
|
||||
|
@ -870,6 +877,10 @@ address which can extend beyond that limit.
|
|||
for the above, the common code doesn't use that property, but
|
||||
you are welcome to re-use the pSeries or Maple one. A future
|
||||
kernel version might provide a common function for this.
|
||||
- d-cache-line-size : one cell, L1 data cache line size in bytes
|
||||
if different from the block size
|
||||
- i-cache-line-size : one cell, L1 instruction cache line size in
|
||||
bytes if different from the block size
|
||||
|
||||
You are welcome to add any property you find relevant to your board,
|
||||
like some information about the mechanism used to soft-reset the
|
||||
|
@ -2242,6 +2253,266 @@ platforms are moved over to use the flattened-device-tree model.
|
|||
available.
|
||||
For Axon: 0x0000012a
|
||||
|
||||
l) Xilinx IP cores
|
||||
|
||||
The Xilinx EDK toolchain ships with a set of IP cores (devices) for use
|
||||
in Xilinx Spartan and Virtex FPGAs. The devices cover the whole range
|
||||
of standard device types (network, serial, etc.) and miscellanious
|
||||
devices (gpio, LCD, spi, etc). Also, since these devices are
|
||||
implemented within the fpga fabric every instance of the device can be
|
||||
synthesised with different options that change the behaviour.
|
||||
|
||||
Each IP-core has a set of parameters which the FPGA designer can use to
|
||||
control how the core is synthesized. Historically, the EDK tool would
|
||||
extract the device parameters relevant to device drivers and copy them
|
||||
into an 'xparameters.h' in the form of #define symbols. This tells the
|
||||
device drivers how the IP cores are configured, but it requres the kernel
|
||||
to be recompiled every time the FPGA bitstream is resynthesized.
|
||||
|
||||
The new approach is to export the parameters into the device tree and
|
||||
generate a new device tree each time the FPGA bitstream changes. The
|
||||
parameters which used to be exported as #defines will now become
|
||||
properties of the device node. In general, device nodes for IP-cores
|
||||
will take the following form:
|
||||
|
||||
(name)@(base-address) {
|
||||
compatible = "xlnx,(ip-core-name)-(HW_VER)"
|
||||
[, (list of compatible devices), ...];
|
||||
reg = <(baseaddr) (size)>;
|
||||
interrupt-parent = <&interrupt-controller-phandle>;
|
||||
interrupts = < ... >;
|
||||
xlnx,(parameter1) = "(string-value)";
|
||||
xlnx,(parameter2) = <(int-value)>;
|
||||
};
|
||||
|
||||
(ip-core-name): the name of the ip block (given after the BEGIN
|
||||
directive in system.mhs). Should be in lowercase
|
||||
and all underscores '_' converted to dashes '-'.
|
||||
(name): is derived from the "PARAMETER INSTANCE" value.
|
||||
(parameter#): C_* parameters from system.mhs. The C_ prefix is
|
||||
dropped from the parameter name, the name is converted
|
||||
to lowercase and all underscore '_' characters are
|
||||
converted to dashes '-'.
|
||||
(baseaddr): the C_BASEADDR parameter.
|
||||
(HW_VER): from the HW_VER parameter.
|
||||
(size): equals C_HIGHADDR - C_BASEADDR + 1
|
||||
|
||||
Typically, the compatible list will include the exact IP core version
|
||||
followed by an older IP core version which implements the same
|
||||
interface or any other device with the same interface.
|
||||
|
||||
'reg', 'interrupt-parent' and 'interrupts' are all optional properties.
|
||||
|
||||
For example, the following block from system.mhs:
|
||||
|
||||
BEGIN opb_uartlite
|
||||
PARAMETER INSTANCE = opb_uartlite_0
|
||||
PARAMETER HW_VER = 1.00.b
|
||||
PARAMETER C_BAUDRATE = 115200
|
||||
PARAMETER C_DATA_BITS = 8
|
||||
PARAMETER C_ODD_PARITY = 0
|
||||
PARAMETER C_USE_PARITY = 0
|
||||
PARAMETER C_CLK_FREQ = 50000000
|
||||
PARAMETER C_BASEADDR = 0xEC100000
|
||||
PARAMETER C_HIGHADDR = 0xEC10FFFF
|
||||
BUS_INTERFACE SOPB = opb_7
|
||||
PORT OPB_Clk = CLK_50MHz
|
||||
PORT Interrupt = opb_uartlite_0_Interrupt
|
||||
PORT RX = opb_uartlite_0_RX
|
||||
PORT TX = opb_uartlite_0_TX
|
||||
PORT OPB_Rst = sys_bus_reset_0
|
||||
END
|
||||
|
||||
becomes the following device tree node:
|
||||
|
||||
opb-uartlite-0@ec100000 {
|
||||
device_type = "serial";
|
||||
compatible = "xlnx,opb-uartlite-1.00.b";
|
||||
reg = <ec100000 10000>;
|
||||
interrupt-parent = <&opb-intc>;
|
||||
interrupts = <1 0>; // got this from the opb_intc parameters
|
||||
current-speed = <d#115200>; // standard serial device prop
|
||||
clock-frequency = <d#50000000>; // standard serial device prop
|
||||
xlnx,data-bits = <8>;
|
||||
xlnx,odd-parity = <0>;
|
||||
xlnx,use-parity = <0>;
|
||||
};
|
||||
|
||||
Some IP cores actually implement 2 or more logical devices. In this case,
|
||||
the device should still describe the whole IP core with a single node
|
||||
and add a child node for each logical device. The ranges property can
|
||||
be used to translate from parent IP-core to the registers of each device.
|
||||
(Note: this makes the assumption that both logical devices have the same
|
||||
bus binding. If this is not true, then separate nodes should be used for
|
||||
each logical device). The 'cell-index' property can be used to enumerate
|
||||
logical devices within an IP core. For example, the following is the
|
||||
system.mhs entry for the dual ps2 controller found on the ml403 reference
|
||||
design.
|
||||
|
||||
BEGIN opb_ps2_dual_ref
|
||||
PARAMETER INSTANCE = opb_ps2_dual_ref_0
|
||||
PARAMETER HW_VER = 1.00.a
|
||||
PARAMETER C_BASEADDR = 0xA9000000
|
||||
PARAMETER C_HIGHADDR = 0xA9001FFF
|
||||
BUS_INTERFACE SOPB = opb_v20_0
|
||||
PORT Sys_Intr1 = ps2_1_intr
|
||||
PORT Sys_Intr2 = ps2_2_intr
|
||||
PORT Clkin1 = ps2_clk_rx_1
|
||||
PORT Clkin2 = ps2_clk_rx_2
|
||||
PORT Clkpd1 = ps2_clk_tx_1
|
||||
PORT Clkpd2 = ps2_clk_tx_2
|
||||
PORT Rx1 = ps2_d_rx_1
|
||||
PORT Rx2 = ps2_d_rx_2
|
||||
PORT Txpd1 = ps2_d_tx_1
|
||||
PORT Txpd2 = ps2_d_tx_2
|
||||
END
|
||||
|
||||
It would result in the following device tree nodes:
|
||||
|
||||
opb_ps2_dual_ref_0@a9000000 {
|
||||
ranges = <0 a9000000 2000>;
|
||||
// If this device had extra parameters, then they would
|
||||
// go here.
|
||||
ps2@0 {
|
||||
compatible = "xlnx,opb-ps2-dual-ref-1.00.a";
|
||||
reg = <0 40>;
|
||||
interrupt-parent = <&opb-intc>;
|
||||
interrupts = <3 0>;
|
||||
cell-index = <0>;
|
||||
};
|
||||
ps2@1000 {
|
||||
compatible = "xlnx,opb-ps2-dual-ref-1.00.a";
|
||||
reg = <1000 40>;
|
||||
interrupt-parent = <&opb-intc>;
|
||||
interrupts = <3 0>;
|
||||
cell-index = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
Also, the system.mhs file defines bus attachments from the processor
|
||||
to the devices. The device tree structure should reflect the bus
|
||||
attachments. Again an example; this system.mhs fragment:
|
||||
|
||||
BEGIN ppc405_virtex4
|
||||
PARAMETER INSTANCE = ppc405_0
|
||||
PARAMETER HW_VER = 1.01.a
|
||||
BUS_INTERFACE DPLB = plb_v34_0
|
||||
BUS_INTERFACE IPLB = plb_v34_0
|
||||
END
|
||||
|
||||
BEGIN opb_intc
|
||||
PARAMETER INSTANCE = opb_intc_0
|
||||
PARAMETER HW_VER = 1.00.c
|
||||
PARAMETER C_BASEADDR = 0xD1000FC0
|
||||
PARAMETER C_HIGHADDR = 0xD1000FDF
|
||||
BUS_INTERFACE SOPB = opb_v20_0
|
||||
END
|
||||
|
||||
BEGIN opb_uart16550
|
||||
PARAMETER INSTANCE = opb_uart16550_0
|
||||
PARAMETER HW_VER = 1.00.d
|
||||
PARAMETER C_BASEADDR = 0xa0000000
|
||||
PARAMETER C_HIGHADDR = 0xa0001FFF
|
||||
BUS_INTERFACE SOPB = opb_v20_0
|
||||
END
|
||||
|
||||
BEGIN plb_v34
|
||||
PARAMETER INSTANCE = plb_v34_0
|
||||
PARAMETER HW_VER = 1.02.a
|
||||
END
|
||||
|
||||
BEGIN plb_bram_if_cntlr
|
||||
PARAMETER INSTANCE = plb_bram_if_cntlr_0
|
||||
PARAMETER HW_VER = 1.00.b
|
||||
PARAMETER C_BASEADDR = 0xFFFF0000
|
||||
PARAMETER C_HIGHADDR = 0xFFFFFFFF
|
||||
BUS_INTERFACE SPLB = plb_v34_0
|
||||
END
|
||||
|
||||
BEGIN plb2opb_bridge
|
||||
PARAMETER INSTANCE = plb2opb_bridge_0
|
||||
PARAMETER HW_VER = 1.01.a
|
||||
PARAMETER C_RNG0_BASEADDR = 0x20000000
|
||||
PARAMETER C_RNG0_HIGHADDR = 0x3FFFFFFF
|
||||
PARAMETER C_RNG1_BASEADDR = 0x60000000
|
||||
PARAMETER C_RNG1_HIGHADDR = 0x7FFFFFFF
|
||||
PARAMETER C_RNG2_BASEADDR = 0x80000000
|
||||
PARAMETER C_RNG2_HIGHADDR = 0xBFFFFFFF
|
||||
PARAMETER C_RNG3_BASEADDR = 0xC0000000
|
||||
PARAMETER C_RNG3_HIGHADDR = 0xDFFFFFFF
|
||||
BUS_INTERFACE SPLB = plb_v34_0
|
||||
BUS_INTERFACE MOPB = opb_v20_0
|
||||
END
|
||||
|
||||
Gives this device tree (some properties removed for clarity):
|
||||
|
||||
plb-v34-0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
device_type = "ibm,plb";
|
||||
ranges; // 1:1 translation
|
||||
|
||||
plb-bram-if-cntrl-0@ffff0000 {
|
||||
reg = <ffff0000 10000>;
|
||||
}
|
||||
|
||||
opb-v20-0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <20000000 20000000 20000000
|
||||
60000000 60000000 20000000
|
||||
80000000 80000000 40000000
|
||||
c0000000 c0000000 20000000>;
|
||||
|
||||
opb-uart16550-0@a0000000 {
|
||||
reg = <a00000000 2000>;
|
||||
};
|
||||
|
||||
opb-intc-0@d1000fc0 {
|
||||
reg = <d1000fc0 20>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
That covers the general approach to binding xilinx IP cores into the
|
||||
device tree. The following are bindings for specific devices:
|
||||
|
||||
i) Xilinx ML300 Framebuffer
|
||||
|
||||
Simple framebuffer device from the ML300 reference design (also on the
|
||||
ML403 reference design as well as others).
|
||||
|
||||
Optional properties:
|
||||
- resolution = <xres yres> : pixel resolution of framebuffer. Some
|
||||
implementations use a different resolution.
|
||||
Default is <d#640 d#480>
|
||||
- virt-resolution = <xvirt yvirt> : Size of framebuffer in memory.
|
||||
Default is <d#1024 d#480>.
|
||||
- rotate-display (empty) : rotate display 180 degrees.
|
||||
|
||||
ii) Xilinx SystemACE
|
||||
|
||||
The Xilinx SystemACE device is used to program FPGAs from an FPGA
|
||||
bitstream stored on a CF card. It can also be used as a generic CF
|
||||
interface device.
|
||||
|
||||
Optional properties:
|
||||
- 8-bit (empty) : Set this property for SystemACE in 8 bit mode
|
||||
|
||||
iii) Xilinx EMAC and Xilinx TEMAC
|
||||
|
||||
Xilinx Ethernet devices. In addition to general xilinx properties
|
||||
listed above, nodes for these devices should include a phy-handle
|
||||
property, and may include other common network device properties
|
||||
like local-mac-address.
|
||||
|
||||
iv) Xilinx Uartlite
|
||||
|
||||
Xilinx uartlite devices are simple fixed speed serial ports.
|
||||
|
||||
Requred properties:
|
||||
- current-speed : Baud rate of uartlite
|
||||
|
||||
More devices will be defined as this spec matures.
|
||||
|
||||
VII - Specifying interrupt information for devices
|
||||
|
|
|
@ -122,7 +122,9 @@
|
|||
device_type = "network";
|
||||
compatible = "ibm,emac-405gp", "ibm,emac";
|
||||
interrupt-parent = <&UIC0>;
|
||||
interrupts = <9 4 f 4>;
|
||||
interrupts = <
|
||||
f 4 /* Ethernet */
|
||||
9 4 /* Ethernet Wake Up */>;
|
||||
local-mac-address = [000000000000]; /* Filled in by zImage */
|
||||
reg = <ef600800 70>;
|
||||
mal-device = <&MAL>;
|
||||
|
|
|
@ -21,6 +21,14 @@
|
|||
# (default ./arch/powerpc/boot)
|
||||
# -W dir specify working directory for temporary files (default .)
|
||||
|
||||
# Stop execution if any command fails
|
||||
set -e
|
||||
|
||||
# Allow for verbose output
|
||||
if [ "$V" = 1 ]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
# defaults
|
||||
kernel=
|
||||
ofile=zImage
|
||||
|
@ -111,7 +119,7 @@ if [ -n "$dts" ]; then
|
|||
if [ -z "$dtb" ]; then
|
||||
dtb="$platform.dtb"
|
||||
fi
|
||||
dtc -O dtb -o "$dtb" -b 0 -V 16 "$dts" || exit 1
|
||||
dtc -O dtb -o "$dtb" -b 0 -V 16 "$dts"
|
||||
fi
|
||||
|
||||
if [ -z "$kernel" ]; then
|
||||
|
@ -149,7 +157,6 @@ cuboot*)
|
|||
ps3)
|
||||
platformo="$object/ps3-head.o $object/ps3-hvcall.o $object/ps3.o"
|
||||
lds=$object/zImage.ps3.lds
|
||||
binary=y
|
||||
gzip=
|
||||
ext=bin
|
||||
objflags="-O binary --set-section-flags=.bss=contents,alloc,load,data"
|
||||
|
@ -233,7 +240,7 @@ entry=`${CROSS}objdump -f "$ofile" | grep '^start address ' | cut -d' ' -f3`
|
|||
|
||||
if [ -n "$binary" ]; then
|
||||
mv "$ofile" "$ofile".elf
|
||||
${CROSS}objcopy -O binary "$ofile".elf "$ofile".bin
|
||||
${CROSS}objcopy -O binary "$ofile".elf "$ofile"
|
||||
fi
|
||||
|
||||
# post-processing needed for some platforms
|
||||
|
@ -246,9 +253,9 @@ coff)
|
|||
$object/hack-coff "$ofile"
|
||||
;;
|
||||
cuboot*)
|
||||
gzip -f -9 "$ofile".bin
|
||||
gzip -f -9 "$ofile"
|
||||
mkimage -A ppc -O linux -T kernel -C gzip -a "$base" -e "$entry" \
|
||||
$uboot_version -d "$ofile".bin.gz "$ofile"
|
||||
$uboot_version -d "$ofile".gz "$ofile"
|
||||
;;
|
||||
treeboot*)
|
||||
mv "$ofile" "$ofile.elf"
|
||||
|
@ -269,11 +276,11 @@ ps3)
|
|||
# then copied to offset 0x100. At runtime the bootwrapper program
|
||||
# copies the 0x100 bytes at __system_reset_kernel to addr 0x100.
|
||||
|
||||
system_reset_overlay=0x`${CROSS}nm "$ofile".elf \
|
||||
system_reset_overlay=0x`${CROSS}nm "$ofile" \
|
||||
| grep ' __system_reset_overlay$' \
|
||||
| cut -d' ' -f1`
|
||||
system_reset_overlay=`printf "%d" $system_reset_overlay`
|
||||
system_reset_kernel=0x`${CROSS}nm "$ofile".elf \
|
||||
system_reset_kernel=0x`${CROSS}nm "$ofile" \
|
||||
| grep ' __system_reset_kernel$' \
|
||||
| cut -d' ' -f1`
|
||||
system_reset_kernel=`printf "%d" $system_reset_kernel`
|
||||
|
@ -282,23 +289,15 @@ ps3)
|
|||
|
||||
rm -f "$object/otheros.bld"
|
||||
|
||||
msg=$(dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \
|
||||
skip=$overlay_dest seek=$system_reset_kernel \
|
||||
count=$overlay_size bs=1 2>&1)
|
||||
${CROSS}objcopy -O binary "$ofile" "$ofile.bin"
|
||||
|
||||
if [ $? -ne "0" ]; then
|
||||
echo $msg
|
||||
exit 1
|
||||
fi
|
||||
dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \
|
||||
skip=$overlay_dest seek=$system_reset_kernel \
|
||||
count=$overlay_size bs=1
|
||||
|
||||
msg=$(dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \
|
||||
skip=$system_reset_overlay seek=$overlay_dest \
|
||||
count=$overlay_size bs=1 2>&1)
|
||||
|
||||
if [ $? -ne "0" ]; then
|
||||
echo $msg
|
||||
exit 2
|
||||
fi
|
||||
dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \
|
||||
skip=$system_reset_overlay seek=$overlay_dest \
|
||||
count=$overlay_size bs=1
|
||||
|
||||
gzip --force -9 --stdout "$ofile.bin" > "$object/otheros.bld"
|
||||
;;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.23-rc4
|
||||
# Thu Aug 30 16:40:47 2007
|
||||
# Linux kernel version: 2.6.24-rc2
|
||||
# Tue Nov 6 23:23:50 2007
|
||||
#
|
||||
CONFIG_PPC64=y
|
||||
|
||||
|
@ -10,6 +10,7 @@ CONFIG_PPC64=y
|
|||
#
|
||||
CONFIG_POWER4_ONLY=y
|
||||
CONFIG_POWER4=y
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
CONFIG_PPC_FPU=y
|
||||
CONFIG_ALTIVEC=y
|
||||
CONFIG_PPC_STD_MMU=y
|
||||
|
@ -18,8 +19,13 @@ CONFIG_PPC_MM_SLICES=y
|
|||
CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_64BIT=y
|
||||
CONFIG_WORD_SIZE=64
|
||||
CONFIG_PPC_MERGE=y
|
||||
CONFIG_MMU=y
|
||||
CONFIG_GENERIC_CMOS_UPDATE=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_TIME_VSYSCALL=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_IRQ_PER_CPU=y
|
||||
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
|
||||
|
@ -65,7 +71,10 @@ CONFIG_SYSVIPC_SYSCTL=y
|
|||
# CONFIG_AUDIT is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
# CONFIG_CPUSETS is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
CONFIG_FAIR_GROUP_SCHED=y
|
||||
CONFIG_FAIR_USER_SCHED=y
|
||||
# CONFIG_FAIR_CGROUP_SCHED is not set
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
# CONFIG_RELAY is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
|
@ -86,7 +95,6 @@ CONFIG_FUTEX=y
|
|||
CONFIG_ANON_INODES=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
|
@ -107,14 +115,15 @@ CONFIG_STOP_MACHINE=y
|
|||
CONFIG_BLOCK=y
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_BLOCK_COMPAT=y
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_AS=y
|
||||
# CONFIG_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_IOSCHED_CFQ is not set
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=y
|
||||
CONFIG_DEFAULT_AS=y
|
||||
# CONFIG_DEFAULT_DEADLINE is not set
|
||||
# CONFIG_DEFAULT_CFQ is not set
|
||||
|
@ -125,7 +134,6 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
|
|||
# Platform support
|
||||
#
|
||||
CONFIG_PPC_MULTIPLATFORM=y
|
||||
# CONFIG_EMBEDDED6xx is not set
|
||||
# CONFIG_PPC_82xx is not set
|
||||
# CONFIG_PPC_83xx is not set
|
||||
# CONFIG_PPC_86xx is not set
|
||||
|
@ -141,6 +149,7 @@ CONFIG_PPC_PASEMI=y
|
|||
# PA Semi PWRficient options
|
||||
#
|
||||
CONFIG_PPC_PASEMI_IOMMU=y
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
CONFIG_PPC_PASEMI_MDIO=y
|
||||
CONFIG_ELECTRA_IDE=y
|
||||
# CONFIG_PPC_CELLEB is not set
|
||||
|
@ -156,29 +165,52 @@ CONFIG_MPIC=y
|
|||
# CONFIG_U3_DART is not set
|
||||
# CONFIG_PPC_RTAS is not set
|
||||
# CONFIG_MMIO_NVRAM is not set
|
||||
CONFIG_MPIC_BROKEN_REGREAD=y
|
||||
# CONFIG_PPC_MPC106 is not set
|
||||
# CONFIG_PPC_970_NAP is not set
|
||||
# CONFIG_PPC_INDIRECT_IO is not set
|
||||
# CONFIG_GENERIC_IOMAP is not set
|
||||
# CONFIG_CPU_FREQ is not set
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_TABLE=y
|
||||
CONFIG_CPU_FREQ_DEBUG=y
|
||||
CONFIG_CPU_FREQ_STAT=y
|
||||
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
|
||||
|
||||
#
|
||||
# CPU Frequency drivers
|
||||
#
|
||||
CONFIG_PPC_PASEMI_CPUFREQ=y
|
||||
# CONFIG_CPM2 is not set
|
||||
# CONFIG_FSL_ULI1575 is not set
|
||||
|
||||
#
|
||||
# Kernel options
|
||||
#
|
||||
CONFIG_HZ_100=y
|
||||
CONFIG_TICK_ONESHOT=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
# CONFIG_HZ_100 is not set
|
||||
# CONFIG_HZ_250 is not set
|
||||
# CONFIG_HZ_300 is not set
|
||||
# CONFIG_HZ_1000 is not set
|
||||
CONFIG_HZ=100
|
||||
CONFIG_HZ_1000=y
|
||||
CONFIG_HZ=1000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_PREEMPT_BKL=y
|
||||
# CONFIG_PREEMPT_BKL is not set
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_BINFMT_MISC is not set
|
||||
CONFIG_FORCE_MAX_ZONEORDER=13
|
||||
CONFIG_FORCE_MAX_ZONEORDER=9
|
||||
CONFIG_IOMMU_VMERGE=y
|
||||
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
|
||||
# CONFIG_KEXEC is not set
|
||||
|
@ -196,12 +228,13 @@ CONFIG_FLATMEM_MANUAL=y
|
|||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
# CONFIG_SPARSEMEM_STATIC is not set
|
||||
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4
|
||||
CONFIG_RESOURCES_64BIT=y
|
||||
CONFIG_ZONE_DMA_FLAG=1
|
||||
CONFIG_BOUNCE=y
|
||||
# CONFIG_PPC_HAS_HASH_64K is not set
|
||||
# CONFIG_PPC_64K_PAGES is not set
|
||||
CONFIG_PPC_HAS_HASH_64K=y
|
||||
CONFIG_PPC_64K_PAGES=y
|
||||
# CONFIG_SCHED_SMT is not set
|
||||
CONFIG_PROC_DEVICETREE=y
|
||||
# CONFIG_CMDLINE_BOOL is not set
|
||||
|
@ -222,11 +255,8 @@ CONFIG_PCI_SYSCALL=y
|
|||
# CONFIG_PCIEPORTBUS is not set
|
||||
CONFIG_ARCH_SUPPORTS_MSI=y
|
||||
# CONFIG_PCI_MSI is not set
|
||||
CONFIG_PCI_LEGACY=y
|
||||
# CONFIG_PCI_DEBUG is not set
|
||||
|
||||
#
|
||||
# PCCARD (PCMCIA/CardBus) support
|
||||
#
|
||||
CONFIG_PCCARD=y
|
||||
CONFIG_PCMCIA_DEBUG=y
|
||||
CONFIG_PCMCIA=y
|
||||
|
@ -240,6 +270,7 @@ CONFIG_CARDBUS=y
|
|||
# CONFIG_YENTA is not set
|
||||
# CONFIG_PD6729 is not set
|
||||
# CONFIG_I82092 is not set
|
||||
# CONFIG_ELECTRA_CF is not set
|
||||
# CONFIG_HOTPLUG_PCI is not set
|
||||
CONFIG_KERNEL_START=0xc000000000000000
|
||||
|
||||
|
@ -255,7 +286,7 @@ CONFIG_PACKET=y
|
|||
# CONFIG_PACKET_MMAP is not set
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM=y
|
||||
# CONFIG_XFRM_USER is not set
|
||||
CONFIG_XFRM_USER=y
|
||||
# CONFIG_XFRM_SUB_POLICY is not set
|
||||
# CONFIG_XFRM_MIGRATE is not set
|
||||
CONFIG_NET_KEY=y
|
||||
|
@ -281,6 +312,7 @@ CONFIG_INET_TUNNEL=y
|
|||
CONFIG_INET_XFRM_MODE_TRANSPORT=y
|
||||
CONFIG_INET_XFRM_MODE_TUNNEL=y
|
||||
CONFIG_INET_XFRM_MODE_BEET=y
|
||||
CONFIG_INET_LRO=y
|
||||
CONFIG_INET_DIAG=y
|
||||
CONFIG_INET_TCP_DIAG=y
|
||||
# CONFIG_TCP_CONG_ADVANCED is not set
|
||||
|
@ -306,10 +338,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
|
|||
# CONFIG_LAPB is not set
|
||||
# CONFIG_ECONET is not set
|
||||
# CONFIG_WAN_ROUTER is not set
|
||||
|
||||
#
|
||||
# QoS and/or fair queueing
|
||||
#
|
||||
# CONFIG_NET_SCHED is not set
|
||||
|
||||
#
|
||||
|
@ -338,6 +366,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
|
|||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
|
@ -361,6 +390,7 @@ CONFIG_MTD_BLOCK=y
|
|||
# CONFIG_INFTL is not set
|
||||
# CONFIG_RFD_FTL is not set
|
||||
# CONFIG_SSFDC is not set
|
||||
# CONFIG_MTD_OOPS is not set
|
||||
|
||||
#
|
||||
# RAM/ROM/Flash chip drivers
|
||||
|
@ -385,6 +415,7 @@ CONFIG_MTD_CFI_I2=y
|
|||
# Mapping drivers for chip access
|
||||
#
|
||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
|
||||
# CONFIG_MTD_INTEL_VR_NOR is not set
|
||||
# CONFIG_MTD_PLATRAM is not set
|
||||
|
||||
#
|
||||
|
@ -402,7 +433,15 @@ CONFIG_MTD_PHRAM=y
|
|||
# CONFIG_MTD_DOC2000 is not set
|
||||
# CONFIG_MTD_DOC2001 is not set
|
||||
# CONFIG_MTD_DOC2001PLUS is not set
|
||||
# CONFIG_MTD_NAND is not set
|
||||
CONFIG_MTD_NAND=y
|
||||
# CONFIG_MTD_NAND_VERIFY_WRITE is not set
|
||||
# CONFIG_MTD_NAND_ECC_SMC is not set
|
||||
# CONFIG_MTD_NAND_MUSEUM_IDS is not set
|
||||
CONFIG_MTD_NAND_IDS=y
|
||||
# CONFIG_MTD_NAND_DISKONCHIP is not set
|
||||
# CONFIG_MTD_NAND_CAFE is not set
|
||||
# CONFIG_MTD_NAND_PLATFORM is not set
|
||||
# CONFIG_MTD_ALAUDA is not set
|
||||
# CONFIG_MTD_ONENAND is not set
|
||||
|
||||
#
|
||||
|
@ -455,10 +494,42 @@ CONFIG_IDE_PROC_FS=y
|
|||
# IDE chipset support/bugfixes
|
||||
#
|
||||
# CONFIG_IDE_GENERIC is not set
|
||||
# CONFIG_BLK_DEV_IDEPCI is not set
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
#
|
||||
# PCI IDE chipsets support
|
||||
#
|
||||
# CONFIG_IDEPCI_PCIBUS_ORDER is not set
|
||||
# CONFIG_BLK_DEV_GENERIC is not set
|
||||
# CONFIG_BLK_DEV_OPTI621 is not set
|
||||
# CONFIG_BLK_DEV_AEC62XX is not set
|
||||
# CONFIG_BLK_DEV_ALI15X3 is not set
|
||||
# CONFIG_BLK_DEV_AMD74XX is not set
|
||||
# CONFIG_BLK_DEV_CMD64X is not set
|
||||
# CONFIG_BLK_DEV_TRIFLEX is not set
|
||||
# CONFIG_BLK_DEV_CY82C693 is not set
|
||||
# CONFIG_BLK_DEV_CS5520 is not set
|
||||
# CONFIG_BLK_DEV_CS5530 is not set
|
||||
# CONFIG_BLK_DEV_HPT34X is not set
|
||||
# CONFIG_BLK_DEV_HPT366 is not set
|
||||
# CONFIG_BLK_DEV_JMICRON is not set
|
||||
# CONFIG_BLK_DEV_SC1200 is not set
|
||||
# CONFIG_BLK_DEV_PIIX is not set
|
||||
# CONFIG_BLK_DEV_IT8213 is not set
|
||||
# CONFIG_BLK_DEV_IT821X is not set
|
||||
# CONFIG_BLK_DEV_NS87415 is not set
|
||||
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
|
||||
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
|
||||
# CONFIG_BLK_DEV_SVWKS is not set
|
||||
# CONFIG_BLK_DEV_SIIMAGE is not set
|
||||
# CONFIG_BLK_DEV_SL82C105 is not set
|
||||
# CONFIG_BLK_DEV_SLC90E66 is not set
|
||||
# CONFIG_BLK_DEV_TRM290 is not set
|
||||
# CONFIG_BLK_DEV_VIA82CXXX is not set
|
||||
# CONFIG_BLK_DEV_TC86C001 is not set
|
||||
# CONFIG_IDE_ARM is not set
|
||||
# CONFIG_BLK_DEV_IDEDMA is not set
|
||||
CONFIG_IDE_ARCH_OBSOLETE_INIT=y
|
||||
# CONFIG_BLK_DEV_HD is not set
|
||||
|
||||
#
|
||||
|
@ -498,10 +569,11 @@ CONFIG_SCSI_WAIT_SCAN=m
|
|||
# CONFIG_SCSI_FC_ATTRS is not set
|
||||
# CONFIG_SCSI_ISCSI_ATTRS is not set
|
||||
# CONFIG_SCSI_SAS_LIBSAS is not set
|
||||
# CONFIG_SCSI_SRP_ATTRS is not set
|
||||
CONFIG_SCSI_LOWLEVEL=y
|
||||
# CONFIG_ISCSI_TCP is not set
|
||||
CONFIG_BLK_DEV_3W_XXXX_RAID=y
|
||||
CONFIG_SCSI_3W_9XXX=y
|
||||
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
|
||||
# CONFIG_SCSI_3W_9XXX is not set
|
||||
# CONFIG_SCSI_ACARD is not set
|
||||
# CONFIG_SCSI_AACRAID is not set
|
||||
# CONFIG_SCSI_AIC7XXX is not set
|
||||
|
@ -574,9 +646,10 @@ CONFIG_ATA_GENERIC=y
|
|||
# CONFIG_PATA_OLDPIIX is not set
|
||||
# CONFIG_PATA_NETCELL is not set
|
||||
# CONFIG_PATA_NS87410 is not set
|
||||
# CONFIG_PATA_NS87415 is not set
|
||||
# CONFIG_PATA_OPTI is not set
|
||||
# CONFIG_PATA_OPTIDMA is not set
|
||||
# CONFIG_PATA_PCMCIA is not set
|
||||
CONFIG_PATA_PCMCIA=y
|
||||
# CONFIG_PATA_PDC_OLD is not set
|
||||
# CONFIG_PATA_RADISYS is not set
|
||||
# CONFIG_PATA_RZ1000 is not set
|
||||
|
@ -589,41 +662,13 @@ CONFIG_ATA_GENERIC=y
|
|||
# CONFIG_PATA_WINBOND is not set
|
||||
CONFIG_PATA_PLATFORM=y
|
||||
# CONFIG_MD is not set
|
||||
|
||||
#
|
||||
# Fusion MPT device support
|
||||
#
|
||||
# CONFIG_FUSION is not set
|
||||
# CONFIG_FUSION_SPI is not set
|
||||
# CONFIG_FUSION_FC is not set
|
||||
# CONFIG_FUSION_SAS is not set
|
||||
|
||||
#
|
||||
# IEEE 1394 (FireWire) support
|
||||
#
|
||||
# CONFIG_FIREWIRE is not set
|
||||
CONFIG_IEEE1394=y
|
||||
|
||||
#
|
||||
# Subsystem Options
|
||||
#
|
||||
# CONFIG_IEEE1394_VERBOSEDEBUG is not set
|
||||
|
||||
#
|
||||
# Controllers
|
||||
#
|
||||
CONFIG_IEEE1394_PCILYNX=y
|
||||
CONFIG_IEEE1394_OHCI1394=y
|
||||
|
||||
#
|
||||
# Protocols
|
||||
#
|
||||
# CONFIG_IEEE1394_VIDEO1394 is not set
|
||||
CONFIG_IEEE1394_SBP2=y
|
||||
# CONFIG_IEEE1394_ETH1394_ROM_ENTRY is not set
|
||||
# CONFIG_IEEE1394_ETH1394 is not set
|
||||
# CONFIG_IEEE1394_DV1394 is not set
|
||||
CONFIG_IEEE1394_RAWIO=y
|
||||
# CONFIG_IEEE1394 is not set
|
||||
# CONFIG_I2O is not set
|
||||
# CONFIG_MACINTOSH_DRIVERS is not set
|
||||
CONFIG_NETDEVICES=y
|
||||
|
@ -633,6 +678,8 @@ CONFIG_DUMMY=y
|
|||
# CONFIG_MACVLAN is not set
|
||||
# CONFIG_EQUALIZER is not set
|
||||
# CONFIG_TUN is not set
|
||||
# CONFIG_VETH is not set
|
||||
# CONFIG_IP1000 is not set
|
||||
# CONFIG_ARCNET is not set
|
||||
CONFIG_PHYLIB=y
|
||||
|
||||
|
@ -649,6 +696,7 @@ CONFIG_MARVELL_PHY=y
|
|||
# CONFIG_BROADCOM_PHY is not set
|
||||
# CONFIG_ICPLUS_PHY is not set
|
||||
# CONFIG_FIXED_PHY is not set
|
||||
# CONFIG_MDIO_BITBANG is not set
|
||||
CONFIG_NET_ETHERNET=y
|
||||
CONFIG_MII=y
|
||||
# CONFIG_HAPPYMEAL is not set
|
||||
|
@ -657,13 +705,16 @@ CONFIG_MII=y
|
|||
# CONFIG_NET_VENDOR_3COM is not set
|
||||
# CONFIG_NET_TULIP is not set
|
||||
# CONFIG_HP100 is not set
|
||||
# CONFIG_IBM_NEW_EMAC_ZMII is not set
|
||||
# CONFIG_IBM_NEW_EMAC_RGMII is not set
|
||||
# CONFIG_IBM_NEW_EMAC_TAH is not set
|
||||
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
|
||||
CONFIG_NET_PCI=y
|
||||
# CONFIG_PCNET32 is not set
|
||||
# CONFIG_AMD8111_ETH is not set
|
||||
# CONFIG_ADAPTEC_STARFIRE is not set
|
||||
# CONFIG_B44 is not set
|
||||
# CONFIG_FORCEDETH is not set
|
||||
# CONFIG_DGRS is not set
|
||||
# CONFIG_EEPRO100 is not set
|
||||
# CONFIG_E100 is not set
|
||||
# CONFIG_FEALNX is not set
|
||||
|
@ -682,6 +733,7 @@ CONFIG_NETDEV_1000=y
|
|||
CONFIG_E1000=y
|
||||
CONFIG_E1000_NAPI=y
|
||||
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
|
||||
# CONFIG_E1000E is not set
|
||||
# CONFIG_NS83820 is not set
|
||||
# CONFIG_HAMACHI is not set
|
||||
# CONFIG_YELLOWFIN is not set
|
||||
|
@ -689,6 +741,7 @@ CONFIG_E1000_NAPI=y
|
|||
# CONFIG_SIS190 is not set
|
||||
# CONFIG_SKGE is not set
|
||||
# CONFIG_SKY2 is not set
|
||||
# CONFIG_SK98LIN is not set
|
||||
# CONFIG_VIA_VELOCITY is not set
|
||||
CONFIG_TIGON3=y
|
||||
# CONFIG_BNX2 is not set
|
||||
|
@ -697,12 +750,15 @@ CONFIG_TIGON3=y
|
|||
CONFIG_NETDEV_10000=y
|
||||
# CONFIG_CHELSIO_T1 is not set
|
||||
# CONFIG_CHELSIO_T3 is not set
|
||||
# CONFIG_IXGBE is not set
|
||||
# CONFIG_IXGB is not set
|
||||
# CONFIG_S2IO is not set
|
||||
# CONFIG_MYRI10GE is not set
|
||||
# CONFIG_NETXEN_NIC is not set
|
||||
# CONFIG_NIU is not set
|
||||
CONFIG_PASEMI_MAC=y
|
||||
# CONFIG_MLX4_CORE is not set
|
||||
# CONFIG_TEHUTI is not set
|
||||
# CONFIG_TR is not set
|
||||
|
||||
#
|
||||
|
@ -749,7 +805,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y
|
|||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
CONFIG_INPUT_JOYDEV=y
|
||||
# CONFIG_INPUT_TSDEV is not set
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
|
@ -810,15 +865,12 @@ CONFIG_UNIX98_PTYS=y
|
|||
CONFIG_LEGACY_PTYS=y
|
||||
CONFIG_LEGACY_PTY_COUNT=4
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_HW_RANDOM_PASEMI=y
|
||||
CONFIG_GEN_RTC=y
|
||||
CONFIG_GEN_RTC_X=y
|
||||
# CONFIG_R3964 is not set
|
||||
# CONFIG_APPLICOM is not set
|
||||
# CONFIG_AGP is not set
|
||||
# CONFIG_DRM is not set
|
||||
|
||||
#
|
||||
# PCMCIA character devices
|
||||
|
@ -896,8 +948,6 @@ CONFIG_SENSORS_EEPROM=y
|
|||
# CONFIG_POWER_SUPPLY is not set
|
||||
CONFIG_HWMON=y
|
||||
CONFIG_HWMON_VID=y
|
||||
# CONFIG_SENSORS_ABITUGURU is not set
|
||||
# CONFIG_SENSORS_ABITUGURU3 is not set
|
||||
# CONFIG_SENSORS_AD7418 is not set
|
||||
# CONFIG_SENSORS_ADM1021 is not set
|
||||
# CONFIG_SENSORS_ADM1025 is not set
|
||||
|
@ -905,12 +955,12 @@ CONFIG_HWMON_VID=y
|
|||
# CONFIG_SENSORS_ADM1029 is not set
|
||||
# CONFIG_SENSORS_ADM1031 is not set
|
||||
# CONFIG_SENSORS_ADM9240 is not set
|
||||
# CONFIG_SENSORS_ASB100 is not set
|
||||
# CONFIG_SENSORS_ADT7470 is not set
|
||||
# CONFIG_SENSORS_ATXP1 is not set
|
||||
# CONFIG_SENSORS_DS1621 is not set
|
||||
# CONFIG_SENSORS_F71805F is not set
|
||||
# CONFIG_SENSORS_FSCHER is not set
|
||||
# CONFIG_SENSORS_FSCPOS is not set
|
||||
# CONFIG_SENSORS_F71882FG is not set
|
||||
# CONFIG_SENSORS_F75375S is not set
|
||||
# CONFIG_SENSORS_GL518SM is not set
|
||||
# CONFIG_SENSORS_GL520SM is not set
|
||||
# CONFIG_SENSORS_IT87 is not set
|
||||
|
@ -946,6 +996,13 @@ CONFIG_SENSORS_LM90=y
|
|||
# CONFIG_SENSORS_W83627HF is not set
|
||||
# CONFIG_SENSORS_W83627EHF is not set
|
||||
# CONFIG_HWMON_DEBUG_CHIP is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
|
@ -963,14 +1020,14 @@ CONFIG_DAB=y
|
|||
#
|
||||
# Graphics support
|
||||
#
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_LCD_CLASS_DEVICE=m
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
# CONFIG_AGP is not set
|
||||
CONFIG_DRM=y
|
||||
# CONFIG_DRM_TDFX is not set
|
||||
# CONFIG_DRM_R128 is not set
|
||||
CONFIG_DRM_RADEON=y
|
||||
# CONFIG_DRM_MGA is not set
|
||||
# CONFIG_DRM_VIA is not set
|
||||
# CONFIG_DRM_SAVAGE is not set
|
||||
CONFIG_VGASTATE=y
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
CONFIG_FB=y
|
||||
|
@ -979,6 +1036,7 @@ CONFIG_FB_DDC=y
|
|||
CONFIG_FB_CFB_FILLRECT=y
|
||||
CONFIG_FB_CFB_COPYAREA=y
|
||||
CONFIG_FB_CFB_IMAGEBLIT=y
|
||||
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
|
||||
# CONFIG_FB_SYS_FILLRECT is not set
|
||||
# CONFIG_FB_SYS_COPYAREA is not set
|
||||
# CONFIG_FB_SYS_IMAGEBLIT is not set
|
||||
|
@ -1026,6 +1084,15 @@ CONFIG_FB_RADEON_BACKLIGHT=y
|
|||
# CONFIG_FB_PM3 is not set
|
||||
# CONFIG_FB_IBM_GXT4500 is not set
|
||||
# CONFIG_FB_VIRTUAL is not set
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
# CONFIG_BACKLIGHT_CORGI is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
|
@ -1178,6 +1245,7 @@ CONFIG_SND_USB_USX2Y=y
|
|||
CONFIG_HID_SUPPORT=y
|
||||
CONFIG_HID=y
|
||||
# CONFIG_HID_DEBUG is not set
|
||||
# CONFIG_HIDRAW is not set
|
||||
|
||||
#
|
||||
# USB Input Devices
|
||||
|
@ -1328,6 +1396,7 @@ CONFIG_RTC_INTF_DEV=y
|
|||
# I2C RTC drivers
|
||||
#
|
||||
CONFIG_RTC_DRV_DS1307=y
|
||||
# CONFIG_RTC_DRV_DS1374 is not set
|
||||
# CONFIG_RTC_DRV_DS1672 is not set
|
||||
# CONFIG_RTC_DRV_MAX6900 is not set
|
||||
# CONFIG_RTC_DRV_RS5C372 is not set
|
||||
|
@ -1356,19 +1425,6 @@ CONFIG_RTC_DRV_DS1307=y
|
|||
# on-CPU RTC drivers
|
||||
#
|
||||
|
||||
#
|
||||
# DMA Engine support
|
||||
#
|
||||
# CONFIG_DMA_ENGINE is not set
|
||||
|
||||
#
|
||||
# DMA Clients
|
||||
#
|
||||
|
||||
#
|
||||
# DMA Devices
|
||||
#
|
||||
|
||||
#
|
||||
# Userspace I/O
|
||||
#
|
||||
|
@ -1388,7 +1444,6 @@ CONFIG_EXT3_FS_XATTR=y
|
|||
# CONFIG_EXT3_FS_SECURITY is not set
|
||||
# CONFIG_EXT4DEV_FS is not set
|
||||
CONFIG_JBD=y
|
||||
# CONFIG_JBD_DEBUG is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
|
@ -1436,7 +1491,6 @@ CONFIG_TMPFS=y
|
|||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
CONFIG_HUGETLBFS=y
|
||||
CONFIG_HUGETLB_PAGE=y
|
||||
CONFIG_RAMFS=y
|
||||
CONFIG_CONFIGFS_FS=y
|
||||
|
||||
#
|
||||
|
@ -1449,30 +1503,43 @@ CONFIG_CONFIGFS_FS=y
|
|||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_JFFS2_FS is not set
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_JFFS2_FS_DEBUG=0
|
||||
CONFIG_JFFS2_FS_WRITEBUFFER=y
|
||||
# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
|
||||
# CONFIG_JFFS2_SUMMARY is not set
|
||||
# CONFIG_JFFS2_FS_XATTR is not set
|
||||
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
|
||||
CONFIG_JFFS2_ZLIB=y
|
||||
# CONFIG_JFFS2_LZO is not set
|
||||
CONFIG_JFFS2_RTIME=y
|
||||
# CONFIG_JFFS2_RUBIN is not set
|
||||
# CONFIG_CRAMFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Network File Systems
|
||||
#
|
||||
CONFIG_NETWORK_FILESYSTEMS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
# CONFIG_NFS_V3_ACL is not set
|
||||
# CONFIG_NFS_V4 is not set
|
||||
# CONFIG_NFS_DIRECTIO is not set
|
||||
# CONFIG_NFSD is not set
|
||||
CONFIG_NFSD=y
|
||||
CONFIG_NFSD_V3=y
|
||||
# CONFIG_NFSD_V3_ACL is not set
|
||||
CONFIG_NFSD_V4=y
|
||||
CONFIG_NFSD_TCP=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_LOCKD=y
|
||||
CONFIG_LOCKD_V4=y
|
||||
CONFIG_EXPORTFS=y
|
||||
CONFIG_NFS_COMMON=y
|
||||
CONFIG_SUNRPC=y
|
||||
CONFIG_SUNRPC_GSS=y
|
||||
# CONFIG_SUNRPC_BIND34 is not set
|
||||
# CONFIG_RPCSEC_GSS_KRB5 is not set
|
||||
CONFIG_RPCSEC_GSS_KRB5=y
|
||||
# CONFIG_RPCSEC_GSS_SPKM3 is not set
|
||||
# CONFIG_SMB_FS is not set
|
||||
# CONFIG_CIFS is not set
|
||||
|
@ -1501,10 +1568,6 @@ CONFIG_MSDOS_PARTITION=y
|
|||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
|
||||
#
|
||||
# Native Language Support
|
||||
#
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="iso8859-1"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
|
@ -1545,10 +1608,6 @@ CONFIG_NLS_ISO8859_1=y
|
|||
# CONFIG_NLS_KOI8_R is not set
|
||||
# CONFIG_NLS_KOI8_U is not set
|
||||
# CONFIG_NLS_UTF8 is not set
|
||||
|
||||
#
|
||||
# Distributed Lock Manager
|
||||
#
|
||||
# CONFIG_DLM is not set
|
||||
# CONFIG_UCC_SLOW is not set
|
||||
|
||||
|
@ -1561,23 +1620,24 @@ CONFIG_CRC_CCITT=y
|
|||
# CONFIG_CRC_ITU_T is not set
|
||||
CONFIG_CRC32=y
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_LIBCRC32C=m
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_ZLIB_DEFLATE=y
|
||||
CONFIG_PLIST=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
||||
|
||||
#
|
||||
# Instrumentation Support
|
||||
#
|
||||
CONFIG_INSTRUMENTATION=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
# CONFIG_MARKERS is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
|
@ -1586,7 +1646,7 @@ CONFIG_MAGIC_SYSRQ=y
|
|||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
CONFIG_DETECT_SOFTLOCKUP=y
|
||||
CONFIG_SCHED_DEBUG=y
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_TIMER_STATS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
|
@ -1601,9 +1661,12 @@ CONFIG_DEBUG_BUGVERBOSE=y
|
|||
# CONFIG_DEBUG_INFO is not set
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_FORCED_INLINING is not set
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
# CONFIG_DEBUG_STACKOVERFLOW is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
@ -1620,6 +1683,7 @@ CONFIG_XMON_DISASSEMBLY=y
|
|||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
CONFIG_CRYPTO=y
|
||||
CONFIG_CRYPTO_ALGAPI=y
|
||||
CONFIG_CRYPTO_BLKCIPHER=y
|
||||
|
@ -1628,34 +1692,38 @@ CONFIG_CRYPTO_MANAGER=y
|
|||
CONFIG_CRYPTO_HMAC=y
|
||||
# CONFIG_CRYPTO_XCBC is not set
|
||||
# CONFIG_CRYPTO_NULL is not set
|
||||
# CONFIG_CRYPTO_MD4 is not set
|
||||
CONFIG_CRYPTO_MD4=y
|
||||
CONFIG_CRYPTO_MD5=y
|
||||
CONFIG_CRYPTO_SHA1=y
|
||||
# CONFIG_CRYPTO_SHA256 is not set
|
||||
# CONFIG_CRYPTO_SHA512 is not set
|
||||
CONFIG_CRYPTO_SHA256=y
|
||||
CONFIG_CRYPTO_SHA512=y
|
||||
# CONFIG_CRYPTO_WP512 is not set
|
||||
# CONFIG_CRYPTO_TGR192 is not set
|
||||
# CONFIG_CRYPTO_GF128MUL is not set
|
||||
CONFIG_CRYPTO_ECB=m
|
||||
# CONFIG_CRYPTO_ECB is not set
|
||||
CONFIG_CRYPTO_CBC=y
|
||||
CONFIG_CRYPTO_PCBC=m
|
||||
# CONFIG_CRYPTO_PCBC is not set
|
||||
# CONFIG_CRYPTO_LRW is not set
|
||||
# CONFIG_CRYPTO_XTS is not set
|
||||
# CONFIG_CRYPTO_CRYPTD is not set
|
||||
CONFIG_CRYPTO_DES=y
|
||||
# CONFIG_CRYPTO_FCRYPT is not set
|
||||
# CONFIG_CRYPTO_BLOWFISH is not set
|
||||
CONFIG_CRYPTO_BLOWFISH=y
|
||||
# CONFIG_CRYPTO_TWOFISH is not set
|
||||
# CONFIG_CRYPTO_SERPENT is not set
|
||||
# CONFIG_CRYPTO_AES is not set
|
||||
CONFIG_CRYPTO_AES=y
|
||||
# CONFIG_CRYPTO_CAST5 is not set
|
||||
# CONFIG_CRYPTO_CAST6 is not set
|
||||
# CONFIG_CRYPTO_TEA is not set
|
||||
# CONFIG_CRYPTO_ARC4 is not set
|
||||
# CONFIG_CRYPTO_KHAZAD is not set
|
||||
# CONFIG_CRYPTO_ANUBIS is not set
|
||||
# CONFIG_CRYPTO_SEED is not set
|
||||
# CONFIG_CRYPTO_DEFLATE is not set
|
||||
# CONFIG_CRYPTO_MICHAEL_MIC is not set
|
||||
# CONFIG_CRYPTO_CRC32C is not set
|
||||
# CONFIG_CRYPTO_CAMELLIA is not set
|
||||
# CONFIG_CRYPTO_TEST is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
# CONFIG_CRYPTO_AUTHENC is not set
|
||||
CONFIG_CRYPTO_HW=y
|
||||
# CONFIG_PPC_CLOCK is not set
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.23-rc4
|
||||
# Thu Aug 30 16:47:09 2007
|
||||
# Linux kernel version: 2.6.24-rc2
|
||||
# Tue Nov 6 23:43:56 2007
|
||||
#
|
||||
CONFIG_PPC64=y
|
||||
|
||||
|
@ -11,6 +11,7 @@ CONFIG_PPC64=y
|
|||
# CONFIG_POWER4_ONLY is not set
|
||||
CONFIG_POWER3=y
|
||||
CONFIG_POWER4=y
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
CONFIG_PPC_FPU=y
|
||||
CONFIG_ALTIVEC=y
|
||||
CONFIG_PPC_STD_MMU=y
|
||||
|
@ -19,8 +20,13 @@ CONFIG_VIRT_CPU_ACCOUNTING=y
|
|||
CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=32
|
||||
CONFIG_64BIT=y
|
||||
CONFIG_WORD_SIZE=64
|
||||
CONFIG_PPC_MERGE=y
|
||||
CONFIG_MMU=y
|
||||
CONFIG_GENERIC_CMOS_UPDATE=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_TIME_VSYSCALL=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_IRQ_PER_CPU=y
|
||||
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
|
||||
|
@ -72,8 +78,15 @@ CONFIG_IKCONFIG=y
|
|||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
CONFIG_CGROUPS=y
|
||||
# CONFIG_CGROUP_DEBUG is not set
|
||||
# CONFIG_CGROUP_NS is not set
|
||||
# CONFIG_CGROUP_CPUACCT is not set
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_FAIR_GROUP_SCHED=y
|
||||
CONFIG_FAIR_USER_SCHED=y
|
||||
# CONFIG_FAIR_CGROUP_SCHED is not set
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_PROC_PID_CPUSET=y
|
||||
CONFIG_RELAY=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
|
@ -93,7 +106,6 @@ CONFIG_FUTEX=y
|
|||
CONFIG_ANON_INODES=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
|
@ -114,6 +126,7 @@ CONFIG_STOP_MACHINE=y
|
|||
CONFIG_BLOCK=y
|
||||
CONFIG_BLK_DEV_IO_TRACE=y
|
||||
CONFIG_BLK_DEV_BSG=y
|
||||
CONFIG_BLOCK_COMPAT=y
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
|
@ -132,7 +145,6 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
|
|||
# Platform support
|
||||
#
|
||||
CONFIG_PPC_MULTIPLATFORM=y
|
||||
# CONFIG_EMBEDDED6xx is not set
|
||||
# CONFIG_PPC_82xx is not set
|
||||
# CONFIG_PPC_83xx is not set
|
||||
# CONFIG_PPC_86xx is not set
|
||||
|
@ -155,7 +167,15 @@ CONFIG_VIOPATH=y
|
|||
CONFIG_PPC_PMAC=y
|
||||
CONFIG_PPC_PMAC64=y
|
||||
CONFIG_PPC_MAPLE=y
|
||||
# CONFIG_PPC_PASEMI is not set
|
||||
CONFIG_PPC_PASEMI=y
|
||||
|
||||
#
|
||||
# PA Semi PWRficient options
|
||||
#
|
||||
CONFIG_PPC_PASEMI_IOMMU=y
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
CONFIG_PPC_PASEMI_MDIO=y
|
||||
CONFIG_ELECTRA_IDE=y
|
||||
CONFIG_PPC_CELLEB=y
|
||||
# CONFIG_PPC_PS3 is not set
|
||||
CONFIG_PPC_CELL=y
|
||||
|
@ -188,6 +208,7 @@ CONFIG_RTAS_FLASH=m
|
|||
CONFIG_PPC_PMI=m
|
||||
CONFIG_MMIO_NVRAM=y
|
||||
CONFIG_MPIC_U3_HT_IRQS=y
|
||||
CONFIG_MPIC_BROKEN_REGREAD=y
|
||||
CONFIG_IBMVIO=y
|
||||
# CONFIG_IBMEBUS is not set
|
||||
# CONFIG_PPC_MPC106 is not set
|
||||
|
@ -201,6 +222,8 @@ CONFIG_CPU_FREQ_STAT=y
|
|||
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
|
||||
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
||||
|
@ -211,6 +234,7 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
|||
# CPU Frequency drivers
|
||||
#
|
||||
CONFIG_CPU_FREQ_PMAC64=y
|
||||
CONFIG_PPC_PASEMI_CPUFREQ=y
|
||||
# CONFIG_CPM2 is not set
|
||||
CONFIG_AXON_RAM=m
|
||||
# CONFIG_FSL_ULI1575 is not set
|
||||
|
@ -254,6 +278,8 @@ CONFIG_SPARSEMEM=y
|
|||
CONFIG_HAVE_MEMORY_PRESENT=y
|
||||
# CONFIG_SPARSEMEM_STATIC is not set
|
||||
CONFIG_SPARSEMEM_EXTREME=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
CONFIG_MEMORY_HOTPLUG=y
|
||||
CONFIG_MEMORY_HOTPLUG_SPARSE=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4
|
||||
|
@ -268,6 +294,7 @@ CONFIG_PROC_DEVICETREE=y
|
|||
# CONFIG_CMDLINE_BOOL is not set
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_SUSPEND_SMP_POSSIBLE=y
|
||||
CONFIG_HIBERNATION_SMP_POSSIBLE=y
|
||||
CONFIG_SECCOMP=y
|
||||
# CONFIG_WANT_DEVICE_TREE is not set
|
||||
CONFIG_ISA_DMA_API=y
|
||||
|
@ -284,12 +311,22 @@ CONFIG_PCI_SYSCALL=y
|
|||
# CONFIG_PCIEPORTBUS is not set
|
||||
CONFIG_ARCH_SUPPORTS_MSI=y
|
||||
CONFIG_PCI_MSI=y
|
||||
CONFIG_PCI_LEGACY=y
|
||||
# CONFIG_PCI_DEBUG is not set
|
||||
CONFIG_PCCARD=y
|
||||
# CONFIG_PCMCIA_DEBUG is not set
|
||||
CONFIG_PCMCIA=y
|
||||
CONFIG_PCMCIA_LOAD_CIS=y
|
||||
CONFIG_PCMCIA_IOCTL=y
|
||||
CONFIG_CARDBUS=y
|
||||
|
||||
#
|
||||
# PCCARD (PCMCIA/CardBus) support
|
||||
# PC-card bridges
|
||||
#
|
||||
# CONFIG_PCCARD is not set
|
||||
# CONFIG_YENTA is not set
|
||||
# CONFIG_PD6729 is not set
|
||||
# CONFIG_I82092 is not set
|
||||
CONFIG_ELECTRA_CF=y
|
||||
CONFIG_HOTPLUG_PCI=m
|
||||
# CONFIG_HOTPLUG_PCI_FAKE is not set
|
||||
# CONFIG_HOTPLUG_PCI_CPCI is not set
|
||||
|
@ -319,7 +356,10 @@ CONFIG_INET=y
|
|||
CONFIG_IP_MULTICAST=y
|
||||
# CONFIG_IP_ADVANCED_ROUTER is not set
|
||||
CONFIG_IP_FIB_HASH=y
|
||||
# CONFIG_IP_PNP is not set
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
# CONFIG_IP_PNP_RARP is not set
|
||||
CONFIG_NET_IPIP=y
|
||||
# CONFIG_NET_IPGRE is not set
|
||||
# CONFIG_IP_MROUTE is not set
|
||||
|
@ -333,6 +373,7 @@ CONFIG_INET_TUNNEL=y
|
|||
CONFIG_INET_XFRM_MODE_TRANSPORT=y
|
||||
CONFIG_INET_XFRM_MODE_TUNNEL=y
|
||||
CONFIG_INET_XFRM_MODE_BEET=y
|
||||
# CONFIG_INET_LRO is not set
|
||||
CONFIG_INET_DIAG=y
|
||||
CONFIG_INET_TCP_DIAG=y
|
||||
# CONFIG_TCP_CONG_ADVANCED is not set
|
||||
|
@ -404,6 +445,7 @@ CONFIG_NETFILTER_XT_MATCH_STATE=m
|
|||
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
|
||||
CONFIG_NETFILTER_XT_MATCH_STRING=m
|
||||
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
|
||||
# CONFIG_NETFILTER_XT_MATCH_TIME is not set
|
||||
CONFIG_NETFILTER_XT_MATCH_U32=m
|
||||
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
|
||||
|
||||
|
@ -465,10 +507,6 @@ CONFIG_LLC=y
|
|||
# CONFIG_LAPB is not set
|
||||
# CONFIG_ECONET is not set
|
||||
# CONFIG_WAN_ROUTER is not set
|
||||
|
||||
#
|
||||
# QoS and/or fair queueing
|
||||
#
|
||||
# CONFIG_NET_SCHED is not set
|
||||
CONFIG_NET_CLS_ROUTE=y
|
||||
|
||||
|
@ -498,6 +536,7 @@ CONFIG_NET_CLS_ROUTE=y
|
|||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
|
@ -539,6 +578,8 @@ CONFIG_BLK_DEV_IDE=y
|
|||
# CONFIG_BLK_DEV_IDE_SATA is not set
|
||||
CONFIG_BLK_DEV_IDEDISK=y
|
||||
# CONFIG_IDEDISK_MULTI_MODE is not set
|
||||
# CONFIG_BLK_DEV_IDECS is not set
|
||||
# CONFIG_BLK_DEV_DELKIN is not set
|
||||
CONFIG_BLK_DEV_IDECD=y
|
||||
# CONFIG_BLK_DEV_IDETAPE is not set
|
||||
# CONFIG_BLK_DEV_IDEFLOPPY is not set
|
||||
|
@ -550,6 +591,11 @@ CONFIG_IDE_PROC_FS=y
|
|||
# IDE chipset support/bugfixes
|
||||
#
|
||||
CONFIG_IDE_GENERIC=y
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
#
|
||||
# PCI IDE chipsets support
|
||||
#
|
||||
CONFIG_BLK_DEV_IDEPCI=y
|
||||
CONFIG_IDEPCI_SHARE_IRQ=y
|
||||
CONFIG_IDEPCI_PCIBUS_ORDER=y
|
||||
|
@ -557,8 +603,6 @@ CONFIG_IDEPCI_PCIBUS_ORDER=y
|
|||
CONFIG_BLK_DEV_GENERIC=y
|
||||
# CONFIG_BLK_DEV_OPTI621 is not set
|
||||
CONFIG_BLK_DEV_IDEDMA_PCI=y
|
||||
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
|
||||
# CONFIG_IDEDMA_ONLYDISK is not set
|
||||
# CONFIG_BLK_DEV_AEC62XX is not set
|
||||
# CONFIG_BLK_DEV_ALI15X3 is not set
|
||||
CONFIG_BLK_DEV_AMD74XX=y
|
||||
|
@ -590,7 +634,7 @@ CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y
|
|||
CONFIG_BLK_DEV_IDEDMA_PMAC=y
|
||||
# CONFIG_IDE_ARM is not set
|
||||
CONFIG_BLK_DEV_IDEDMA=y
|
||||
# CONFIG_IDEDMA_IVB is not set
|
||||
CONFIG_IDE_ARCH_OBSOLETE_INIT=y
|
||||
# CONFIG_BLK_DEV_HD is not set
|
||||
|
||||
#
|
||||
|
@ -631,6 +675,7 @@ CONFIG_SCSI_FC_ATTRS=y
|
|||
CONFIG_SCSI_ISCSI_ATTRS=m
|
||||
# CONFIG_SCSI_SAS_ATTRS is not set
|
||||
# CONFIG_SCSI_SAS_LIBSAS is not set
|
||||
CONFIG_SCSI_SRP_ATTRS=y
|
||||
CONFIG_SCSI_LOWLEVEL=y
|
||||
# CONFIG_ISCSI_TCP is not set
|
||||
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
|
||||
|
@ -671,19 +716,20 @@ CONFIG_SCSI_LPFC=m
|
|||
# CONFIG_SCSI_DC390T is not set
|
||||
CONFIG_SCSI_DEBUG=m
|
||||
# CONFIG_SCSI_SRP is not set
|
||||
# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
|
||||
CONFIG_ATA=y
|
||||
CONFIG_ATA_NONSTANDARD=y
|
||||
# CONFIG_SATA_AHCI is not set
|
||||
CONFIG_SATA_SVW=y
|
||||
# CONFIG_ATA_PIIX is not set
|
||||
# CONFIG_SATA_MV is not set
|
||||
CONFIG_SATA_MV=y
|
||||
# CONFIG_SATA_NV is not set
|
||||
# CONFIG_PDC_ADMA is not set
|
||||
# CONFIG_SATA_QSTOR is not set
|
||||
# CONFIG_SATA_PROMISE is not set
|
||||
# CONFIG_SATA_SX4 is not set
|
||||
# CONFIG_SATA_SIL is not set
|
||||
# CONFIG_SATA_SIL24 is not set
|
||||
CONFIG_SATA_SIL24=y
|
||||
# CONFIG_SATA_SIS is not set
|
||||
# CONFIG_SATA_ULI is not set
|
||||
# CONFIG_SATA_VIA is not set
|
||||
|
@ -713,8 +759,10 @@ CONFIG_SATA_SVW=y
|
|||
# CONFIG_PATA_OLDPIIX is not set
|
||||
# CONFIG_PATA_NETCELL is not set
|
||||
# CONFIG_PATA_NS87410 is not set
|
||||
# CONFIG_PATA_NS87415 is not set
|
||||
# CONFIG_PATA_OPTI is not set
|
||||
# CONFIG_PATA_OPTIDMA is not set
|
||||
CONFIG_PATA_PCMCIA=y
|
||||
# CONFIG_PATA_PDC_OLD is not set
|
||||
# CONFIG_PATA_RADISYS is not set
|
||||
# CONFIG_PATA_RZ1000 is not set
|
||||
|
@ -725,6 +773,7 @@ CONFIG_SATA_SVW=y
|
|||
# CONFIG_PATA_SIS is not set
|
||||
# CONFIG_PATA_VIA is not set
|
||||
CONFIG_PATA_WINBOND=y
|
||||
CONFIG_PATA_PLATFORM=y
|
||||
CONFIG_PATA_SCC=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_MD=y
|
||||
|
@ -745,15 +794,10 @@ CONFIG_DM_ZERO=m
|
|||
CONFIG_DM_MULTIPATH=m
|
||||
CONFIG_DM_MULTIPATH_EMC=m
|
||||
# CONFIG_DM_MULTIPATH_RDAC is not set
|
||||
# CONFIG_DM_MULTIPATH_HP is not set
|
||||
# CONFIG_DM_DELAY is not set
|
||||
|
||||
#
|
||||
# Fusion MPT device support
|
||||
#
|
||||
# CONFIG_DM_UEVENT is not set
|
||||
# CONFIG_FUSION is not set
|
||||
# CONFIG_FUSION_SPI is not set
|
||||
# CONFIG_FUSION_FC is not set
|
||||
# CONFIG_FUSION_SAS is not set
|
||||
|
||||
#
|
||||
# IEEE 1394 (FireWire) support
|
||||
|
@ -800,13 +844,15 @@ CONFIG_BONDING=m
|
|||
# CONFIG_MACVLAN is not set
|
||||
# CONFIG_EQUALIZER is not set
|
||||
CONFIG_TUN=m
|
||||
# CONFIG_VETH is not set
|
||||
# CONFIG_IP1000 is not set
|
||||
# CONFIG_ARCNET is not set
|
||||
CONFIG_PHYLIB=m
|
||||
CONFIG_PHYLIB=y
|
||||
|
||||
#
|
||||
# MII PHY device drivers
|
||||
#
|
||||
CONFIG_MARVELL_PHY=m
|
||||
CONFIG_MARVELL_PHY=y
|
||||
# CONFIG_DAVICOM_PHY is not set
|
||||
# CONFIG_QSEMI_PHY is not set
|
||||
# CONFIG_LXT_PHY is not set
|
||||
|
@ -818,6 +864,9 @@ CONFIG_BROADCOM_PHY=m
|
|||
CONFIG_FIXED_PHY=m
|
||||
CONFIG_FIXED_MII_10_FDX=y
|
||||
CONFIG_FIXED_MII_100_FDX=y
|
||||
# CONFIG_FIXED_MII_1000_FDX is not set
|
||||
CONFIG_FIXED_MII_AMNT=1
|
||||
# CONFIG_MDIO_BITBANG is not set
|
||||
CONFIG_NET_ETHERNET=y
|
||||
CONFIG_MII=y
|
||||
# CONFIG_HAPPYMEAL is not set
|
||||
|
@ -829,6 +878,11 @@ CONFIG_VORTEX=y
|
|||
# CONFIG_NET_TULIP is not set
|
||||
# CONFIG_HP100 is not set
|
||||
CONFIG_IBMVETH=m
|
||||
# CONFIG_IBM_NEW_EMAC is not set
|
||||
CONFIG_IBM_NEW_EMAC_ZMII=y
|
||||
CONFIG_IBM_NEW_EMAC_RGMII=y
|
||||
CONFIG_IBM_NEW_EMAC_TAH=y
|
||||
CONFIG_IBM_NEW_EMAC_EMAC4=y
|
||||
CONFIG_NET_PCI=y
|
||||
CONFIG_PCNET32=y
|
||||
# CONFIG_PCNET32_NAPI is not set
|
||||
|
@ -836,7 +890,6 @@ CONFIG_PCNET32=y
|
|||
# CONFIG_ADAPTEC_STARFIRE is not set
|
||||
# CONFIG_B44 is not set
|
||||
# CONFIG_FORCEDETH is not set
|
||||
# CONFIG_DGRS is not set
|
||||
# CONFIG_EEPRO100 is not set
|
||||
CONFIG_E100=y
|
||||
# CONFIG_FEALNX is not set
|
||||
|
@ -856,6 +909,7 @@ CONFIG_ACENIC_OMIT_TIGON_I=y
|
|||
CONFIG_E1000=y
|
||||
# CONFIG_E1000_NAPI is not set
|
||||
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
|
||||
# CONFIG_E1000E is not set
|
||||
# CONFIG_NS83820 is not set
|
||||
# CONFIG_HAMACHI is not set
|
||||
# CONFIG_YELLOWFIN is not set
|
||||
|
@ -863,6 +917,7 @@ CONFIG_E1000=y
|
|||
# CONFIG_SIS190 is not set
|
||||
# CONFIG_SKGE is not set
|
||||
# CONFIG_SKY2 is not set
|
||||
# CONFIG_SK98LIN is not set
|
||||
# CONFIG_VIA_VELOCITY is not set
|
||||
CONFIG_TIGON3=y
|
||||
# CONFIG_BNX2 is not set
|
||||
|
@ -872,13 +927,16 @@ CONFIG_SPIDER_NET=m
|
|||
CONFIG_NETDEV_10000=y
|
||||
# CONFIG_CHELSIO_T1 is not set
|
||||
# CONFIG_CHELSIO_T3 is not set
|
||||
# CONFIG_IXGBE is not set
|
||||
CONFIG_IXGB=m
|
||||
# CONFIG_IXGB_NAPI is not set
|
||||
# CONFIG_S2IO is not set
|
||||
# CONFIG_MYRI10GE is not set
|
||||
# CONFIG_NETXEN_NIC is not set
|
||||
CONFIG_PASEMI_MAC=m
|
||||
# CONFIG_NIU is not set
|
||||
CONFIG_PASEMI_MAC=y
|
||||
# CONFIG_MLX4_CORE is not set
|
||||
# CONFIG_TEHUTI is not set
|
||||
CONFIG_TR=y
|
||||
CONFIG_IBMOL=y
|
||||
# CONFIG_3C359 is not set
|
||||
|
@ -899,6 +957,7 @@ CONFIG_IBMOL=y
|
|||
# CONFIG_USB_RTL8150 is not set
|
||||
# CONFIG_USB_USBNET_MII is not set
|
||||
# CONFIG_USB_USBNET is not set
|
||||
# CONFIG_NET_PCMCIA is not set
|
||||
# CONFIG_WAN is not set
|
||||
CONFIG_ISERIES_VETH=m
|
||||
# CONFIG_FDDI is not set
|
||||
|
@ -918,6 +977,7 @@ CONFIG_SLHC=m
|
|||
# CONFIG_NET_FC is not set
|
||||
# CONFIG_SHAPER is not set
|
||||
CONFIG_NETCONSOLE=y
|
||||
# CONFIG_NETCONSOLE_DYNAMIC is not set
|
||||
CONFIG_NETPOLL=y
|
||||
CONFIG_NETPOLL_TRAP=y
|
||||
CONFIG_NET_POLL_CONTROLLER=y
|
||||
|
@ -939,7 +999,6 @@ CONFIG_INPUT_MOUSEDEV=y
|
|||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_TSDEV is not set
|
||||
CONFIG_INPUT_EVDEV=m
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
|
@ -1002,6 +1061,7 @@ CONFIG_HW_CONSOLE=y
|
|||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_PCI=y
|
||||
# CONFIG_SERIAL_8250_CS is not set
|
||||
CONFIG_SERIAL_8250_NR_UARTS=4
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
|
||||
# CONFIG_SERIAL_8250_EXTENDED is not set
|
||||
|
@ -1029,14 +1089,18 @@ CONFIG_HVC_RTAS=y
|
|||
CONFIG_HVC_BEAT=y
|
||||
CONFIG_HVCS=m
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_GEN_RTC=y
|
||||
# CONFIG_GEN_RTC_X is not set
|
||||
# CONFIG_R3964 is not set
|
||||
# CONFIG_APPLICOM is not set
|
||||
# CONFIG_AGP is not set
|
||||
# CONFIG_DRM is not set
|
||||
|
||||
#
|
||||
# PCMCIA character devices
|
||||
#
|
||||
# CONFIG_SYNCLINK_CS is not set
|
||||
# CONFIG_CARDMAN_4000 is not set
|
||||
# CONFIG_CARDMAN_4040 is not set
|
||||
CONFIG_RAW_DRIVER=y
|
||||
CONFIG_MAX_RAW_DEVS=256
|
||||
# CONFIG_HANGCHECK_TIMER is not set
|
||||
|
@ -1068,6 +1132,7 @@ CONFIG_I2C_POWERMAC=y
|
|||
# CONFIG_I2C_NFORCE2 is not set
|
||||
# CONFIG_I2C_OCORES is not set
|
||||
# CONFIG_I2C_PARPORT_LIGHT is not set
|
||||
CONFIG_I2C_PASEMI=y
|
||||
# CONFIG_I2C_PROSAVAGE is not set
|
||||
# CONFIG_I2C_SAVAGE4 is not set
|
||||
# CONFIG_I2C_SIMTEC is not set
|
||||
|
@ -1106,6 +1171,13 @@ CONFIG_I2C_POWERMAC=y
|
|||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
|
@ -1122,18 +1194,8 @@ CONFIG_I2C_POWERMAC=y
|
|||
#
|
||||
# Graphics support
|
||||
#
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
CONFIG_DISPLAY_SUPPORT=y
|
||||
|
||||
#
|
||||
# Display hardware drivers
|
||||
#
|
||||
# CONFIG_AGP is not set
|
||||
# CONFIG_DRM is not set
|
||||
# CONFIG_VGASTATE is not set
|
||||
CONFIG_VIDEO_OUTPUT_CONTROL=m
|
||||
CONFIG_FB=y
|
||||
|
@ -1142,6 +1204,7 @@ CONFIG_FB_DDC=y
|
|||
CONFIG_FB_CFB_FILLRECT=y
|
||||
CONFIG_FB_CFB_COPYAREA=y
|
||||
CONFIG_FB_CFB_IMAGEBLIT=y
|
||||
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
|
||||
# CONFIG_FB_SYS_FILLRECT is not set
|
||||
# CONFIG_FB_SYS_COPYAREA is not set
|
||||
# CONFIG_FB_SYS_IMAGEBLIT is not set
|
||||
|
@ -1192,6 +1255,19 @@ CONFIG_FB_RADEON_BACKLIGHT=y
|
|||
# CONFIG_FB_PM3 is not set
|
||||
CONFIG_FB_IBM_GXT4500=y
|
||||
# CONFIG_FB_VIRTUAL is not set
|
||||
CONFIG_BACKLIGHT_LCD_SUPPORT=y
|
||||
CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
# CONFIG_BACKLIGHT_CORGI is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
CONFIG_DISPLAY_SUPPORT=y
|
||||
|
||||
#
|
||||
# Display hardware drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
|
@ -1332,6 +1408,12 @@ CONFIG_SND_AOA_SOUNDBUS_I2S=m
|
|||
# CONFIG_SND_USB_USX2Y is not set
|
||||
# CONFIG_SND_USB_CAIAQ is not set
|
||||
|
||||
#
|
||||
# PCMCIA devices
|
||||
#
|
||||
# CONFIG_SND_VXPOCKET is not set
|
||||
# CONFIG_SND_PDAUDIOCF is not set
|
||||
|
||||
#
|
||||
# System on Chip audio support
|
||||
#
|
||||
|
@ -1348,6 +1430,7 @@ CONFIG_SND_AOA_SOUNDBUS_I2S=m
|
|||
CONFIG_HID_SUPPORT=y
|
||||
CONFIG_HID=y
|
||||
# CONFIG_HID_DEBUG is not set
|
||||
# CONFIG_HIDRAW is not set
|
||||
|
||||
#
|
||||
# USB Input Devices
|
||||
|
@ -1489,19 +1572,53 @@ CONFIG_EDAC=y
|
|||
#
|
||||
# CONFIG_EDAC_DEBUG is not set
|
||||
CONFIG_EDAC_MM_EDAC=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
CONFIG_EDAC_PASEMI=y
|
||||
CONFIG_RTC_LIB=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_RTC_HCTOSYS=y
|
||||
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
|
||||
# CONFIG_RTC_DEBUG is not set
|
||||
|
||||
#
|
||||
# DMA Engine support
|
||||
# RTC interfaces
|
||||
#
|
||||
# CONFIG_DMA_ENGINE is not set
|
||||
CONFIG_RTC_INTF_SYSFS=y
|
||||
CONFIG_RTC_INTF_PROC=y
|
||||
CONFIG_RTC_INTF_DEV=y
|
||||
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
|
||||
# CONFIG_RTC_DRV_TEST is not set
|
||||
|
||||
#
|
||||
# DMA Clients
|
||||
# I2C RTC drivers
|
||||
#
|
||||
CONFIG_RTC_DRV_DS1307=y
|
||||
# CONFIG_RTC_DRV_DS1374 is not set
|
||||
# CONFIG_RTC_DRV_DS1672 is not set
|
||||
# CONFIG_RTC_DRV_MAX6900 is not set
|
||||
# CONFIG_RTC_DRV_RS5C372 is not set
|
||||
# CONFIG_RTC_DRV_ISL1208 is not set
|
||||
# CONFIG_RTC_DRV_X1205 is not set
|
||||
# CONFIG_RTC_DRV_PCF8563 is not set
|
||||
# CONFIG_RTC_DRV_PCF8583 is not set
|
||||
# CONFIG_RTC_DRV_M41T80 is not set
|
||||
|
||||
#
|
||||
# SPI RTC drivers
|
||||
#
|
||||
|
||||
#
|
||||
# DMA Devices
|
||||
# Platform RTC drivers
|
||||
#
|
||||
# CONFIG_RTC_DRV_CMOS is not set
|
||||
# CONFIG_RTC_DRV_DS1553 is not set
|
||||
# CONFIG_RTC_DRV_STK17TA8 is not set
|
||||
# CONFIG_RTC_DRV_DS1742 is not set
|
||||
# CONFIG_RTC_DRV_M48T86 is not set
|
||||
# CONFIG_RTC_DRV_M48T59 is not set
|
||||
# CONFIG_RTC_DRV_V3020 is not set
|
||||
|
||||
#
|
||||
# on-CPU RTC drivers
|
||||
#
|
||||
|
||||
#
|
||||
|
@ -1585,7 +1702,6 @@ CONFIG_TMPFS=y
|
|||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
CONFIG_HUGETLBFS=y
|
||||
CONFIG_HUGETLB_PAGE=y
|
||||
CONFIG_RAMFS=y
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
|
||||
#
|
||||
|
@ -1604,10 +1720,7 @@ CONFIG_CRAMFS=y
|
|||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Network File Systems
|
||||
#
|
||||
CONFIG_NETWORK_FILESYSTEMS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
|
@ -1619,6 +1732,7 @@ CONFIG_NFSD_V3=y
|
|||
CONFIG_NFSD_V3_ACL=y
|
||||
CONFIG_NFSD_V4=y
|
||||
CONFIG_NFSD_TCP=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_LOCKD=y
|
||||
CONFIG_LOCKD_V4=y
|
||||
CONFIG_EXPORTFS=m
|
||||
|
@ -1626,6 +1740,7 @@ CONFIG_NFS_ACL_SUPPORT=y
|
|||
CONFIG_NFS_COMMON=y
|
||||
CONFIG_SUNRPC=y
|
||||
CONFIG_SUNRPC_GSS=y
|
||||
CONFIG_SUNRPC_XPRT_RDMA=m
|
||||
# CONFIG_SUNRPC_BIND34 is not set
|
||||
CONFIG_RPCSEC_GSS_KRB5=y
|
||||
CONFIG_RPCSEC_GSS_SPKM3=m
|
||||
|
@ -1662,10 +1777,6 @@ CONFIG_MSDOS_PARTITION=y
|
|||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
|
||||
#
|
||||
# Native Language Support
|
||||
#
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="iso8859-1"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
|
@ -1706,10 +1817,6 @@ CONFIG_NLS_ISO8859_15=m
|
|||
CONFIG_NLS_KOI8_R=m
|
||||
CONFIG_NLS_KOI8_U=m
|
||||
CONFIG_NLS_UTF8=m
|
||||
|
||||
#
|
||||
# Distributed Lock Manager
|
||||
#
|
||||
# CONFIG_DLM is not set
|
||||
# CONFIG_UCC_SLOW is not set
|
||||
|
||||
|
@ -1733,18 +1840,17 @@ CONFIG_PLIST=y
|
|||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
||||
|
||||
#
|
||||
# Instrumentation Support
|
||||
#
|
||||
CONFIG_INSTRUMENTATION=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
# CONFIG_MARKERS is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
|
@ -1768,9 +1874,12 @@ CONFIG_DEBUG_BUGVERBOSE=y
|
|||
# CONFIG_DEBUG_INFO is not set
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
CONFIG_FORCED_INLINING=y
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_DEBUG_STACKOVERFLOW=y
|
||||
CONFIG_DEBUG_STACK_USAGE=y
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
@ -1780,6 +1889,7 @@ CONFIG_XMON=y
|
|||
# CONFIG_XMON_DEFAULT is not set
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
CONFIG_IRQSTACKS=y
|
||||
# CONFIG_VIRQ_DEBUG is not set
|
||||
CONFIG_BOOTX_TEXT=y
|
||||
# CONFIG_PPC_EARLY_DEBUG is not set
|
||||
|
||||
|
@ -1788,6 +1898,7 @@ CONFIG_BOOTX_TEXT=y
|
|||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
CONFIG_XOR_BLOCKS=y
|
||||
CONFIG_ASYNC_CORE=y
|
||||
CONFIG_ASYNC_MEMCPY=y
|
||||
|
@ -1812,6 +1923,7 @@ CONFIG_CRYPTO_ECB=m
|
|||
CONFIG_CRYPTO_CBC=y
|
||||
CONFIG_CRYPTO_PCBC=m
|
||||
# CONFIG_CRYPTO_LRW is not set
|
||||
# CONFIG_CRYPTO_XTS is not set
|
||||
# CONFIG_CRYPTO_CRYPTD is not set
|
||||
CONFIG_CRYPTO_DES=y
|
||||
# CONFIG_CRYPTO_FCRYPT is not set
|
||||
|
@ -1826,9 +1938,12 @@ CONFIG_CRYPTO_TEA=m
|
|||
CONFIG_CRYPTO_ARC4=m
|
||||
CONFIG_CRYPTO_KHAZAD=m
|
||||
CONFIG_CRYPTO_ANUBIS=m
|
||||
# CONFIG_CRYPTO_SEED is not set
|
||||
CONFIG_CRYPTO_DEFLATE=m
|
||||
CONFIG_CRYPTO_MICHAEL_MIC=m
|
||||
CONFIG_CRYPTO_CRC32C=m
|
||||
# CONFIG_CRYPTO_CAMELLIA is not set
|
||||
CONFIG_CRYPTO_TEST=m
|
||||
# CONFIG_CRYPTO_AUTHENC is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
# CONFIG_PPC_CLOCK is not set
|
||||
|
|
|
@ -1104,6 +1104,16 @@ static struct cpu_spec __initdata cpu_specs[] = {
|
|||
{
|
||||
.pvr_mask = 0xf0000fff,
|
||||
.pvr_value = 0x40000850,
|
||||
.cpu_name = "440GR Rev. A",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE,
|
||||
.icache_bsize = 32,
|
||||
.dcache_bsize = 32,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */
|
||||
.pvr_mask = 0xf0000fff,
|
||||
.pvr_value = 0x40000858,
|
||||
.cpu_name = "440EP Rev. A",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
|
||||
|
@ -1115,6 +1125,16 @@ static struct cpu_spec __initdata cpu_specs[] = {
|
|||
{
|
||||
.pvr_mask = 0xf0000fff,
|
||||
.pvr_value = 0x400008d3,
|
||||
.cpu_name = "440GR Rev. B",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
|
||||
.icache_bsize = 32,
|
||||
.dcache_bsize = 32,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */
|
||||
.pvr_mask = 0xf0000fff,
|
||||
.pvr_value = 0x400008db,
|
||||
.cpu_name = "440EP Rev. B",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
|
||||
|
@ -1123,20 +1143,9 @@ static struct cpu_spec __initdata cpu_specs[] = {
|
|||
.cpu_setup = __setup_cpu_440ep,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* 440EPX */
|
||||
.pvr_mask = 0xf0000ffb,
|
||||
.pvr_value = 0x200008D0,
|
||||
.cpu_name = "440EPX",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
|
||||
.icache_bsize = 32,
|
||||
.dcache_bsize = 32,
|
||||
.cpu_setup = __setup_cpu_440epx,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* 440GRX */
|
||||
.pvr_mask = 0xf0000ffb,
|
||||
.pvr_value = 0x200008D8,
|
||||
.pvr_value = 0x200008D0,
|
||||
.cpu_name = "440GRX",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE,
|
||||
|
@ -1145,6 +1154,17 @@ static struct cpu_spec __initdata cpu_specs[] = {
|
|||
.cpu_setup = __setup_cpu_440grx,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* Use logical PVR for 440EPx (logical pvr = pvr | 0x8) */
|
||||
.pvr_mask = 0xf0000ffb,
|
||||
.pvr_value = 0x200008D8,
|
||||
.cpu_name = "440EPX",
|
||||
.cpu_features = CPU_FTRS_44X,
|
||||
.cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
|
||||
.icache_bsize = 32,
|
||||
.dcache_bsize = 32,
|
||||
.cpu_setup = __setup_cpu_440epx,
|
||||
.platform = "ppc440",
|
||||
},
|
||||
{ /* 440GP Rev. B */
|
||||
.pvr_mask = 0xf0000fff,
|
||||
.pvr_value = 0x40000440,
|
||||
|
|
|
@ -244,6 +244,13 @@ syscall_exit_cont:
|
|||
andis. r10,r0,DBCR0_IC@h
|
||||
bnel- load_dbcr0
|
||||
#endif
|
||||
#ifdef CONFIG_44x
|
||||
lis r4,icache_44x_need_flush@ha
|
||||
lwz r5,icache_44x_need_flush@l(r4)
|
||||
cmplwi cr0,r5,0
|
||||
bne- 2f
|
||||
1:
|
||||
#endif /* CONFIG_44x */
|
||||
stwcx. r0,0,r1 /* to clear the reservation */
|
||||
lwz r4,_LINK(r1)
|
||||
lwz r5,_CCR(r1)
|
||||
|
@ -258,6 +265,12 @@ syscall_exit_cont:
|
|||
mtspr SPRN_SRR1,r8
|
||||
SYNC
|
||||
RFI
|
||||
#ifdef CONFIG_44x
|
||||
2: li r7,0
|
||||
iccci r0,r0
|
||||
stw r7,icache_44x_need_flush@l(r4)
|
||||
b 1b
|
||||
#endif /* CONFIG_44x */
|
||||
|
||||
66: li r3,-ENOSYS
|
||||
b ret_from_syscall
|
||||
|
@ -683,6 +696,16 @@ resume_kernel:
|
|||
|
||||
/* interrupts are hard-disabled at this point */
|
||||
restore:
|
||||
#ifdef CONFIG_44x
|
||||
lis r4,icache_44x_need_flush@ha
|
||||
lwz r5,icache_44x_need_flush@l(r4)
|
||||
cmplwi cr0,r5,0
|
||||
beq+ 1f
|
||||
li r6,0
|
||||
iccci r0,r0
|
||||
stw r6,icache_44x_need_flush@l(r4)
|
||||
1:
|
||||
#endif /* CONFIG_44x */
|
||||
lwz r0,GPR0(r1)
|
||||
lwz r2,GPR2(r1)
|
||||
REST_4GPRS(3, r1)
|
||||
|
|
|
@ -904,7 +904,7 @@ handle_page_fault:
|
|||
*/
|
||||
12: bl .save_nvgprs
|
||||
addi r3,r1,STACK_FRAME_OVERHEAD
|
||||
lwz r4,_DAR(r1)
|
||||
ld r4,_DAR(r1)
|
||||
bl .low_hash_fault
|
||||
b .ret_from_except
|
||||
|
||||
|
|
|
@ -122,7 +122,7 @@ static ctl_table powersave_nap_sysctl_root[] = {
|
|||
{
|
||||
.ctl_name = CTL_KERN,
|
||||
.procname = "kernel",
|
||||
.mode = 0755,
|
||||
.mode = 0555,
|
||||
.child = powersave_nap_ctl_table,
|
||||
},
|
||||
{}
|
||||
|
|
|
@ -288,7 +288,16 @@ _GLOBAL(_tlbia)
|
|||
*/
|
||||
_GLOBAL(_tlbie)
|
||||
#if defined(CONFIG_40x)
|
||||
/* We run the search with interrupts disabled because we have to change
|
||||
* the PID and I don't want to preempt when that happens.
|
||||
*/
|
||||
mfmsr r5
|
||||
mfspr r6,SPRN_PID
|
||||
wrteei 0
|
||||
mtspr SPRN_PID,r4
|
||||
tlbsx. r3, 0, r3
|
||||
mtspr SPRN_PID,r6
|
||||
wrtee r5
|
||||
bne 10f
|
||||
sync
|
||||
/* There are only 64 TLB entries, so r3 < 64, which means bit 25 is clear.
|
||||
|
@ -297,23 +306,23 @@ _GLOBAL(_tlbie)
|
|||
tlbwe r3, r3, TLB_TAG
|
||||
isync
|
||||
10:
|
||||
|
||||
#elif defined(CONFIG_44x)
|
||||
mfspr r4,SPRN_MMUCR
|
||||
mfspr r5,SPRN_PID /* Get PID */
|
||||
rlwimi r4,r5,0,24,31 /* Set TID */
|
||||
mfspr r5,SPRN_MMUCR
|
||||
rlwimi r5,r4,0,24,31 /* Set TID */
|
||||
|
||||
/* We have to run the search with interrupts disabled, even critical
|
||||
* and debug interrupts (in fact the only critical exceptions we have
|
||||
* are debug and machine check). Otherwise an interrupt which causes
|
||||
* a TLB miss can clobber the MMUCR between the mtspr and the tlbsx. */
|
||||
mfmsr r5
|
||||
mfmsr r4
|
||||
lis r6,(MSR_EE|MSR_CE|MSR_ME|MSR_DE)@ha
|
||||
addi r6,r6,(MSR_EE|MSR_CE|MSR_ME|MSR_DE)@l
|
||||
andc r6,r5,r6
|
||||
andc r6,r4,r6
|
||||
mtmsr r6
|
||||
mtspr SPRN_MMUCR,r4
|
||||
mtspr SPRN_MMUCR,r5
|
||||
tlbsx. r3, 0, r3
|
||||
mtmsr r5
|
||||
mtmsr r4
|
||||
bne 10f
|
||||
sync
|
||||
/* There are only 64 TLB entries, so r3 < 64,
|
||||
|
@ -534,12 +543,21 @@ END_FTR_SECTION_IFSET(CPU_FTR_COHERENT_ICACHE)
|
|||
addi r3,r3,L1_CACHE_BYTES
|
||||
bdnz 0b
|
||||
sync
|
||||
#ifndef CONFIG_44x
|
||||
/* We don't flush the icache on 44x. Those have a virtual icache
|
||||
* and we don't have access to the virtual address here (it's
|
||||
* not the page vaddr but where it's mapped in user space). The
|
||||
* flushing of the icache on these is handled elsewhere, when
|
||||
* a change in the address space occurs, before returning to
|
||||
* user space
|
||||
*/
|
||||
mtctr r4
|
||||
1: icbi 0,r6
|
||||
addi r6,r6,L1_CACHE_BYTES
|
||||
bdnz 1b
|
||||
sync
|
||||
isync
|
||||
#endif /* CONFIG_44x */
|
||||
blr
|
||||
|
||||
/*
|
||||
|
|
|
@ -697,6 +697,18 @@ static int __init early_init_dt_scan_cpus(unsigned long node,
|
|||
prop = of_get_flat_dt_prop(node, "cpu-version", NULL);
|
||||
if (prop && (*prop & 0xff000000) == 0x0f000000)
|
||||
identify_cpu(0, *prop);
|
||||
#if defined(CONFIG_44x) && defined(CONFIG_PPC_FPU)
|
||||
/*
|
||||
* Since 440GR(x)/440EP(x) processors have the same pvr,
|
||||
* we check the node path and set bit 28 in the cur_cpu_spec
|
||||
* pvr for EP(x) processor version. This bit is always 0 in
|
||||
* the "real" pvr. Then we call identify_cpu again with
|
||||
* the new logical pvr to enable FPU support.
|
||||
*/
|
||||
if (strstr(uname, "440EP")) {
|
||||
identify_cpu(0, cur_cpu_spec->pvr_value | 0x8);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
check_cpu_feature_properties(node);
|
||||
|
|
|
@ -1244,7 +1244,7 @@ static void __init prom_initialize_tce_table(void)
|
|||
local_alloc_bottom = base;
|
||||
|
||||
/* It seems OF doesn't null-terminate the path :-( */
|
||||
memset(path, 0, sizeof(path));
|
||||
memset(path, 0, PROM_SCRATCH_SIZE);
|
||||
/* Call OF to setup the TCE hardware */
|
||||
if (call_prom("package-to-path", 3, 1, node,
|
||||
path, PROM_SCRATCH_SIZE-1) == PROM_ERROR) {
|
||||
|
|
|
@ -291,23 +291,16 @@ static void __init initialize_cache_info(void)
|
|||
if ( num_cpus == 1 ) {
|
||||
const u32 *sizep, *lsizep;
|
||||
u32 size, lsize;
|
||||
const char *dc, *ic;
|
||||
|
||||
/* Then read cache informations */
|
||||
if (machine_is(powermac)) {
|
||||
dc = "d-cache-block-size";
|
||||
ic = "i-cache-block-size";
|
||||
} else {
|
||||
dc = "d-cache-line-size";
|
||||
ic = "i-cache-line-size";
|
||||
}
|
||||
|
||||
size = 0;
|
||||
lsize = cur_cpu_spec->dcache_bsize;
|
||||
sizep = of_get_property(np, "d-cache-size", NULL);
|
||||
if (sizep != NULL)
|
||||
size = *sizep;
|
||||
lsizep = of_get_property(np, dc, NULL);
|
||||
lsizep = of_get_property(np, "d-cache-block-size", NULL);
|
||||
/* fallback if block size missing */
|
||||
if (lsizep == NULL)
|
||||
lsizep = of_get_property(np, "d-cache-line-size", NULL);
|
||||
if (lsizep != NULL)
|
||||
lsize = *lsizep;
|
||||
if (sizep == 0 || lsizep == 0)
|
||||
|
@ -324,7 +317,9 @@ static void __init initialize_cache_info(void)
|
|||
sizep = of_get_property(np, "i-cache-size", NULL);
|
||||
if (sizep != NULL)
|
||||
size = *sizep;
|
||||
lsizep = of_get_property(np, ic, NULL);
|
||||
lsizep = of_get_property(np, "i-cache-block-size", NULL);
|
||||
if (lsizep == NULL)
|
||||
lsizep = of_get_property(np, "i-cache-line-size", NULL);
|
||||
if (lsizep != NULL)
|
||||
lsize = *lsizep;
|
||||
if (sizep == 0 || lsizep == 0)
|
||||
|
|
|
@ -133,10 +133,12 @@ _GLOBAL(swsusp_arch_suspend)
|
|||
/* Resume code */
|
||||
_GLOBAL(swsusp_arch_resume)
|
||||
|
||||
#ifdef CONFIG_ALTIVEC
|
||||
/* Stop pending alitvec streams and memory accesses */
|
||||
BEGIN_FTR_SECTION
|
||||
DSSALL
|
||||
END_FTR_SECTION_IFSET(CPU_FTR_ALTIVEC)
|
||||
#endif
|
||||
sync
|
||||
|
||||
/* Disable MSR:DR to make sure we don't take a TLB or
|
||||
|
|
|
@ -586,7 +586,7 @@ void timer_interrupt(struct pt_regs * regs)
|
|||
/* not time for this event yet */
|
||||
now = per_cpu(decrementer_next_tb, cpu) - now;
|
||||
if (now <= DECREMENTER_MAX)
|
||||
set_dec((unsigned int)now - 1);
|
||||
set_dec((int)now);
|
||||
return;
|
||||
}
|
||||
old_regs = set_irq_regs(regs);
|
||||
|
@ -611,8 +611,6 @@ void timer_interrupt(struct pt_regs * regs)
|
|||
|
||||
if (evt->event_handler)
|
||||
evt->event_handler(evt);
|
||||
else
|
||||
evt->set_next_event(DECREMENTER_MAX, evt);
|
||||
|
||||
#ifdef CONFIG_PPC_ISERIES
|
||||
if (firmware_has_feature(FW_FEATURE_ISERIES) && hvlpevent_is_pending())
|
||||
|
@ -836,9 +834,6 @@ static int decrementer_set_next_event(unsigned long evt,
|
|||
struct clock_event_device *dev)
|
||||
{
|
||||
__get_cpu_var(decrementer_next_tb) = get_tb_or_rtc() + evt;
|
||||
/* The decrementer interrupts on the 0 -> -1 transition */
|
||||
if (evt)
|
||||
--evt;
|
||||
set_dec(evt);
|
||||
return 0;
|
||||
}
|
||||
|
@ -871,7 +866,8 @@ void init_decrementer_clockevent(void)
|
|||
decrementer_clockevent.shift);
|
||||
decrementer_clockevent.max_delta_ns =
|
||||
clockevent_delta2ns(DECREMENTER_MAX, &decrementer_clockevent);
|
||||
decrementer_clockevent.min_delta_ns = 1000;
|
||||
decrementer_clockevent.min_delta_ns =
|
||||
clockevent_delta2ns(2, &decrementer_clockevent);
|
||||
|
||||
register_decrementer_clockevent(cpu);
|
||||
}
|
||||
|
|
|
@ -37,11 +37,10 @@ SECTIONS
|
|||
ALIGN_FUNCTION();
|
||||
*(.text.head)
|
||||
_text = .;
|
||||
TEXT_TEXT
|
||||
*(.text .fixup .text.init.refok .exit.text.refok)
|
||||
SCHED_TEXT
|
||||
LOCK_TEXT
|
||||
KPROBES_TEXT
|
||||
*(.fixup)
|
||||
|
||||
#ifdef CONFIG_PPC32
|
||||
*(.got1)
|
||||
|
|
|
@ -98,13 +98,12 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v = KERNELBASE;
|
||||
p = PPC_MEMSTART;
|
||||
s = 0;
|
||||
s = total_lowmem;
|
||||
|
||||
if (__map_without_ltlbs) {
|
||||
return s;
|
||||
}
|
||||
if (__map_without_ltlbs)
|
||||
return 0;
|
||||
|
||||
while (s <= (total_lowmem - LARGE_PAGE_SIZE_16M)) {
|
||||
while (s >= LARGE_PAGE_SIZE_16M) {
|
||||
pmd_t *pmdp;
|
||||
unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | _PAGE_HWWRITE;
|
||||
|
||||
|
@ -116,10 +115,10 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v += LARGE_PAGE_SIZE_16M;
|
||||
p += LARGE_PAGE_SIZE_16M;
|
||||
s += LARGE_PAGE_SIZE_16M;
|
||||
s -= LARGE_PAGE_SIZE_16M;
|
||||
}
|
||||
|
||||
while (s <= (total_lowmem - LARGE_PAGE_SIZE_4M)) {
|
||||
while (s >= LARGE_PAGE_SIZE_4M) {
|
||||
pmd_t *pmdp;
|
||||
unsigned long val = p | _PMD_SIZE_4M | _PAGE_HWEXEC | _PAGE_HWWRITE;
|
||||
|
||||
|
@ -128,8 +127,8 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v += LARGE_PAGE_SIZE_4M;
|
||||
p += LARGE_PAGE_SIZE_4M;
|
||||
s += LARGE_PAGE_SIZE_4M;
|
||||
s -= LARGE_PAGE_SIZE_4M;
|
||||
}
|
||||
|
||||
return s;
|
||||
return total_lowmem - s;
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
*/
|
||||
unsigned int tlb_44x_index; /* = 0 */
|
||||
unsigned int tlb_44x_hwater = PPC44x_TLB_SIZE - 1 - PPC44x_EARLY_TLBS;
|
||||
int icache_44x_need_flush;
|
||||
|
||||
/*
|
||||
* "Pins" a 256MB TLB entry in AS0 for kernel lowmem
|
||||
|
|
|
@ -309,7 +309,7 @@ int __kprobes do_page_fault(struct pt_regs *regs, unsigned long address,
|
|||
set_bit(PG_arch_1, &page->flags);
|
||||
}
|
||||
pte_update(ptep, 0, _PAGE_HWEXEC);
|
||||
_tlbie(address);
|
||||
_tlbie(address, mm->context.id);
|
||||
pte_unmap_unlock(ptep, ptl);
|
||||
up_read(&mm->mmap_sem);
|
||||
return 0;
|
||||
|
|
|
@ -331,7 +331,7 @@ htab_pte_insert_failure:
|
|||
*****************************************************************************/
|
||||
|
||||
/* _hash_page_4K(unsigned long ea, unsigned long access, unsigned long vsid,
|
||||
* pte_t *ptep, unsigned long trap, int local)
|
||||
* pte_t *ptep, unsigned long trap, int local, int ssize)
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@ -557,7 +557,8 @@ htab_inval_old_hpte:
|
|||
mr r4,r31 /* PTE.pte */
|
||||
li r5,0 /* PTE.hidx */
|
||||
li r6,MMU_PAGE_64K /* psize */
|
||||
ld r7,STK_PARM(r8)(r1) /* local */
|
||||
ld r7,STK_PARM(r9)(r1) /* ssize */
|
||||
ld r8,STK_PARM(r8)(r1) /* local */
|
||||
bl .flush_hash_page
|
||||
b htab_insert_pte
|
||||
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include <asm/cputable.h>
|
||||
#include <asm/sections.h>
|
||||
#include <asm/spu.h>
|
||||
#include <asm/udbg.h>
|
||||
|
||||
#ifdef DEBUG
|
||||
#define DBG(fmt...) udbg_printf(fmt)
|
||||
|
@ -791,8 +792,7 @@ int hash_page(unsigned long ea, unsigned long access, unsigned long trap)
|
|||
}
|
||||
if (user_region) {
|
||||
if (psize != get_paca()->context.user_psize) {
|
||||
get_paca()->context.user_psize =
|
||||
mm->context.user_psize;
|
||||
get_paca()->context = mm->context;
|
||||
slb_flush_and_rebolt();
|
||||
}
|
||||
} else if (get_paca()->vmalloc_sllp !=
|
||||
|
@ -885,6 +885,9 @@ void hash_preload(struct mm_struct *mm, unsigned long ea,
|
|||
local_irq_restore(flags);
|
||||
}
|
||||
|
||||
/* WARNING: This is called from hash_low_64.S, if you change this prototype,
|
||||
* do not forget to update the assembly call site !
|
||||
*/
|
||||
void flush_hash_page(unsigned long va, real_pte_t pte, int psize, int ssize,
|
||||
int local)
|
||||
{
|
||||
|
|
|
@ -61,12 +61,12 @@ extern unsigned long total_lowmem;
|
|||
#define mmu_mapin_ram() (0UL)
|
||||
|
||||
#elif defined(CONFIG_4xx)
|
||||
#define flush_HPTE(X, va, pg) _tlbie(va)
|
||||
#define flush_HPTE(pid, va, pg) _tlbie(va, pid)
|
||||
extern void MMU_init_hw(void);
|
||||
extern unsigned long mmu_mapin_ram(void);
|
||||
|
||||
#elif defined(CONFIG_FSL_BOOKE)
|
||||
#define flush_HPTE(X, va, pg) _tlbie(va)
|
||||
#define flush_HPTE(pid, va, pg) _tlbie(va, pid)
|
||||
extern void MMU_init_hw(void);
|
||||
extern unsigned long mmu_mapin_ram(void);
|
||||
extern void adjust_total_lowmem(void);
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include <asm/smp.h>
|
||||
#include <asm/firmware.h>
|
||||
#include <linux/compiler.h>
|
||||
#include <asm/udbg.h>
|
||||
|
||||
#ifdef DEBUG
|
||||
#define DBG(fmt...) udbg_printf(fmt)
|
||||
|
@ -148,6 +149,35 @@ void slb_vmalloc_update(void)
|
|||
slb_flush_and_rebolt();
|
||||
}
|
||||
|
||||
/* Helper function to compare esids. There are four cases to handle.
|
||||
* 1. The system is not 1T segment size capable. Use the GET_ESID compare.
|
||||
* 2. The system is 1T capable, both addresses are < 1T, use the GET_ESID compare.
|
||||
* 3. The system is 1T capable, only one of the two addresses is > 1T. This is not a match.
|
||||
* 4. The system is 1T capable, both addresses are > 1T, use the GET_ESID_1T macro to compare.
|
||||
*/
|
||||
static inline int esids_match(unsigned long addr1, unsigned long addr2)
|
||||
{
|
||||
int esid_1t_count;
|
||||
|
||||
/* System is not 1T segment size capable. */
|
||||
if (!cpu_has_feature(CPU_FTR_1T_SEGMENT))
|
||||
return (GET_ESID(addr1) == GET_ESID(addr2));
|
||||
|
||||
esid_1t_count = (((addr1 >> SID_SHIFT_1T) != 0) +
|
||||
((addr2 >> SID_SHIFT_1T) != 0));
|
||||
|
||||
/* both addresses are < 1T */
|
||||
if (esid_1t_count == 0)
|
||||
return (GET_ESID(addr1) == GET_ESID(addr2));
|
||||
|
||||
/* One address < 1T, the other > 1T. Not a match */
|
||||
if (esid_1t_count == 1)
|
||||
return 0;
|
||||
|
||||
/* Both addresses are > 1T. */
|
||||
return (GET_ESID_1T(addr1) == GET_ESID_1T(addr2));
|
||||
}
|
||||
|
||||
/* Flush all user entries from the segment table of the current processor. */
|
||||
void switch_slb(struct task_struct *tsk, struct mm_struct *mm)
|
||||
{
|
||||
|
@ -193,15 +223,14 @@ void switch_slb(struct task_struct *tsk, struct mm_struct *mm)
|
|||
return;
|
||||
slb_allocate(pc);
|
||||
|
||||
if (GET_ESID(pc) == GET_ESID(stack))
|
||||
if (esids_match(pc,stack))
|
||||
return;
|
||||
|
||||
if (is_kernel_addr(stack))
|
||||
return;
|
||||
slb_allocate(stack);
|
||||
|
||||
if ((GET_ESID(pc) == GET_ESID(unmapped_base))
|
||||
|| (GET_ESID(stack) == GET_ESID(unmapped_base)))
|
||||
if (esids_match(pc,unmapped_base) || esids_match(stack,unmapped_base))
|
||||
return;
|
||||
|
||||
if (is_kernel_addr(unmapped_base))
|
||||
|
|
|
@ -158,6 +158,18 @@ static unsigned int iic_get_irq(void)
|
|||
return virq;
|
||||
}
|
||||
|
||||
void iic_setup_cpu(void)
|
||||
{
|
||||
out_be64(&__get_cpu_var(iic).regs->prio, 0xff);
|
||||
}
|
||||
|
||||
u8 iic_get_target_id(int cpu)
|
||||
{
|
||||
return per_cpu(iic, cpu).target_id;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL_GPL(iic_get_target_id);
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
|
||||
/* Use the highest interrupt priorities for IPI */
|
||||
|
@ -166,29 +178,17 @@ static inline int iic_ipi_to_irq(int ipi)
|
|||
return IIC_IRQ_TYPE_IPI + 0xf - ipi;
|
||||
}
|
||||
|
||||
void iic_setup_cpu(void)
|
||||
{
|
||||
out_be64(&__get_cpu_var(iic).regs->prio, 0xff);
|
||||
}
|
||||
|
||||
void iic_cause_IPI(int cpu, int mesg)
|
||||
{
|
||||
out_be64(&per_cpu(iic, cpu).regs->generate, (0xf - mesg) << 4);
|
||||
}
|
||||
|
||||
u8 iic_get_target_id(int cpu)
|
||||
{
|
||||
return per_cpu(iic, cpu).target_id;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(iic_get_target_id);
|
||||
|
||||
struct irq_host *iic_get_irq_host(int node)
|
||||
{
|
||||
return iic_host;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(iic_get_irq_host);
|
||||
|
||||
|
||||
static irqreturn_t iic_ipi_action(int irq, void *dev_id)
|
||||
{
|
||||
int ipi = (int)(long)dev_id;
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include <asm/rtas.h>
|
||||
|
||||
#include "interrupt.h"
|
||||
#include <asm/udbg.h>
|
||||
|
||||
#ifdef DEBUG
|
||||
#define DBG(fmt...) udbg_printf(fmt)
|
||||
|
|
|
@ -49,6 +49,7 @@
|
|||
#include <asm/machdep.h>
|
||||
#include <asm/cputable.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/time.h>
|
||||
#include <asm/spu_priv1.h>
|
||||
#include <asm/firmware.h>
|
||||
#include <asm/of_platform.h>
|
||||
|
|
|
@ -1,9 +1,13 @@
|
|||
#ifndef _ISERIES_IRQ_H
|
||||
#define _ISERIES_IRQ_H
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern void iSeries_init_IRQ(void);
|
||||
extern int iSeries_allocate_IRQ(HvBusNumber, HvSubBusNumber, u32);
|
||||
extern void iSeries_activate_IRQs(void);
|
||||
#else
|
||||
#define iSeries_init_IRQ NULL
|
||||
#endif
|
||||
extern unsigned int iSeries_get_irq(void);
|
||||
|
||||
#endif /* _ISERIES_IRQ_H */
|
||||
|
|
|
@ -617,10 +617,6 @@ static void iseries_dedicated_idle(void)
|
|||
}
|
||||
}
|
||||
|
||||
#ifndef CONFIG_PCI
|
||||
void __init iSeries_init_IRQ(void) { }
|
||||
#endif
|
||||
|
||||
static void __iomem *iseries_ioremap(phys_addr_t address, unsigned long size,
|
||||
unsigned long flags)
|
||||
{
|
||||
|
|
|
@ -523,15 +523,16 @@ static void __init get_viotape_info(struct device_node *vio_root)
|
|||
static int __init iseries_vio_init(void)
|
||||
{
|
||||
struct device_node *vio_root;
|
||||
int ret = -ENODEV;
|
||||
|
||||
if (!firmware_has_feature(FW_FEATURE_ISERIES))
|
||||
return -ENODEV;
|
||||
goto out;
|
||||
|
||||
iommu_vio_init();
|
||||
|
||||
vio_root = of_find_node_by_path("/vdevice");
|
||||
if (!vio_root)
|
||||
return -ENODEV;
|
||||
goto out;
|
||||
|
||||
if (viopath_hostLp == HvLpIndexInvalid) {
|
||||
vio_set_hostlp();
|
||||
|
@ -544,10 +545,11 @@ static int __init iseries_vio_init(void)
|
|||
get_viocd_info(vio_root);
|
||||
get_viotape_info(vio_root);
|
||||
|
||||
return 0;
|
||||
ret = 0;
|
||||
|
||||
put_node:
|
||||
of_node_put(vio_root);
|
||||
return -ENODEV;
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
arch_initcall(iseries_vio_init);
|
||||
|
|
|
@ -186,6 +186,11 @@ static size_t gather_pci_data(struct pci_dn *pdn, char * buf, size_t len)
|
|||
n += scnprintf(buf+n, len-n, "cmd/stat:%x\n", cfg);
|
||||
printk(KERN_WARNING "EEH: PCI cmd/status register: %08x\n", cfg);
|
||||
|
||||
if (!dev) {
|
||||
printk(KERN_WARNING "EEH: no PCI device for this of node\n");
|
||||
return n;
|
||||
}
|
||||
|
||||
/* Gather bridge-specific registers */
|
||||
if (dev->class >> 16 == PCI_BASE_CLASS_BRIDGE) {
|
||||
rtas_read_config(pdn, PCI_SEC_STATUS, 2, &cfg);
|
||||
|
@ -198,7 +203,7 @@ static size_t gather_pci_data(struct pci_dn *pdn, char * buf, size_t len)
|
|||
}
|
||||
|
||||
/* Dump out the PCI-X command and status regs */
|
||||
cap = pci_find_capability(pdn->pcidev, PCI_CAP_ID_PCIX);
|
||||
cap = pci_find_capability(dev, PCI_CAP_ID_PCIX);
|
||||
if (cap) {
|
||||
rtas_read_config(pdn, cap, 4, &cfg);
|
||||
n += scnprintf(buf+n, len-n, "pcix-cmd:%x\n", cfg);
|
||||
|
@ -210,7 +215,7 @@ static size_t gather_pci_data(struct pci_dn *pdn, char * buf, size_t len)
|
|||
}
|
||||
|
||||
/* If PCI-E capable, dump PCI-E cap 10, and the AER */
|
||||
cap = pci_find_capability(pdn->pcidev, PCI_CAP_ID_EXP);
|
||||
cap = pci_find_capability(dev, PCI_CAP_ID_EXP);
|
||||
if (cap) {
|
||||
n += scnprintf(buf+n, len-n, "pci-e cap10:\n");
|
||||
printk(KERN_WARNING
|
||||
|
@ -222,7 +227,7 @@ static size_t gather_pci_data(struct pci_dn *pdn, char * buf, size_t len)
|
|||
printk(KERN_WARNING "EEH: PCI-E %02x: %08x\n", i, cfg);
|
||||
}
|
||||
|
||||
cap = pci_find_ext_capability(pdn->pcidev, PCI_EXT_CAP_ID_ERR);
|
||||
cap = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_ERR);
|
||||
if (cap) {
|
||||
n += scnprintf(buf+n, len-n, "pci-e AER:\n");
|
||||
printk(KERN_WARNING
|
||||
|
@ -318,7 +323,7 @@ eeh_wait_for_slot_status(struct pci_dn *pdn, int max_wait_msecs)
|
|||
|
||||
if (rets[2] == 0) return -1; /* permanently unavailable */
|
||||
|
||||
if (max_wait_msecs <= 0) return -1;
|
||||
if (max_wait_msecs <= 0) break;
|
||||
|
||||
mwait = rets[2];
|
||||
if (mwait <= 0) {
|
||||
|
|
|
@ -105,17 +105,18 @@ static void eeh_report_error(struct pci_dev *dev, void *userdata)
|
|||
return;
|
||||
|
||||
rc = driver->err_handler->error_detected (dev, pci_channel_io_frozen);
|
||||
|
||||
/* A driver that needs a reset trumps all others */
|
||||
if (rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
|
||||
if (*res == PCI_ERS_RESULT_NONE) *res = rc;
|
||||
if (*res == PCI_ERS_RESULT_DISCONNECT &&
|
||||
rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
|
||||
}
|
||||
|
||||
/**
|
||||
* eeh_report_mmio_enabled - tell drivers that MMIO has been enabled
|
||||
*
|
||||
* Report an EEH error to each device driver, collect up and
|
||||
* merge the device driver responses. Cumulative response
|
||||
* passed back in "userdata".
|
||||
* Tells each device driver that IO ports, MMIO and config space I/O
|
||||
* are now enabled. Collects up and merges the device driver responses.
|
||||
* Cumulative response passed back in "userdata".
|
||||
*/
|
||||
|
||||
static void eeh_report_mmio_enabled(struct pci_dev *dev, void *userdata)
|
||||
|
@ -123,17 +124,16 @@ static void eeh_report_mmio_enabled(struct pci_dev *dev, void *userdata)
|
|||
enum pci_ers_result rc, *res = userdata;
|
||||
struct pci_driver *driver = dev->driver;
|
||||
|
||||
// dev->error_state = pci_channel_mmio_enabled;
|
||||
|
||||
if (!driver ||
|
||||
!driver->err_handler ||
|
||||
!driver->err_handler->mmio_enabled)
|
||||
return;
|
||||
|
||||
rc = driver->err_handler->mmio_enabled (dev);
|
||||
|
||||
/* A driver that needs a reset trumps all others */
|
||||
if (rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
|
||||
if (*res == PCI_ERS_RESULT_NONE) *res = rc;
|
||||
if (*res == PCI_ERS_RESULT_DISCONNECT &&
|
||||
rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
|
||||
#include <asm/firmware.h>
|
||||
#include <asm/prom.h>
|
||||
#include <asm/udbg.h>
|
||||
|
||||
#ifdef DEBUG
|
||||
#define DBG(fmt...) udbg_printf(fmt)
|
||||
|
|
|
@ -171,6 +171,7 @@ static int rtas_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
|
|||
struct pci_dn *pdn;
|
||||
int hwirq, virq, i, rc;
|
||||
struct msi_desc *entry;
|
||||
struct msi_msg msg;
|
||||
|
||||
pdn = get_pdn(pdev);
|
||||
if (!pdn)
|
||||
|
@ -213,6 +214,11 @@ static int rtas_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
|
|||
|
||||
dev_dbg(&pdev->dev, "rtas_msi: allocated virq %d\n", virq);
|
||||
set_irq_msi(virq, entry);
|
||||
|
||||
/* Read config space back so we can restore after reset */
|
||||
read_msi_msg(virq, &msg);
|
||||
entry->msg = msg;
|
||||
|
||||
unmask_msi_irq(virq);
|
||||
}
|
||||
|
||||
|
|
|
@ -137,6 +137,7 @@ static void i8259_unmask_irq(unsigned int irq_nr)
|
|||
static struct irq_chip i8259_pic = {
|
||||
.typename = " i8259 ",
|
||||
.mask = i8259_mask_irq,
|
||||
.disable = i8259_mask_irq,
|
||||
.unmask = i8259_unmask_irq,
|
||||
.mask_ack = i8259_mask_and_ack_irq,
|
||||
};
|
||||
|
|
|
@ -24,8 +24,9 @@
|
|||
#define MV64X60_VAL_LEN_MAX 11
|
||||
#define MV64X60_PCICFG_CPCI_HOTSWAP 0x68
|
||||
|
||||
static ssize_t mv64x60_hs_reg_read(struct kobject *kobj, char *buf, loff_t off,
|
||||
size_t count)
|
||||
static ssize_t mv64x60_hs_reg_read(struct kobject *kobj,
|
||||
struct bin_attribute *attr, char *buf,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
struct pci_dev *phb;
|
||||
u32 v;
|
||||
|
@ -44,8 +45,9 @@ static ssize_t mv64x60_hs_reg_read(struct kobject *kobj, char *buf, loff_t off,
|
|||
return sprintf(buf, "0x%08x\n", v);
|
||||
}
|
||||
|
||||
static ssize_t mv64x60_hs_reg_write(struct kobject *kobj, char *buf, loff_t off,
|
||||
size_t count)
|
||||
static ssize_t mv64x60_hs_reg_write(struct kobject *kobj,
|
||||
struct bin_attribute *attr, char *buf,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
struct pci_dev *phb;
|
||||
u32 v;
|
||||
|
|
|
@ -244,6 +244,13 @@ syscall_exit_cont:
|
|||
andis. r10,r0,DBCR0_IC@h
|
||||
bnel- load_dbcr0
|
||||
#endif
|
||||
#ifdef CONFIG_44x
|
||||
lis r4,icache_44x_need_flush@ha
|
||||
lwz r5,icache_44x_need_flush@l(r4)
|
||||
cmplwi cr0,r5,0
|
||||
bne- 2f
|
||||
1:
|
||||
#endif /* CONFIG_44x */
|
||||
stwcx. r0,0,r1 /* to clear the reservation */
|
||||
lwz r4,_LINK(r1)
|
||||
lwz r5,_CCR(r1)
|
||||
|
@ -258,6 +265,12 @@ syscall_exit_cont:
|
|||
mtspr SPRN_SRR1,r8
|
||||
SYNC
|
||||
RFI
|
||||
#ifdef CONFIG_44x
|
||||
2: li r7,0
|
||||
iccci r0,r0
|
||||
stw r7,icache_44x_need_flush@l(r4)
|
||||
b 1b
|
||||
#endif /* CONFIG_44x */
|
||||
|
||||
66: li r3,-ENOSYS
|
||||
b ret_from_syscall
|
||||
|
@ -679,6 +692,16 @@ resume_kernel:
|
|||
|
||||
/* interrupts are hard-disabled at this point */
|
||||
restore:
|
||||
#ifdef CONFIG_44x
|
||||
lis r4,icache_44x_need_flush@ha
|
||||
lwz r5,icache_44x_need_flush@l(r4)
|
||||
cmplwi cr0,r5,0
|
||||
beq+ 1f
|
||||
li r6,0
|
||||
iccci r0,r0
|
||||
stw r6,icache_44x_need_flush@l(r4)
|
||||
1:
|
||||
#endif /* CONFIG_44x */
|
||||
lwz r0,GPR0(r1)
|
||||
lwz r2,GPR2(r1)
|
||||
REST_4GPRS(3, r1)
|
||||
|
|
|
@ -224,7 +224,16 @@ _GLOBAL(_tlbia)
|
|||
*/
|
||||
_GLOBAL(_tlbie)
|
||||
#if defined(CONFIG_40x)
|
||||
/* We run the search with interrupts disabled because we have to change
|
||||
* the PID and I don't want to preempt when that happens.
|
||||
*/
|
||||
mfmsr r5
|
||||
mfspr r6,SPRN_PID
|
||||
wrteei 0
|
||||
mtspr SPRN_PID,r4
|
||||
tlbsx. r3, 0, r3
|
||||
mtspr SPRN_PID,r6
|
||||
wrtee r5
|
||||
bne 10f
|
||||
sync
|
||||
/* There are only 64 TLB entries, so r3 < 64, which means bit 25 is clear.
|
||||
|
@ -234,22 +243,21 @@ _GLOBAL(_tlbie)
|
|||
isync
|
||||
10:
|
||||
#elif defined(CONFIG_44x)
|
||||
mfspr r4,SPRN_MMUCR
|
||||
mfspr r5,SPRN_PID /* Get PID */
|
||||
rlwimi r4,r5,0,24,31 /* Set TID */
|
||||
mfspr r5,SPRN_MMUCR
|
||||
rlwimi r5,r4,0,24,31 /* Set TID */
|
||||
|
||||
/* We have to run the search with interrupts disabled, even critical
|
||||
* and debug interrupts (in fact the only critical exceptions we have
|
||||
* are debug and machine check). Otherwise an interrupt which causes
|
||||
* a TLB miss can clobber the MMUCR between the mtspr and the tlbsx. */
|
||||
mfmsr r5
|
||||
mfmsr r4
|
||||
lis r6,(MSR_EE|MSR_CE|MSR_ME|MSR_DE)@ha
|
||||
addi r6,r6,(MSR_EE|MSR_CE|MSR_ME|MSR_DE)@l
|
||||
andc r6,r5,r6
|
||||
andc r6,r4,r6
|
||||
mtmsr r6
|
||||
mtspr SPRN_MMUCR,r4
|
||||
mtspr SPRN_MMUCR,r5
|
||||
tlbsx. r3, 0, r3
|
||||
mtmsr r5
|
||||
mtmsr r4
|
||||
bne 10f
|
||||
sync
|
||||
/* There are only 64 TLB entries, so r3 < 64,
|
||||
|
@ -491,12 +499,21 @@ END_FTR_SECTION_IFSET(CPU_FTR_COHERENT_ICACHE)
|
|||
addi r3,r3,L1_CACHE_BYTES
|
||||
bdnz 0b
|
||||
sync
|
||||
#ifndef CONFIG_44x
|
||||
/* We don't flush the icache on 44x. Those have a virtual icache
|
||||
* and we don't have access to the virtual address here (it's
|
||||
* not the page vaddr but where it's mapped in user space). The
|
||||
* flushing of the icache on these is handled elsewhere, when
|
||||
* a change in the address space occurs, before returning to
|
||||
* user space
|
||||
*/
|
||||
mtctr r4
|
||||
1: icbi 0,r6
|
||||
addi r6,r6,L1_CACHE_BYTES
|
||||
bdnz 1b
|
||||
sync
|
||||
isync
|
||||
#endif /* CONFIG_44x */
|
||||
blr
|
||||
|
||||
/*
|
||||
|
|
|
@ -61,6 +61,7 @@ extern char etext[], _stext[];
|
|||
*/
|
||||
unsigned int tlb_44x_index = 0;
|
||||
unsigned int tlb_44x_hwater = 62;
|
||||
int icache_44x_need_flush;
|
||||
|
||||
/*
|
||||
* "Pins" a 256MB TLB entry in AS0 for kernel lowmem
|
||||
|
|
|
@ -99,13 +99,12 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v = KERNELBASE;
|
||||
p = PPC_MEMSTART;
|
||||
s = 0;
|
||||
s = total_lowmem;
|
||||
|
||||
if (__map_without_ltlbs) {
|
||||
return s;
|
||||
}
|
||||
if (__map_without_ltlbs)
|
||||
return 0;
|
||||
|
||||
while (s <= (total_lowmem - LARGE_PAGE_SIZE_16M)) {
|
||||
while (s >= LARGE_PAGE_SIZE_16M) {
|
||||
pmd_t *pmdp;
|
||||
unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | _PAGE_HWWRITE;
|
||||
|
||||
|
@ -117,10 +116,10 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v += LARGE_PAGE_SIZE_16M;
|
||||
p += LARGE_PAGE_SIZE_16M;
|
||||
s += LARGE_PAGE_SIZE_16M;
|
||||
s -= LARGE_PAGE_SIZE_16M;
|
||||
}
|
||||
|
||||
while (s <= (total_lowmem - LARGE_PAGE_SIZE_4M)) {
|
||||
while (s >= LARGE_PAGE_SIZE_4M) {
|
||||
pmd_t *pmdp;
|
||||
unsigned long val = p | _PMD_SIZE_4M | _PAGE_HWEXEC | _PAGE_HWWRITE;
|
||||
|
||||
|
@ -129,8 +128,8 @@ unsigned long __init mmu_mapin_ram(void)
|
|||
|
||||
v += LARGE_PAGE_SIZE_4M;
|
||||
p += LARGE_PAGE_SIZE_4M;
|
||||
s += LARGE_PAGE_SIZE_4M;
|
||||
s -= LARGE_PAGE_SIZE_4M;
|
||||
}
|
||||
|
||||
return s;
|
||||
return total_lowmem - s;
|
||||
}
|
||||
|
|
|
@ -227,7 +227,7 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
|
|||
set_bit(PG_arch_1, &page->flags);
|
||||
}
|
||||
pte_update(ptep, 0, _PAGE_HWEXEC);
|
||||
_tlbie(address);
|
||||
_tlbie(address, mm->context.id);
|
||||
pte_unmap_unlock(ptep, ptl);
|
||||
up_read(&mm->mmap_sem);
|
||||
return 0;
|
||||
|
|
|
@ -54,12 +54,12 @@ extern unsigned int num_tlbcam_entries;
|
|||
#define mmu_mapin_ram() (0UL)
|
||||
|
||||
#elif defined(CONFIG_4xx)
|
||||
#define flush_HPTE(X, va, pg) _tlbie(va)
|
||||
#define flush_HPTE(pid, va, pg) _tlbie(va, pid)
|
||||
extern void MMU_init_hw(void);
|
||||
extern unsigned long mmu_mapin_ram(void);
|
||||
|
||||
#elif defined(CONFIG_FSL_BOOKE)
|
||||
#define flush_HPTE(X, va, pg) _tlbie(va)
|
||||
#define flush_HPTE(pid, va, pg) _tlbie(va, pid)
|
||||
extern void MMU_init_hw(void);
|
||||
extern unsigned long mmu_mapin_ram(void);
|
||||
extern void adjust_total_lowmem(void);
|
||||
|
|
|
@ -236,7 +236,7 @@ ebony_early_serial_map(void)
|
|||
gen550_init(0, &port);
|
||||
|
||||
/* Purge TLB entry added in head_44x.S for early serial access */
|
||||
_tlbie(UART0_IO_BASE);
|
||||
_tlbie(UART0_IO_BASE, 0);
|
||||
#endif
|
||||
|
||||
port.membase = ioremap64(PPC440GP_UART1_ADDR, 8);
|
||||
|
|
|
@ -230,10 +230,15 @@ luan_setup_hoses(void)
|
|||
|
||||
/* Allocate hoses for PCIX1 and PCIX2 */
|
||||
hose1 = pcibios_alloc_controller();
|
||||
hose2 = pcibios_alloc_controller();
|
||||
if (!hose1 || !hose2)
|
||||
if (!hose1)
|
||||
return;
|
||||
|
||||
hose2 = pcibios_alloc_controller();
|
||||
if (!hose2) {
|
||||
pcibios_free_controller(hose1);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Setup PCIX1 */
|
||||
hose1->first_busno = 0;
|
||||
hose1->last_busno = 0xff;
|
||||
|
|
|
@ -259,7 +259,7 @@ ocotea_early_serial_map(void)
|
|||
gen550_init(0, &port);
|
||||
|
||||
/* Purge TLB entry added in head_44x.S for early serial access */
|
||||
_tlbie(UART0_IO_BASE);
|
||||
_tlbie(UART0_IO_BASE, 0);
|
||||
#endif
|
||||
|
||||
port.membase = ioremap64(PPC440GX_UART1_ADDR, 8);
|
||||
|
|
|
@ -316,7 +316,7 @@ taishan_early_serial_map(void)
|
|||
gen550_init(0, &port);
|
||||
|
||||
/* Purge TLB entry added in head_44x.S for early serial access */
|
||||
_tlbie(UART0_IO_BASE);
|
||||
_tlbie(UART0_IO_BASE, 0);
|
||||
#endif
|
||||
|
||||
port.membase = ioremap64(PPC440GX_UART1_ADDR, 8);
|
||||
|
|
|
@ -127,6 +127,7 @@ static void i8259_unmask_irq(unsigned int irq_nr)
|
|||
static struct irq_chip i8259_pic = {
|
||||
.typename = " i8259 ",
|
||||
.mask = i8259_mask_irq,
|
||||
.disable = i8259_mask_irq,
|
||||
.unmask = i8259_unmask_irq,
|
||||
.mask_ack = i8259_mask_and_ack_irq,
|
||||
};
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include <asm/machdep.h>
|
||||
#include <asm/bootinfo.h>
|
||||
#include <asm/time.h>
|
||||
#include <asm/ppc_sys.h>
|
||||
|
||||
#include "cpm2_pic.h"
|
||||
|
||||
|
@ -61,7 +62,7 @@ m8260_setup_arch(void)
|
|||
#endif
|
||||
|
||||
identify_ppc_sys_by_name_and_id(BOARD_CHIP_NAME,
|
||||
in_be32(CPM_MAP_ADDR + CPM_IMMR_OFFSET));
|
||||
in_be32((void *)CPM_MAP_ADDR + CPM_IMMR_OFFSET));
|
||||
|
||||
m82xx_board_setup();
|
||||
}
|
||||
|
@ -147,12 +148,12 @@ m8260_show_cpuinfo(struct seq_file *m)
|
|||
seq_printf(m, "vendor\t\t: %s\n"
|
||||
"machine\t\t: %s\n"
|
||||
"\n"
|
||||
"mem size\t\t: 0x%08x\n"
|
||||
"console baud\t\t: %d\n"
|
||||
"mem size\t\t: 0x%08lx\n"
|
||||
"console baud\t\t: %ld\n"
|
||||
"\n"
|
||||
"core clock\t: %u MHz\n"
|
||||
"CPM clock\t: %u MHz\n"
|
||||
"bus clock\t: %u MHz\n",
|
||||
"core clock\t: %lu MHz\n"
|
||||
"CPM clock\t: %lu MHz\n"
|
||||
"bus clock\t: %lu MHz\n",
|
||||
CPUINFO_VENDOR, CPUINFO_MACHINE, bp->bi_memsize,
|
||||
bp->bi_baudrate, bp->bi_intfreq / 1000000,
|
||||
bp->bi_cpmfreq / 1000000, bp->bi_busfreq / 1000000);
|
||||
|
|
|
@ -94,7 +94,9 @@ static int wf_thread_func(void *data)
|
|||
DBG("wf: thread started\n");
|
||||
|
||||
set_freezable();
|
||||
while(!kthread_should_stop()) {
|
||||
while (!kthread_should_stop()) {
|
||||
try_to_freeze();
|
||||
|
||||
if (time_after_eq(jiffies, next)) {
|
||||
wf_notify(WF_EVENT_TICK, NULL);
|
||||
if (wf_overtemp) {
|
||||
|
@ -116,12 +118,6 @@ static int wf_thread_func(void *data)
|
|||
delay = next - jiffies;
|
||||
if (delay <= HZ)
|
||||
schedule_timeout_interruptible(delay);
|
||||
|
||||
/* there should be no non-suspend signal, but oh well */
|
||||
if (signal_pending(current) && !try_to_freeze()) {
|
||||
printk(KERN_WARNING "windfarm: thread got sigl !\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
DBG("wf: thread stopped\n");
|
||||
|
|
|
@ -329,12 +329,14 @@ static struct uart_ops ulite_ops = {
|
|||
static void ulite_console_wait_tx(struct uart_port *port)
|
||||
{
|
||||
int i;
|
||||
u8 val;
|
||||
|
||||
/* wait up to 10ms for the character(s) to be sent */
|
||||
for (i = 0; i < 10000; i++) {
|
||||
if (readb(port->membase + ULITE_STATUS) & ULITE_STATUS_TXEMPTY)
|
||||
/* Spin waiting for TX fifo to have space available */
|
||||
for (i = 0; i < 100000; i++) {
|
||||
val = readb(port->membase + ULITE_STATUS);
|
||||
if ((val & ULITE_STATUS_TXFULL) == 0)
|
||||
break;
|
||||
udelay(1);
|
||||
cpu_relax();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -11,6 +11,11 @@
|
|||
extern unsigned long va_to_phys(unsigned long address);
|
||||
extern pte_t *va_to_pte(unsigned long address);
|
||||
extern unsigned long ioremap_bot, ioremap_base;
|
||||
|
||||
#ifdef CONFIG_44x
|
||||
extern int icache_44x_need_flush;
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
/*
|
||||
|
@ -562,6 +567,10 @@ static inline unsigned long pte_update(pte_t *p, unsigned long clr,
|
|||
: "=&r" (old), "=&r" (tmp), "=m" (*p)
|
||||
: "r" (p), "r" (clr), "r" (set), "m" (*p)
|
||||
: "cc" );
|
||||
#ifdef CONFIG_44x
|
||||
if ((old & _PAGE_USER) && (old & _PAGE_HWEXEC))
|
||||
icache_44x_need_flush = 1;
|
||||
#endif
|
||||
return old;
|
||||
}
|
||||
#else
|
||||
|
@ -582,6 +591,10 @@ static inline unsigned long long pte_update(pte_t *p, unsigned long clr,
|
|||
: "=&r" (old), "=&r" (tmp), "=m" (*p)
|
||||
: "r" (p), "r" ((unsigned long)(p) + 4), "r" (clr), "r" (set), "m" (*p)
|
||||
: "cc" );
|
||||
#ifdef CONFIG_44x
|
||||
if ((old & _PAGE_USER) && (old & _PAGE_HWEXEC))
|
||||
icache_44x_need_flush = 1;
|
||||
#endif
|
||||
return old;
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -308,8 +308,8 @@ COMPAT_SYS_SPU(move_pages)
|
|||
SYSCALL_SPU(getcpu)
|
||||
COMPAT_SYS(epoll_pwait)
|
||||
COMPAT_SYS_SPU(utimensat)
|
||||
COMPAT_SYS(fallocate)
|
||||
COMPAT_SYS_SPU(signalfd)
|
||||
COMPAT_SYS_SPU(timerfd)
|
||||
SYSCALL_SPU(eventfd)
|
||||
COMPAT_SYS_SPU(sync_file_range2)
|
||||
COMPAT_SYS(fallocate)
|
||||
|
|
|
@ -176,25 +176,31 @@ static inline unsigned int get_dec(void)
|
|||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Note: Book E and 4xx processors differ from other PowerPC processors
|
||||
* in when the decrementer generates its interrupt: on the 1 to 0
|
||||
* transition for Book E/4xx, but on the 0 to -1 transition for others.
|
||||
*/
|
||||
static inline void set_dec(int val)
|
||||
{
|
||||
#if defined(CONFIG_40x)
|
||||
mtspr(SPRN_PIT, val);
|
||||
#elif defined(CONFIG_8xx_CPU6)
|
||||
set_dec_cpu6(val);
|
||||
set_dec_cpu6(val - 1);
|
||||
#else
|
||||
#ifndef CONFIG_BOOKE
|
||||
--val;
|
||||
#endif
|
||||
#ifdef CONFIG_PPC_ISERIES
|
||||
int cur_dec;
|
||||
|
||||
if (firmware_has_feature(FW_FEATURE_ISERIES) &&
|
||||
get_lppaca()->shared_proc) {
|
||||
get_lppaca()->virtual_decr = val;
|
||||
cur_dec = get_dec();
|
||||
if (cur_dec > val)
|
||||
if (get_dec() > val)
|
||||
HvCall_setVirtualDecr();
|
||||
} else
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
mtspr(SPRN_DEC, val);
|
||||
mtspr(SPRN_DEC, val);
|
||||
#endif /* not 40x or 8xx_CPU6 */
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#ifndef _ASM_POWERPC_TLBFLUSH_H
|
||||
#define _ASM_POWERPC_TLBFLUSH_H
|
||||
|
||||
/*
|
||||
* TLB flushing:
|
||||
*
|
||||
|
@ -16,9 +17,6 @@
|
|||
*/
|
||||
#ifdef __KERNEL__
|
||||
|
||||
struct mm_struct;
|
||||
struct vm_area_struct;
|
||||
|
||||
#if defined(CONFIG_4xx) || defined(CONFIG_8xx) || defined(CONFIG_FSL_BOOKE)
|
||||
/*
|
||||
* TLB flushing for software loaded TLB chips
|
||||
|
@ -28,7 +26,9 @@ struct vm_area_struct;
|
|||
* specific tlbie's
|
||||
*/
|
||||
|
||||
extern void _tlbie(unsigned long address);
|
||||
#include <linux/mm.h>
|
||||
|
||||
extern void _tlbie(unsigned long address, unsigned int pid);
|
||||
|
||||
#if defined(CONFIG_40x) || defined(CONFIG_8xx)
|
||||
#define _tlbia() asm volatile ("tlbia; sync" : : : "memory")
|
||||
|
@ -44,13 +44,13 @@ static inline void flush_tlb_mm(struct mm_struct *mm)
|
|||
static inline void flush_tlb_page(struct vm_area_struct *vma,
|
||||
unsigned long vmaddr)
|
||||
{
|
||||
_tlbie(vmaddr);
|
||||
_tlbie(vmaddr, vma->vm_mm->context.id);
|
||||
}
|
||||
|
||||
static inline void flush_tlb_page_nohash(struct vm_area_struct *vma,
|
||||
unsigned long vmaddr)
|
||||
{
|
||||
_tlbie(vmaddr);
|
||||
_tlbie(vmaddr, vma->vm_mm->context.id);
|
||||
}
|
||||
|
||||
static inline void flush_tlb_range(struct vm_area_struct *vma,
|
||||
|
|
Loading…
Reference in a new issue