From: Gabor Juhos Date: Sun, 30 Aug 2009 20:13:10 +0000 (+0000) Subject: platform.h is rt288x specific, move it X-Git-Tag: reboot~22542 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=9eaea39ae59871f2cbaa8cedadcd0ec8553f70ac;p=oweals%2Fopenwrt.git platform.h is rt288x specific, move it SVN-Revision: 17443 --- diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/platform.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/platform.h deleted file mode 100644 index 4585d8b56f..0000000000 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/platform.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Ralink RT288x SoC specific platform definitions - * - * Copyright (C) 2008 Gabor Juhos - * Copyright (C) 2008 Imre Kaloz - * - * 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 __ASM_MACH_RT288X_PLATFORM_H -#define __ASM_MACH_RT288X_PLATFORM_H - -struct physmap_flash_data; - -extern void rt288x_register_flash(unsigned int id, - struct physmap_flash_data *pdata) __init; - -#endif /* __ASM_MACH_RT288X_PLATFORM_H */ diff --git a/target/linux/ramips/files/arch/mips/ralink/rt288x/Makefile b/target/linux/ramips/files/arch/mips/ralink/rt288x/Makefile index 4c22a6dc8a..c8c9712d5a 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt288x/Makefile +++ b/target/linux/ramips/files/arch/mips/ralink/rt288x/Makefile @@ -8,7 +8,7 @@ # under the terms of the GNU General Public License version 2 as published # by the Free Software Foundation. -obj-y := prom.o irq.o setup.o rt288x.o platform.o +obj-y := prom.o irq.o setup.o rt288x.o devices.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o diff --git a/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.c b/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.c new file mode 100644 index 0000000000..64ce0a9e6e --- /dev/null +++ b/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.c @@ -0,0 +1,98 @@ +/* + * Ralink RT288x SoC platform device registration + * + * Copyright (C) 2008 Gabor Juhos + * Copyright (C) 2008 Imre Kaloz + * + * 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 +#include +#include +#include + +#include + +#include +#include + +#include "devices.h" + +static struct resource rt288x_flash0_resources[] = { + { + .flags = IORESOURCE_MEM, + .start = KSEG1ADDR(RT2880_FLASH0_BASE), + .end = KSEG1ADDR(RT2880_FLASH0_BASE) + + RT2880_FLASH0_SIZE - 1, + }, +}; + +static struct platform_device rt288x_flash0_device = { + .name = "physmap-flash", + .resource = rt288x_flash0_resources, + .num_resources = ARRAY_SIZE(rt288x_flash0_resources), +}; + +static struct resource rt288x_flash1_resources[] = { + { + .flags = IORESOURCE_MEM, + .start = KSEG1ADDR(RT2880_FLASH1_BASE), + .end = KSEG1ADDR(RT2880_FLASH1_BASE) + + RT2880_FLASH1_SIZE - 1, + }, +}; + +static struct platform_device rt288x_flash1_device = { + .name = "physmap-flash", + .resource = rt288x_flash1_resources, + .num_resources = ARRAY_SIZE(rt288x_flash1_resources), +}; + +static int rt288x_flash_instance __initdata; +void __init rt288x_register_flash(unsigned int id, + struct physmap_flash_data *pdata) +{ + struct platform_device *pdev; + u32 t; + int reg; + + switch (id) { + case 0: + pdev = &rt288x_flash0_device; + reg = MEMC_REG_FLASH_CFG0; + break; + case 1: + pdev = &rt288x_flash1_device; + reg = MEMC_REG_FLASH_CFG1; + break; + default: + return; + } + + t = rt288x_memc_rr(reg); + t = (t >> FLASH_CFG_WIDTH_SHIFT) & FLASH_CFG_WIDTH_MASK; + + switch (t) { + case FLASH_CFG_WIDTH_8BIT: + pdata->width = 1; + break; + case FLASH_CFG_WIDTH_16BIT: + pdata->width = 2; + break; + case FLASH_CFG_WIDTH_32BIT: + pdata->width = 4; + break; + default: + printk(KERN_ERR "RT288x: flash bank%u witdh is invalid\n", id); + return; + } + + pdev->dev.platform_data = pdata; + pdev->id = rt288x_flash_instance; + + platform_device_register(pdev); + rt288x_flash_instance++; +} diff --git a/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.h b/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.h new file mode 100644 index 0000000000..4585d8b56f --- /dev/null +++ b/target/linux/ramips/files/arch/mips/ralink/rt288x/devices.h @@ -0,0 +1,20 @@ +/* + * Ralink RT288x SoC specific platform definitions + * + * Copyright (C) 2008 Gabor Juhos + * Copyright (C) 2008 Imre Kaloz + * + * 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 __ASM_MACH_RT288X_PLATFORM_H +#define __ASM_MACH_RT288X_PLATFORM_H + +struct physmap_flash_data; + +extern void rt288x_register_flash(unsigned int id, + struct physmap_flash_data *pdata) __init; + +#endif /* __ASM_MACH_RT288X_PLATFORM_H */ diff --git a/target/linux/ramips/files/arch/mips/ralink/rt288x/platform.c b/target/linux/ramips/files/arch/mips/ralink/rt288x/platform.c deleted file mode 100644 index a686286968..0000000000 --- a/target/linux/ramips/files/arch/mips/ralink/rt288x/platform.c +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Ralink RT288x SoC platform device registration - * - * Copyright (C) 2008 Gabor Juhos - * Copyright (C) 2008 Imre Kaloz - * - * 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 -#include -#include -#include - -#include - -#include -#include -#include - -static struct resource rt288x_flash0_resources[] = { - { - .flags = IORESOURCE_MEM, - .start = KSEG1ADDR(RT2880_FLASH0_BASE), - .end = KSEG1ADDR(RT2880_FLASH0_BASE) + - RT2880_FLASH0_SIZE - 1, - }, -}; - -static struct platform_device rt288x_flash0_device = { - .name = "physmap-flash", - .resource = rt288x_flash0_resources, - .num_resources = ARRAY_SIZE(rt288x_flash0_resources), -}; - -static struct resource rt288x_flash1_resources[] = { - { - .flags = IORESOURCE_MEM, - .start = KSEG1ADDR(RT2880_FLASH1_BASE), - .end = KSEG1ADDR(RT2880_FLASH1_BASE) + - RT2880_FLASH1_SIZE - 1, - }, -}; - -static struct platform_device rt288x_flash1_device = { - .name = "physmap-flash", - .resource = rt288x_flash1_resources, - .num_resources = ARRAY_SIZE(rt288x_flash1_resources), -}; - -static int rt288x_flash_instance __initdata; -void __init rt288x_register_flash(unsigned int id, - struct physmap_flash_data *pdata) -{ - struct platform_device *pdev; - u32 t; - int reg; - - switch (id) { - case 0: - pdev = &rt288x_flash0_device; - reg = MEMC_REG_FLASH_CFG0; - break; - case 1: - pdev = &rt288x_flash1_device; - reg = MEMC_REG_FLASH_CFG1; - break; - default: - return; - } - - t = rt288x_memc_rr(reg); - t = (t >> FLASH_CFG_WIDTH_SHIFT) & FLASH_CFG_WIDTH_MASK; - - switch (t) { - case FLASH_CFG_WIDTH_8BIT: - pdata->width = 1; - break; - case FLASH_CFG_WIDTH_16BIT: - pdata->width = 2; - break; - case FLASH_CFG_WIDTH_32BIT: - pdata->width = 4; - break; - default: - printk(KERN_ERR "RT288x: flash bank%u witdh is invalid\n", id); - return; - } - - pdev->dev.platform_data = pdata; - pdev->id = rt288x_flash_instance; - - platform_device_register(pdev); - rt288x_flash_instance++; -}