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

Commit 1a1dc504 authored by Russell King's avatar Russell King Committed by Russell King
Browse files

Merge branch 'for_rmk_17' of git://git.mnementh.co.uk/linux-2.6-im

parents faa64c93 908cbc10
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -125,3 +125,28 @@ void clks_register(struct clk *clks, size_t num)
		list_add(&clks[i].node, &clocks);
	mutex_unlock(&clocks_mutex);
}

int clk_add_alias(char *alias, struct device *alias_dev, char *id,
	struct device *dev)
{
	struct clk *r = clk_lookup(dev, id);
	struct clk *new;

	if (!r)
		return -ENODEV;

	new = kzalloc(sizeof(struct clk), GFP_KERNEL);

	if (!new)
		return -ENOMEM;

	new->name = alias;
	new->dev = alias_dev;
	new->other = r;

	mutex_lock(&clocks_mutex);
	list_add(&new->node, &clocks);
	mutex_unlock(&clocks_mutex);

	return 0;
}
+5 −0
Original line number Diff line number Diff line
#include <linux/list.h>

struct clk;

struct clkops {
@@ -86,3 +88,6 @@ extern void clk_pxa3xx_cken_disable(struct clk *);
#endif

void clks_register(struct clk *clks, size_t num);
int clk_add_alias(char *alias, struct device *alias_dev, char *id,
	struct device *dev);
+121 −49
Original line number Diff line number Diff line
@@ -10,15 +10,75 @@
 *
 */

#include <linux/kernel.h>
#include <linux/init.h>

#include <asm/setup.h>
#include <asm/mach/arch.h>
#include <mach/hardware.h>
#include <asm/mach-types.h>

#include <mach/mfp-pxa25x.h>
#include <mach/hardware.h>

#include "generic.h"

static unsigned long e740_pin_config[] __initdata = {
	/* Chip selects */
	GPIO15_nCS_1,   /* CS1 - Flash */
	GPIO79_nCS_3,   /* CS3 - IMAGEON */
	GPIO80_nCS_4,   /* CS4 - TMIO */

	/* Clocks */
	GPIO12_32KHz,

	/* BTUART */
	GPIO42_BTUART_RXD,
	GPIO43_BTUART_TXD,
	GPIO44_BTUART_CTS,
	GPIO45_GPIO, /* Used by TMIO for #SUSPEND */

	/* PC Card */
	GPIO8_GPIO,   /* CD0 */
	GPIO44_GPIO,  /* CD1 */
	GPIO11_GPIO,  /* IRQ0 */
	GPIO6_GPIO,   /* IRQ1 */
	GPIO27_GPIO,  /* RST0 */
	GPIO24_GPIO,  /* RST1 */
	GPIO20_GPIO,  /* PWR0 */
	GPIO23_GPIO,  /* PWR1 */
	GPIO48_nPOE,
	GPIO49_nPWE,
	GPIO50_nPIOR,
	GPIO51_nPIOW,
	GPIO52_nPCE_1,
	GPIO53_nPCE_2,
	GPIO54_nPSKTSEL,
	GPIO55_nPREG,
	GPIO56_nPWAIT,
	GPIO57_nIOIS16,

	/* wakeup */
	GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
};

static unsigned long e400_pin_config[] __initdata = {
	/* Chip selects */
	GPIO15_nCS_1,   /* CS1 - Flash */
	GPIO80_nCS_4,   /* CS4 - TMIO */

	/* Clocks */
	GPIO12_32KHz,

	/* BTUART */
	GPIO42_BTUART_RXD,
	GPIO43_BTUART_TXD,
	GPIO44_BTUART_CTS,
	GPIO45_GPIO, /* Used by TMIO for #SUSPEND */

	/* wakeup */
	GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
};

/* Only e800 has 128MB RAM */
static void __init eseries_fixup(struct machine_desc *desc,
	struct tag *tags, char **cmdline, struct meminfo *mi)
@@ -32,6 +92,16 @@ static void __init eseries_fixup(struct machine_desc *desc,
		mi->bank[0].size = (64*1024*1024);
}

static void __init e740_init(void)
{
	pxa2xx_mfp_config(ARRAY_AND_SIZE(e740_pin_config));
}

static void __init e400_init(void)
{
	pxa2xx_mfp_config(ARRAY_AND_SIZE(e400_pin_config));
}

/* e-series machine definitions */

#ifdef CONFIG_MACH_E330
@@ -69,6 +139,7 @@ MACHINE_START(E740, "Toshiba e740")
	.map_io		= pxa_map_io,
	.init_irq	= pxa25x_init_irq,
	.fixup		= eseries_fixup,
	.init_machine	= e740_init,
	.timer		= &pxa_timer,
MACHINE_END
#endif
@@ -95,6 +166,7 @@ MACHINE_START(E400, "Toshiba e400")
	.map_io		= pxa_map_io,
	.init_irq	= pxa25x_init_irq,
	.fixup		= eseries_fixup,
	.init_machine	= e400_init,
	.timer		= &pxa_timer,
MACHINE_END
#endif
+1 −0
Original line number Diff line number Diff line
@@ -183,6 +183,7 @@
      defined(CONFIG_MACH_TOSA) || \
      defined(CONFIG_MACH_MAINSTONE) || \
      defined(CONFIG_MACH_PCM027) || \
      defined(CONFIG_ARCH_PXA_ESERIES) || \
      defined(CONFIG_MACH_MAGICIAN)
#define NR_IRQS			(IRQ_BOARD_END)
#elif defined(CONFIG_MACH_ZYLONITE)
+2 −0
Original line number Diff line number Diff line
@@ -52,6 +52,7 @@
#include <mach/mmc.h>

#include "generic.h"
#include "clock.h"
#include "devices.h"

static unsigned long lubbock_pin_config[] __initdata = {
@@ -485,6 +486,7 @@ static void __init lubbock_init(void)

	pxa2xx_mfp_config(ARRAY_AND_SIZE(lubbock_pin_config));

	clk_add_alias("SA1111_CLK", NULL, "GPIO11_CLK", NULL);
	pxa_set_udc_info(&udc_info);
	set_pxa_fb_info(&sharp_lm8v31);
	pxa_set_mci_info(&lubbock_mci_platform_data);
Loading