1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

sync kmod-switch with whiterussian

git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@2981 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nbd
2006-01-14 17:49:21 +00:00
parent f294bfe9b9
commit de3dd68bc1
2 changed files with 104 additions and 34 deletions

View File

@@ -278,8 +278,15 @@ static int handle_vlan_port_read(void *driver, char *buf, int nr)
if ((val32 & (1 << 20)) /* valid */) {
for (j = 0; j < 6; j++) {
if (val32 & (1 << j)) {
len += sprintf(buf + len, "%d%s\t", j,
(val32 & (1 << (j + 6))) ? (j == 5 ? "u" : "") : "t");
len += sprintf(buf + len, "%d", j);
if (val32 & (1 << (j + 6))) {
if (j == 5) buf[len++] = 'u';
} else {
buf[len++] = 't';
if (robo_read16(ROBO_VLAN_PAGE, ROBO_VLAN_PORT0_DEF_TAG + (j << 1)) == nr)
buf[len++] = '*';
}
buf[len++] = '\t';
}
}
len += sprintf(buf + len, "\n");
@@ -291,8 +298,15 @@ static int handle_vlan_port_read(void *driver, char *buf, int nr)
if ((val16 & (1 << 14)) /* valid */) {
for (j = 0; j < 6; j++) {
if (val16 & (1 << j)) {
len += sprintf(buf + len, "%d%s\t", j, (val16 & (1 << (j + 7))) ?
(j == 5 ? "u" : "") : "t");
len += sprintf(buf + len, "%d", j);
if (val16 & (1 << (j + 7))) {
if (j == 5) buf[len++] = 'u';
} else {
buf[len++] = 't';
if (robo_read16(ROBO_VLAN_PAGE, ROBO_VLAN_PORT0_DEF_TAG + (j << 1)) == nr)
buf[len++] = '*';
}
buf[len++] = '\t';
}
}
len += sprintf(buf + len, "\n");
@@ -415,7 +429,7 @@ static int __init robo_init()
if (notfound)
return -ENODEV;
else {
switch_config main[] = {
switch_config cfg[] = {
{"enable", handle_enable_read, handle_enable_write},
{"enable_vlan", handle_enable_vlan_read, handle_enable_vlan_write},
{"reset", NULL, handle_reset},
@@ -432,7 +446,7 @@ static int __init robo_init()
cpuport: 5,
ports: 6,
vlans: 16,
driver_handlers: main,
driver_handlers: cfg,
port_handlers: NULL,
vlan_handlers: vlan,
};