Commit graph

153 commits

Author SHA1 Message Date
Gabor Juhos
1c57a22aae ar71xx: add model detection for TL-WR842N/ND
SVN-Revision: 30507
2012-02-13 17:11:57 +00:00
Felix Fietkau
61f48beadd ar71xx: fix db120 board detection
SVN-Revision: 30408
2012-02-10 11:46:31 +00:00
Gabor Juhos
48e85cd47b ar71xx: add support for the TRENDNet TEW-673GRU board
SVN-Revision: 30376
2012-02-08 16:26:25 +00:00
Gabor Juhos
faeca86e50 ar71xx: support for D-LINK DIR-615 rev. E4
This patch adds support for D-LINK DIR-615 E4 board. It's mostly based
on the existing support for DIR-600 A1, with some changes in the leds
configuration.

It's an updated version of the patch that reliably works on my hw for
about a year (it was built from trunk on Jan 2011). When I decided to
update the firmware and checked for the current support for that device,
I also found previously posted patches by Alexey Loukianov that
mentioned some stability issues. I'm not sure where could be the
difference, the patches are very similar except the wmac led pin number
- I was using 1, and those patches used 17.

[juhosg: add 3.2 support]

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>

SVN-Revision: 29973
2012-01-31 18:37:09 +00:00
Gabor Juhos
97e4ddd012 ar71xx: add support for TP-Link TL-MR11U
Adds support for TL-MR11U, a portable router with very similar
hardware to the TL-WR703N and TL-MR3020, but with an onboard
2000mAh battery.

Tested, working:
All interfaces (Ethernet, 802.11n, USB)
WPS & Reset switches (Power appears to be a hardware slider)
Ethernet, Wifi, 3G LEDs (Power & charging LEDs hardware controlled)
Sysupgrade

[juhosg: fix indentations to use TABs instead of spaces, fix 3.2 patch
breakage]

Signed-off-by: Simon Taylor <simon.taylor.uk@gmail.com>

SVN-Revision: 29972
2012-01-31 18:37:01 +00:00
Florian Fainelli
eeb00634a7 add support for the Atheros AP113 reference board
This reference board is equipped with:
- AR7242 SoC
- AR9580 on-board Wi-Fi
- AR8316 switch

SVN-Revision: 29935
2012-01-28 13:19:49 +00:00
Gabor Juhos
e1e84badaa ar71xx: add support for Compex WPE72/WPE72NX
This patch adds support for Compex WPE72 bare board and Compex WPE72NX
Indoor Access Point.

[juhosg: add support to 3.2 as well]

Signed-off-by: Johnathan Boyce <jon.boyce@globalreach.eu.com>

SVN-Revision: 29912
2012-01-26 17:01:41 +00:00
Gabor Juhos
a1dcbc66a6 ar71xx: add initial support for the TL-WR2543N/ND board
The WLAN LEDs are not working yet.

SVN-Revision: 29680
2012-01-07 19:36:35 +00:00
Gabor Juhos
f638c6207b ar71xx: fix sysupgrade on the TL-WR841N/ND v7 boards
SVN-Revision: 29672
2012-01-06 15:54:59 +00:00
Gabor Juhos
1e848b17ad ar71xx: add support for Redwave RW2458N
Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@gmail.com>

SVN-Revision: 29669
2012-01-06 07:20:59 +00:00
Gabor Juhos
b8f0d86115 ar71xx: add inital support for the ALFA Network AP96 board
The microSD slot and the Real Time Clock is not working yet.
The miniPCIe interface is not tested due to the lack of a
suitable card.

SVN-Revision: 29662
2012-01-04 21:13:54 +00:00
Gabor Juhos
2f53f82203 ar71xx: use the TL-MR3x20 code for the TL-WR841N/ND v7
These models are based on the AP99 reference board,
and uses the AR7241 SoC.

SVN-Revision: 29658
2012-01-04 17:30:57 +00:00
Gabor Juhos
301b1b4f92 ar71xx: show correct model name on TL-WA701N/ND boards
SVN-Revision: 29657
2012-01-04 17:30:55 +00:00
Gabor Juhos
1045c83527 ar71xx: add support for TP-Link TL-MR3020
This patch adds support for the TP-Link device TL-MR3020 which is very
similiar to the TL-WR703N.
The TL-MR3020 uses 5 LEDs, 1 push button and a switch with 3 positions.
Only four LEDs can be controlled via GPIO. The power LED is connected to
the power supply.
The WPS push button has been mapped to KEY_WPS_BUTTON. The two GPIO signals
of the sliding switch have been mapped to BTN_0 and BTN_1.

