Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 45c091bb authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (139 commits)
  [POWERPC] re-enable OProfile for iSeries, using timer interrupt
  [POWERPC] support ibm,extended-*-frequency properties
  [POWERPC] Extra sanity check in EEH code
  [POWERPC] Dont look for class-code in pci children
  [POWERPC] Fix mdelay badness on shared processor partitions
  [POWERPC] disable floating point exceptions for init
  [POWERPC] Unify ppc syscall tables
  [POWERPC] mpic: add support for serial mode interrupts
  [POWERPC] pseries: Print PCI slot location code on failure
  [POWERPC] spufs: one more fix for 64k pages
  [POWERPC] spufs: fail spu_create with invalid flags
  [POWERPC] spufs: clear class2 interrupt status before wakeup
  [POWERPC] spufs: fix Makefile for "make clean"
  [POWERPC] spufs: remove stop_code from struct spu
  [POWERPC] spufs: fix spu irq affinity setting
  [POWERPC] spufs: further abstract priv1 register access
  [POWERPC] spufs: split the Cell BE support into generic and platform dependant parts
  [POWERPC] spufs: dont try to access SPE channel 1 count
  [POWERPC] spufs: use kzalloc in create_spu
  [POWERPC] spufs: fix initial state of wbox file
  ...

Manually resolved conflicts in:
	drivers/net/phy/Makefile
	include/asm-powerpc/spu.h
parents d588fcbe 2191fe3e
Loading
Loading
Loading
Loading
+37 −15
Original line number Diff line number Diff line
@@ -45,6 +45,10 @@ config GENERIC_CALIBRATE_DELAY
	bool
	default y

config GENERIC_FIND_NEXT_BIT
	bool
	default y

config PPC
	bool
	default y
@@ -137,6 +141,15 @@ config PPC_85xx
	select FSL_SOC
	select 85xx

config PPC_86xx
	bool "Freescale 86xx"
	select 6xx
	select FSL_SOC
	select PPC_FPU
	select ALTIVEC
	help
	  The Freescale E600 SoCs have 74xx cores.

config 40x
	bool "AMCC 40x"

@@ -391,8 +404,18 @@ config PPC_MAPLE
	  For more informations, refer to <http://www.970eval.com>

config PPC_CELL
	bool "  Cell Broadband Processor Architecture"
	bool
	default n

config PPC_CELL_NATIVE
	bool
	select PPC_CELL
	default n

config PPC_IBM_CELL_BLADE
	bool "  IBM Cell Blade"
	depends on PPC_MULTIPLATFORM && PPC64
	select PPC_CELL_NATIVE
	select PPC_RTAS
	select MMIO_NVRAM
	select PPC_UDBG_16550
@@ -439,11 +462,6 @@ config MPIC_BROKEN_U3
	depends on PPC_MAPLE
	default y

config CELL_IIC
	depends on PPC_CELL
	bool
	default y

config IBMVIO
	depends on PPC_PSERIES || PPC_ISERIES
	bool
@@ -545,6 +563,7 @@ source arch/powerpc/platforms/embedded6xx/Kconfig
source arch/powerpc/platforms/4xx/Kconfig
source arch/powerpc/platforms/83xx/Kconfig
source arch/powerpc/platforms/85xx/Kconfig
source arch/powerpc/platforms/86xx/Kconfig
source arch/powerpc/platforms/8xx/Kconfig
source arch/powerpc/platforms/cell/Kconfig

@@ -776,6 +795,7 @@ config GENERIC_ISA_DMA

config PPC_I8259
	bool
	default y if MPC8641_HPCN
	default n

config PPC_INDIRECT_PCI
@@ -798,8 +818,8 @@ config MCA
	bool

config PCI
	bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES)
	default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx && !PPC_85xx
	bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES)
	default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx && !PPC_85xx && !PPC_86xx
	default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
	default PCI_QSPAN if !4xx && !CPM2 && 8xx
	help
@@ -849,6 +869,8 @@ config 8260_PCI9_IDMA4

endchoice

source "drivers/pci/pcie/Kconfig"

source "drivers/pci/Kconfig"

source "drivers/pcmcia/Kconfig"
+8 −5
Original line number Diff line number Diff line
@@ -110,13 +110,16 @@ config SERIAL_TEXT_DEBUG
	depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || \
		PPC_GEN550 || PPC_MPC52xx

config PPC_EARLY_DEBUG
	bool "Early debugging (dangerous)"

choice
	prompt "Early debugging (dangerous)"
	bool
	optional
	prompt "Early debugging console"
	depends on PPC_EARLY_DEBUG
	help
	  Enable early debugging. Careful, if you enable debugging for the
	  wrong type of machine your kernel _will not boot_.
	  Use the selected console for early debugging. Careful, if you
	  enable debugging for the wrong type of machine your kernel
	  _will not boot_.

config PPC_EARLY_DEBUG_LPAR
	bool "LPAR HV Console"
+0 −1
Original line number Diff line number Diff line
@@ -108,7 +108,6 @@ ifeq ($(CONFIG_6xx),y)
CFLAGS		+= -mcpu=powerpc
endif

cpu-as-$(CONFIG_PPC64BRIDGE)	+= -Wa,-mppc64bridge
cpu-as-$(CONFIG_4xx)		+= -Wa,-m405
cpu-as-$(CONFIG_6xx)		+= -Wa,-maltivec
cpu-as-$(CONFIG_POWER4)		+= -Wa,-maltivec
+27 −0
Original line number Diff line number Diff line
@@ -33,6 +33,14 @@ extern char _vmlinux_end[];
extern char _initrd_start[];
extern char _initrd_end[];

/* A buffer that may be edited by tools operating on a zImage binary so as to
 * edit the command line passed to vmlinux (by setting /chosen/bootargs).
 * The buffer is put in it's own section so that tools may locate it easier.
 */
static char builtin_cmdline[512]
	__attribute__((section("__builtin_cmdline")));


struct addr_range {
	unsigned long addr;
	unsigned long size;
@@ -204,6 +212,23 @@ static int is_elf32(void *hdr)
	return 1;
}

void export_cmdline(void* chosen_handle)
{
        int len;
        char cmdline[2] = { 0, 0 };

	if (builtin_cmdline[0] == 0)
		return;

        len = getprop(chosen_handle, "bootargs", cmdline, sizeof(cmdline));
        if (len > 0 && cmdline[0] != 0)
		return;

	setprop(chosen_handle, "bootargs", builtin_cmdline,
		strlen(builtin_cmdline) + 1);
}


void start(unsigned long a1, unsigned long a2, void *promptr, void *sp)
{
	int len;
@@ -289,6 +314,8 @@ void start(unsigned long a1, unsigned long a2, void *promptr, void *sp)
		memmove((void *)vmlinux.addr,(void *)vmlinuz.addr,vmlinuz.size);
	}

	export_cmdline(chosen_handle);

	/* Skip over the ELF header */
#ifdef DEBUG
	printf("... skipping 0x%lx bytes of ELF header\n\r",
+7 −0
Original line number Diff line number Diff line
@@ -31,4 +31,11 @@ static inline int getprop(void *phandle, const char *name,
	return call_prom("getprop", 4, 1, phandle, name, buf, buflen);
}


static inline int setprop(void *phandle, const char *name,
			  void *buf, int buflen)
{
	return call_prom("setprop", 4, 1, phandle, name, buf, buflen);
}

#endif				/* _PPC_BOOT_PROM_H_ */
Loading