mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-10-05 23:18:11 +03:00
fix wan configuration on wr850g v2/v3
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8482 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
6a948981a3
commit
c2e9789198
@ -492,7 +492,7 @@ static struct platform_t __initdata platforms[] = {
|
|||||||
.leds = {
|
.leds = {
|
||||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||||
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
||||||
{ .name = "dmz", .gpio = 1 << 6, .polarity = REVERSE },
|
{ .name = "wan", .gpio = 1 << 6, .polarity = INPUT },
|
||||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -893,6 +893,7 @@ static void register_leds(struct led_t *l)
|
|||||||
{
|
{
|
||||||
struct proc_dir_entry *p;
|
struct proc_dir_entry *p;
|
||||||
u32 mask = 0;
|
u32 mask = 0;
|
||||||
|
u32 oe_mask = 0;
|
||||||
u32 val = 0;
|
u32 val = 0;
|
||||||
|
|
||||||
leds = proc_mkdir("led", diag);
|
leds = proc_mkdir("led", diag);
|
||||||
@ -907,10 +908,13 @@ static void register_leds(struct led_t *l)
|
|||||||
l->state = 0;
|
l->state = 0;
|
||||||
set_led_extif(l);
|
set_led_extif(l);
|
||||||
} else {
|
} else {
|
||||||
|
if (l->polarity != INPUT) oe_mask != l->gpio;
|
||||||
mask |= l->gpio;
|
mask |= l->gpio;
|
||||||
val |= (l->polarity == NORMAL)?0:l->gpio;
|
val |= (l->polarity == NORMAL)?0:l->gpio;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (l->polarity == INPUT) continue;
|
||||||
|
|
||||||
if ((p = create_proc_entry(l->name, S_IRUSR, leds))) {
|
if ((p = create_proc_entry(l->name, S_IRUSR, leds))) {
|
||||||
l->proc.type = PROC_LED;
|
l->proc.type = PROC_LED;
|
||||||
l->proc.ptr = l;
|
l->proc.ptr = l;
|
||||||
@ -919,7 +923,7 @@ static void register_leds(struct led_t *l)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gpio_outen(mask, mask);
|
gpio_outen(mask, oe_mask);
|
||||||
gpio_control(mask, 0);
|
gpio_control(mask, 0);
|
||||||
gpio_out(mask, val);
|
gpio_out(mask, val);
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,7 @@
|
|||||||
enum polarity_t {
|
enum polarity_t {
|
||||||
REVERSE = 0,
|
REVERSE = 0,
|
||||||
NORMAL = 1,
|
NORMAL = 1,
|
||||||
|
INPUT = 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
|
@ -112,6 +112,11 @@ start() {
|
|||||||
c["vlan1ports"]="0 5"
|
c["vlan1ports"]="0 5"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (model == "Motorola WR850G V2/V3") {
|
||||||
|
c["vlan0ports"]="0 1 2 3 5*"
|
||||||
|
c["vlan1ports"]="4 5"
|
||||||
|
}
|
||||||
|
|
||||||
print "#### VLAN configuration "
|
print "#### VLAN configuration "
|
||||||
print "config switch eth0"
|
print "config switch eth0"
|
||||||
p("vlan0", "vlan0ports")
|
p("vlan0", "vlan0ports")
|
||||||
|
Loading…
Reference in New Issue
Block a user