From owner-freebsd-arm@freebsd.org Sat Mar 26 14:20:14 2016 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B46F9ADEA31 for ; Sat, 26 Mar 2016 14:20:14 +0000 (UTC) (envelope-from guyyur@gmail.com) Received: from mail-wm0-x22e.google.com (mail-wm0-x22e.google.com [IPv6:2a00:1450:400c:c09::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5EDBF197B for ; Sat, 26 Mar 2016 14:20:14 +0000 (UTC) (envelope-from guyyur@gmail.com) Received: by mail-wm0-x22e.google.com with SMTP id l68so52534439wml.0 for ; Sat, 26 Mar 2016 07:20:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to; bh=+lr2UpPoek5XdFL6vJ5eo+eCZS7Zqu076FMNhBgLtqE=; b=rhcPS0IofQNBrZoYJZfe/mWIpXzD4Xudb7zu3Xw/5nSSuGj9RL7MYRulS9pVBt/y7f Nlfq9f2ReCtTU6w6HHsbkLrTljh+osfFui7a4GOjJBC+/rEedYVLbKHvRzfgPs3fNjbU /LE9L5Is3+ivwX4Jh+W6lt8tzLcgkJY4TvmjGo6N5zvLrrZoHj/aUBUHIE2Bdmj83tGU Zwnh0PqHEAfWpQXma9tAdBdg6f/iJAB0z3rlGK6xChhOd0o0Z9h3J/MmtOxUvSBY2sEC t5zf11Fsicv2uTvv19dV5Bm+BQuMv4A3QZj3d/Asw4XClb9HKzNOD4J99sccMwEI5Wcb VljQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to; bh=+lr2UpPoek5XdFL6vJ5eo+eCZS7Zqu076FMNhBgLtqE=; b=c+dnjepaNpXZ25Ror7FmjhIQyyIaz3EXPGcUHRDgGArIvorwiAPf/Zr4fMQtNrMixa Z4FooXNQhf9V0x3LFjH+hgkvoPzuak1hmNlCIXj1tYbBGdoOesRtsFCjhpu8g4OKZSCb sn9zH3qc14kPG5V6v5GDcuhVGi/+GU9aqVpOK7AQkqrjLd4TmyvacCZQsVT47/d/6Quc HBLrAhz78NHHH/rzgFRu8eP6MMaC9MywJdL1Io7w64SwkFff79FOe8pSpzsxrqL/7ZSI xxMGqu1h/MPavTgLYFwEbysNF0GTlI2GIFQt7WUJQLv1Jd5y6wFBMn0pqbl5ZqM+bG8e kLdw== X-Gm-Message-State: AD7BkJILwL+OeB4EqC3IUP5nPMMp+TNTrPQW1xZkx2aeCXiPrbyt7NOADu09qmwURiPul0Fe/IAIBsIyJTaHew== MIME-Version: 1.0 X-Received: by 10.28.225.198 with SMTP id y189mr2118489wmg.94.1459002012686; Sat, 26 Mar 2016 07:20:12 -0700 (PDT) Received: by 10.28.224.84 with HTTP; Sat, 26 Mar 2016 07:20:12 -0700 (PDT) Date: Sat, 26 Mar 2016 17:20:12 +0300 Message-ID: Subject: ODROID C1+ dwc doesn't pass rx multicast ipv6 packets unless in promiscuous mode From: Guy Yur To: freebsd-arm Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Mar 2016 14:20:14 -0000 Hi, I am running rtadvd on my ODROID C1+ and router solicitation messages sent from other hosts are not seen in tcpdump unless I put the NIC in promiscuous mode. I was able to pass the multicast packets by switching to the NetBSD dwc_gmac driver registers AWIN_GMAC_MAC_HTHIGH, AWIN_GMAC_MAC_HTLOW instead of HASH_TABLE_REG(n) and using only the upper 6 bits instead of the upper 8 bits. http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/ic/dwc_gmac.c?only_with_tag=MAIN The linux driver stmmac only uses HASH_TABLE_REG(n) (0x500 + (0x4 * n)) if the hash table size is 128 or 256. If the hash table size is 64 it uses AWIN_GMAC_MAC_HTHIGH (0x8) and AWIN_GMAC_MAC_HTLOW (0xc). The hash table size defaults to 64 and can be overridden from dts snps,multicast-filter-bins. socfpga.dtsi defines it as 256 on linux so the Altera Cyclone has 8 bits and if_dwc works for it but not for the ODROID C1+ which only has 6 bits. Guy