Modify

Opened 8 years ago

Closed 7 years ago

Last modified 6 years ago

#4411 closed defect (fixed)

Buffalo Airstation WBR-B11 needs special casing for VLAN/switch/device setup

Reported by: adi@… Owned by: developers
Priority: normal Milestone:
Component: base system Version:
Keywords: Cc:

Description

Hi!

I just tried kamikaze 8.09-rc1 on a Buffalo WBR-B11. The device comes up and sends DHCP-requests with VLAN tag 1 on the LAN ports. Even when I put a DHCP server in VLAN-1 (on my laptop), I cannot connect to the offered IP later. ping's also dead.

The WBR-B11 has three physical interfaces (output taken from whiterussian rc5):

root@OpenWrt:/# ifconfig 
br0       Link encap:Ethernet  HWaddr 00:07:40:38:DF:F8  
          inet addr:192.168.11.1  Bcast:192.168.11.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2717 errors:0 dropped:0 overruns:0 frame:0
          TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:233927 (228.4 KiB)  TX bytes:4052 (3.9 KiB)

eth0      Link encap:Ethernet  HWaddr 00:07:40:38:DF:F8  
          UP BROADCAST RUNNING PROMISC ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:2886 errors:0 dropped:0 overruns:0 frame:0
          TX packets:29 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:299116 (292.1 KiB)  TX bytes:6289 (6.1 KiB)
          Interrupt:3 

eth1      Link encap:Ethernet  HWaddr 00:07:40:38:DF:F9  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:4 

eth2      Link encap:Ethernet  HWaddr 00:07:40:A1:C9:AC  
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:3
          TX packets:0 errors:15 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:6 Base address:0x2000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

where eth0 is the LAN port, eth1 is WAN and eth2 is wireless.

Whiterussian configures as follows:

root@OpenWrt:/# cat /proc/switch/eth0/vlan/*/ports 
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u      
0       1       2       3       4       5u 

board types from nvram (though I don't know who assigns these variables):

boardtype=bcm94710ap
boardnum=42
boardtype_2=0

More information to possibly identify the device:

root@OpenWrt:/# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00040000 00010000 "pmon"
mtd1: 003b0000 00010000 "linux"
mtd2: 00190000 00010000 "rootfs"
mtd3: 00010000 00002000 "nvram"
mtd4: 001a0000 00010000 "OpenWrt"

root@OpenWrt:/# cat /proc/pci 
PCI devices found:
  Bus  0, device   0, function  0:
    Class 0500: PCI device 14e4:0803 (rev 0).
      IRQ 6.
      Non-prefetchable 32 bit memory at 0x18000000 [0x18000fff].
      Non-prefetchable 32 bit memory at 0x0 [0x7ffffff].
      Non-prefetchable 32 bit memory at 0x10000000 [0x17ffffff].
      Non-prefetchable 32 bit memory at 0x80000000 [0xffffffff].
  Bus  0, device   1, function  0:
    Class 0200: PCI device 14e4:4711 (rev 0).
      IRQ 5.
      Non-prefetchable 32 bit memory at 0x18001000 [0x18001fff].
  Bus  0, device   2, function  0:
    Class 0200: PCI device 14e4:4713 (rev 0).
      IRQ 3.
      Master Capable.  Latency=64.  
      Non-prefetchable 32 bit memory at 0x18002000 [0x18002fff].
  Bus  0, device   3, function  0:
    Class 0703: PCI device 14e4:4712 (rev 0).
      IRQ 2.
      Non-prefetchable 32 bit memory at 0x18003000 [0x18003fff].
  Bus  0, device   4, function  0:
    Class 0c03: PCI device 14e4:4715 (rev 0).
      IRQ 2.
      Non-prefetchable 32 bit memory at 0x18004000 [0x18004fff].
  Bus  0, device   5, function  0:
    Class 0604: PCI device 14e4:0804 (rev 0).
      IRQ 6.
      Non-prefetchable 32 bit memory at 0x18005000 [0x18005fff].
      Non-prefetchable 32 bit memory at 0x8000000 [0xfffffff].
  Bus  0, device   6, function  0:
    Class 0b30: PCI device 14e4:0805 (rev 0).
      IRQ 6.
      Non-prefetchable 32 bit memory at 0x18006000 [0x18006fff].
      Non-prefetchable 32 bit memory at 0xff200000 [0xff3fffff].
  Bus  0, device   7, function  0:
    Class 0501: PCI device 14e4:0811 (rev 0).
      IRQ 2.
      Non-prefetchable 32 bit memory at 0x18007000 [0x18007fff].
      Non-prefetchable 32 bit memory at 0x1f000000 [0x1fffffff].
  Bus  0, device   8, function  0:
    Class 0200: PCI device 14e4:4713 (rev 0).
      IRQ 4.
      Master Capable.  Latency=64.  
      Non-prefetchable 32 bit memory at 0x18008000 [0x18008fff].
  Bus  1, device   0, function  0:
    Class 0600: PCI device 14e4:4710 (rev 1).
      IRQ 6.
      Master Capable.  Latency=64.  
      Non-prefetchable 32 bit memory at 0x40000000 [0x40001fff].
      Prefetchable 32 bit memory at 0x0 [0x7ffffff].
  Bus  1, device   1, function  0:
    Class 0280: PCI device 14e4:4301 (rev 2).
      IRQ 6.
      Master Capable.  Latency=64.  
      Non-prefetchable 32 bit memory at 0x40002000 [0x40003fff].

Don't know if trunk/target/linux/brcm-2.4/base-files/etc/init.d/netconfig is the right place, however, it's needed somewhere to get the device into a usable state, iow: no VLANs, LAN on eth0, WAN on eth1 and perhaps wifi on eth2.

TIA

Attachments (1)

buffalo.patch (821 bytes) - added by adi@… 8 years ago.
proposed patch for fixing WBR-B11

Download all attachments as: .zip

Change History (8)

Changed 8 years ago by adi@…

proposed patch for fixing WBR-B11

comment:1 Changed 8 years ago by adi@…

The attached patch gave me a working device, so this might be the way to go, though I'm not common with the openwrt build system. (if it's better to include these things somewhere else)

