Re: [OpenWrt-Devel] Broadcom ARM Status
On 2013-11-02 23:47, James Hilliard wrote: I'm not actually trying to use a fully compiled .ko file, the file is a .o file such as wl_apsta.o(tools indicate it is a relocatable ELF for ARM) that gets compiled into a .ko when you build GPL tarballs. Seems to be the same as the wl_prebuilt.o files we have for the most part in the current driver implementation. There's not that much difference between linking all those .o files into one .ko and just using the prebuilt .ko. I realize that the driver depends on these data structures in the kernel, but we know exactly what these structures look like from the hnd kernel patch right? In the patch here https://sourceforge.net/projects/routertesting/files/ea6900%20patches/linux-2.6.36.4-f70_000_BSP.patch/download it seems that there are changes to the sk_buff and net_device in the kernel to match the driver. I see that there are ABI differences but I don't see why we can't just change the kernel's ABI to be compatible, we have the patch-set for that. The way i'm looking at this is since we can't recompile the driver to fit the kernel we recompile the kernel to fit the driver. Good luck... Given how much you're already struggling with understanding the really simple parts, I'm not sure how you will be able to solve the more complex problems related to the ABI/API issues. Either way, the result of such work will most likely not be acceptable for merging into OpenWrt, since it'll break with every single kernel upgrade and will create nasty kernel maintenance issues. I know that, because I've done that sort of thing before... One thing odd I noticed is that a mips .ko driver has the function names removed when compiled from the .o driver, while it appears the ARM one does not, both the ARM .ko and .o are very similar with symbol names intact. Both start out as .o files with all the function names. You forgot to mention, what .ko files you looked at and where you got them from. From what I can tell wl_glue in the current driver is the ABI compatability layer used currently rather than making the kernel directly compatible, is that correct? ABI compatability layer? That doesn't make much sense. - Felix ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] ag71xx: fix a race involving netdev registration
In particular, phy_connect before register_netdev. This is because register_netdev runs the netdev notifiers, which can race with the rest of the initialization in ag71xx_probe. In my case this manifested in two ways: 1) If ag71xx is compiled as a module and inserted after netifd has started, netifd is notified by register_netdev before the call to ag71xx_phy_connect. netifd tries to bring the interface up, which calls ag71xx_open, which in turn enters ag71xx_phy_start. This keys off ag-phy_dev (which is still NULL) and thinks this is a fixed-link board, and enters ag71xx_link_adjust. This looks at ag-speed which is not yet initialized and hits the BUG() in the switch (ag-speed) in ag71xx_link_adjust. This is the wrong code path for ag71xx_phy_start - my board has PHYs that need to be brought up with phy_start. Doing ag71xx_phy_connect before register_netdev ensures that ag-phy_dev is non-NULL before ag71xx_phy_start is ever called. 2) When ag71xx is built into the kernel, and netconsole is enabled, there is a gap in the initial burst of replayed printks right after the netdev comes up. My assumption is that netconsole is also triggered by a netdev notifier, and part of this printk burst happens before the call into ag71xx_phy_connect, so part of the burst is lost while the PHY comes up. This patch fixes the gap - all the printks before eth0 comes up are bursted in full when netconsole initializes. ag71xx_phy_connect_xxx no longer runs with a registered netdev, so the logging has been adjusted accordingly to avoid unregistered net_device or eth%d messages in dmesg. Signed-off-by: Catalin Patulea c...@vv.carleton.ca --- .../net/ethernet/atheros/ag71xx/ag71xx_main.c | 24 +--- .../net/ethernet/atheros/ag71xx/ag71xx_phy.c | 20 2 files changed, 21 insertions(+), 23 deletions(-) diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c index fc6be0e..f4d6735 100644 --- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c +++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c @@ -1178,16 +1178,6 @@ static int ag71xx_probe(struct platform_device *pdev) netif_napi_add(dev, ag-napi, ag71xx_poll, AG71XX_NAPI_WEIGHT); - err = register_netdev(dev); - if (err) { - dev_err(pdev-dev, unable to register net device\n); - goto err_free_desc; - } - - pr_info(%s: Atheros AG71xx at 0x%08lx, irq %d, mode:%s\n, - dev-name, dev-base_addr, dev-irq, - ag71xx_get_phy_if_mode_name(pdata-phy_if_mode)); - ag71xx_dump_regs(ag); ag71xx_hw_init(ag); @@ -1196,7 +1186,7 @@ static int ag71xx_probe(struct platform_device *pdev) err = ag71xx_phy_connect(ag); if (err) - goto err_unregister_netdev; + goto err_free_desc; err = ag71xx_debugfs_init(ag); if (err) @@ -1204,12 +1194,20 @@ static int ag71xx_probe(struct platform_device *pdev) platform_set_drvdata(pdev, dev); + err = register_netdev(dev); + if (err) { + dev_err(pdev-dev, unable to register net device\n); + goto err_phy_disconnect; + } + + pr_info(%s: Atheros AG71xx at 0x%08lx, irq %d, mode:%s\n, + dev-name, dev-base_addr, dev-irq, + ag71xx_get_phy_if_mode_name(pdata-phy_if_mode)); + return 0; err_phy_disconnect: ag71xx_phy_disconnect(ag); -err_unregister_netdev: - unregister_netdev(dev); err_free_desc: dma_free_coherent(NULL, sizeof(struct ag71xx_desc), ag-stop_desc, ag-stop_desc_dma); diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c index f3791e2..9de77e9 100644 --- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c +++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c @@ -76,7 +76,7 @@ void ag71xx_phy_stop(struct ag71xx *ag) static int ag71xx_phy_connect_fixed(struct ag71xx *ag) { - struct net_device *dev = ag-dev; + struct device *dev = ag-pdev-dev; struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag); int ret = 0; @@ -87,12 +87,12 @@ static int ag71xx_phy_connect_fixed(struct ag71xx *ag) case SPEED_1000: break; default: - netdev_err(dev, invalid speed specified\n); + dev_err(dev, invalid speed specified\n); ret = -EINVAL; break; } - netdev_dbg(dev, using fixed link parameters\n); + dev_dbg(dev, using fixed link parameters\n); ag-duplex = pdata-duplex; ag-speed
Re: [OpenWrt-Devel] [PATCH 0/18] broadcom-wl: improvements for newer devices
Hi Nathan, this series looks very well, ACK from me for merging it with a little comment on the wds interface naming; for mac80211 we use a dash as vif number separator, so wlan0 is vif 1 on phy0, wlan0-1 is vif 2 on phy 0 etc. I suggest using the same for wl, means wl0 is vif 1 on radio 0, wl0-1 is vif 2 on radio 0 etc. Regards, Jow signature.asc Description: OpenPGP digital signature ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] disable mips16 for mysql and postgresql
mysql does not compile with mips16 enabled, here is the fix. diff --git a/libs/mysql/Makefile b/libs/mysql/Makefile index 1f756b9..d106b34 100644 --- a/libs/mysql/Makefile +++ b/libs/mysql/Makefile @@ -11,6 +11,7 @@ include $(INCLUDE_DIR)/uclibc++.mk PKG_NAME:=mysql PKG_VERSION:=5.1.68 PKG_RELEASE:=1 +PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=\ diff --git a/libs/postgresql/Makefile b/libs/postgresql/Makefile index 37ae8f6..4ea573d 100644 --- a/libs/postgresql/Makefile +++ b/libs/postgresql/Makefile @@ -10,6 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=postgresql PKG_VERSION:=9.0.1 PKG_RELEASE:=4 +PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=\ Signed-off-by: Matthew M. Dean firecu...@gmail.com ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Broadcom ARM Status
Something interesting I found, seems broadcom is building the driver in this strange way precisely because of the GPL: /* Where to get the declarations for mem, str, printf, bcopy's? Two basic approaches. * * First, use the Linux header files and the C standard library replacmenent versions * built-in to the kernel. Use this approach when compiling non hybrid code or compling * the OS port files. The second approach is to use our own defines/prototypes and * functions we have provided in the Linux OSL, i.e. linux_osl.c. Use this approach when * compiling the files that make up the hybrid binary. We are ensuring we * don't directly link to the kernel replacement routines from the hybrid binary. * * NOTE: The issue we are trying to avoid is any questioning of whether the * hybrid binary is derived from Linux. The wireless common code (wlc) is designed * to be OS independent through the use of the OSL API and thus the hybrid binary doesn't * derive from the Linux kernel at all. But since we defined our OSL API to include * a small collection of standard C library routines and these routines are provided in * the kernel we want to avoid even the appearance of deriving at all even though clearly * usage of a C standard library API doesn't represent a derivation from Linux. Lastly * note at the time of this checkin 4 references to memcpy/memset could not be eliminated * from the binary because they are created internally by GCC as part of things like * structure assignment. I don't think the compiler should be doing this but there is * no options to disable it on Intel architectures (there is for MIPS so somebody must * agree with me). I may be able to even remove these references eventually with * a GNU binutil such as objcopy via a symbol rename (i.e. memcpy to osl_memcpy). */ On Sun, Nov 3, 2013 at 2:25 AM, James Hilliard james.hillia...@gmail.comwrote: That patch included a bit more than just the modifications needed to support the wl driver, that patch should be for the new broadcom ARM architecture. I think most of the dependencies for the wl driver and the ARM wl driver should be in here http://sourceforge.net/projects/routertesting/files/ea6900%20patches/src.tar.bz2/downloadwhich is a bit cleaner than the patch. The .ko files are sometimes precompiled along with the .o files in GPL tarballs and sometimes there are only .o files, usually there are just the .o files though. It varies slightly between manufacturers. The ones in that tarball are pulled from the ea6900 source. Maybe ABI compatibility layer wasn't exactly the best way the phrase that. What method would you use to go about getting the driver working? I don't see a reason the ABI can't be fixed, all that information is in the broadcom components that are open source, at least as far as I can tell. I'm trying to figure out where start on all of this. Most of this seems to be just merging existing code and configuration changes. How would you go about getting a working broadcom driver on new devices? On Sun, Nov 3, 2013 at 1:55 AM, Felix Fietkau n...@openwrt.org wrote: On 2013-11-02 23:47, James Hilliard wrote: I'm not actually trying to use a fully compiled .ko file, the file is a .o file such as wl_apsta.o(tools indicate it is a relocatable ELF for ARM) that gets compiled into a .ko when you build GPL tarballs. Seems to be the same as the wl_prebuilt.o files we have for the most part in the current driver implementation. There's not that much difference between linking all those .o files into one .ko and just using the prebuilt .ko. I realize that the driver depends on these data structures in the kernel, but we know exactly what these structures look like from the hnd kernel patch right? In the patch here https://sourceforge.net/projects/routertesting/files/ea6900%20patches/linux-2.6.36.4-f70_000_BSP.patch/download it seems that there are changes to the sk_buff and net_device in the kernel to match the driver. I see that there are ABI differences but I don't see why we can't just change the kernel's ABI to be compatible, we have the patch-set for that. The way i'm looking at this is since we can't recompile the driver to fit the kernel we recompile the kernel to fit the driver. Good luck... Given how much you're already struggling with understanding the really simple parts, I'm not sure how you will be able to solve the more complex problems related to the ABI/API issues. Either way, the result of such work will most likely not be acceptable for merging into OpenWrt, since it'll break with every single kernel upgrade and will create nasty kernel maintenance issues. I know that, because I've done that sort of thing before... One thing odd I noticed is that a mips .ko driver has the function names removed when compiled from the .o driver, while it appears the ARM one does not, both the ARM .ko and .o are very similar with symbol names
[OpenWrt-Devel] [PATCH] [packages] erlang - allow compiling NIFs, allow rebar for libraries for Erlang + version bump
This fixes the Erlang package so that libraries for Erlang can easily be packaged for OpenWRT. This means: - static libraries and include files for compiling NIFs are copied in the build environment to usr/{lib,include} - crypto is enabled in host Erlang build so that rebar can be used without further patching Version is bumped and 101-emulator_includes.patch is modified so that R16B02 compiles correctly. Note that erlang-crypto is still broken as per https://dev.openwrt.org/ticket/12959; use patch in comments to this ticket. Signed-off-by: Barnabás Králik krali...@msn.com Index: feeds/packages/lang/erlang/patches/101-emulator_includes.patch === --- feeds/packages/lang/erlang/patches/101-emulator_includes.patch (revision 38392) +++ feeds/packages/lang/erlang/patches/101-emulator_includes.patch (working copy) @@ -4,8 +4,8 @@ $(OBJDIR)/%.o: beam/%.c --$(CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $ -o $@ -+ $(CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $ -o $@ +- $(V_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $ -o $@ ++ $(V_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $ -o $@ else Index: feeds/packages/lang/erlang/Makefile === --- feeds/packages/lang/erlang/Makefile (revision 38392) +++ feeds/packages/lang/erlang/Makefile(working copy) @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=erlang -PKG_VERSION:=R15B01 -PKG_RELEASE:=4 +PKG_VERSION:=R16B02 +PKG_RELEASE:=1 PKG_SOURCE:=otp_src_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.erlang.org/download/ \ http://erlang.mirror.su.se/ -PKG_MD5SUM:=f12d00f6e62b36ad027d6c0c08905fad +PKG_MD5SUM:= ca63bcde0e5ae0f2df9457f97b3115a4 PKG_BUILD_DEPENDS:=erlang/host openssl @@ -38,11 +38,10 @@ and fault tolerance. endef - define Package/erlang $(call Package/erlang/Default) DEPENDS+= +libncurses +librt +zlib - PROVIDES:= erlang-erts=5.9 erlang-kernel=2.15 erlang-sasl=2.2 erlang-stdlib=1.18 + PROVIDES:= erlang-erts=5.10.3 erlang-kernel=2.16.3 erlang-sasl=2.3.3 erlang-stdlib=1.19.3 endef define Package/erlang/description @@ -56,7 +55,7 @@ define Package/erlang-asn1 $(call Package/erlang/Default) TITLE:=Abstract Syntax Notation One (ASN.1) support - VERSION:=1.6.19 + VERSION:=2.0.3 DEPENDS+= +erlang +erlang-syntax-tools endef @@ -71,7 +70,7 @@ define Package/erlang-compiler $(call Package/erlang/Default) TITLE:=Byte code compiler - VERSION:=4.8 + VERSION:=4.9.3 DEPENDS+= +erlang +erlang-hipe endef @@ -86,7 +85,7 @@ define Package/erlang-crypto $(call Package/erlang/Default) TITLE:=Cryptography support - VERSION:=2.1 + VERSION:=3.1 DEPENDS+= +erlang +libopenssl endef @@ -101,7 +100,7 @@ define Package/erlang-hipe $(call Package/erlang/Default) TITLE:=High Performance Erlang - VERSION:=3.9 + VERSION:=3.10.2.1 DEPENDS+= +erlang endef @@ -116,7 +115,7 @@ define Package/erlang-inets $(call Package/erlang/Default) TITLE:=Internet clients and servers - VERSION:=5.8 + VERSION:=5.9.6 DEPENDS+= +erlang endef @@ -132,7 +131,7 @@ define Package/erlang-mnesia $(call Package/erlang/Default) TITLE:=Distributed database - VERSION:=4.6 + VERSION:=4.10 DEPENDS+= +erlang endef @@ -149,7 +148,7 @@ define Package/erlang-runtime-tools $(call Package/erlang/Default) TITLE:=Low-profile debugging/tracing tools - VERSION:=1.8.7 + VERSION:=1.8.12 DEPENDS+= +erlang endef @@ -164,7 +163,7 @@ define Package/erlang-snmp $(call Package/erlang/Default) TITLE:=Simple Network Management Protocol (SNMP) support - VERSION:=4.21.4 + VERSION:=4.24.2 DEPENDS+= +erlang +erlang-asn1 endef @@ -180,7 +179,7 @@ define Package/erlang-ssh $(call Package/erlang/Default) TITLE:=Secure Shell (SSH) support - VERSION:=2.0.9 + VERSION:=2.1.8 DEPENDS+= +erlang +erlang-crypto endef @@ -195,7 +194,7 @@ define Package/erlang-ssl $(call Package/erlang/Default) TITLE:=Secure Sockets Layer (SSL) support - VERSION:=5.0 + VERSION:=5.3.1 DEPENDS+= +erlang +erlang-crypto endef @@ -210,7 +209,7 @@ define Package/erlang-syntax-tools $(call Package/erlang/Default) TITLE:=Abstract Erlang syntax trees handling support - VERSION:=1.6.7.2 + VERSION:=1.6.11 DEPENDS+= +erlang endef @@ -227,8 +226,7 @@ HOST_CONFIGURE_ARGS += \ --disable-hipe \ --disable-smp-support \ - --without-javac \ - --without-ssl + --without-javac define Host/Compile $(MAKE) -C $(HOST_BUILD_DIR) all @@ -296,6 +294,12 @@ done endef +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/lib + $(CP)
Re: [OpenWrt-Devel] [PATCH] ag71xx: fix a race involving netdev registration
On Sun, Nov 3, 2013 at 3:16 AM, Catalin Patulea c...@vv.carleton.ca wrote: In particular, phy_connect before register_netdev. This is because register_netdev runs the netdev notifiers, which can race with the rest of the initialization in ag71xx_probe. Here's someone who demonstrated that this race condition exists by modifying e1000: http://stackoverflow.com/questions/17899396/concurrency-in-the-linux-network-drivers-probe-vs-ndo-open-ndo-start-xmit (question part #1 and the EDIT) The same thing applies to ag71xx - we must prevent ag71xx_open from being called before ag71xx_probe completes. ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] [packages] erlang - allow compiling NIFs, allow rebar for libraries for Erlang + version bump
Hi, your patch is malformed. Please resend it and add the patch as attachment. Regards, Peter On Sun, 3 Nov 2013 19:41:01 +0100 Králik Barnabás krali...@msn.com wrote: This fixes the Erlang package so that libraries for Erlang can easily be packaged for OpenWRT. This means: - static libraries and include files for compiling NIFs are copied in the build environment to usr/{lib,include} - crypto is enabled in host Erlang build so that rebar can be used without further patching Version is bumped and 101-emulator_includes.patch is modified so that R16B02 compiles correctly. Note that erlang-crypto is still broken as per https://dev.openwrt.org/ticket/12959; use patch in comments to this ticket. Signed-off-by: Barnabás Králik krali...@msn.com Index: feeds/packages/lang/erlang/patches/101-emulator_includes.patch === --- feeds/packages/lang/erlang/patches/101-emulator_includes.patch (revision 38392) +++ feeds/packages/lang/erlang/patches/101-emulator_includes.patch (working copy) @@ -4,8 +4,8 @@ $(OBJDIR)/%.o: beam/%.c --$(CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $ -o $@ -+ $(CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $ -o $@ +- $(V_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $ -o $@ ++ $(V_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $ -o $@ else Index: feeds/packages/lang/erlang/Makefile === --- feeds/packages/lang/erlang/Makefile (revision 38392) +++ feeds/packages/lang/erlang/Makefile(working copy) @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=erlang -PKG_VERSION:=R15B01 -PKG_RELEASE:=4 +PKG_VERSION:=R16B02 +PKG_RELEASE:=1 PKG_SOURCE:=otp_src_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.erlang.org/download/ \ http://erlang.mirror.su.se/ -PKG_MD5SUM:=f12d00f6e62b36ad027d6c0c08905fad +PKG_MD5SUM:= ca63bcde0e5ae0f2df9457f97b3115a4 PKG_BUILD_DEPENDS:=erlang/host openssl @@ -38,11 +38,10 @@ and fault tolerance. endef - define Package/erlang $(call Package/erlang/Default) DEPENDS+= +libncurses +librt +zlib - PROVIDES:= erlang-erts=5.9 erlang-kernel=2.15 erlang-sasl=2.2 erlang-stdlib=1.18 + PROVIDES:= erlang-erts=5.10.3 erlang-kernel=2.16.3 erlang-sasl=2.3.3 erlang-stdlib=1.19.3 endef define Package/erlang/description @@ -56,7 +55,7 @@ define Package/erlang-asn1 $(call Package/erlang/Default) TITLE:=Abstract Syntax Notation One (ASN.1) support - VERSION:=1.6.19 + VERSION:=2.0.3 DEPENDS+= +erlang +erlang-syntax-tools endef @@ -71,7 +70,7 @@ define Package/erlang-compiler $(call Package/erlang/Default) TITLE:=Byte code compiler - VERSION:=4.8 + VERSION:=4.9.3 DEPENDS+= +erlang +erlang-hipe endef @@ -86,7 +85,7 @@ define Package/erlang-crypto $(call Package/erlang/Default) TITLE:=Cryptography support - VERSION:=2.1 + VERSION:=3.1 DEPENDS+= +erlang +libopenssl endef @@ -101,7 +100,7 @@ define Package/erlang-hipe $(call Package/erlang/Default) TITLE:=High Performance Erlang - VERSION:=3.9 + VERSION:=3.10.2.1 DEPENDS+= +erlang endef @@ -116,7 +115,7 @@ define Package/erlang-inets $(call Package/erlang/Default) TITLE:=Internet clients and servers - VERSION:=5.8 + VERSION:=5.9.6 DEPENDS+= +erlang endef @@ -132,7 +131,7 @@ define Package/erlang-mnesia $(call Package/erlang/Default) TITLE:=Distributed database - VERSION:=4.6 + VERSION:=4.10 DEPENDS+= +erlang endef @@ -149,7 +148,7 @@ define Package/erlang-runtime-tools $(call Package/erlang/Default) TITLE:=Low-profile debugging/tracing tools - VERSION:=1.8.7 + VERSION:=1.8.12 DEPENDS+= +erlang endef @@ -164,7 +163,7 @@ define Package/erlang-snmp $(call Package/erlang/Default) TITLE:=Simple Network Management Protocol (SNMP) support - VERSION:=4.21.4 + VERSION:=4.24.2 DEPENDS+= +erlang +erlang-asn1 endef @@ -180,7 +179,7 @@ define Package/erlang-ssh $(call Package/erlang/Default) TITLE:=Secure Shell (SSH) support - VERSION:=2.0.9 + VERSION:=2.1.8 DEPENDS+= +erlang +erlang-crypto endef @@ -195,7 +194,7 @@ define Package/erlang-ssl $(call Package/erlang/Default) TITLE:=Secure Sockets Layer (SSL) support - VERSION:=5.0 + VERSION:=5.3.1 DEPENDS+= +erlang +erlang-crypto endef @@ -210,7 +209,7 @@ define Package/erlang-syntax-tools $(call Package/erlang/Default) TITLE:=Abstract Erlang syntax trees handling support - VERSION:=1.6.7.2 + VERSION:=1.6.11
[OpenWrt-Devel] [PATCH] mxs: duckbill: adjust leds to final hardware
Signed-off-by: Michael Heimpold m...@heimpold.de --- target/linux/mxs/files/arch/arm/boot/dts/imx28-duckbill.dts |8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/target/linux/mxs/files/arch/arm/boot/dts/imx28-duckbill.dts b/target/linux/mxs/files/arch/arm/boot/dts/imx28-duckbill.dts index b102d62..bd231e7 100644 --- a/target/linux/mxs/files/arch/arm/boot/dts/imx28-duckbill.dts +++ b/target/linux/mxs/files/arch/arm/boot/dts/imx28-duckbill.dts @@ -49,8 +49,8 @@ led_pins_a: led_gpio@0 { reg = 0; fsl,pinmux-ids = - 0x3003 /* MX28_PAD_AUART0_RX__GPIO_3_0 */ - 0x3013 /* MX28_PAD_AUART0_TX__GPIO_3_1 */ + 0x3043 /* MX28_PAD_AUART1_RX__GPIO_3_4 */ + 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ ; fsl,drive-strength = 0; fsl,voltage = 1; @@ -107,12 +107,12 @@ status { label = duckbill:green:status; - gpios = gpio3 0 0; + gpios = gpio3 5 0; }; failure { label = duckbill:red:status; - gpios = gpio3 1 0; + gpios = gpio3 4 0; }; }; }; -- 1.7.10.4 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] ar71xx: Add kernel support for the TP-Link WA750RE / WA850RE range extender
Patch to add kernel support for the TP-LINK WA750RE and the WA850RE range extender Signed-off-by: Martijn Zilverschoon thefriedzom...@gmail.com diff --git a/target/linux/ar71xx/config-3.10 b/target/linux/ar71xx/config-3.10 index 2a0ba82..55cbc10 100644 --- a/target/linux/ar71xx/config-3.10 +++ b/target/linux/ar71xx/config-3.10 @@ -72,6 +72,7 @@ CONFIG_ATH79_MACH_TL_MR11U=y CONFIG_ATH79_MACH_TL_MR13U=y CONFIG_ATH79_MACH_TL_MR3020=y CONFIG_ATH79_MACH_TL_MR3X20=y +CONFIG_ATH79_MACH_TL_WAX50RE=y CONFIG_ATH79_MACH_TL_WA901ND=y CONFIG_ATH79_MACH_TL_WA901ND_V2=y CONFIG_ATH79_MACH_TL_WDR3500=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c new file mode 100644 index 000..2f82f48 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c @@ -0,0 +1,183 @@ +/* + * TP-LINK TL-WA750RE V1 / TP-LINK TL-WA850RE V1 board support + * + * Copyright (C) 2013 Martijn Zilverschoon thefriedzom...@gmail.com + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + */ + +#include linux/gpio.h +#include linux/platform_device.h + +#include asm/mach-ath79/ath79.h +#include asm/mach-ath79/ar71xx_regs.h + +#include common.h +#include dev-eth.h +#include dev-gpio-buttons.h +#include dev-leds-gpio.h +#include dev-m25p80.h +#include dev-wmac.h +#include machtypes.h + +#define TL_WAX50RE_GPIO_LED_LAN20 +#define TL_WAX50RE_GPIO_LED_WLAN13 +#define TL_WAX50RE_GPIO_LED_RE15 +#define TL_WAX50RE_GPIO_LED_SIGNAL10 +#define TL_WAX50RE_GPIO_LED_SIGNAL21 +#define TL_WAX50RE_GPIO_LED_SIGNAL32 +#define TL_WAX50RE_GPIO_LED_SIGNAL43 +#define TL_WAX50RE_GPIO_LED_SIGNAL54 + +#define TL_WAX50RE_GPIO_BTN_RESET17 +#define TL_WAX50RE_GPIO_BTN_WPS16 + +#define TL_WAX50RE_KEYS_POLL_INTERVAL20/* msecs */ +#define TL_WAX50RE_KEYS_DEBOUNCE_INTERVAL (3 * TL_WAX50RE_KEYS_POLL_INTERVAL) + +static const char *tl_wax50re_part_probes[] = { +tp-link, +NULL, +}; + +static struct flash_platform_data tl_wax50re_flash_data = { +.part_probes= tl_wax50re_part_probes, +}; + +static struct gpio_led tl_wa750re_leds_gpio[] __initdata = { +{ +.name= tp-link:orange:lan, +.gpio= TL_WAX50RE_GPIO_LED_LAN, +.active_low= 1, +}, { +.name= tp-link:orange:wlan, +.gpio= TL_WAX50RE_GPIO_LED_WLAN, +.active_low= 1, +}, { +.name= tp-link:orange:re, +.gpio= TL_WAX50RE_GPIO_LED_RE, +.active_low= 1, +}, { +.name= tp-link:orange:signal1, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL1, +.active_low= 1, +}, { +.name= tp-link:orange:signal2, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL2, +.active_low= 1, +}, { +.name= tp-link:orange:signal3, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL3, +.active_low= 1, +}, { +.name= tp-link:orange:signal4, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL4, +.active_low= 1, +}, { +.name= tp-link:orange:signal5, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL5, +.active_low= 1, +}, +}; + +static struct gpio_led tl_wa850re_leds_gpio[] __initdata = { +{ +.name= tp-link:blue:lan, +.gpio= TL_WAX50RE_GPIO_LED_LAN, +.active_low= 1, +}, { +.name= tp-link:blue:wlan, +.gpio= TL_WAX50RE_GPIO_LED_WLAN, +.active_low= 1, +}, { +.name= tp-link:blue:re, +.gpio= TL_WAX50RE_GPIO_LED_RE, +.active_low= 1, +}, { +.name= tp-link:blue:signal1, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL1, +.active_low= 1, +}, { +.name= tp-link:blue:signal2, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL2, +.active_low= 1, +}, { +.name= tp-link:blue:signal3, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL3, +.active_low= 1, +}, { +.name= tp-link:blue:signal4, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL4, +.active_low= 1, +}, { +.name= tp-link:blue:signal5, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL5, +.active_low= 1, +}, +}; + + +static struct gpio_keys_button tl_wax50re_gpio_keys[] __initdata = { +{ +.desc = Reset button, +.type = EV_KEY, +.code = KEY_RESTART, +.debounce_interval = TL_WAX50RE_KEYS_DEBOUNCE_INTERVAL, +.gpio = TL_WAX50RE_GPIO_BTN_RESET, +.active_low = 1, +}, { +.desc = WPS, +
[OpenWrt-Devel] [PATCH] ar71xx: Add kernel support for the TP-Link WA750RE / WA850RE range extender
Patch to add kernel support for the TP-LINK WA750RE and the WA850RE range extender Signed-off-by: Martijn Zilverschoon thefriedzom...@gmail.com NEXT PART diff --git a/target/linux/ar71xx/config-3.10 b/target/linux/ar71xx/config-3.10 index 2a0ba82..55cbc10 100644 --- a/target/linux/ar71xx/config-3.10 +++ b/target/linux/ar71xx/config-3.10 @@ -72,6 +72,7 @@ CONFIG_ATH79_MACH_TL_MR11U=y CONFIG_ATH79_MACH_TL_MR13U=y CONFIG_ATH79_MACH_TL_MR3020=y CONFIG_ATH79_MACH_TL_MR3X20=y +CONFIG_ATH79_MACH_TL_WAX50RE=y CONFIG_ATH79_MACH_TL_WA901ND=y CONFIG_ATH79_MACH_TL_WA901ND_V2=y CONFIG_ATH79_MACH_TL_WDR3500=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c new file mode 100644 index 000..2f82f48 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wax50re.c @@ -0,0 +1,183 @@ +/* + * TP-LINK TL-WA750RE V1 / TP-LINK TL-WA850RE V1 board support + * + * Copyright (C) 2013 Martijn Zilverschoon thefriedzom...@gmail.com + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + */ + +#include linux/gpio.h +#include linux/platform_device.h + +#include asm/mach-ath79/ath79.h +#include asm/mach-ath79/ar71xx_regs.h + +#include common.h +#include dev-eth.h +#include dev-gpio-buttons.h +#include dev-leds-gpio.h +#include dev-m25p80.h +#include dev-wmac.h +#include machtypes.h + +#define TL_WAX50RE_GPIO_LED_LAN20 +#define TL_WAX50RE_GPIO_LED_WLAN13 +#define TL_WAX50RE_GPIO_LED_RE15 +#define TL_WAX50RE_GPIO_LED_SIGNAL10 +#define TL_WAX50RE_GPIO_LED_SIGNAL21 +#define TL_WAX50RE_GPIO_LED_SIGNAL32 +#define TL_WAX50RE_GPIO_LED_SIGNAL43 +#define TL_WAX50RE_GPIO_LED_SIGNAL54 + +#define TL_WAX50RE_GPIO_BTN_RESET17 +#define TL_WAX50RE_GPIO_BTN_WPS16 + +#define TL_WAX50RE_KEYS_POLL_INTERVAL20/* msecs */ +#define TL_WAX50RE_KEYS_DEBOUNCE_INTERVAL (3 * TL_WAX50RE_KEYS_POLL_INTERVAL) + +static const char *tl_wax50re_part_probes[] = { +tp-link, +NULL, +}; + +static struct flash_platform_data tl_wax50re_flash_data = { +.part_probes= tl_wax50re_part_probes, +}; + +static struct gpio_led tl_wa750re_leds_gpio[] __initdata = { +{ +.name= tp-link:orange:lan, +.gpio= TL_WAX50RE_GPIO_LED_LAN, +.active_low= 1, +}, { +.name= tp-link:orange:wlan, +.gpio= TL_WAX50RE_GPIO_LED_WLAN, +.active_low= 1, +}, { +.name= tp-link:orange:re, +.gpio= TL_WAX50RE_GPIO_LED_RE, +.active_low= 1, +}, { +.name= tp-link:orange:signal1, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL1, +.active_low= 1, +}, { +.name= tp-link:orange:signal2, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL2, +.active_low= 1, +}, { +.name= tp-link:orange:signal3, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL3, +.active_low= 1, +}, { +.name= tp-link:orange:signal4, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL4, +.active_low= 1, +}, { +.name= tp-link:orange:signal5, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL5, +.active_low= 1, +}, +}; + +static struct gpio_led tl_wa850re_leds_gpio[] __initdata = { +{ +.name= tp-link:blue:lan, +.gpio= TL_WAX50RE_GPIO_LED_LAN, +.active_low= 1, +}, { +.name= tp-link:blue:wlan, +.gpio= TL_WAX50RE_GPIO_LED_WLAN, +.active_low= 1, +}, { +.name= tp-link:blue:re, +.gpio= TL_WAX50RE_GPIO_LED_RE, +.active_low= 1, +}, { +.name= tp-link:blue:signal1, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL1, +.active_low= 1, +}, { +.name= tp-link:blue:signal2, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL2, +.active_low= 1, +}, { +.name= tp-link:blue:signal3, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL3, +.active_low= 1, +}, { +.name= tp-link:blue:signal4, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL4, +.active_low= 1, +}, { +.name= tp-link:blue:signal5, +.gpio= TL_WAX50RE_GPIO_LED_SIGNAL5, +.active_low= 1, +}, +}; + + +static struct gpio_keys_button tl_wax50re_gpio_keys[] __initdata = { +{ +.desc = Reset button, +.type = EV_KEY, +.code = KEY_RESTART, +.debounce_interval = TL_WAX50RE_KEYS_DEBOUNCE_INTERVAL, +.gpio = TL_WAX50RE_GPIO_BTN_RESET, +