November spi changes

Antony Pavlov antonynpavlov at gmail.com
Wed Dec 25 03:02:33 EST 2013


Hi!

I'm working on adding SPI driver for Atheros 933x.

I'm using this code for registering spi flash:

=========================================================
static struct flash_platform_data spi_boot_flash_data = {
	.name		= "spi",
	.type		= "s25sl032p",
};

static struct spi_board_info spi_devs[] __initdata = {
	{
		/* boot: Spansion S25FL032P SPI flash */
		.name		= "m25p80",
		.max_speed_hz	= 104 * 1000 * 1000,
		.bus_num	= 0,
		.chip_select	= 0,
		.mode		= SPI_MODE_3,
		.platform_data	= &spi_boot_flash_data,
	},
};

...

	spi_register_board_info(spi_devs, ARRAY_SIZE(spi_devs));
=========================================================

If I rebase Atheros 933x over barebox-2013.11.0 then this code
works fine.

If I rebase Atheros 933x over barebox-2013.12.0 then I get
"Ooops" in get_param_by_name(dev=spi, name=size)

=========================================
Board: TP Link WR720N
m25p80 m25p800: s25sl032p (4096 Kbytes)
register_device: already registered spi

Ooops, TLB miss on load or ifetch!

...

### ERROR ### Please RESET the board ###
=========================================

Changing this

=========================================================
static struct flash_platform_data spi_boot_flash_data = {
	.name		= "spi",
	.type		= "s25sl032p",
};
=========================================================

to

=========================================================
static struct flash_platform_data spi_boot_flash_data = {
	.name		= "spi0",
	.type		= "s25sl032p",
};
=========================================================

solves the problem.

Sascha, please, comment this message.

-- 
Best regards,
  Antony Pavlov



More information about the barebox mailing list