comment:2 follow-up: Changed 8 years ago by Roger Hardiman www.rjh.org.uk

The Buffalo WBR-G54 also fails to work with 8.09-RC2.
It also failed with OpenWRT 7.09 but a special build found via the Wiki page for the WBR-G54 which put LAN on eth0, WAN on eth1 and Wifi on eth2 got it working.

The WBR-G54 I have with 7.09 on has the following nvram settings

boardtype=bcm94710ap
boardnum=42
melco_id=ca020906

(Melco Inc make the Buffalo devices)

Tomato and DD-WRT both work correctly on this hardware so they must be doing some hardware detection too. Not had time to look though their source yet.

So I believe this patch will need extending.

comment:3 in reply to: ↑ 2 Changed 8 years ago by Roger Hardiman

I had a look at the Tomato source. It detects the WBR-G54 via melco_id=ca020906

comment:4 Changed 7 years ago by roger@…

As my WBR-G54 does not need the Mac address fixing code (and I have read on the Wiki that the WBR-B11 uses the same hardware (just different WiFi module) I've have changed the patch slighly to put the WBR-G54 and WBR-B11 detection in its own IF statement.

Index: target/linux/brcm-2.4/base-files/etc/init.d/netconfig
===================================================================
--- target/linux/brcm-2.4/base-files/etc/init.d/netconfig (revision
17590)
+++ target/linux/brcm-2.4/base-files/etc/init.d/netconfig (working copy)
@@ -113,6 +113,13 @@

}

}

}

+ # Buffalo WBR-B11 and Buffalo WBR-G54
+ if (nvramboardtype? == "bcm94710ap") {
+ cvlan0ports? = "0 1 2 3 4 5u"
+ cvlan1ports? = ""
+ clan_ifname? = "eth0"
+ cwan_ifname? = "eth1"
+ }

if (nvramboardtype? == "0x478") {

# generic broadcom 4785 processor with 5397 switch?
cvlan0ports? = "1 2 3 4 8*"

comment:5 Changed 7 years ago by roger@…

Index: target/linux/brcm-2.4/base-files/etc/init.d/netconfig
===================================================================
--- target/linux/brcm-2.4/base-files/etc/init.d/netconfig       (revision
17590)
+++ target/linux/brcm-2.4/base-files/etc/init.d/netconfig       (working copy)
@@ -113,6 +113,13 @@
                                }
                        }
                }
+               # Buffalo WBR-B11 and Buffalo WBR-G54
+               if (nvram["boardtype"] == "bcm94710ap") {
+                       c["vlan0ports"] = "0 1 2 3 4 5u"
+                       c["vlan1ports"] = ""
+                       c["lan_ifname"] = "eth0"
+                       c["wan_ifname"] = "eth1"
+               }
                if (nvram["boardtype"] == "0x478") {
                        # generic broadcom 4785 processor with 5397 switch?
                        c["vlan0ports"] = "1 2 3 4 8*"


comment:6 Changed 7 years ago by nbd

  • Resolution set to fixed
  • Status changed from new to closed

fixed in r17598

comment:7 Changed 6 years ago by mrhunt@…

Guys, need CFE from buffalo, asus wl-500w have pcmcia port, but it's not working because in CFE we haven't 14e4:0811 :-( Any one can help ? I will be glad. mrhunt@…

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.