Commit 6ccaa317 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'at91-fixes-for-linus' of git://github.com/at91linux/linux-2.6-at91

* 'at91-fixes-for-linus' of git://github.com/at91linux/linux-2.6-at91:
  AT91: at91sam9261ek: remove C99 comments but keep information
  AT91: at91sam9261ek board: remove warnings related to use of SPI or SD/MMC
  AT91: dm9000 initialization update
  AT91: SAM9G45 - add a separate clock entry for every single TC block
  AT91: clock: peripheral clocks can have other parent than mck
  AT91: change dma resource index
parents 3657423c 4deb22a6
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -121,8 +121,8 @@ static struct clk ssc1_clk = {
	.pmc_mask	= 1 << AT91SAM9G45_ID_SSC1,
	.type		= CLK_TYPE_PERIPHERAL,
};
static struct clk tcb_clk = {
	.name		= "tcb_clk",
static struct clk tcb0_clk = {
	.name		= "tcb0_clk",
	.pmc_mask	= 1 << AT91SAM9G45_ID_TCB,
	.type		= CLK_TYPE_PERIPHERAL,
};
@@ -192,6 +192,14 @@ static struct clk ohci_clk = {
	.parent		= &uhphs_clk,
};

/* One additional fake clock for second TC block */
static struct clk tcb1_clk = {
	.name		= "tcb1_clk",
	.pmc_mask	= 0,
	.type		= CLK_TYPE_PERIPHERAL,
	.parent		= &tcb0_clk,
};

static struct clk *periph_clocks[] __initdata = {
	&pioA_clk,
	&pioB_clk,
@@ -208,7 +216,7 @@ static struct clk *periph_clocks[] __initdata = {
	&spi1_clk,
	&ssc0_clk,
	&ssc1_clk,
	&tcb_clk,
	&tcb0_clk,
	&pwm_clk,
	&tsc_clk,
	&dma_clk,
@@ -221,6 +229,7 @@ static struct clk *periph_clocks[] __initdata = {
	&mmc1_clk,
	// irq0
	&ohci_clk,
	&tcb1_clk,
};

/*
+3 −3
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ static struct resource hdmac_resources[] = {
		.end	= AT91_BASE_SYS + AT91_DMA + SZ_512 - 1,
		.flags	= IORESOURCE_MEM,
	},
	[2] = {
	[1] = {
		.start	= AT91SAM9G45_ID_DMA,
		.end	= AT91SAM9G45_ID_DMA,
		.flags	= IORESOURCE_IRQ,
@@ -835,9 +835,9 @@ static struct platform_device at91sam9g45_tcb1_device = {
static void __init at91_add_device_tc(void)
{
	/* this chip has one clock and irq for all six TC channels */
	at91_clock_associate("tcb_clk", &at91sam9g45_tcb0_device.dev, "t0_clk");
	at91_clock_associate("tcb0_clk", &at91sam9g45_tcb0_device.dev, "t0_clk");
	platform_device_register(&at91sam9g45_tcb0_device);
	at91_clock_associate("tcb_clk", &at91sam9g45_tcb1_device.dev, "t0_clk");
	at91_clock_associate("tcb1_clk", &at91sam9g45_tcb1_device.dev, "t0_clk");
	platform_device_register(&at91sam9g45_tcb1_device);
}
#else
+19 −12
Original line number Diff line number Diff line
@@ -93,11 +93,12 @@ static struct resource dm9000_resource[] = {
		.start	= AT91_PIN_PC11,
		.end	= AT91_PIN_PC11,
		.flags	= IORESOURCE_IRQ
			| IORESOURCE_IRQ_LOWEDGE | IORESOURCE_IRQ_HIGHEDGE,
	}
};

static struct dm9000_plat_data dm9000_platdata = {
	.flags		= DM9000_PLATF_16BITONLY,
	.flags		= DM9000_PLATF_16BITONLY | DM9000_PLATF_NO_EEPROM,
};

static struct platform_device dm9000_device = {
@@ -167,17 +168,6 @@ static struct at91_udc_data __initdata ek_udc_data = {
};


/*
 * MCI (SD/MMC)
 */
static struct at91_mmc_data __initdata ek_mmc_data = {
	.wire4		= 1,
//	.det_pin	= ... not connected
//	.wp_pin		= ... not connected
//	.vcc_pin	= ... not connected
};


/*
 * NAND flash
 */
@@ -246,6 +236,10 @@ static void __init ek_add_device_nand(void)
	at91_add_device_nand(&ek_nand_data);
}

/*
 * SPI related devices
 */
#if defined(CONFIG_SPI_ATMEL) || defined(CONFIG_SPI_ATMEL_MODULE)

/*
 * ADS7846 Touchscreen
@@ -356,6 +350,19 @@ static struct spi_board_info ek_spi_devices[] = {
#endif
};

#else /* CONFIG_SPI_ATMEL_* */
/* spi0 and mmc/sd share the same PIO pins: cannot be used at the same time */

/*
 * MCI (SD/MMC)
 * det_pin, wp_pin and vcc_pin are not connected
 */
static struct at91_mmc_data __initdata ek_mmc_data = {
	.wire4		= 1,
};

#endif /* CONFIG_SPI_ATMEL_* */


/*
 * LCD Controller
+2 −1
Original line number Diff line number Diff line
@@ -501,6 +501,7 @@ postcore_initcall(at91_clk_debugfs_init);
int __init clk_register(struct clk *clk)
{
	if (clk_is_peripheral(clk)) {
		if (!clk->parent)
			clk->parent = &mck;
		clk->mode = pmc_periph_mode;
		list_add_tail(&clk->node, &clocks);