aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/dts/WNCE2001.dts
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2013-04-09 14:19:33 +0000
committerJohn Crispin <john@openwrt.org>2013-04-09 14:19:33 +0000
commit48feea4861bba4673e8e2d7a6cedf483963180fc (patch)
tree57574091de0b15e695598d69ff0af2be3c0bc5aa /target/linux/ramips/dts/WNCE2001.dts
parente468abcae08b82174ab086261a8767e468b720ed (diff)
downloadupstream-48feea4861bba4673e8e2d7a6cedf483963180fc.tar.gz
upstream-48feea4861bba4673e8e2d7a6cedf483963180fc.tar.bz2
upstream-48feea4861bba4673e8e2d7a6cedf483963180fc.zip
Add Netgear WNCE2001 (OF version)
Add Netgear WNCE2001. This is a small RT3052 device with 4MB spi flash and 32MB ram. 2 built-in antennas, 1x fastE, no USB, reset & wps switch. On my model the AP/RT switch is unpopulated, but I verified the gpio mapping for it. The stock firmware is running an unprotected tftpd which allows you to read any file from the filesystem. Serial port is present on testpads (See image on the wiki page). There are more testpads below the shield near the SoC, which may have JTAG. Slight annoyance: The bootloader is checksumming kernel&rootfs, but can be tricked by zeroing checksum and length fields in the checksum partition, see target/linux/ramips/base-files/lib/preinit/04_disable_wnce2001_flash_checksumming The manufacturer image is very similar to the DAP one, so I slightly modified mkdapimg to support generating it. The resulting openwrt-ramips-rt305x-wnce2001-squashfs-factory-(worldwide|northamerica).bin can be used to flash from stock to OpenWRT using the stock firmware upgrade function, without using the serial port. http://www.netgear.com/landing/wnce2001.aspx http://wiki.openwrt.org/toh/netgear/wnce2001 Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de> SVN-Revision: 36289
Diffstat (limited to 'target/linux/ramips/dts/WNCE2001.dts')
-rw-r--r--target/linux/ramips/dts/WNCE2001.dts142
1 files changed, 142 insertions, 0 deletions
diff --git a/target/linux/ramips/dts/WNCE2001.dts b/target/linux/ramips/dts/WNCE2001.dts
new file mode 100644
index 0000000000..1aa1e2cc04
--- /dev/null
+++ b/target/linux/ramips/dts/WNCE2001.dts
@@ -0,0 +1,142 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "WNCE2001", "ralink,rt3052-soc";
+ model = "Netgear WNCE2001";
+
+ memorydetect {
+ ralink,memory = <0x0 0x200000 0x4000000>;
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "sdram";
+ ralink,gpiomux = "i2c", "mdio", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ factory: partition@30000 {
+ label = "factory";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "config";
+ reg = <0x40000 0x20000>;
+ read-only;
+ };
+
+ partition@60000 {
+ label = "language";
+ reg = <0x60000 0x30000>;
+ read-only;
+ };
+
+ partition@90000 {
+ label = "pot";
+ reg = <0x90000 0x10000>;
+ read-only;
+ };
+
+ partition@a0000 {
+ label = "checksum";
+ reg = <0xa0000 0x10000>;
+ };
+
+ partition@b0000 {
+ label = "firmware";
+ reg = <0xb0000 0x350000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power-green {
+ label = "netgear:green:power";
+ gpios = <&gpio0 8 1>;
+ };
+ power-red {
+ label = "netgear:red:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan-green {
+ label = "netgear:green:wlan";
+ gpios = <&gpio0 12 0>;
+ };
+ wlan-red {
+ label = "netgear:red:wlan";
+ gpios = <&gpio0 13 0>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ rt {
+ label = "rt";
+ gpios = <&gpio0 11 1>;
+ linux,code = <0x100>;
+ };
+ ap {
+ label = "ap";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x101>;
+ };
+ };
+};