MIPS: SEAD3: Probe parallel flash via DT
Probe the system parallel flash using device tree rather than platform code, in order to reduce the amount of the latter. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: linux-mips@linux-mips.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/14053/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
63c8d90ca9
commit
3aefc6554a
|
@ -69,6 +69,30 @@
|
||||||
has-transaction-translator;
|
has-transaction-translator;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
flash@1c000000 {
|
||||||
|
compatible = "intel,28f128j3", "cfi-flash";
|
||||||
|
reg = <0x1c000000 0x2000000>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
bank-width = <4>;
|
||||||
|
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
user-fs@0 {
|
||||||
|
label = "User FS";
|
||||||
|
reg = <0x0 0x1fc0000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
board-config@3e0000 {
|
||||||
|
label = "Board Config";
|
||||||
|
reg = <0x1fc0000 0x40000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
/* UART connected to FTDI & miniUSB socket */
|
/* UART connected to FTDI & miniUSB socket */
|
||||||
uart0: uart@1f000900 {
|
uart0: uart@1f000900 {
|
||||||
compatible = "ns16550a";
|
compatible = "ns16550a";
|
||||||
|
|
|
@ -8,44 +8,8 @@
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/leds.h>
|
#include <linux/leds.h>
|
||||||
#include <linux/mtd/physmap.h>
|
|
||||||
#include <linux/platform_device.h>
|
#include <linux/platform_device.h>
|
||||||
|
|
||||||
static struct mtd_partition sead3_mtd_partitions[] = {
|
|
||||||
{
|
|
||||||
.name = "User FS",
|
|
||||||
.offset = 0x00000000,
|
|
||||||
.size = 0x01fc0000,
|
|
||||||
}, {
|
|
||||||
.name = "Board Config",
|
|
||||||
.offset = 0x01fc0000,
|
|
||||||
.size = 0x00040000,
|
|
||||||
.mask_flags = MTD_WRITEABLE
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct physmap_flash_data sead3_flash_data = {
|
|
||||||
.width = 4,
|
|
||||||
.nr_parts = ARRAY_SIZE(sead3_mtd_partitions),
|
|
||||||
.parts = sead3_mtd_partitions
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct resource sead3_flash_resource = {
|
|
||||||
.start = 0x1c000000,
|
|
||||||
.end = 0x1dffffff,
|
|
||||||
.flags = IORESOURCE_MEM
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct platform_device sead3_flash = {
|
|
||||||
.name = "physmap-flash",
|
|
||||||
.id = 0,
|
|
||||||
.dev = {
|
|
||||||
.platform_data = &sead3_flash_data,
|
|
||||||
},
|
|
||||||
.num_resources = 1,
|
|
||||||
.resource = &sead3_flash_resource,
|
|
||||||
};
|
|
||||||
|
|
||||||
#define LEDFLAGS(bits, shift) \
|
#define LEDFLAGS(bits, shift) \
|
||||||
((bits << 8) | (shift << 8))
|
((bits << 8) | (shift << 8))
|
||||||
|
|
||||||
|
@ -113,7 +77,6 @@ static struct platform_device sead3_led_device = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct platform_device *sead3_platform_devices[] __initdata = {
|
static struct platform_device *sead3_platform_devices[] __initdata = {
|
||||||
&sead3_flash,
|
|
||||||
&pled_device,
|
&pled_device,
|
||||||
&fled_device,
|
&fled_device,
|
||||||
&sead3_led_device,
|
&sead3_led_device,
|
||||||
|
|
Loading…
Reference in New Issue