ramips: ramips_esw: convert it to be a platform driver

SVN-Revision: 24331
This commit is contained in:
Gabor Juhos
2010-12-08 10:15:00 +00:00
parent 889729df01
commit 3b9a6adc7d
5 changed files with 136 additions and 15 deletions

View File

@@ -0,0 +1,18 @@
/*
* Ralink RT305x SoC platform device registration
*
* Copyright (C) 2010 Gabor Juhos <juhosg@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.
*/
#ifndef _RT305X_ESW_PLATFORM_H
#define _RT305X_ESW_PLATFORM_H
struct rt305x_esw_platform_data
{
};
#endif /* _RT305X_ESW_PLATFORM_H */

View File

@@ -1,7 +1,7 @@
/*
* Ralink RT305x SoC platform device registration
*
* Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org>
* Copyright (C) 2009-2010 Gabor Juhos <juhosg@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
@@ -130,10 +130,29 @@ static struct platform_device rt305x_eth_device = {
}
};
static struct resource rt305x_esw_resources[] = {
{
.start = RT305X_SWITCH_BASE,
.end = RT305X_SWITCH_BASE + PAGE_SIZE - 1,
.flags = IORESOURCE_MEM,
},
};
struct rt305x_esw_platform_data rt305x_esw_data;
static struct platform_device rt305x_esw_device = {
.name = "rt305x-esw",
.resource = rt305x_esw_resources,
.num_resources = ARRAY_SIZE(rt305x_esw_resources),
.dev = {
.platform_data = &rt305x_esw_data,
}
};
void __init rt305x_register_ethernet(void)
{
ramips_eth_data.sys_freq = rt305x_sys_freq;
platform_device_register(&rt305x_esw_device);
platform_device_register(&rt305x_eth_device);
}

View File

@@ -1,7 +1,7 @@
/*
* Ralink RT305x SoC specific platform device definitions
*
* Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org>
* Copyright (C) 2009-2010 Gabor Juhos <juhosg@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
@@ -11,8 +11,12 @@
#ifndef __RT305X_DEVICES_H
#define __RT305X_DEVICES_H
#include <asm/mach-ralink/rt305x_esw_platform.h>
struct physmap_flash_data;
extern struct rt305x_esw_platform_data rt305x_esw_data;
extern void rt305x_register_flash(unsigned int id,
struct physmap_flash_data *pdata) __init;
extern void rt305x_register_ethernet(void) __init;