I have also setup a wiki page with details here:
http://wiki.openwrt.org/toh/tp-link/tl-mr3020

USB is working and has been tested with USB mass storage and USB UMTS
stick.

Wifi also seems to work.

Ethernet is working too.

Signed-off-by: Christian Cier-Zniewski <c.cier@gmx.de>

SVN-Revision: 29651
2012-01-04 17:30:47 +00:00
Gabor Juhos
1e68f10b87 ar71xx: add support for the ALFA Network N2/N5 boards
SVN-Revision: 29635
2012-01-01 19:30:25 +00:00
Gabor Juhos
76dacee995 ar71xx: enable sysupgrade support for airrouter
Works for me! ;-)

Patch-by: Russell Senior <russell@personaltelco.net>

SVN-Revision: 29614
2011-12-27 16:59:43 +00:00
Gabor Juhos
c6ee919b2a ar71xx: fix sysupgrade on PB42/PB44 boards
SVN-Revision: 29613
2011-12-27 16:57:01 +00:00
Felix Fietkau
0cc056cb7e ar71xx: add support for the wzr-hp-g300nh2
Signed-off-by: Mark Deneen <mdeneen@gmail.com>

SVN-Revision: 29567
2011-12-18 22:20:17 +00:00
Gabor Juhos
b9c5cb5c9a ar71xx: add support for ALFA Network's Hornet-UB board
SVN-Revision: 29535
2011-12-14 20:54:10 +00:00
Gabor Juhos
058998acdb ar71xx: Build images for Netgear WNDRMAC and WNDRMACv2
The WNDRMAC is a WNDR3700v2 (64MB RAM, 16MB flash) in a white case. The
WNDRMACv2 is a WNDR3800 (128MB RAM, 16MB flash) in a WNDRMAC case.

The WNDRMAC case doesn't have "holes" or labels for the 2.4GHz LED or
switch ports 2-4. The stock firmware uses a single LED (in the 5GHz
position) to indicate the status of both radios, and a single LED (in the
switch port 1 position) to indicate the status of all LAN ports. The
"missing" LEDs are present on the board, and easily shine through the
case. Unlike the stock firmware, OpenWrt will use these "hidden" LEDs.

I've tested the WNDRMACv2 image. I don't have a v1 WNDRMAC, but assume
that this is sufficient to build a fully-functional image.

Signed-off-by: Mark Mentovai <mark@moxienet.com>

SVN-Revision: 29513
2011-12-13 14:59:40 +00:00
Gabor Juhos
8eb8a6e1e7 ar71xx: fix WNDR3x00 model detection
Detect the model name for /tmp/sysinfo/model based on 10 bytes at offset
56 in the art (caldata) mtd partition.

r29434 redid WNDR3x00 model detection, attempting to distinguish between
WNDR3700v2 and WNDR3800 by checking MemTotal in /proc/meminfo. However, it
contained a bug: it put the awk inside a $(...), with the result that all
WNDR3700v2 and WNDR3800 models would be reported as WNDR3800. This patch
checks the model name stored in the art partition, as is done by U-Boot
shipping on the WNDR3800. It has the likely advantage of working with
future models based on the WNDR3700 board. It also will not mis-detect
units on which people install more memory.

I have tested this patch on WNDR3700 (v1), WNDR3700v2, and WNDR3800.

Signed-off-by: Mark Mentovai <mark@moxienet.com>

SVN-Revision: 29472
2011-12-07 06:55:39 +00:00
Gabor Juhos
f7a482d382 ar71xx: add TP-Link board detection
SVN-Revision: 29459
2011-12-05 21:11:01 +00:00
Gabor Juhos
c6bcf8d1d8 ar71xx: verify hardware id of firmware images on TP-Link boards
SVN-Revision: 29455
2011-12-05 18:11:51 +00:00
Felix Fietkau
1f809532de ar71xx: add preliminary support for wzr-hp-g450h
SVN-Revision: 29441
2011-12-05 14:20:51 +00:00
Gabor Juhos
4cc2b9bb06 ar71xx: rewrite WNDR3700/3800 handling
SVN-Revision: 29434
2011-12-05 13:03:54 +00:00
Gabor Juhos
5177814ade ar71xx: change user-space board detection
SVN-Revision: 29432
2011-12-05 12:56:20 +00:00
Gabor Juhos
f188f1bad5 ar71xx: add support for Ubiquiti AirRouter
Signed-off-by: Gergely Barta <gergely.barta@printerfairkft.hu>

SVN-Revision: 29395
2011-12-01 22:49:02 +00:00
Gabor Juhos
c20d7378e5 ar71xx: fix wndr3800 machine name
This fixes the machine name in /proc/cpuinfo and luci status page machine name.

Signed-off-by: Petri Rosenström <petri.rosenstrom@gmail.com>

SVN-Revision: 29326
2011-11-24 20:09:38 +00:00
Gabor Juhos
d461fdd519 ar71xx: add diag support for the DB120 board
SVN-Revision: 28975
2011-11-12 10:54:10 +00:00
Gabor Juhos
eb9ef60e2d ar71xx: enable sysupgrade on the WHR-G301N and WHR-HP-GN boards
SVN-Revision: 28812
2011-11-07 20:25:00 +00:00
Gabor Juhos
8456840d82 ar71xx: wrap long lines in the upgrade script
SVN-Revision: 28811
2011-11-07 20:24:59 +00:00
Gabor Juhos
a801d620a7 ar71xx: add support for the Buffalo WHR-HP-GN board
SVN-Revision: 28805
2011-11-07 12:59:10 +00:00
Gabor Juhos
4509af17ed ar71xx: add support for the Buffalo WHR-G301N board
SVN-Revision: 28803
2011-11-07 12:59:07 +00:00
Gabor Juhos
91f08d47c2 ar71xx: add initial support for the TL-WR741ND v4 board
The ethernet port LEDs are not working yet.

SVN-Revision: 28706
2011-11-01 11:20:52 +00:00
Gabor Juhos
3a7b12a27d ar71xx/all0258n: sysupgrade support
U-Boot on the ALL0258N needs offset, size and md5 for kernel and rootfs to be
stored in the U-Boot environment.
If the checksums don't match during boot, a failsafe-system is booted instead.
This patch adds a board-specific sysupgrade hack for the all0258n which
calculates and updates the checksums for the U-Boot environment.

Signed-off-by: Daniel Golle <dgolle@allnet.de>

SVN-Revision: 28700
2011-11-01 09:23:32 +00:00
Gabor Juhos
39b3bfcf6a ar71xx/sysupgrade: use $magic_long instead of $magic when comparing with a 32-bit value
Aparently $magic_long was meant here instead of $magic when comparing with
32-bit values.

Signed-off-by: Daniel Golle <dgolle@allnet.de>

SVN-Revision: 28678
2011-10-30 13:06:30 +00:00
Gabor Juhos
1646346798 ar71xx: add initial support for the OpenMesh OM2P board
Based on a patch by Marek Lindner <marek@open-mesh.com>

SVN-Revision: 28617
2011-10-27 07:54:51 +00:00
Gabor Juhos
9d51cda2db ar71xx: Buffalo WHR-HP-G300N kernel support
The initial support for the Buffalo WHR-HP-G300N box.
The code was confirmed to boot and run, but not tested in depth.

Known problem: iw phy phy0 info shows:
	Coverage class: 0 (up to 0m)
	Available Antennas: TX 0 RX 0

Signed-off-by: Yoichi Shinoda <shinoda@jaist.ac.jp>

SVN-Revision: 28567
2011-10-24 21:49:26 +00:00
Gabor Juhos
d96e321bd1 ar71xx: add kernel support for the Allnet ALL0258N board
This patchs adds support for the Allnet ALL0258N outdoor AP/bridge.
The ALL0258N is based on the AR7240 SoC paired with an AR9285 radio,
it got 8MB of NOR and 32MB SDRAM.

Signed-off-by: Daniel Golle <dgolle@allnet.de>

