Hi,

On 02/26/2011 08:20 PM, Luca Olivetti wrote:
> I'm still trying to make openwrt work on my router (now a lantiq target, 
> previously ifxmips) and I just noticed that the switch (an ar8216) doesn't
> pass data between ports, i.e (warning, lousy ASCII art follows):
> 
>      +--------------------+
>      | Router with ar8216 |
>      +----+---+-----------+
>           |   |
>           |   |
> +----+    |   |   +----+
> |  A +----+   +---+ B  |
> +----+            +----+
> 
> The router can communicate with A and with B, but A and B cannot see
> each other.

I've programmed some other switches and the above happens if the port-based 
vlan table of
the LAN ports contain the CPU port only.

I currently have no build tree with the ar8216 source code, but on a quick look
into target/linux/generic/files/drivers/net/phy/ar8216.c (svn trunk) at line 
458ff:

                /* vlan disabled:
                 * isolate all ports, but connect them to the cpu port */
                for (i = 0; i < AR8216_NUM_PORTS; i++) {
                        if (i == AR8216_PORT_CPU)
                                continue;

                        portmask[i] = 1 << AR8216_PORT_CPU;
                        portmask[AR8216_PORT_CPU] |= (1 << i);

this behaviour seems to be intended if vlan is disabled. Maybe you must enable 
vlan?
Or extend portmask[i] to all LAN ports bits set.

Have you already talked to nbd on this issue?

Regards,
Joerg
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to