 68a1d31636
			
		
	
	
	68a1d31636
	
	
	
		
			
			Several boards are using the built-in SPI controller of the AR71XX/AR724X/AR913X SoCs. This patch adds common platform_device and helper code to register it. Additionally, the patch registers the SPI bus on the PB44 board. Signed-off-by: Gabor Juhos <juhosg@openwrt.org> Cc: linux-mips@linux-mips.org Cc: Imre Kaloz <kaloz@openwrt.org> Cc: Luis R. Rodriguez <lrodriguez@atheros.com> Cc: Cliff Holden <Cliff.Holden@Atheros.com> Cc: Kathy Giori <Kathy.Giori@Atheros.com> Patchwork: https://patchwork.linux-mips.org/patch/1956/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			1.1 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			1.1 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  *  Atheros AR71XX/AR724X/AR913X SPI controller device
 | |
|  *
 | |
|  *  Copyright (C) 2008-2010 Gabor Juhos <juhosg@openwrt.org>
 | |
|  *  Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org>
 | |
|  *
 | |
|  *  This program is free software; you can redistribute it and/or modify it
 | |
|  *  under the terms of the GNU General Public License version 2 as published
 | |
|  *  by the Free Software Foundation.
 | |
|  */
 | |
| 
 | |
| #include <linux/platform_device.h>
 | |
| #include <asm/mach-ath79/ar71xx_regs.h>
 | |
| #include "dev-spi.h"
 | |
| 
 | |
| static struct resource ath79_spi_resources[] = {
 | |
| 	{
 | |
| 		.start	= AR71XX_SPI_BASE,
 | |
| 		.end	= AR71XX_SPI_BASE + AR71XX_SPI_SIZE - 1,
 | |
| 		.flags	= IORESOURCE_MEM,
 | |
| 	},
 | |
| };
 | |
| 
 | |
| static struct platform_device ath79_spi_device = {
 | |
| 	.name		= "ath79-spi",
 | |
| 	.id		= -1,
 | |
| 	.resource	= ath79_spi_resources,
 | |
| 	.num_resources	= ARRAY_SIZE(ath79_spi_resources),
 | |
| };
 | |
| 
 | |
| void __init ath79_register_spi(struct ath79_spi_platform_data *pdata,
 | |
| 			       struct spi_board_info const *info,
 | |
| 			       unsigned n)
 | |
| {
 | |
| 	spi_register_board_info(info, n);
 | |
| 	ath79_spi_device.dev.platform_data = pdata;
 | |
| 	platform_device_register(&ath79_spi_device);
 | |
| }
 |