SVN-Revision: 28564
2011-10-24 21:49:21 +00:00
Jonas Gorski
a136b67604 linux: ar71xx: add support for Mikrotik Routerboard RB493G
SVN-Revision: 28423
2011-10-11 23:05:16 +00:00
Gabor Juhos
733399600f ar71xx: add support for the TP-Link TL-WR703N v1 board
Based on a patch by dongyuqi <729650915@qq.com>

SVN-Revision: 28277
2011-09-21 11:47:53 +00:00
Gabor Juhos
85b858fae6 ar71xx: enable sysupgrade on the AP96 and DB120 boards
SVN-Revision: 27901
2011-08-04 19:41:18 +00:00
Gabor Juhos
fb77134596 ar71xx: use the same test for AP121 and Zcomax sysupgrade images
SVN-Revision: 27900
2011-08-04 19:41:17 +00:00
Jonas Gorski
e18ceb1dac ar71xx: merge WZR-HP-G301NH support into WZR-HP-G300NH
Now that we can use a generic name for the switch there is no need for a
separate image for the WZR-HP-G301NH.
Update the default network config and remove the extra image.

SVN-Revision: 27814
2011-07-28 11:57:51 +00:00
Felix Fietkau
7afed2d86c ar71xx: add wzr-hp-ag300h sysupgrade support (patch from #9650)
SVN-Revision: 27434
2011-07-04 03:03:34 +00:00
Felix Fietkau
cc56af716c ar71xx: add default network config for wzr-hp-ag300h (based on a patch from #9607)
SVN-Revision: 27283
2011-06-25 13:54:42 +00:00
Gabor Juhos
9e435c03e0 ar71xx: add sysupgrade support for the AP121 boards
SVN-Revision: 27069
2011-05-31 22:53:45 +00:00
Gabor Juhos
646937135f ar71xx: add default network config for the AP121 boards
SVN-Revision: 27068
2011-05-31 22:53:44 +00:00
Felix Fietkau
cbc75a9c70 ar71xx: use the ar8316 switch driver on the PB92 board and add a matching default network config
SVN-Revision: 26779
2011-04-28 21:27:42 +00:00
Gabor Juhos
e193547733 ar71xx: use the gpio_keys_polled driver instead of gpio_buttons
SVN-Revision: 26603
2011-04-12 09:29:21 +00:00
Gabor Juhos
54ede24829 ar71xx: Add support for WZR-HP-G301NH
Add support for the Buffalo WZR-HP-G301NH. The only difference between it
and the WZR-HP-G00NH is that it has a RTL8366RB instead of a RTL8366S.
Since we don't do runtime detection of the switch, we need a separate
machine definition for it.

While we are at it, also rename the profile to reflect that it now is for
more than one device.

Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>

SVN-Revision: 26601
2011-04-12 09:29:10 +00:00
Gabor Juhos
8eb616de82 ar71xx: add support for the TP-Link TL-WA901ND v2 board
Patch-by: Jonathan Benett <jbscience87@gmail.com>

SVN-Revision: 26119
2011-03-13 15:08:31 +00:00
Gabor Juhos
67c3e0bf7e ar71xx: add support for the WNDR3700v2 board
Based on a patch by Mark Mentovai <mark@moxienet.com>

SVN-Revision: 25118
2011-01-26 20:35:42 +00:00
Claudio Mignanti
2c0596cd69 unifi: add sysupgrade and leds support
SVN-Revision: 24737
2010-12-20 17:28:34 +00:00
Gabor Juhos
b680f088ba ar71xx: add support for the jjPlus JA79PF
Patch-by: Cezary Jackiewicz

SVN-Revision: 24440
2010-12-10 17:57:51 +00:00
Gabor Juhos
5b0c83edd9 ar71xx: add support for the TP-LINK TL-MR3220 v1 board
SVN-Revision: 24439
2010-12-10 17:57:48 +00:00
Gabor Juhos
081796fe47 ar71xx: add nbg460n image generation
This adds image generation for NBG460N/550N/550NH boards.

Signed-off-by: Michael Kurz <michi.kurz@googlemail.com>

SVN-Revision: 24419
2010-12-10 15:17:03 +00:00
Gabor Juhos
697f5d0bdd ar71xx: initial support for jjPlus JWAP003
Patch-by: Cezary Jackiewicz <cezary@eko.one.pl>

(the GPIODEV code has been removed, the sysfs interface
can be used to control the GPIO lines instead - juhosg)

SVN-Revision: 23165
2010-10-01 07:09:29 +00:00
Gabor Juhos
32d12d5e5c ar71xx: add support for the TL-MR3420 v1 board
SVN-Revision: 23136
2010-09-27 14:53:59 +00:00
Felix Fietkau
a7bb7dd99e Add support for Atheros AP96 reference board
This is still preliminary and not really tested much. Anyway, this
version seems to be enough to get both wired and wireless
interfaces working. Buttons and leds are also working.

mach-ap96.c is based on mach-wndr3700.c.

Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>

SVN-Revision: 23125
2010-09-27 08:59:53 +00:00
Gabor Juhos
b4336a8e2d ar71xx: add support for the Zcomax ZCN-1523H-2-8/5-16 boards
SVN-Revision: 22882
2010-09-03 18:14:37 +00:00
Gabor Juhos
e35f7ef51d ar71xx: add eap7660d board to diag.sh and sysupgrade
This patch adds support for the Senao EAP7660D board to diag.sh and sysupgrade.

Signed-off-by: Daniel Golle <daniel.golle@gmail.com>

SVN-Revision: 22644
2010-08-14 21:07:31 +00:00
Felix Fietkau
4ee3ae96c2 ar71xx: fix sysupgrade on the ubnt nanostation m
SVN-Revision: 22370
2010-07-23 18:16:47 +00:00
Felix Fietkau
900aaa919b ar71xx: add support for the tp-link tl-wa901nd devices (patch by Pieter "Fate" Hollants, from #7528, without the ethernet fifo cfg values)
SVN-Revision: 22353
2010-07-22 12:37:44 +00:00
Gabor Juhos
7bff9c0101 ar71xx: add support for the Senao EAP7660D board
This patch adds support for the Senao EAP7660D board to trunk.

Signed-off-by: Daniel Golle <daniel.golle@gmail.com>

SVN-Revision: 21837
2010-06-18 16:22:05 +00:00
Daniel Dickinson
6bccc41f6c ar71xx: Added preinit scriptlet to set vars based on cpuinfo during preinit_main. This fixes a bug in which the vars were not set due to /proc not being mounted when ar71xx.sh was sourced
SVN-Revision: 21634
2010-05-30 03:20:49 +00:00
Gabor Juhos
9daf566ddc ar71xx: fix sysupgrade on the LS-SR71 board
SVN-Revision: 20119
2010-03-10 17:41:45 +00:00
Gabor Juhos
5e8c8818ed ar71xx: add preliminary support for the RouterBOARD 750
SVN-Revision: 20029
2010-03-07 05:41:01 +00:00
Gabor Juhos
52f03512dc ar71xx: fix sysupgrade on the WRT400N (thanks to chuljin)
* closes #6782

SVN-Revision: 20006
2010-03-05 20:29:27 +00:00
Gabor Juhos
7bda582cf7 ar71xx: fix status led detection on the RB4xx boards
SVN-Revision: 20005
2010-03-05 20:29:24 +00:00
Felix Fietkau
0e84ed29ea preinit: fix mixup between led and reset button enable on some platforms (thx, cshore)
SVN-Revision: 19370
2010-01-28 19:28:02 +00:00
Felix Fietkau
56bc02a305 add preinit modularization work by Daniel Dickinson (cshore)
SVN-Revision: 19331
2010-01-25 17:11:17 +00:00
Gabor Juhos
21a235bc67 ar71xx: fix typos in the ar71xx.sh
SVN-Revision: 19151
2010-01-15 12:11:05 +00:00
Gabor Juhos
cb80426641 ar71xx: add preliminary support for the Buffalo WZR-HP-G300NH
SVN-Revision: 19150
2010-01-15 12:08:03 +00:00
Gabor Juhos
58301cdeb8 ar71xx: add support for the D-Link DIR-600 rev. A1 board
SVN-Revision: 19100
2010-01-11 08:02:10 +00:00
Gabor Juhos
ac4b63a18b ar71xx: create firmware images for the AP81/PB42/PB44 boards
SVN-Revision: 19011
2010-01-02 16:30:52 +00:00
Gabor Juhos
cace9f4566 ar71xx: add support for the TL-WR841N v1.5 board
SVN-Revision: 18893
2009-12-22 19:31:28 +00:00
Gabor Juhos
1f114b0dbd ar71xx: separate DIR-615 rev. C1 support from the TEW-632 (based on the patch from #6186)
SVN-Revision: 18818
2009-12-18 12:57:01 +00:00
Gabor Juhos
7d8a1bf239 ar71xx: TL-WR1043ND support cleanup
SVN-Revision: 18697
2009-12-08 12:46:30 +00:00
Gabor Juhos
f065bbdf7f ar71xx: DIR-825 support cleanup
SVN-Revision: 18622
2009-12-03 15:07:41 +00:00
Gabor Juhos
e4d21e0399 ar71xx: add support for the D-Link DIR-825 rev. B1 board (thanks to ValXdater)
SVN-Revision: 18621
2009-12-03 15:07:34 +00:00
Gabor Juhos
bd4bec689d ar71xx: create sysupgrade image for the WNDR3700
SVN-Revision: 18570
2009-11-28 08:25:56 +00:00
Gabor Juhos
ac8369a672 ar71xx: fix a typo in ar71xx.sh
SVN-Revision: 18568
2009-11-28 08:25:49 +00:00
Gabor Juhos
4704478682 ar71xx: add sysupgrade support for Ubiquiti XM boards
SVN-Revision: 18533
2009-11-25 09:51:31 +00:00
Gabor Juhos
bc97b5de8b ar71xx: enable failsafe on the Nanostation M/Rocket M
SVN-Revision: 18532
2009-11-25 09:51:28 +00:00
Gabor Juhos
523aba9ff9 ar71xx: create combined images for the RS, RS-PRO and LS-SR71 boards, and add sysupgrade support for them
SVN-Revision: 18531
2009-11-25 09:51:25 +00:00
Gabor Juhos
5ab66428b0 ar71xx: add preliminary support for the Netgear WNDR3700
Based on patches by Marco Porsch from:
https://forum.openwrt.org/viewtopic.php?id=22311

SVN-Revision: 18411
2009-11-13 17:11:29 +00:00
Gabor Juhos
28e212cc40 ar71xx: add default network configuration for RS and RS-Pro
SVN-Revision: 18103
2009-10-20 19:36:47 +00:00
Gabor Juhos
dd3b2ae8af ar71xx: add default network configuration for the Bullet M
SVN-Revision: 17810
2009-10-01 19:41:06 +00:00
Gabor Juhos
a59d59be79 enable sysupgrade on the WRT160Nl
SVN-Revision: 17202
2009-08-09 14:12:24 +00:00
Gabor Juhos
9d1e01a159 fix sysupgrade
SVN-Revision: 17092
2009-08-02 09:27:38 +00:00
Gabor Juhos
5f2d2695d9 enable sysupgrade support for the TL-WR741ND
SVN-Revision: 16982
2009-07-25 19:50:26 +00:00
Gabor Juhos
227e69c0f4 add experimental sysupgrade support
SVN-Revision: 16364
2009-06-06 17:44:49 +00:00
Gabor Juhos
656f86f810 add default network configuration for the AP83 board
SVN-Revision: 16360
2009-06-06 16:01:09 +00:00
Gabor Juhos
f3c3e2772f improve MZK-W300NH support (thanks to Kazuki Shimada for the board)
SVN-Revision: 16340
2009-06-04 18:18:36 +00:00
Gabor Juhos
f6e6a733f5 add preliminary support for the WRT160NL
SVN-Revision: 16068
2009-05-25 18:36:49 +00:00
Gabor Juhos
7807c1a29f add experimental support for the Atheros PB44 board
SVN-Revision: 15928
2009-05-20 08:23:48 +00:00
Gabor Juhos
aab2d9371b add experimental support for the Linksys WRT400N board (thanks to netprince)
SVN-Revision: 15422
2009-04-26 06:40:02 +00:00
Gabor Juhos
ef537a68da ap81: register ethernet devices, and add default network configuration file
SVN-Revision: 14921
2009-03-17 18:07:16 +00:00
Gabor Juhos
fa36af494f pb42: fix ethernet, remove USB registration, add default network configuration
SVN-Revision: 14876
2009-03-14 18:28:33 +00:00