toolchain/gcc: Always build gccgo?
Hello, I'm considering looking into using gccgo to bootstrap the Go compiler in the packages feed. Currently, Go 1.4 (the last version written in C) is first built for host, then it is used to build the newest Go for host. This host Go compiler is then used to build the target Go package and other Go programs. There are some current and future limitations of using Go 1.4 to bootstrap this process: * Go 1.4 doesn't support certain platforms, most notably aarch64. (I have worked around this by allowing the user to use their system Go as bootstrap.) * Upstream will likely start requiring a newer bootstrap version every year[1]. Go 1.20 already requires Go 1.17 to bootstrap. Their plan would have Go 1.22 require Go 1.20, Go 1.24 require Go 1.22, etc. Using gccgo as bootstrap could potentially resolve all of these issues. Before investigating this further, I would like to ask if there are any disadvantages/opposition to always building gccgo? It is currently optional and it would complicate this plan if it stayed optional. [1]: https://github.com/golang/go/issues/54265 Thanks, Jeff ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
[PATCH] attr: add NLA_S8
NLA_S8 is used by newer hostapd versions. Signed-off-by: Nick Hainke --- attr.c | 1 + include/netlink/attr.h | 35 +++ 2 files changed, 36 insertions(+) diff --git a/attr.c b/attr.c index eae91e5..abde67f 100644 --- a/attr.c +++ b/attr.c @@ -437,6 +437,7 @@ static uint16_t nla_attr_minlen[NLA_TYPE_MAX+1] = { [NLA_U32] = sizeof(uint32_t), [NLA_U64] = sizeof(uint64_t), [NLA_STRING]= 1, + [NLA_S8]= sizeof(int8_t), }; static int validate_nla(struct nlattr *nla, int maxtype, diff --git a/include/netlink/attr.h b/include/netlink/attr.h index 3e3047f..3a5d53d 100644 --- a/include/netlink/attr.h +++ b/include/netlink/attr.h @@ -45,6 +45,7 @@ enum { NLA_FLAG, /**< Flag */ NLA_MSECS, /**< Micro seconds (64bit) */ NLA_NESTED, /**< Nested attributes */ + NLA_S8, __NLA_TYPE_MAX, }; @@ -248,6 +249,31 @@ static inline int nla_put_addr(struct nl_msg *msg, int attrtype, struct nl_addr * @name Integer Attributes */ +/** + * Add 8 bit signed integer attribute to netlink message. + * @arg msg Netlink message. + * @arg attrtypeAttribute type. + * @arg value Numeric value to store as payload. + * + * @see nla_put + * @return 0 on success or a negative error code. + */ +static inline int nla_put_s8(struct nl_msg *msg, int attrtype, int8_t value) +{ + return nla_put(msg, attrtype, sizeof(int8_t), &value); +} + +/** + * Return value of 8 bit signed integer attribute. + * @arg nla 8 bit integer attribute + * + * @return Payload as 8 bit integer. + */ +static inline int8_t nla_get_s8(const struct nlattr *nla) +{ + return *(const int8_t *) nla_data(nla); +} + /** * Add 8 bit integer attribute to netlink message. * @arg msgNetlink message. @@ -638,6 +664,15 @@ static inline size_t nla_strlcpy(char *dst, const struct nlattr *nla, size_t dst NLA_PUT(msg, attrtype, sizeof(type), &__tmp); \ } while(0) +/** + * Add 8 bit signed integer attribute to netlink message. + * @arg msgNetlink message. + * @arg attrtype Attribute type. + * @arg value Numeric value. + */ +#define NLA_PUT_S8(msg, attrtype, value) \ + NLA_PUT_TYPE(msg, int8_t, attrtype, value) + /** * Add 8 bit integer attribute to netlink message. * @arg msgNetlink message. -- 2.40.0 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH] attr: add NLA_S8
On Wed, Mar 15, 2023 at 02:37:43PM +0100, Nick Hainke wrote: > NLA_S8 is used by newer hostapd versions. > > Signed-off-by: Nick Hainke What is the target project of this patch? > --- > attr.c | 1 + > include/netlink/attr.h | 35 +++ > 2 files changed, 36 insertions(+) > > diff --git a/attr.c b/attr.c > index eae91e5..abde67f 100644 > --- a/attr.c > +++ b/attr.c > @@ -437,6 +437,7 @@ static uint16_t nla_attr_minlen[NLA_TYPE_MAX+1] = { > [NLA_U32] = sizeof(uint32_t), > [NLA_U64] = sizeof(uint64_t), > [NLA_STRING]= 1, > + [NLA_S8]= sizeof(int8_t), > }; > > static int validate_nla(struct nlattr *nla, int maxtype, > diff --git a/include/netlink/attr.h b/include/netlink/attr.h > index 3e3047f..3a5d53d 100644 > --- a/include/netlink/attr.h > +++ b/include/netlink/attr.h > @@ -45,6 +45,7 @@ enum { > NLA_FLAG, /**< Flag */ > NLA_MSECS, /**< Micro seconds (64bit) */ > NLA_NESTED, /**< Nested attributes */ > + NLA_S8, > __NLA_TYPE_MAX, > }; > > @@ -248,6 +249,31 @@ static inline int nla_put_addr(struct nl_msg *msg, int > attrtype, struct nl_addr > * @name Integer Attributes > */ > > +/** > + * Add 8 bit signed integer attribute to netlink message. > + * @arg msg Netlink message. > + * @arg attrtypeAttribute type. > + * @arg value Numeric value to store as payload. > + * > + * @see nla_put > + * @return 0 on success or a negative error code. > + */ > +static inline int nla_put_s8(struct nl_msg *msg, int attrtype, int8_t value) > +{ > + return nla_put(msg, attrtype, sizeof(int8_t), &value); > +} > + > +/** > + * Return value of 8 bit signed integer attribute. > + * @arg nla 8 bit integer attribute > + * > + * @return Payload as 8 bit integer. > + */ > +static inline int8_t nla_get_s8(const struct nlattr *nla) > +{ > + return *(const int8_t *) nla_data(nla); > +} > + > /** > * Add 8 bit integer attribute to netlink message. > * @arg msg Netlink message. > @@ -638,6 +664,15 @@ static inline size_t nla_strlcpy(char *dst, const struct > nlattr *nla, size_t dst > NLA_PUT(msg, attrtype, sizeof(type), &__tmp); \ > } while(0) > > +/** > + * Add 8 bit signed integer attribute to netlink message. > + * @arg msg Netlink message. > + * @arg attrtype Attribute type. > + * @arg valueNumeric value. > + */ > +#define NLA_PUT_S8(msg, attrtype, value) \ > + NLA_PUT_TYPE(msg, int8_t, attrtype, value) > + > /** > * Add 8 bit integer attribute to netlink message. > * @arg msg Netlink message. > -- > 2.40.0 > > > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel -- Ansuel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH] attr: add NLA_S8
On 3/15/23 07:30, Christian Marangi wrote: On Wed, Mar 15, 2023 at 02:37:43PM +0100, Nick Hainke wrote: NLA_S8 is used by newer hostapd versions. Signed-off-by: Nick Hainke What is the target project of this patch? libnl-tiny ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH uci 1/2] fuzz: Compile using libstd++
Hauke Mehrtens [2023-03-12 22:52:50]: Hi, > What libfuzzer did you use in your container in gitlab? I was using clang builds from apt.llvm.org[1]. > An automatic detection would be nice, but I have no idea how to do it. I found only https://gitlab.kitware.com/cmake/cmake/-/issues/18275 which has some ideas and further pointers, but unfortunately no copy&paste-able solution. Anyway, I wouldn't waste more time on this, simply push the patch as proposed and move on, we're all going to use that same tool container in the end, so it should always provide some common working starting point. 1. https://gitlab.com/ynezz/openwrt-ci/-/blob/master/docker/Dockerfile#L9 Cheers, Petr ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
[PATCH] ipq40xx: add support for Wallystech DR40x9
From: Robert Marko Adds support for the Wallys DR40x9 series boards. They come in IPQ4019 and IPQ4029 versions. IPQ4019/4029 only differ in that that IPQ4029 is the industrial version that is rated to higher temperatures. Specifications are: * CPU: Qualcomm IPQ40x9 (4x ARMv7A Cortex A7) at 716 MHz * RAM: 512 MB * Storage: 2MB of SPI-NOR, 128 MB of parallel NAND * USB 3.0 TypeA port for users * MiniPCI-E with PCI-E 2.0 link * MiniPCI-E for LTE modems with only USB2.0 link * 2 SIM card slots that are selected via GPIO11 * MicroSD card slot * Ethernet: 2x GBe with 24~48V passive POE * SFP port (Does not work, I2C and GPIO's not connected on hardware) * DC Jack * UART header * WLAN: In-SoC 2x2 802.11b/g/n and 2x2 802.11a/n/ac * 4x MMCX connectors for WLAN * Reset button * 8x LED-s Installation instructions: Connect to UART, pins are like this: -> 3.3V | TX | RX | GND Settings are 115200 8n1 Boot initramfs from TFTP: tftpboot 0x8400 openwrt-ipq40xx-generic-wallys_dr40x9-initramfs-fit-uImage.itb bootm Then copy the sysupgrade image to the /tmp folder and execute sysupgrade -n Signed-off-by: Robert Marko [Fixup dts for 2 missing crypto options] [Remove sfp from dts] [Add 'config' partition] [Update to latest wifi board bin files - received from Wallystech R&D] [Extensively tested on DR4029-V04] Signed-off-by: Koen Vandeputte --- package/firmware/ipq-wifi/Makefile| 2 + .../ipq-wifi/board-wallys_dr40x9.qca4019 | Bin 0 -> 24316 bytes .../ipq40xx/base-files/etc/board.d/02_network | 1 + .../base-files/etc/board.d/03_gpio_switches | 3 + .../base-files/lib/upgrade/platform.sh| 3 +- .../arch/arm/boot/dts/qcom-ipq40x9-dr40x9.dts | 425 ++ target/linux/ipq40xx/image/generic.mk | 13 + 7 files changed, 446 insertions(+), 1 deletion(-) create mode 100644 package/firmware/ipq-wifi/board-wallys_dr40x9.qca4019 create mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq40x9-dr40x9.dts diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index 8e7fc4da39..6feac277b3 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -47,6 +47,7 @@ ALLWIFIBOARDS:= \ redmi_ax6 \ sony_ncp-hg100-cellular \ teltonika_rutx \ + wallys_dr40x9 \ xiaomi_ax3600 \ xiaomi_ax9000 \ zte_mf18a \ @@ -147,6 +148,7 @@ $(eval $(call generate-ipq-wifi-package,qxwlan_e2600ac-c2,Qxwlan E2600AC C2)) $(eval $(call generate-ipq-wifi-package,redmi_ax6,Redmi AX6)) $(eval $(call generate-ipq-wifi-package,sony_ncp-hg100-cellular,Sony NCP-HG100/Cellular)) $(eval $(call generate-ipq-wifi-package,teltonika_rutx,Teltonika RUTX)) +$(eval $(call generate-ipq-wifi-package,wallys_dr40x9,Wallys DR40X9)) $(eval $(call generate-ipq-wifi-package,xiaomi_ax3600,Xiaomi AX3600)) $(eval $(call generate-ipq-wifi-package,xiaomi_ax9000,Xiaomi AX9000)) $(eval $(call generate-ipq-wifi-package,zte_mf18a,ZTE MF18A)) diff --git a/package/firmware/ipq-wifi/board-wallys_dr40x9.qca4019 b/package/firmware/ipq-wifi/board-wallys_dr40x9.qca4019 new file mode 100644 index ..f23ecdfabbb90dc8d293676c4449a5fa9e90e721 GIT binary patch literal 24316 zcmeHPdr(tX8b1jj%4*?;fV{kf@JeV1A*2{2@{BY<3KkU!un1IR1@j)RX z0<|DS&^joOrihHi2gGV^?Tj+*&i=8pf3%%_bZ6FG+tKc{GrNm>?hSzi5={iA0qz&h zIp6v2`Of*yFDJ>p_x!kTCdP-x?-Ye|QbQBc<1>UnE|&u+C1F?&Kr~E+ii)iT#f7Xw zxis{xVrglpbnjLUUMoCUP`($dayhKZf^uoWfkRt&7nGFLRD=pMc$};#ISKmHU|+N_ zk%&YBc6Ah9Cf09AFU;}*aB_5k3IJ39UWvdp(;1UV$GQR_A|m3aCr?NM>KgFNUrxp9 zlO62fCFS;9zZTs{;29KnY`Qkx>f+qi`nof�%|#kfeL*k60U;wiCa!dygd@C>95wMV zbdcc=eXx__>{LDjcGp@{nw`PtOgjV{$M=F-4U`u&F+NN<7~^5Owh~Y>J+tLyz1UPx z6}2xo(1g*lgps%q&5mgwpV^i|2mIJlh zq^umbn9uubK1e^ouGsX}jlrtUH=07Le2PX-7FWmYV`d^zH(@)WjGf~ebE!|-A!>ZJ z%DedbN0mKcb-typ`O6C>B3eBH4vy=7v%wj0b=&Cay-ELtZ%|_2vCk9O4?H2lGBTM= z!g4!1__MrbS{yIeXK_64zq6f-1_b!Szd*X5pFiD?PS3PoJLjB49}-b6Ap%)h8EJI7 zFC5|LpP&3NHHDo4@tJ}CI@^DL_|x}>Hmu>M^^RnF`~Sgq&hQPJ^?&;G@grT^B@7qu zx^xJhk3g-ou6YPcm@zVv$I~UKa5-#NNF-KWu*QRZaPeLiN5dyDCqqyKiAUp+a5Nk# zRUEE6`d)Ke$9x3{rsbAZ3I(OGDGw-!7wX0K61$)-hzFX0Ca@D8Bp@kh3Ohv{hsGfy zl#6oN+y`7_3%Z59Ma)4t2p^pZLVdxsIunyXFcTG_&U=3>fy5Pcee8;Oquy+9aUz=d zI1x!jQ`xEF2sGkx1QLx#v!lhjH^DH+htfg66Fdf%}6X|tzJMzVe5sFyN0>`(%-sr{ut}@vS?$h;BSqtVz zv9z7}9&GZ6IJa0e`VatER;zkPAI>e|J#Xx$H=D(>O%2{dkDR%iPH0x6VUvr}AgDNi z0N3xC^#Fu}Ajr@0g>0YzNQI)qgq1Cna6qT~_|WG_JG9TY(&@Qv0YJbffu9Zn(C&zk z;&=cs)*?Uv1oruB5I}Y#JLSUC#RcDVG>C*yR~iD(hSyWcAf!>T7SS`AJ4io*JaZh;QOFrN`rnU6yF0CCp74HLGk@hF}Fd#18O~pW<6Fuy31x6 ztgJvS*)vYd%qwa>bFNQwP5Xs8ePy9CI~(d074boR*gj$^5KajZF)C(@#X`WF;voW5 zz!r#ki*|iIJE}FBJJ%gSDM{QUB#jcujYMK7*=MoW{66%*bNX_*T;f>ExetFK=iWg> zB0<7^bqme_ck6|S*PdBR#diWnXz>8!+|#CChNED*agU3@^`}y)084stcXtO^(uV8Z)kO)L!aW)Z1<}_wDZW?!&WDnrT1R{7;>HHrH-k@9v(Q?CxE^-k1(!+{T*P zs@%#YCT+Gv)2NIr+!}9odBv2hd1_MK6F!&=GJRGwF zj|KL?dE6evZgl{No1KH>;)Fo-LLfjOu<8()<;IQI+ErkVB}7He@dQwxmX-0Q9| zZ_Qq4u0qw4`zMBMd!3F$rbBDVb8PJz^6fEwft33|aTa!?d;FpC6~=7M)aS*}_RWa4
[PATCH] ath79: Add support for Ubiquiti NanoBeam AC Gen2 XC
The Ubiquiti NanoBeam AC Gen2 XC (NBE-5AC-Gen2) is an outdoor 802.11ac CPE with a waterproof casing (ultrasonically welded) and bulb shaped. It's the same board as Gen1 but with a small antenna routed out of the SoC and calibration data for this management radio in the "art" partition. Hardware: SoC:Qualcomm Atheros QCA9558 CPU:MIPS 74Kc V5.0 720 MHz, 1 core RAM:128 MB DDR2 Flash: 16 MB SPI-NOR, MX25L12805D Ethernet: 1x GbE WiFi 5 GHz: Qualcomm Atheros QCA988X WiFi 2.4 GHz: SoC (management radio) Internal antenna 1: 19 dBi planar (5 GHz) Internal antenna 2: 2 dBi PCB, connected via UFL (SoC) Buttons:1x reset LEDs: 1x power, 1x Ethernet, 4x RSSI, all blue PSU:24 Vdc passive PoE Installation from stock airOS firmware: - Follow instructions for XC-type Ubiquiti devices on OpenWrt wiki at https://openwrt.org/toh/ubiquiti/common Back to stock firmware: - Follow instructions for Ubiquiti recovery via TFTP at OpenWrt wiki. Signed-off-by: Daniel González Cabanelas --- .../dts/qca9558_ubnt_nanobeam-ac-gen2-xc.dts | 17 +++ .../ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dts | 105 + .../dts/qca9558_ubnt_nanobeam-ac-xc.dtsi | 107 ++ .../generic/base-files/etc/board.d/01_leds| 1 + .../generic/base-files/etc/board.d/02_network | 2 + .../etc/hotplug.d/firmware/11-ath10k-caldata | 1 + target/linux/ath79/image/generic-ubnt.mk | 10 ++ 7 files changed, 141 insertions(+), 102 deletions(-) create mode 100644 target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-gen2-xc.dts create mode 100644 target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dtsi diff --git a/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-gen2-xc.dts b/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-gen2-xc.dts new file mode 100644 index 00..629b5bfe0a --- /dev/null +++ b/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-gen2-xc.dts @@ -0,0 +1,17 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Device Tree file for Ubiquiti Nanobeam NBE-5AC-Gen2 (XC) + */ + +#include "qca9558_ubnt_nanobeam-ac-xc.dtsi" + +/ { + compatible = "ubnt,nanobeam-ac-gen2-xc", "ubnt,xc", "qca,qca9558"; + model = "Ubiquiti NanoBeam AC Gen2 (XC)"; +}; + +&wmac { + status = "okay"; + + mtd-cal-data = <&art 0x1000>; +}; diff --git a/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dts b/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dts index 91675ff615..898c249154 100644 --- a/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dts +++ b/target/linux/ath79/dts/qca9558_ubnt_nanobeam-ac-xc.dts @@ -1,110 +1,11 @@ -// SPDX-License-Identifier: GPL-2.0-only +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Device Tree file for Ubiquiti Nanobeam NBE-5AC-19 (XC) - * - * Copyright (C) 2022 Daniel González Cabanelas - * based on device tree from qca9558_ubnt_powerbeam-5ac-500.dts */ - -#include "qca955x_ubnt_xc.dtsi" + +#include "qca9558_ubnt_nanobeam-ac-xc.dtsi" / { compatible = "ubnt,nanobeam-ac-xc", "ubnt,xc", "qca,qca9558"; model = "Ubiquiti NanoBeam AC Gen1 (XC)"; - - aliases { - led-boot = &led_power; - led-failsafe = &led_power; - led-running = &led_power; - led-upgrade = &led_power; - }; - - keys { - compatible = "gpio-keys"; - - reset { - label = "Reset button"; - linux,code = ; - gpios = <&gpio 19 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - }; - - led_spi { - compatible = "spi-gpio"; - #address-cells = <1>; - #size-cells = <0>; - - sck-gpios = <&gpio 0 GPIO_ACTIVE_HIGH>; - mosi-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; - cs-gpios = <&gpio 3 GPIO_ACTIVE_HIGH>; - num-chipselects = <1>; - - led_gpio: led_gpio@0 { - compatible = "fairchild,74hc595"; - reg = <0>; - gpio-controller; - #gpio-cells = <2>; - registers-number = <1>; - spi-max-frequency = <1000>; - enable-gpios = <&gpio 18 GPIO_ACTIVE_LOW>; - }; - }; - - leds { - compatible = "gpio-leds"; - - rssi0 { - label = "blue:rssi0"; - gpios = <&led_gpio 0 GPIO_ACTIVE_LOW>; - }; - rssi1 { - label = "blue:rssi1"; - gpios = <&led_gpio 1 GPIO_ACTIVE_LOW>; - }; - rssi2 { - label = "blue:rssi2"; - gpios = <&led_gpio
netifd Call Flow - WiFi
Hi All, We are trying netifd to enable wlan. We have configured uci to set wlan interface IP statically. We are seeing when we do network reload, wifi interface is going down and coming up. Can we get flow how does netifd know that wifi interface is up and where it adds this IP to the interface? This will help us in checking why wifi interface is going down and coming up on doing network reload. Thanks, Ravi ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
RE: netifd Call Flow - WiFi
I think wifi interface going up and coming down is expected. Can anyone help with flow how does netifd know that wifi interface is up and where it adds this IP to the interface? Thanks, Ravi -Original Message- From: openwrt-devel On Behalf Of Ravi Paluri (QUIC) Sent: Thursday, March 16, 2023 6:37 AM To: openwrt-devel@lists.openwrt.org Subject: netifd Call Flow - WiFi Hi All, We are trying netifd to enable wlan. We have configured uci to set wlan interface IP statically. We are seeing when we do network reload, wifi interface is going down and coming up. Can we get flow how does netifd know that wifi interface is up and where it adds this IP to the interface? This will help us in checking why wifi interface is going down and coming up on doing network reload. Thanks, Ravi ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel