Re: [OpenWrt-Devel] [PATCH 2/3] lantiq: unify dsl led names
Hi, we had a discussion yesterday with a few people and agreed to cleanup the led names on for the lantiq target to match the format expected by the kernel. i like this patch however we need to do the led renaming first i guess. John On 17/12/2015 00:26, Mathias Kresin wrote: > Signed-off-by: Mathias Kresin > --- > target/linux/lantiq/dts/ARV4510PW.dts | 2 +- > target/linux/lantiq/dts/ARV4520PW.dts | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/target/linux/lantiq/dts/ARV4510PW.dts > b/target/linux/lantiq/dts/ARV4510PW.dts > index 4772495..67c 100644 > --- a/target/linux/lantiq/dts/ARV4510PW.dts > +++ b/target/linux/lantiq/dts/ARV4510PW.dts > @@ -168,7 +168,7 @@ > gpios = <&gpios 15 0>; > }; > adsl { > - label = "adsl"; > + label = "dsl"; > gpios = <&gpios 14 0>; > }; > internet { > diff --git a/target/linux/lantiq/dts/ARV4520PW.dts > b/target/linux/lantiq/dts/ARV4520PW.dts > index 8a5b797..3aa06a9 100644 > --- a/target/linux/lantiq/dts/ARV4520PW.dts > +++ b/target/linux/lantiq/dts/ARV4520PW.dts > @@ -145,7 +145,7 @@ > gpios = <&gpio 3 1>; > }; > adsl { > - label = "adsl"; > + label = "dsl"; > gpios = <&gpio 4 1>; > }; > internet { > ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Contributing to OpenWrt
Also worth noting is the 3rd party packages feed over at https://github.com/openwrt/packages This could be a good place to get started hacking on code for the OpenWrt project. On Wed, Dec 16, 2015 at 11:47 PM Rafał Miłecki wrote: > On 17 December 2015 at 01:28, Mohammed Billoo > wrote: > > I'm interesting in contributing to OpenWrt by initially working on bug > > fixes. However, it wasn't obvious from the Wiki what is the correct > process > > in asking to be assigned to work on a bug, testing a fix, and submitting > the > > fix for review. Can anyone point me in the right direction? > > You don't need to have any bug officially assigned to you. Just work > on some fix and send it as explained in: > https://dev.openwrt.org/wiki/SubmittingPatches > > -- > Rafał > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel > ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Contributing to OpenWrt
On 17 December 2015 at 01:28, Mohammed Billoo wrote: > I'm interesting in contributing to OpenWrt by initially working on bug > fixes. However, it wasn't obvious from the Wiki what is the correct process > in asking to be assigned to work on a bug, testing a fix, and submitting the > fix for review. Can anyone point me in the right direction? You don't need to have any bug officially assigned to you. Just work on some fix and send it as explained in: https://dev.openwrt.org/wiki/SubmittingPatches -- Rafał ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] network/services/lldpd: Fix missing dependency when using JSON
From: Daniel Dickinson Using the JSON output option depends on json library so add select json-c library when JSON output is selected. Signed-off-by: Daniel Dickinson --- package/network/services/lldpd/Config.in | 1 + 1 file changed, 1 insertion(+) diff --git a/package/network/services/lldpd/Config.in b/package/network/services/lldpd/Config.in index 93d84e2..72150e7 100644 --- a/package/network/services/lldpd/Config.in +++ b/package/network/services/lldpd/Config.in @@ -49,6 +49,7 @@ config LLDPD_WITH_CUSTOM config LLDPD_WITH_JSON bool prompt "Enable JSON output for the LLDP Command-Line Interface" + select PACKAGE_json-c default n endmenu -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] procd base-files: For hotplug expose DEVNAME as variable to hotplug scripts
On 17 December 2015 at 06:21, wrote: > From: Daniel Dickinson > > Without exposing DEVNAME to scripts in /etc/hotplug.d, > they have no means of determining the actual device file > path (in most cases), which is counter-productive for > doing things like settings permissions on a device file > based on things like vendor and product id for usb, or > other manipulations that don't fit the standard json. > > Signed-off-by: Daniel Dickinson > --- > package/base-files/files/sbin/hotplug-call | 1 + > package/system/procd/files/hotplug.json| 4 ++-- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/package/base-files/files/sbin/hotplug-call > b/package/base-files/files/sbin/hotplug-call > index 743871a..d79ac9f 100755 > --- a/package/base-files/files/sbin/hotplug-call > +++ b/package/base-files/files/sbin/hotplug-call > @@ -2,6 +2,7 @@ > # Copyright (C) 2006-2010 OpenWrt.org > > export HOTPLUG_TYPE="$1" > +export DEVNAME="$2" DEVNAME should already be available as an environment variable. yousong > > . /lib/functions.sh > > diff --git a/package/system/procd/files/hotplug.json > b/package/system/procd/files/hotplug.json > index 27b4836..0529e39 100644 > --- a/package/system/procd/files/hotplug.json > +++ b/package/system/procd/files/hotplug.json > @@ -72,7 +72,7 @@ > [ "eq", "SUBSYSTEM", > [ "net", "input", "usb", "usbmisc", "ieee1394", > "block", "atm", "zaptel", "tty", "button" ] > ], > - [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ] > + [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%", "%DEVNAME%" ] > ], > [ "if", > [ "and", > @@ -81,6 +81,6 @@ > [ "^ttyUSB", "^ttyACM" ] > ], > ], > - [ "exec", "/sbin/hotplug-call", "tty" ] > + [ "exec", "/sbin/hotplug-call", "tty", "%DEVNAME%" ] > ], > ] > -- > 2.4.3 > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH 1/9] ar71xx: PowerCloud CAP324 kernel support To: openwrt-devel@lists.openwrt.org
On 12/09/2015 09:47 PM, Felix Fietkau wrote: > On 2015-12-09 21:02, Daniel Dickinson wrote: >>> Seems like we've been accumulating separate patches for adding >>> individual boards again, I'm going to clean up that stuff later. When >>> you've fixed the issues that I've pointed out already, please also >>> restructure your patches to add the mach files individually, then a >>> commit that integrates your boards into >>> 700-MIPS-ath79-openwrt-machines.patch, then the image build integration >>> patches. >> >> >> Sorry, I'm not 100% sure I follow, so let me make sure I'm understanding: >> >> You no longer want to have individual patches in >> target/linux/xxx/patches/ for each board, so the commit series should be to >> >> do each board separately in terms of commit, but which each affect >> 700-MIPS-ath79-openwrt-machines.patch rather than being in individual >> patches. >> >> That is the adding mach-xxx.c becomes part of 700-MIPS-ath79-... ? > mach-xxx.c should go to files/arch/mips/ath79/ instead of patches/ > >> Or should the mach file be added somewhere else (e.g. somewhere in the >> target/linux/ar71xx tree and referenced by patch 700-MIPS-... for the >> KConfig and Makefile and so on? >> >> >> It would be perhaps useful to have some documentation on dev.openwrt.org >> pointing to expected board patch guidelines. > This mess really is ar71xx specific. On targets that have been converted > to device tree (e.g. ramips), things are a lot easier and cleaner. > Maybe some day ar71xx will be converted to run device tree too, but I'm > not sure if anybody's actively working on this. > > - Felix For the record: I'm planning to work on device trees for ar71xx sometime next year (and getting as much of it as possible to the upstream kernel in the process). Matthias 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] Contributing to OpenWrt
Hi, I'm interesting in contributing to OpenWrt by initially working on bug fixes. However, it wasn't obvious from the Wiki what is the correct process in asking to be assigned to work on a bug, testing a fix, and submitting the fix for review. Can anyone point me in the right direction? -- Mohammed Billoo ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 3/3] lantiq: let dsl_notify.sh exclusive handle the dsl led
dsl_control (dsl_notify.sh) is the only process which is aware of the state of the atm/ptm interface. Use the dsl led exclusive for the dsl line state. All touched boards have a distinct internet led set, which is perfect fine for indicating the ppp status. No need to add another netdev trigger to the ptm/atm device. Signed-off-by: Mathias Kresin --- target/linux/lantiq/base-files/etc/board.d/01_leds | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/target/linux/lantiq/base-files/etc/board.d/01_leds b/target/linux/lantiq/base-files/etc/board.d/01_leds index 8422ec0..9787d2d 100755 --- a/target/linux/lantiq/base-files/etc/board.d/01_leds +++ b/target/linux/lantiq/base-files/etc/board.d/01_leds @@ -43,7 +43,6 @@ VGV7510KW22) ucidef_set_led_default "power" "power" "power" "1" ucidef_set_led_default "power2" "power2" "power2" "0" ucidef_set_led_wlan "wifi" "wifi" "wifi" "phy0radio" - ucidef_set_led_netdev "dsl" "dsl" "dsl" "nas0" ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan" ;; VGV7519) @@ -57,7 +56,6 @@ P2812HNUF*) ucidef_set_led_default "power" "power" "power" "0" ucidef_set_led_default "power2" "power2" "power2" "1" ucidef_set_led_wlan "wireless_green" "wireless_green" "wireless_green" "phy0radio" - ucidef_set_led_netdev "dsl" "dsl" "dsl" "nas0" ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan" ;; ARV7519RW22) @@ -69,7 +67,7 @@ ARV8539PW22) ucidef_set_led_default "power" "power" "soc:green:power" "1" ucidef_set_led_default "power2" "power2" "soc:red:power" "0" ucidef_set_led_wlan "wifi" "wifi" "soc:green:wireless" "phy0tpt" -ucidef_set_led_netdev "dsl" "dsl" "soc:green:dsl" "nas0" +ucidef_set_led_default "dsl" "dsl" "soc:green:dsl" "0" ucidef_set_led_netdev "online" "online" "soc:green:online" "pppoe-wan" ;; *) -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 2/3] lantiq: unify dsl led names
Signed-off-by: Mathias Kresin --- target/linux/lantiq/dts/ARV4510PW.dts | 2 +- target/linux/lantiq/dts/ARV4520PW.dts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/target/linux/lantiq/dts/ARV4510PW.dts b/target/linux/lantiq/dts/ARV4510PW.dts index 4772495..67c 100644 --- a/target/linux/lantiq/dts/ARV4510PW.dts +++ b/target/linux/lantiq/dts/ARV4510PW.dts @@ -168,7 +168,7 @@ gpios = <&gpios 15 0>; }; adsl { - label = "adsl"; + label = "dsl"; gpios = <&gpios 14 0>; }; internet { diff --git a/target/linux/lantiq/dts/ARV4520PW.dts b/target/linux/lantiq/dts/ARV4520PW.dts index 8a5b797..3aa06a9 100644 --- a/target/linux/lantiq/dts/ARV4520PW.dts +++ b/target/linux/lantiq/dts/ARV4520PW.dts @@ -145,7 +145,7 @@ gpios = <&gpio 3 1>; }; adsl { - label = "adsl"; + label = "dsl"; gpios = <&gpio 4 1>; }; internet { -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 1/3] lantiq: use the configured dsl led instead of a hardcoded one
Signed-off-by: Mathias Kresin --- target/linux/lantiq/base-files/etc/board.d/01_leds | 1 + target/linux/lantiq/base-files/sbin/dsl_notify.sh | 14 +++--- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/target/linux/lantiq/base-files/etc/board.d/01_leds b/target/linux/lantiq/base-files/etc/board.d/01_leds index b5801ca..8422ec0 100755 --- a/target/linux/lantiq/base-files/etc/board.d/01_leds +++ b/target/linux/lantiq/base-files/etc/board.d/01_leds @@ -12,6 +12,7 @@ board_config_update [ -e "/sys/class/leds/wifi" ] && ucidef_set_led_wlan "wifi" "wifi" "wifi" "phy0tpt" [ -e "/sys/class/leds/usb" ] && ucidef_set_led_usbdev "usb" "usb" "usb" "1-1" [ -e "/sys/class/leds/usb2" ] && ucidef_set_led_usbdev "usb2" "usb2" "usb2" "2-1" +[ -e "/sys/class/leds/dsl" ] && ucidef_set_led_default "dsl" "dsl" "dsl" "0" [ -e "/sys/class/leds/internet" ] && ucidef_set_led_netdev "internet" "internet" "internet" "pppoe-wan" board=$(lantiq_board_name) diff --git a/target/linux/lantiq/base-files/sbin/dsl_notify.sh b/target/linux/lantiq/base-files/sbin/dsl_notify.sh index b514e25..01d0488 100755 --- a/target/linux/lantiq/base-files/sbin/dsl_notify.sh +++ b/target/linux/lantiq/base-files/sbin/dsl_notify.sh @@ -16,15 +16,15 @@ include /lib/network scan_interfaces -local default +local led config_load system -config_get default led_adsl default -if [ "$default" != 1 ]; then +config_get led led_dsl sysfs +if [ -n "$led" ]; then case "$DSL_INTERFACE_STATUS" in - "HANDSHAKE") led_timer dsl 500 500;; - "TRAINING") led_timer dsl 200 200;; - "UP") led_on dsl;; - *)led_off dsl + "HANDSHAKE") led_timer $led 500 500;; + "TRAINING") led_timer $led 200 200;; + "UP") led_on $led;; + *)led_off $led esac fi -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH 5/5] lantiq: Configure LED polarity for TDW8970.
On 16 December 2015 22:12:15 CET, Mathias Kresin wrote: >The TDW8980 2.4 GHz Wireless LED is active high as well and your patch >fixed the inverse lighting. > >Would you please move the definition to the dtsi! Sure, I will update the patches then. Thanks for testing! ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] lantiq: Add default LED configuration for TDW89X0.
On 16 December 2015 23:13:16 CET, Mathias Kresin wrote: >This look unnecessary to me. > >The default internet led configuration a few lines above, already adds >an internet led with exactly the same values. > >The same applies to the wifi led. I can not yet explain why, but the >ath9k-phy0 led has the phy0tpt trigger configured without having the >wifi led defined in 01_led on my TDW8980. Uh, okay. Actually I've just resurrected my old CC trunk patches from some months ago (I forgot to send them to the list before, sorry about that...), adapted them for current trunk and sent them to the ml, so maybe trunk takes care of it already. ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] python question
Hi Everyone, My question might not be for this group but i was wondering of someone can throw a quick tip here. I am trying to compile Python-dbus in my Openwrt build environment. When I run make It returns error: checking for Python headers in /usr and /usr. -I/usr/incldue/python2.7Configure: Error Couldn't find Python header. How could I get the python header in proper place? Should they be in staging directory?Should I install another package in advance? Thanks for the help,Farid___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] lantiq: add the TDW8980 5GHz led
Still unused, but u-boot doesn't take care of the led, which results in a permanent switched on 5GHz LED. Signed-off-by: Mathias Kresin --- target/linux/lantiq/dts/TDW8980.dts | 7 +++ 1 file changed, 7 insertions(+) diff --git a/target/linux/lantiq/dts/TDW8980.dts b/target/linux/lantiq/dts/TDW8980.dts index ad3d182..ca8fc80 100644 --- a/target/linux/lantiq/dts/TDW8980.dts +++ b/target/linux/lantiq/dts/TDW8980.dts @@ -28,4 +28,11 @@ ath9k_eep { ath,pci-slot = <0>; }; + + gpio-leds { + wifi2 { + label = "wifi2"; + gpios = <&gpio 24 1>; + }; + }; }; -- 1.9.1 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] base-files: For sysfixtime use hwlock of RTC available
From: Daniel Dickinson On systems that have an RTC prefer it to the file-based time fixup (i.e. use hwclock when there is a permanent clock instead of the faked up time logic that is needed when there is not RTC). --- package/base-files/files/etc/init.d/sysfixtime | 23 --- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/package/base-files/files/etc/init.d/sysfixtime b/package/base-files/files/etc/init.d/sysfixtime index 4010e06..e1e6724 100755 --- a/package/base-files/files/etc/init.d/sysfixtime +++ b/package/base-files/files/etc/init.d/sysfixtime @@ -2,10 +2,27 @@ # Copyright (C) 2013-2014 OpenWrt.org START=00 +STOP=90 boot() { - local curtime="$(date +%s)" - local maxtime="$(find /etc -type f -exec date -r {} +%s \; | sort -nr | head -n1)" - [ $curtime -lt $maxtime ] && date -s @$maxtime + if [ ! -e /dev/rtc ]; then + local curtime="$(date +%s)" + local maxtime="$(find /etc -type f -exec date -r {} +%s \; | sort -nr | head -n1)" + [ $curtime -lt $maxtime ] && date -s @$maxtime + else + hwclock -s + fi +} + +start() { + if [ -e /dev/rtc ]; then + hwclock -s + fi +} + +stop() { + if [ -e /dev/rtc ]; then + hwclock -w + fi } -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] package/utils/busybox: Jail sysntpd
From: Daniel Dickinson Note that not all of procfs sysfs log and ubus may be required for actual operation, they are just what strace reveals attempting to make accesses. Signed-off-by: Daniel Dickinson --- package/utils/busybox/files/sysntpd | 4 1 file changed, 4 insertions(+) diff --git a/package/utils/busybox/files/sysntpd b/package/utils/busybox/files/sysntpd index f73bb83..e61c9fc 100755 --- a/package/utils/busybox/files/sysntpd +++ b/package/utils/busybox/files/sysntpd @@ -31,7 +31,11 @@ start_service() { for peer in $server; do procd_append_param command -p $peer done + touch /var/run/ntpd.pid procd_set_param respawn + procd_add_jail sysntpd procfs sysfs log ubus + procd_add_jail_mount "$HOTPLUG_SCRIPT" /etc/resolv.conf /tmp/resolv.conf /etc/hosts /etc/TZ + procd_add_jail_mount_rw /var/run/ntpd.pid procd_close_instance } -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] procd base-files: For hotplug expose DEVNAME as variable to hotplug scripts
From: Daniel Dickinson Without exposing DEVNAME to scripts in /etc/hotplug.d, they have no means of determining the actual device file path (in most cases), which is counter-productive for doing things like settings permissions on a device file based on things like vendor and product id for usb, or other manipulations that don't fit the standard json. Signed-off-by: Daniel Dickinson --- package/base-files/files/sbin/hotplug-call | 1 + package/system/procd/files/hotplug.json| 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package/base-files/files/sbin/hotplug-call b/package/base-files/files/sbin/hotplug-call index 743871a..d79ac9f 100755 --- a/package/base-files/files/sbin/hotplug-call +++ b/package/base-files/files/sbin/hotplug-call @@ -2,6 +2,7 @@ # Copyright (C) 2006-2010 OpenWrt.org export HOTPLUG_TYPE="$1" +export DEVNAME="$2" . /lib/functions.sh diff --git a/package/system/procd/files/hotplug.json b/package/system/procd/files/hotplug.json index 27b4836..0529e39 100644 --- a/package/system/procd/files/hotplug.json +++ b/package/system/procd/files/hotplug.json @@ -72,7 +72,7 @@ [ "eq", "SUBSYSTEM", [ "net", "input", "usb", "usbmisc", "ieee1394", "block", "atm", "zaptel", "tty", "button" ] ], - [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ] + [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%", "%DEVNAME%" ] ], [ "if", [ "and", @@ -81,6 +81,6 @@ [ "^ttyUSB", "^ttyACM" ] ], ], - [ "exec", "/sbin/hotplug-call", "tty" ] + [ "exec", "/sbin/hotplug-call", "tty", "%DEVNAME%" ] ], ] -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] lantiq: Add default LED configuration for TDW89X0.
Am 16.12.2015 um 05:42 schrieb Vittorio G (VittGam): Signed-off-by: Vittorio Gambaletta --- --- a/target/linux/lantiq/base-files/etc/board.d/01_leds +++ b/target/linux/lantiq/base-files/etc/board.d/01_leds @@ -38,6 +38,10 @@ BTHOMEHUBV5A) ucidef_set_led_netdev "internet" "internet" "soc:blue:broadband" "pppoa-wan" ucidef_set_led_default "dimmed" "dimmed" "dimmed" "0" ;; +TDW8970|TDW8980) + ucidef_set_led_wlan "wifi" "wifi" "ath9k-phy0" "phy0tpt" + ucidef_set_led_netdev "internet" "internet" "internet" "pppoe-wan" + ;; VGV7510KW22) ucidef_set_led_default "power" "power" "power" "1" ucidef_set_led_default "power2" "power2" "power2" "0" ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel This look unnecessary to me. The default internet led configuration a few lines above, already adds an internet led with exactly the same values. The same applies to the wifi led. I can not yet explain why, but the ath9k-phy0 led has the phy0tpt trigger configured without having the wifi led defined in 01_led on my TDW8980. ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] package/kernel: Build it87 hardware monitor module
From: Daniel Dickinson Fixed typo in description define. This is easily added with no side effects, not sure why it was missing - oversight? Signed-off-by: Daniel Dickinson --- package/kernel/linux/modules/hwmon.mk | 14 ++ 1 file changed, 14 insertions(+) diff --git a/package/kernel/linux/modules/hwmon.mk b/package/kernel/linux/modules/hwmon.mk index ca0ff66..97bef4d 100644 --- a/package/kernel/linux/modules/hwmon.mk +++ b/package/kernel/linux/modules/hwmon.mk @@ -93,6 +93,20 @@ endef $(eval $(call KernelPackage,hwmon-ina2xx)) +define KernelPackage/hwmon-it87 + TITLE:=it87 monitoring support + KCONFIG:=CONFIG_SENSORS_IT87 + FILES:=$(LINUX_DIR)/drivers/hwmon/it87.ko + AUTOLOAD:=$(call AutoProbe,it87) + $(call AddDepends/hwmon,+kmod-i2c-core +kmod-hwmod-vid) +endef + +define KernelPackage/hwmon-it87/description + Kernel module for it87 thermal and voltage monitor chip +endef + +$(eval $(call KernelPackage,hwmon-it87)) + define KernelPackage/hwmon-lm63 TITLE:=LM63/64 monitoring support KCONFIG:=CONFIG_SENSORS_LM63 -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] brcm63xx: add support for Huawei HG622
Signed-off-by: Álvaro Fernández Rojas --- .../linux/brcm63xx/base-files/etc/board.d/01_leds | 3 + .../brcm63xx/base-files/etc/board.d/02_network | 1 + .../etc/hotplug.d/firmware/10-rt2x00-eeprom| 1 + .../base-files/etc/uci-defaults/09_fix_crc | 1 + target/linux/brcm63xx/base-files/lib/brcm63xx.sh | 3 + .../lib/preinit/05_init_interfaces_brcm63xx| 1 + target/linux/brcm63xx/dts/hg622.dts| 74 ++ target/linux/brcm63xx/image/Makefile | 2 + .../brcm63xx/patches-4.1/574-board_HG622.patch | 72 + .../brcm63xx/patches-4.4/574-board_HG622.patch | 72 + target/linux/brcm63xx/profiles/huawei.mk | 10 +++ 11 files changed, 240 insertions(+) create mode 100644 target/linux/brcm63xx/dts/hg622.dts create mode 100644 target/linux/brcm63xx/patches-4.1/574-board_HG622.patch create mode 100644 target/linux/brcm63xx/patches-4.4/574-board_HG622.patch diff --git a/target/linux/brcm63xx/base-files/etc/board.d/01_leds b/target/linux/brcm63xx/base-files/etc/board.d/01_leds index 2697a56..8339254 100755 --- a/target/linux/brcm63xx/base-files/etc/board.d/01_leds +++ b/target/linux/brcm63xx/base-files/etc/board.d/01_leds @@ -39,6 +39,9 @@ hg556a_*) ucidef_set_led_netdev "lan" "LAN" "HW556:red:dsl" "eth0" ucidef_set_led_usbdev "usb" "USB" "HW556:red:hspa" "1-2" ;; +hg622) + ucidef_set_led_usbdev "usb" "USB" "HG622:green:usb" "1-2" + ;; hg655b) ucidef_set_led_usbdev "usb" "USB" "HW65x:green:usb" "1-2" ;; diff --git a/target/linux/brcm63xx/base-files/etc/board.d/02_network b/target/linux/brcm63xx/base-files/etc/board.d/02_network index c01aba8..f96da08 100755 --- a/target/linux/brcm63xx/base-files/etc/board.d/02_network +++ b/target/linux/brcm63xx/base-files/etc/board.d/02_network @@ -86,6 +86,7 @@ dsl-274xb-f |\ dsl-275xb-d |\ fast2504n |\ fast2704v2 |\ +hg622 |\ hg655b |\ p870hw-51a_v2 |\ r5010un_v2 |\ diff --git a/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom b/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom index 4347485..21c510f 100644 --- a/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom +++ b/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom @@ -34,6 +34,7 @@ case "$FIRMWARE" in hg556a_c) rt2x00_eeprom_extract "cal_data" 130560 512 ;; + hg622 |\ hg655b) rt2x00_eeprom_extract "cal_data" 0 512 ;; diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc index bc9ae21..70dbe2a 100644 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc @@ -21,6 +21,7 @@ case "$(brcm63xx_board_name)" in cpva642 |\ ct-6373 |\ dsl-274xb-f |\ + hg622 |\ magic |\ p870hw-51a_v2 |\ r5010un_v2 |\ diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh index 7dc57fd..a2d6519 100755 --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh @@ -159,6 +159,9 @@ brcm63xx_dt_detect() { "Huawei EchoLife HG556a (version C)") board_name="hg556a_c" ;; + "Huawei HG622") + board_name="hg622" + ;; "Huawei HG655b") board_name="hg655b" ;; diff --git a/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx b/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx index abf5b89..7e4dfcb 100644 --- a/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx +++ b/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx @@ -23,6 +23,7 @@ set_preinit_iface() { hg553 |\ hg556a_* |\ hg520 |\ + hg622 |\ neufbox6 |\ p870hw-51a_v2 |\ rta770bw |\ diff --git a/target/linux/brcm63xx/dts/hg622.dts b/target/linux/brcm63xx/dts/hg622.dts new file mode 100644 index 000..6cfc067 --- /dev/null +++ b/target/linux/brcm63xx/dts/hg622.dts @@ -0,0 +1,74 @@ +/dts-v1/; + +#include "bcm6368.dtsi" + +#include + +/ { + model = "Huawei HG622"; + compatible = "huawei,hg622", "brcm,bcm6368"; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + debounce-interval = <60>; + + reset { + label = "reset"; + gpios = <&gpio1 2 1>; + linux,code = ; + }; + }; + + gpio-leds { + co
Re: [OpenWrt-Devel] [PATCH 5/5] lantiq: Configure LED polarity for TDW8970.
Am 16.12.2015 um 05:42 schrieb Vittorio G (VittGam): This patch configures the correct ath9k WLAN LED polarity for the TDW8970. Signed-off-by: Vittorio Gambaletta --- The TDW8970 LED is active high, but I'm not sure about the TDW8980 as I don't have one. If the TDW8980 LED is active high as well, this can be added to TDW89X0.dtsi instead of TDW8970.dts. The TDW8980 2.4 GHz Wireless LED is active high as well and your patch fixed the inverse lighting. Would you please move the definition to the dtsi! --- a/target/linux/lantiq/dts/TDW8970.dts +++ b/target/linux/lantiq/dts/TDW8970.dts @@ -4,4 +4,8 @@ / { model = "TDW8970 - TP-LINK TD-W8970"; + + ath9k_eep { + ath,led-active-high; + }; }; ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH] package/kernel: Build it87 hardware monitor module
open...@daniel.thecshore.com writes: > From: Daniel Dickinson > > This is easy to add with no side effects; the chip probably just got added > after > the hwmon package was created I sort of doubt that... I remember messing with that driver a long time ago, in a galaxy far far away. Google tells me that was 2004 and Linux v2.6.6. Let's see, Google also tells me White Russian was released in 2007. Anyway. Small typo here: > +define KernelPackage/hwmon-i687/description Bjørn ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] package/kernel: Build it87 hardware monitor module
From: Daniel Dickinson This is easy to add with no side effects; the chip probably just got added after the hwmon package was created and never got included in builds. Signed-off-by: Daniel Dickinson --- package/kernel/linux/modules/hwmon.mk | 14 ++ 1 file changed, 14 insertions(+) diff --git a/package/kernel/linux/modules/hwmon.mk b/package/kernel/linux/modules/hwmon.mk index ca0ff66..f260e27 100644 --- a/package/kernel/linux/modules/hwmon.mk +++ b/package/kernel/linux/modules/hwmon.mk @@ -93,6 +93,20 @@ endef $(eval $(call KernelPackage,hwmon-ina2xx)) +define KernelPackage/hwmon-it87 + TITLE:=it87 monitoring support + KCONFIG:=CONFIG_SENSORS_IT87 + FILES:=$(LINUX_DIR)/drivers/hwmon/it87.ko + AUTOLOAD:=$(call AutoProbe,it87) + $(call AddDepends/hwmon,+kmod-i2c-core +kmod-hwmod-vid) +endef + +define KernelPackage/hwmon-i687/description + Kernel module for it87 thermal and voltage monitor chip +endef + +$(eval $(call KernelPackage,hwmon-it87)) + define KernelPackage/hwmon-lm63 TITLE:=LM63/64 monitoring support KCONFIG:=CONFIG_SENSORS_LM63 -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Ubiquiti UniFI AC Lite
Hi Andrew, besides the real-life testing, which still has to be done, the single issue is with the eth0/phy, which only works on GBit links. To be honest, I have no idea what might be the cause for this. I think, if there is no news within the next days on this issue, I may open a seperate thread on this problem (AR8033 + SGMII), as this will possibly affect all devices with this HW configuration. -- P.Wassi > Hi Wassi, > > great work, let me see how can I help. > > On 16/12/15 07:05, p.wa...@gmx.at wrote: > > Hi there, > > > > This message should be a response to the thread in > > https://lists.openwrt.org/pipermail/openwrt-devel/2015-December/037808.html > > > > You can see the status of the port for Ubiquiti UniFi AP AC LITE > > on this page: > > https://pwassi.privatedns.org/openwrt/unifiac/ > > Here, also additional information on the issues with eth0/phy is > > given. > > > > -- P.Wassi > > ___ > > openwrt-devel mailing list > > openwrt-devel@lists.openwrt.org > > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel > ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 3/3] swconfig: switch kernel PORT_LINK support to SWITCH_TYPE_LINK
As explained earlier, using SWITCH_TYPE_LINK gives more flexibility, it doesn't require e.g. string parsing to read some data. Signed-off-by: Rafał Miłecki --- .../linux/generic/files/drivers/net/phy/swconfig.c | 51 ++ 1 file changed, 4 insertions(+), 47 deletions(-) diff --git a/target/linux/generic/files/drivers/net/phy/swconfig.c b/target/linux/generic/files/drivers/net/phy/swconfig.c index 731bdcb..5343226 100644 --- a/target/linux/generic/files/drivers/net/phy/swconfig.c +++ b/target/linux/generic/files/drivers/net/phy/swconfig.c @@ -127,30 +127,11 @@ swconfig_get_pvid(struct switch_dev *dev, const struct switch_attr *attr, return dev->ops->get_port_pvid(dev, val->port_vlan, &val->value.i); } -static const char * -swconfig_speed_str(enum switch_port_speed speed) -{ - switch (speed) { - case SWITCH_PORT_SPEED_10: - return "10baseT"; - case SWITCH_PORT_SPEED_100: - return "100baseT"; - case SWITCH_PORT_SPEED_1000: - return "1000baseT"; - default: - break; - } - - return "unknown"; -} - static int swconfig_get_link(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val) { - struct switch_port_link link; - int len; - int ret; + struct switch_port_link *link = val->value.link; if (val->port_vlan >= dev->ports) return -EINVAL; @@ -158,32 +139,8 @@ swconfig_get_link(struct switch_dev *dev, const struct switch_attr *attr, if (!dev->ops->get_port_link) return -EOPNOTSUPP; - memset(&link, 0, sizeof(link)); - ret = dev->ops->get_port_link(dev, val->port_vlan, &link); - if (ret) - return ret; - - memset(dev->buf, 0, sizeof(dev->buf)); - - if (link.link) - len = snprintf(dev->buf, sizeof(dev->buf), - "port:%d link:up speed:%s %s-duplex %s%s%s%s%s", - val->port_vlan, - swconfig_speed_str(link.speed), - link.duplex ? "full" : "half", - link.tx_flow ? "txflow " : "", - link.rx_flow ? "rxflow " : "", - link.eee & ADVERTISED_100baseT_Full ? "eee100 " : "", - link.eee & ADVERTISED_1000baseT_Full ? "eee1000 " : "", - link.aneg ? "auto" : ""); - else - len = snprintf(dev->buf, sizeof(dev->buf), "port:%d link:down", - val->port_vlan); - - val->value.s = dev->buf; - val->len = len; - - return 0; + memset(link, 0, sizeof(*link)); + return dev->ops->get_port_link(dev, val->port_vlan, link); } static int @@ -246,7 +203,7 @@ static struct switch_attr default_port[] = { .get = swconfig_get_pvid, }, [PORT_LINK] = { - .type = SWITCH_TYPE_STRING, + .type = SWITCH_TYPE_LINK, .name = "link", .description = "Get port link information", .set = NULL, -- 1.8.4.5 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 2/3] swconfig: support receiving SWITCH_TYPE_LINK from kernel
When using cli, print link state the same way kernel used to do it. This will allow kernel switching PORT_LINK from SWITCH_TYPE_STRING. Signed-off-by: Rafał Miłecki --- package/network/config/swconfig/src/cli.c | 33 +++ package/network/config/swconfig/src/swlib.c | 42 + package/network/config/swconfig/src/swlib.h | 17 3 files changed, 92 insertions(+) diff --git a/package/network/config/swconfig/src/cli.c b/package/network/config/swconfig/src/cli.c index d472086..d3d0127 100644 --- a/package/network/config/swconfig/src/cli.c +++ b/package/network/config/swconfig/src/cli.c @@ -84,9 +84,27 @@ list_attributes(struct switch_dev *dev) print_attrs(dev->port_ops); } +static const char * +speed_str(int speed) +{ + switch (speed) { + case 10: + return "10baseT"; + case 100: + return "100baseT"; + case 1000: + return "1000baseT"; + default: + break; + } + + return "unknown"; +} + static void print_attr_val(const struct switch_attr *attr, const struct switch_val *val) { + struct switch_port_link *link; int i; switch (attr->type) { @@ -104,6 +122,21 @@ print_attr_val(const struct switch_attr *attr, const struct switch_val *val) SWLIB_PORT_FLAG_TAGGED) ? "t" : ""); } break; + case SWITCH_TYPE_LINK: + link = val->value.link; + if (link->link) + printf("port:%d link:up speed:%s %s-duplex %s%s%s%s%s", + val->port_vlan, + speed_str(link->speed), + link->duplex ? "full" : "half", + link->tx_flow ? "txflow " : "", + link->rx_flow ? "rxflow " : "", + link->eee & SWLIB_LINK_FLAG_ADVERTISED_100BASET_FULL ? "eee100 " : "", + link->eee & SWLIB_LINK_FLAG_ADVERTISED_1000BASET_FULL ? "eee1000 " : "", + link->aneg ? "auto" : ""); + else + printf("port:%d link:down", val->port_vlan); + break; default: printf("?unknown-type?"); } diff --git a/package/network/config/swconfig/src/swlib.c b/package/network/config/swconfig/src/swlib.c index 0dbace5..5239bf7 100644 --- a/package/network/config/swconfig/src/swlib.c +++ b/package/network/config/swconfig/src/swlib.c @@ -51,6 +51,15 @@ static struct nla_policy portmap_policy[SWITCH_PORTMAP_MAX] = { [SWITCH_PORTMAP_VIRT] = { .type = NLA_U32 }, }; +static struct nla_policy link_policy[SWITCH_LINK_ATTR_MAX] = { + [SWITCH_LINK_LINK] = { .type = NLA_U32 }, + [SWITCH_LINK_DUPLEX] = { .type = NLA_U32 }, + [SWITCH_LINK_ANEG] = { .type = NLA_U32 }, + [SWITCH_LINK_SPEED] = { .type = NLA_U32 }, + [SWITCH_LINK_FLAG_ADVERTISED_100BASET_FULL] = { .type = NLA_FLAG }, + [SWITCH_LINK_FLAG_ADVERTISED_1000BASET_FULL] = { .type = NLA_FLAG }, +}; + static inline void * swlib_alloc(size_t size) { @@ -202,6 +211,37 @@ out: } static int +store_link_val(struct nl_msg *msg, struct nlattr *nla, struct switch_val *val) +{ + struct nlattr *tb[SWITCH_LINK_ATTR_MAX + 1]; + struct switch_port_link *link; + int err = 0; + + if (!val->value.link) + val->value.link = malloc(sizeof(struct switch_port_link)); + + err = nla_parse_nested(tb, SWITCH_LINK_ATTR_MAX, nla, link_policy); + if (err < 0) + goto out; + + link = val->value.link; + link->link = nla_get_u32(tb[SWITCH_LINK_LINK]); + link->duplex = nla_get_u32(tb[SWITCH_LINK_DUPLEX]); + link->aneg = nla_get_u32(tb[SWITCH_LINK_ANEG]); + link->tx_flow = nla_get_u32(tb[SWITCH_LINK_TX_FLOW]); + link->rx_flow = nla_get_u32(tb[SWITCH_LINK_RX_FLOW]); + link->speed = nla_get_u32(tb[SWITCH_LINK_SPEED]); + link->eee = 0; + if (tb[SWITCH_LINK_FLAG_ADVERTISED_100BASET_FULL]) + link->eee |= SWLIB_LINK_FLAG_ADVERTISED_100BASET_FULL; + if (tb[SWITCH_LINK_FLAG_ADVERTISED_1000BASET_FULL]) + link->eee |= SWLIB_LINK_FLAG_ADVERTISED_1000BASET_FULL; + +out: + return err; +} + +static int store_val(struct nl_msg *msg, void *arg) { struct genlmsghdr *gnlh = nlmsg_data(nlmsg_hdr(msg)); @@ -221,6 +261,8 @@ store_val(struct nl_msg *msg, void *arg) val->value.s = strdup(nla_get_string(tb[SWITCH_ATTR_OP_VALUE_STR])); else if (tb[SWITCH_ATTR_OP_VALUE_PORTS]) val->err = store_port_val(msg, tb[SWITCH_ATTR_OP_VALUE_PORTS], val); + else if (tb[SWITCH_ATTR_OP_VALUE_LINK]) + val->err = store_link_val(msg, tb[SWITCH_ATTR_OP_VALUE_LINK], val); val->err = 0; return 0; diff --gi
[OpenWrt-Devel] [PATCH 1/3] swconfig: add SWITCH_TYPE_LINK and support sending link info to user space
So far we were sending link data as a string. It got some drawbacks: 1) Didn't allow writing clean user space apps reading link state. It was needed to do some screen scraping. 2) Forced whole PORT_LINK communication to be string based. Adding support for *setting* port link required passing string and parting it in the kernel space. Signed-off-by: Rafał Miłecki --- .../linux/generic/files/drivers/net/phy/swconfig.c | 46 ++ target/linux/generic/files/include/linux/switch.h | 2 + .../generic/files/include/uapi/linux/switch.h | 16 3 files changed, 64 insertions(+) diff --git a/target/linux/generic/files/drivers/net/phy/swconfig.c b/target/linux/generic/files/drivers/net/phy/swconfig.c index 6bb3be1..731bdcb 100644 --- a/target/linux/generic/files/drivers/net/phy/swconfig.c +++ b/target/linux/generic/files/drivers/net/phy/swconfig.c @@ -771,6 +771,43 @@ done: } static int +swconfig_send_link(struct sk_buff *msg, struct genl_info *info, int attr, + const struct switch_port_link *link) +{ + struct nlattr *p = NULL; + int err = 0; + + p = nla_nest_start(msg, attr); + if (nla_put_u32(msg, SWITCH_LINK_LINK, link->link)) + goto nla_put_failure; + if (nla_put_u32(msg, SWITCH_LINK_DUPLEX, link->duplex)) + goto nla_put_failure; + if (nla_put_u32(msg, SWITCH_LINK_ANEG, link->aneg)) + goto nla_put_failure; + if (nla_put_u32(msg, SWITCH_LINK_TX_FLOW, link->tx_flow)) + goto nla_put_failure; + if (nla_put_u32(msg, SWITCH_LINK_RX_FLOW, link->rx_flow)) + goto nla_put_failure; + if (nla_put_u32(msg, SWITCH_LINK_SPEED, link->speed)) + goto nla_put_failure; + if (link->eee & ADVERTISED_100baseT_Full) { + if (nla_put_flag(msg, SWITCH_LINK_FLAG_ADVERTISED_100BASET_FULL)) + goto nla_put_failure; + } + if (link->eee & ADVERTISED_1000baseT_Full) { + if (nla_put_flag(msg, SWITCH_LINK_FLAG_ADVERTISED_1000BASET_FULL)) + goto nla_put_failure; + } + nla_nest_end(msg, p); + + return err; + +nla_put_failure: + nla_nest_cancel(msg, p); + return -1; +} + +static int swconfig_get_attr(struct sk_buff *skb, struct genl_info *info) { struct genlmsghdr *hdr = nlmsg_data(info->nlhdr); @@ -794,6 +831,9 @@ swconfig_get_attr(struct sk_buff *skb, struct genl_info *info) val.value.ports = dev->portbuf; memset(dev->portbuf, 0, sizeof(struct switch_port) * dev->ports); + } else if (attr->type == SWITCH_TYPE_LINK) { + val.value.link = &dev->linkbuf; + memset(&dev->linkbuf, 0, sizeof(struct switch_port_link)); } err = attr->get(dev, attr, &val); @@ -824,6 +864,12 @@ swconfig_get_attr(struct sk_buff *skb, struct genl_info *info) if (err < 0) goto nla_put_failure; break; + case SWITCH_TYPE_LINK: + err = swconfig_send_link(msg, info, +SWITCH_ATTR_OP_VALUE_LINK, val.value.link); + if (err < 0) + goto nla_put_failure; + break; default: pr_debug("invalid type in attribute\n"); err = -EINVAL; diff --git a/target/linux/generic/files/include/linux/switch.h b/target/linux/generic/files/include/linux/switch.h index 4291364..eac35f9 100644 --- a/target/linux/generic/files/include/linux/switch.h +++ b/target/linux/generic/files/include/linux/switch.h @@ -122,6 +122,7 @@ struct switch_dev { struct mutex sw_mutex; struct switch_port *portbuf; struct switch_portmap *portmap; + struct switch_port_link linkbuf; char buf[128]; @@ -148,6 +149,7 @@ struct switch_val { const char *s; u32 i; struct switch_port *ports; + struct switch_port_link *link; } value; }; diff --git a/target/linux/generic/files/include/uapi/linux/switch.h b/target/linux/generic/files/include/uapi/linux/switch.h index a59b239..b599943 100644 --- a/target/linux/generic/files/include/uapi/linux/switch.h +++ b/target/linux/generic/files/include/uapi/linux/switch.h @@ -50,6 +50,7 @@ enum { SWITCH_ATTR_OP_VALUE_INT, SWITCH_ATTR_OP_VALUE_STR, SWITCH_ATTR_OP_VALUE_PORTS, + SWITCH_ATTR_OP_VALUE_LINK, SWITCH_ATTR_OP_DESCRIPTION, /* port lists */ SWITCH_ATTR_PORT, @@ -86,6 +87,7 @@ enum switch_val_type { SWITCH_TYPE_INT, SWITCH_TYPE_STRING, SWITCH_TYPE_PORTS, + SWITCH_TYPE_LINK, SWITCH_TYPE_NOVAL, }; @@ -97,6 +99,20 @@ enum { SWITCH_PORT_ATTR_MAX }; +/* link nested attributes */ +enum { + SWITCH_LINK_UNSPEC, + SWITCH_LINK_LINK, + S
[OpenWrt-Devel] [PATCH] [toolchain]: Add experimental GCCGO support
From: Daniel Dickinson I've tweaked a few things mentioned by Hauke and verified it's still working. The CONFIG_USE_MUSL parts are to work around gccgo build complaining about missing symbols due to the build needing 'real' types (e.g. typedefs) not #define, but musl use #define for some of the required types so for the gccgo build we have to undefine the macros and create typedefs instead. Packages can use TARGET_GOC for the gccgo compiler. No generic packaging defaults have been added as I'm not sure what that should look like or if there are even sensible defaults for the Go projects out there. Signed-off-by: Daniel Dickinson --- rules.mk | 4 + toolchain/gcc/Config.in| 9 ++ toolchain/gcc/common.mk| 6 +- toolchain/gcc/final/Makefile | 2 +- .../5.2.0/960-add-libm-for-extra-langs.patch | 39 +++ .../5.2.0/970-fix-go-mprof-use-uninitialized.patch | 13 +++ .../980-fix-missing-glibc-types-with-musl.patch| 119 + .../gcc/patches/5.2.0/990-fix-skip-gotools.patch | 26 + 8 files changed, 215 insertions(+), 3 deletions(-) create mode 100644 toolchain/gcc/patches/5.2.0/960-add-libm-for-extra-langs.patch create mode 100644 toolchain/gcc/patches/5.2.0/970-fix-go-mprof-use-uninitialized.patch create mode 100644 toolchain/gcc/patches/5.2.0/980-fix-missing-glibc-types-with-musl.patch create mode 100644 toolchain/gcc/patches/5.2.0/990-fix-skip-gotools.patch diff --git a/rules.mk b/rules.mk index 1e7549f..2bda73c 100644 --- a/rules.mk +++ b/rules.mk @@ -187,6 +187,8 @@ else endif endif +TARGET_CFLAGS_GO=$(TARGET_CFLAGS) -g1 + export PATH:=$(TARGET_PATH) export STAGING_DIR STAGING_DIR_HOST export SH_FUNC:=. $(INCLUDE_DIR)/shell.sh; @@ -214,6 +216,7 @@ endif BUILD_KEY=$(TOPDIR)/key-build TARGET_CC:=$(TARGET_CROSS)gcc +TARGET_GOC:=$(TARGET_CROSS)gccgo TARGET_CXX:=$(TARGET_CROSS)g++ KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh SED:=$(STAGING_DIR_HOST)/bin/sed -i -e @@ -253,6 +256,7 @@ TARGET_CONFIGURE_OPTS = \ LD=$(TARGET_CROSS)ld \ NM="$(TARGET_NM)" \ CC="$(TARGET_CC)" \ + GOC="$(TARGET_GOC)" \ GCC="$(TARGET_CC)" \ CXX="$(TARGET_CXX)" \ RANLIB="$(TARGET_RANLIB)" \ diff --git a/toolchain/gcc/Config.in b/toolchain/gcc/Config.in index a8c39d6..a264c05 100644 --- a/toolchain/gcc/Config.in +++ b/toolchain/gcc/Config.in @@ -72,3 +72,12 @@ config INSTALL_GFORTRAN default n help Build/install GNU fortran compiler ? + +config INSTALL_GOLANG + bool + prompt "Build/install golang compiler?" if TOOLCHAINOPTS + default n + depends on GCC_VERSION_5 + help + Build/install GNU golang compiler ? + diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk index 3e4f3ee..49fca3b 100644 --- a/toolchain/gcc/common.mk +++ b/toolchain/gcc/common.mk @@ -101,7 +101,7 @@ HOST_STAMP_CONFIGURED:=$(GCC_BUILD_DIR)/.configured HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed SEP:=, -TARGET_LANGUAGES:="c,c++$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)" +TARGET_LANGUAGES:="c,c++$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)$(if $(CONFIG_INSTALL_GOLANG),$(SEP)go)" export libgcc_cv_fixed_point=no ifdef CONFIG_USE_UCLIBC @@ -124,6 +124,7 @@ GCC_CONFIGURE:= \ CFLAGS="-O2 -fbracket-depth=512 -pipe" \ CXXFLAGS="-O2 -fbracket-depth=512 -pipe" \ ) \ + $(if $(CONFIG_USE_MUSL),CONFIG_USE_MUSL="-DCONFIG_USE_MUSL") \ $(HOST_SOURCE_DIR)/configure \ --with-bugurl=$(BUGURL) \ --with-pkgversion="$(PKGVERSION)" \ @@ -199,7 +200,8 @@ GCC_MAKE:= \ $(MAKE) \ CFLAGS="$(HOST_CFLAGS)" \ CFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" \ - CXXFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" + CXXFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" \ + GOCFLAGS_FOR_TARGET="$(TARGET_CFLAGS) -O2 -g $(if $(CONFIG_USE_MUSL),-DCONFIG_USE_MUSL)" define Host/Prepare mkdir -p $(GCC_BUILD_DIR) diff --git a/toolchain/gcc/final/Makefile b/toolchain/gcc/final/Makefile index 3434d89..224dbdb 100644 --- a/toolchain/gcc/final/Makefile +++ b/toolchain/gcc/final/Makefile @@ -44,7 +44,7 @@ define Host/Compile endef define SetupExtraArch - for app in $(TOOLCHAIN_DIR)/bin/$(OPTIMIZE_FOR_CPU)*-{gcc,gcc-*,g++}; do \ + for app in $(TOOLCHAIN_DIR)/bin/$(OPTIMIZE_FOR_CPU)*-{gcc,gcc-*,g++,gccgo}; do \ [ -e app ] || continue; \ old_base=(basename app); \ new_base=$(call qstrip,$(CONFIG_EXTRA_TARGET_ARCH_NAME))-{old_base##$(OPTIMIZE_FOR_CPU)-}; \ diff --git a/toolchain/gcc/patches/5.2.0/960-add-libm-for-extra-langs.patch b/toolchain/gcc/patches/5.2.0/960-add-libm-for-extra-langs.pa
[OpenWrt-Devel] [PATCH] lantiq: ARV7519RW22 Leave room for newer U-Boot versions and naming corrections
U-Boot 2014.07 doesn't fit and needs one more page, this patch only add that page to uboot and moves the next partitions one page more and shrinks one page firmware partition. Also changes the name of the device to the last manufacturer of this model. In fact Astoria Networks is part of Arcadyan. Signed-off-by: David Santamaría Rogado --- target/linux/lantiq/dts/ARV7519RW22.dts | 8 +++--- target/linux/lantiq/xrx200/profiles/arv.mk | 2 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff -u a/target/linux/lantiq/dts/ARV7519RW22.dts b/target/linux/lantiq/dts/ARV7519RW22.dts --- a/target/linux/lantiq/dts/ARV7519RW22.dts2015-12-14 11:57:33.443175606 +0100 +++ b/target/linux/lantiq/dts/ARV7519RW22.dts2015-12-14 12:05:36.027578665 +0100 @@ -3,7 +3,7 @@ /include/ "vr9.dtsi" / { -model = "ARV7519RW22 - Astoria Networks ARV7519RW22-A-LT"; +model = "ARV7519RW22 - Arcadyan ARV7519RW22-A-LT"; chosen { bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; @@ -24,19 +24,19 @@ partition@0 { label = "uboot"; -reg = <0x0 0x6>; +reg = <0x0 0x8>; read-only; }; partition@6 { label = "uboot-env"; -reg = <0x6 0x2>; +reg = <0x8 0x2>; read-only; }; partition@8 { label = "firmware"; -reg = <0x8 0x1f0>; +reg = <0xa 0x1ee>; }; boardconfig: partition@1f8 { diff -u a/target/linux/lantiq/xrx200/profiles/arv.mk b/target/linux/lantiq/xrx200/profiles/arv.mk --- a/target/linux/lantiq/xrx200/profiles/arv.mk2015-12-14 12:08:42.862381747 +0100 +++ b/target/linux/lantiq/xrx200/profiles/arv.mk2015-12-14 12:11:30.761725880 +0100 @@ -39,7 +39,7 @@ $(eval $(call Profile,VGV7519BRN)) define Profile/ARV7519RW22 - NAME:=Livebox Astoria ARV7519RW22 + NAME:=Livebox 2.1 / Arcadyan ARV7519RW22-A-LT PACKAGES:=kmod-usb-dwc2 endef ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH] base-files utils/busybox: Make requiring login in console default for easily accessed devices
From: Daniel Dickinson Some devices like generic PC's and Raspberry Pi/Pi2 are much more trivial to get hardware console access than a typical router scenario and therefore really ought to require login even on hardware console rather than a hardware console granting passwordless root access. Since we're at it, we also make requiring login on hardware console an easily configured build-time option. Signed-off-by: Daniel Dickinson --- config/Config-build.in | 17 package/base-files/Makefile| 23 +- package/utils/busybox/Config-defaults.in | 3 +++ .../linux/adm5120/base-files-console/etc/inittab | 5 + .../base-files-console/etc/uci-defaults/inittab| 6 ++ .../linux/brcm2708/base-files-console/etc/inittab | 4 .../linux/ipq806x/base-files-console/etc/inittab | 4 target/linux/lantiq/base-files-console/etc/inittab | 3 +++ target/linux/malta/base-files-console/etc/inittab | 7 +++ .../linux/mediatek/base-files-console/etc/inittab | 3 +++ target/linux/mxs/base-files-console/etc/inittab| 3 +++ target/linux/omap/base-files-console/etc/inittab | 5 + .../linux/omap24xx/base-files-console/etc/inittab | 5 + target/linux/ppc44x/base-files-console/etc/inittab | 4 .../linux/realview/base-files-console/etc/inittab | 5 + target/linux/sunxi/base-files-console/etc/inittab | 5 + target/linux/x86/base-files-console/etc/inittab| 4 17 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 target/linux/adm5120/base-files-console/etc/inittab create mode 100644 target/linux/ar71xx/base-files-console/etc/uci-defaults/inittab create mode 100644 target/linux/brcm2708/base-files-console/etc/inittab create mode 100644 target/linux/ipq806x/base-files-console/etc/inittab create mode 100644 target/linux/lantiq/base-files-console/etc/inittab create mode 100644 target/linux/malta/base-files-console/etc/inittab create mode 100644 target/linux/mediatek/base-files-console/etc/inittab create mode 100644 target/linux/mxs/base-files-console/etc/inittab create mode 100644 target/linux/omap/base-files-console/etc/inittab create mode 100644 target/linux/omap24xx/base-files-console/etc/inittab create mode 100644 target/linux/ppc44x/base-files-console/etc/inittab create mode 100644 target/linux/realview/base-files-console/etc/inittab create mode 100644 target/linux/sunxi/base-files-console/etc/inittab create mode 100644 target/linux/x86/base-files-console/etc/inittab diff --git a/config/Config-build.in b/config/Config-build.in index 1a35c5d..f975d45 100644 --- a/config/Config-build.in +++ b/config/Config-build.in @@ -75,6 +75,23 @@ menu "Global build settings" encrypted and unencrypted flavours, even when the encryption library is a 'heavier' one such as OpenSSL. + config CONSOLE_LOGIN + bool + prompt "Require login even on hardware/serial console" + default y if (TARGET_x86_generic || TARGET_x86_64 || TARGET_brcm2708) + default n + help + Enables Busybox applets getty and login and uses them instead of default + respawn of ash on hardware/serial consoles. This is made the default for + targets which are fairly easy to gain hardware console access compared to + a typical router (which generally require more electronics skill or at least + equipment that than is common except with electronics enthusiasts and + professionals). This includes the Raspberry Pi/Pi2 (built in HDMI and USB + support making adding a console trivial), and *generic* x86 32-bit and + 64-bit systems (typically physical PCs for which it is also usually trivial + to add a keyboard and monitor without even rebooting). + + comment "Kernel build options" source "config/Config-kernel.in" diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 1367fa9..b4fe806 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -112,25 +112,46 @@ define Package/base-files/install if [ -d $(GENERIC_PLATFORM_DIR)/base-files/. ]; then \ $(CP) $(GENERIC_PLATFORM_DIR)/base-files/* $(1)/; \ fi + $(if $(CONFIG_CONSOLE_LOGIN),if [ -d $(GENERIC_PLATFORM_DIR)/base-files-console/. ]; then \ + $(CP) $(GENERIC_PLATFORM_DIR)/base-files-console/* $(1)/; \ + fi) if [ -d $(PLATFORM_DIR)/base-files/. ]; then \ $(CP) $(PLATFORM_DIR)/base-files/* $(1)/; \ fi + $(if $(CONFIG_CONSOLE_LOGIN),if [ -d $(PLATFORM_DIR)/base-files-console/. ]; then \ + $(CP) $(PLATFORM_DIR)/base-files-console/* $(1)/; \ + fi) if [ -d $(PLATFORM_DIR)/base-files-$(PR
[OpenWrt-Devel] [PATCH] images: Add option build tar.gz suitable for use as LCX guest rootfs
From: Daniel Dickinson An any target with targz image support we add the option of building a tar.gz which is suitably configured to run as a LXC guest rootfs. NB: This does not require kernel support; the LCX *host* requires the appropriate kernel support, but building the guest does not need such support enabled. Note that the clearvar initscript is necessary for LXC guests because /tmp doesn't go away on reboot. Signed-off-by: Daniel Dickinson --- config/Config-images.in| 7 +++ include/image.mk | 16 ++ scripts/metadata.pl| 1 + target/linux/ar71xx/mikrotik/target.mk | 2 +- target/linux/at91/Makefile | 2 +- .../linux/generic/base-files-lxc/etc/init.d/boot | 61 ++ .../generic/base-files-lxc/etc/init.d/clearvar | 12 + target/linux/generic/base-files-lxc/etc/inittab| 6 +++ .../etc/uci-defaults/disablelxcinitscripts | 6 +++ target/linux/imx6/Makefile | 2 +- target/linux/kirkwood/Makefile | 2 +- target/linux/omap/Makefile | 2 +- target/linux/omap24xx/Makefile | 2 +- target/linux/orion/harddisk/target.mk | 2 +- target/linux/rb532/Makefile| 2 +- target/linux/x86/Makefile | 2 +- target/linux/x86/xen_domu/target.mk| 2 +- target/linux/xburst/Makefile | 2 +- 18 files changed, 120 insertions(+), 11 deletions(-) create mode 100755 target/linux/generic/base-files-lxc/etc/init.d/boot create mode 100755 target/linux/generic/base-files-lxc/etc/init.d/clearvar create mode 100644 target/linux/generic/base-files-lxc/etc/inittab create mode 100644 target/linux/generic/base-files-lxc/etc/uci-defaults/disablelxcinitscripts diff --git a/config/Config-images.in b/config/Config-images.in index a60dd50..ba0d79b 100644 --- a/config/Config-images.in +++ b/config/Config-images.in @@ -64,6 +64,13 @@ menu "Target Images" help Build a compressed tar archive of the root filesystem. + config TARGET_ROOTFS_LXC_TARGZ + bool "LXC guest .tar.gz" + default n + help + Build a compressed tar archive of the root filesystem for use + in an LXC guest. + comment "Root filesystem images" menuconfig TARGET_ROOTFS_EXT4FS diff --git a/include/image.mk b/include/image.mk index 6b2fb1a..37eb28a 100644 --- a/include/image.mk +++ b/include/image.mk @@ -74,6 +74,7 @@ fs-types-$(CONFIG_TARGET_ROOTFS_ISO) += iso fs-subtypes-$(CONFIG_TARGET_ROOTFS_JFFS2) += $(addsuffix -raw,$(addprefix jffs2-,$(JFFS2_BLOCKSIZE))) fs-subtypes-$(CONFIG_TARGET_ROOTFS_CPIOGZ) += cpiogz fs-subtypes-$(CONFIG_TARGET_ROOTFS_TARGZ) += targz +fs-subtypes-$(CONFIG_TARGET_ROOTFS_LXC_TARGZ) += lxc-targz TARGET_FILESYSTEMS := $(fs-types-y) @@ -258,6 +259,21 @@ define Image/mkfs/targz $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE_SANITIZED),-$(PROFILE_SANITIZED))-rootfs.tar.gz --numeric-owner --owner=0 --group=0 --sort=name -C $(TARGET_DIR)/ . endef +define Image/mkfs/lxc-targz + rm -rf $(TARGET_DIR).lxc + $(CP) $(TARGET_DIR) $(TARGET_DIR).lxc + rm -f $(TARGET_DIR).lxc/etc/uci-defaults/inittab + $(CP) $(TOPDIR)/target/linux/generic/base-files-lxc/* $(TARGET_DIR).lxc/ + ( \ + cd $(TARGET_DIR).lxc; \ + for script in ./etc/init.d/*; do \ +grep '#!/bin/sh /etc/rc.common' script >/dev/null || continue; \ +IPKG_INSTROOT="$(TARGET_DIR).lxc" (which bash) ./etc/rc.common script enable; \ +done; \ + ) + $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE_SANITIZED),-$(PROFILE_SANITIZED))-lxc-rootfs.tar.gz --numeric-owner --owner=0 --group=0 --sort=name -C $(TARGET_DIR).lxc/ . +endef + E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024))) define Image/mkfs/ext4 diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 54341c4..5b524d9 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -132,6 +132,7 @@ sub target_config_features(@) { /jffs2_nand/ and $ret .= "\tselect USES_JFFS2_NAND\n"; /ext4/ and $ret .= "\tselect USES_EXT4\n"; /targz/ and $ret .= "\tselect USES_TARGZ\n"; + /lxc-targz/ and $ret .= "\tselect USES_TARGZ\n"; /cpiogz/ and $ret .= "\tselect USES_CPIOGZ\n"; /ubifs/ and $ret .= "\tselect USES_UBIFS\n"; /fpu/ and $ret .= "\tselect HAS_FPU\n"; diff --git a/target/linux/ar71xx/mikrotik/target.mk b/target/linux/ar71xx/mikrotik/target.mk index b2fb0df..49d49fb 100644 --- a/target/linux/ar71xx/mikrotik/target.mk +++ b/target/linux/ar71xx/mikrotik/ta
Re: [OpenWrt-Devel] v2: Add support for three PowerCloud devices
Urgh, rebase combined the image generation for all three devices. Do you want me to split and resend? On 16/12/15 09:24 AM, open...@daniel.thecshore.com wrote: I noticed Felix did the reorganization so as promised here is the new patch series using the new organization. All images have been tested and are working on real hardware. [PATCH 1/7] ar71xx: Kernel board definition for PowerCloud CAP324 [PATCH 2/7] ar71xx: Kernel board definition for PowerCloud CR3000 [PATCH 3/7] ar71xx: Kernel board definition for PowerCloud CR5000 [PATCH 4/7] ar71xx: PowerCloud CAP324 image generation [PATCH 5/7] ar71xx: PowerCloud CAP324 OpenWrt configuration [PATCH 6/7] ar71xx: PowerCloud CR3000 OpenWrt configuration [PATCH 7/7] ar71xx: PowerCloud CR5000 openwrt configuration ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 6/7] ar71xx: PowerCloud CR3000 OpenWrt configuration
From: Daniel Dickinson OpenWRt configuration part of support for the PowerCloud Systems CR3000. The CR3000 is a 802.11n 2.4 GHz wireless router with 8MB flash, 64MB RAM, a four port gigabit ethernet switch, and a fast ethernet wan port that was sold by PowerCloud Systems as hardware for the Skydog cloud-managed router service. Signed-off-by: Daniel Dickinson --- package/boot/uboot-envtools/files/ar71xx | 1 + target/linux/ar71xx/base-files/etc/board.d/01_leds | 9 + target/linux/ar71xx/base-files/etc/board.d/02_network | 6 ++ target/linux/ar71xx/base-files/etc/diag.sh | 3 +++ target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 +++ target/linux/ar71xx/base-files/lib/upgrade/platform.sh | 3 ++- 6 files changed, 24 insertions(+), 1 deletion(-) diff --git a/package/boot/uboot-envtools/files/ar71xx b/package/boot/uboot-envtools/files/ar71xx index 4a9bec5..aed7b0b 100644 --- a/package/boot/uboot-envtools/files/ar71xx +++ b/package/boot/uboot-envtools/files/ar71xx @@ -18,6 +18,7 @@ all0258n | \ cap324 | \ cap4200ag | \ carambola2 | \ +cr3000 | \ eap300v2 | \ hornet-ub | \ hornet-ub-x2 | \ diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds index dc8ae06..ba1ba7f 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/01_leds +++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds @@ -126,6 +126,15 @@ cpe510) ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "tp-link:green:link4" "wlan0" "76" "100" "-75" "13" ;; +cr3000) + ucidef_set_led_netdev "wan" "WAN" "pcs:blue:wan" "eth1" + ucidef_set_led_switch "lan1" "LAN1" "pcs:blue:lan1" "switch0" "0x04" + ucidef_set_led_switch "lan2" "LAN2" "pcs:blue:lan2" "switch0" "0x08" + ucidef_set_led_switch "lan3" "LAN3" "pcs:blue:lan3" "switch0" "0x10" + ucidef_set_led_switch "lan4" "LAN4" "pcs:blue:lan4" "switch0" "0x02" + ucidef_set_led_wlan "wlan" "WLAN" "pcs:blue:wlan" "phy0tpt" + ;; + db120) ucidef_set_led_usbdev "usb" "USB" "db120:green:usb" "1-1" ;; diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network index f99cec6..d3b34d1 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/02_network +++ b/target/linux/ar71xx/base-files/etc/board.d/02_network @@ -248,6 +248,12 @@ wzr-hp-g300nh) "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0" ;; +cr3000) + ucidef_set_interfaces_lan_wan "eth0.1" "eth1" + ucidef_add_switch "switch0" \ + "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2" + ;; + dgl-5500-a1 |\ dir-825-c1) local mac diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh index cd39588..53e295b 100644 --- a/target/linux/ar71xx/base-files/etc/diag.sh +++ b/target/linux/ar71xx/base-files/etc/diag.sh @@ -67,6 +67,9 @@ get_status_led() { cpe510) status_led="tp-link:green:link4" ;; + cr3000) + status_led="pcs:amber:power" + ;; db120) status_led="db120:green:status" ;; diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index af6ef6f..d9cb103 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -424,6 +424,9 @@ ar71xx_board_detect() { name="cpe510" tplink_pharos_board_detect ;; + *CR3000) + name="cr3000" + ;; *"DB120 reference board") name="db120" ;; diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index f3148a5..af4713f 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -168,7 +168,8 @@ platform_check_image() { all0315n | \ all0258n | \ cap324 | \ - cap4200ag) + cap4200ag | \ + cr3000) platform_check_image_allnet "$1" && return 0 return 1 ;; -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 3/7] ar71xx: Kernel board definition for PowerCloud CR5000
From: Daniel Dickinson Kernel part of support for the PowerCloud Systems CR5000. The CR5000 is a dual-band 802.11n wireless router with 8MB flash, 64 MB RAM, (unused in stock firmware) USB 2.0 port, and five port gigabit ethernet switch. The CR5000 was sold as hardware for the Skydog cloud-managed router service. Signed-off-by: Daniel Dickinson --- target/linux/ar71xx/config-4.1 | 1 + .../ar71xx/files/arch/mips/ath79/Kconfig.openwrt | 11 ++ target/linux/ar71xx/files/arch/mips/ath79/Makefile | 1 + .../ar71xx/files/arch/mips/ath79/mach-cr5000.c | 176 + .../linux/ar71xx/files/arch/mips/ath79/machtypes.h | 1 + target/linux/ar71xx/mikrotik/config-default| 1 + target/linux/ar71xx/nand/config-default| 1 + 7 files changed, 192 insertions(+) create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-cr5000.c diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 index bc7561a..02cd451 100644 --- a/target/linux/ar71xx/config-4.1 +++ b/target/linux/ar71xx/config-4.1 @@ -56,6 +56,7 @@ CONFIG_ATH79_MACH_CARAMBOLA2=y CONFIG_ATH79_MACH_CF_E316N_V2=y CONFIG_ATH79_MACH_CPE510=y CONFIG_ATH79_MACH_CR3000=y +CONFIG_ATH79_MACH_CR5000=y CONFIG_ATH79_MACH_DB120=y CONFIG_ATH79_MACH_DGL_5500_A1=y CONFIG_ATH79_MACH_DHP_1565_A1=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt index b977b65..39573b4 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt +++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt @@ -933,6 +933,17 @@ config ATH79_MACH_CR3000 select ATH79_DEV_M25P80 select ATH79_DEV_WMAC +config ATH79_MACH_CR5000 + bool "PowerCloud CR5000 support" + select SOC_AR934X + select ATH79_DEV_AP9X_PCI if PCI + select ATH79_DEV_ETH + select ATH79_DEV_GPIO_BUTTONS + select ATH79_DEV_LEDS_GPIO + select ATH79_DEV_M25P80 + select ATH79_DEV_USB + select ATH79_DEV_WMAC + config ATH79_MACH_MR1750 bool "OpenMesh MR1750 board support" select SOC_QCA955X diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Makefile b/target/linux/ar71xx/files/arch/mips/ath79/Makefile index 4f24f6f..0478adc 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ath79/Makefile @@ -64,6 +64,7 @@ obj-$(CONFIG_ATH79_MACH_CAP4200AG)+= mach-cap4200ag.o obj-$(CONFIG_ATH79_MACH_CF_E316N_V2) += mach-cf-e316n-v2.o obj-$(CONFIG_ATH79_MACH_CPE510)+= mach-cpe510.o obj-$(CONFIG_ATH79_MACH_CR3000)+= mach-cr3000.o +obj-$(CONFIG_ATH79_MACH_CR5000)+= mach-cr5000.o obj-$(CONFIG_ATH79_MACH_DB120) += mach-db120.o obj-$(CONFIG_ATH79_MACH_DLAN_HOTSPOT) += mach-dlan-hotspot.o obj-$(CONFIG_ATH79_MACH_DLAN_PRO_500_WP) += mach-dlan-pro-500-wp.o diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cr5000.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cr5000.c new file mode 100644 index 000..f393ed1 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cr5000.c @@ -0,0 +1,176 @@ +/* + * PowerCloud CR5000 support + * + * Copyright (c) 2011 Qualcomm Atheros + * Copyright (c) 2011-2012 Gabor Juhos + * Copyright (c) 2012-2013 PowerCloud Systems + * Copyright (c) 2015 Daniel Dickinson + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + */ + +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "common.h" +#include "dev-ap9x-pci.h" +#include "dev-eth.h" +#include "dev-gpio-buttons.h" +#include "dev-leds-gpio.h" +#include "dev-m25p80.h" +#include "dev-spi.h" +#include "dev-usb.h" +#include "dev-wmac.h" +#include "machtypes.h" + +#define CR5000_GPIO_LED_WLAN_2G14 +#define CR5000_GPIO_LED_WPS12 +#define CR5000_GPIO_LED_POWER_AMBER 4 +/* GPIO2 has to have JTAG disabled as it is also to + * power led + */ +#define CR5000_GPIO_LED_POWER_ENABLE 2 +#define CR5000_GPIO_BTN_WPS16 +#define CR5000_GPIO_BTN_RESET 17 + +#define CR5000_KEYS_POLL_INTERVAL 20 /* msecs */ +#define CR5000_KEYS_DEBOUNCE_INTERVAL (3 *
[OpenWrt-Devel] [PATCH 5/7] ar71xx: PowerCloud CAP324 OpenWrt configuration
From: Daniel Dickinson Openwrt configuration part of support for PowerCloud CAP324 Cloud AP. The CAP324 Cloud AP is a device sold by PowerCloud Systems who's stock firmware (CloudCommand) provides 'cloud' based managment of large numbers access points. The CAP324 is a dual-band 802.11n wireless access point with 16MB flash and 128MB RAM and single gigabit ethernet port. It can be powered via PoE or a wall wart. Signed-off-by: Daniel Dickinson --- package/boot/uboot-envtools/files/ar71xx | 1 + target/linux/ar71xx/base-files/etc/board.d/01_leds | 6 ++ target/linux/ar71xx/base-files/etc/board.d/02_network | 4 target/linux/ar71xx/base-files/etc/diag.sh | 3 +++ target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 +++ target/linux/ar71xx/base-files/lib/upgrade/platform.sh | 1 + 6 files changed, 18 insertions(+) diff --git a/package/boot/uboot-envtools/files/ar71xx b/package/boot/uboot-envtools/files/ar71xx index 0c81f328..4a9bec5 100644 --- a/package/boot/uboot-envtools/files/ar71xx +++ b/package/boot/uboot-envtools/files/ar71xx @@ -15,6 +15,7 @@ board=$(ar71xx_board_name) case "$board" in all0258n | \ +cap324 | \ cap4200ag | \ carambola2 | \ eap300v2 | \ diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds index d4f226e..dc8ae06 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/01_leds +++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds @@ -92,6 +92,12 @@ bxu2000n-2-a1) ucidef_set_led_wlan "wlan" "WLAN" "bhu:green:wlan" "phy0tpt" ;; +cap324) + ucidef_set_led_netdev "lan" "LAN" "pcs:green:lan" "eth0" + ucidef_set_led_wlan "wlan_amber" "WLAN_AMBER" "pcs:amber:wlan" "phy0tpt" + ucidef_set_led_wlan "wlan_green" "WLAN_GREEN" "pcs:green:wlan" "phy1tpt" + ;; + cap4200ag) ucidef_set_led_default "lan_green" "LAN_GREEN" "senao:green:lan" "1" ucidef_set_led_wlan "wlan_amber" "WLAN_AMBER" "senao:amber:wlan" "phy0tpt" diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network index 11c4341..f99cec6 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/02_network +++ b/target/linux/ar71xx/base-files/etc/board.d/02_network @@ -351,6 +351,10 @@ wp543) ucidef_set_interface_lan "eth0" ;; +cap324) + ucidef_set_interface_lan "eth0" "dhcp" + ;; + arduino-yun | \ dir-505-a1) ucidef_set_interface_lan "eth1" diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh index 0e1df10..cd39588 100644 --- a/target/linux/ar71xx/base-files/etc/diag.sh +++ b/target/linux/ar71xx/base-files/etc/diag.sh @@ -55,6 +55,9 @@ get_status_led() { bxu2000n-2-a1) status_led="bhu:green:status" ;; + cap324) + status_led="pcs:green:power" + ;; cap4200ag) status_led="senao:green:pwr" ;; diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index 54e6166..af6ef6f 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -411,6 +411,9 @@ ar71xx_board_detect() { *AW-NR580) name="aw-nr580" ;; + *CAP324) + name="cap324" + ;; *CAP4200AG) name="cap4200ag" ;; diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index bb64ef8..f3148a5 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -167,6 +167,7 @@ platform_check_image() { case "$board" in all0315n | \ all0258n | \ + cap324 | \ cap4200ag) platform_check_image_allnet "$1" && return 0 return 1 -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] v2: Add support for three PowerCloud devices
I noticed Felix did the reorganization so as promised here is the new patch series using the new organization. All images have been tested and are working on real hardware. [PATCH 1/7] ar71xx: Kernel board definition for PowerCloud CAP324 [PATCH 2/7] ar71xx: Kernel board definition for PowerCloud CR3000 [PATCH 3/7] ar71xx: Kernel board definition for PowerCloud CR5000 [PATCH 4/7] ar71xx: PowerCloud CAP324 image generation [PATCH 5/7] ar71xx: PowerCloud CAP324 OpenWrt configuration [PATCH 6/7] ar71xx: PowerCloud CR3000 OpenWrt configuration [PATCH 7/7] ar71xx: PowerCloud CR5000 openwrt configuration ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 7/7] ar71xx: PowerCloud CR5000 openwrt configuration
From: Daniel Dickinson OpenWrt configuration part of support for the PowerCloud Systems CR5000. The CR5000 is a dual-band 802.11n wireless router with 8MB flash, 64MB RAM, (unused on stock firmware) USB 2.0 port and five port gigabit ethernet switch. The CR5000 was sold as hardware for the Skydog cloud-managed router service. Signed-off-by: Daniel Dickinson --- package/boot/uboot-envtools/files/ar71xx | 1 + target/linux/ar71xx/base-files/etc/board.d/01_leds | 5 + target/linux/ar71xx/base-files/etc/board.d/02_network | 5 + target/linux/ar71xx/base-files/etc/diag.sh | 3 +++ target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 +++ target/linux/ar71xx/base-files/lib/upgrade/platform.sh | 3 ++- 6 files changed, 19 insertions(+), 1 deletion(-) diff --git a/package/boot/uboot-envtools/files/ar71xx b/package/boot/uboot-envtools/files/ar71xx index aed7b0b..a070a5d 100644 --- a/package/boot/uboot-envtools/files/ar71xx +++ b/package/boot/uboot-envtools/files/ar71xx @@ -19,6 +19,7 @@ cap324 | \ cap4200ag | \ carambola2 | \ cr3000 | \ +cr5000 | \ eap300v2 | \ hornet-ub | \ hornet-ub-x2 | \ diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds index ba1ba7f..95240c3 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/01_leds +++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds @@ -135,6 +135,11 @@ cr3000) ucidef_set_led_wlan "wlan" "WLAN" "pcs:blue:wlan" "phy0tpt" ;; +cr5000) + ucidef_set_led_wlan "wlan" "WLAN" "pcs:blue:wlan" "phy0tpt" + ucidef_set_led_usbdev "usb" "USB" "pcs:white:wps" "1-1" + ;; + db120) ucidef_set_led_usbdev "usb" "USB" "db120:green:usb" "1-1" ;; diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network index d3b34d1..fd27c12 100755 --- a/target/linux/ar71xx/base-files/etc/board.d/02_network +++ b/target/linux/ar71xx/base-files/etc/board.d/02_network @@ -34,6 +34,11 @@ epg5000) "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" ;; +cr5000) + ucidef_add_switch "switch0" \ + "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" + ;; + ap136-010 |\ ap147-010) ucidef_set_interfaces_lan_wan "eth0" "eth1" diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh index 53e295b..f50305c 100644 --- a/target/linux/ar71xx/base-files/etc/diag.sh +++ b/target/linux/ar71xx/base-files/etc/diag.sh @@ -70,6 +70,9 @@ get_status_led() { cr3000) status_led="pcs:amber:power" ;; + cr5000) + status_led="pcs:amber:power" + ;; db120) status_led="db120:green:status" ;; diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index d9cb103..3314404 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -427,6 +427,9 @@ ar71xx_board_detect() { *CR3000) name="cr3000" ;; + *CR5000) + name="cr5000" + ;; *"DB120 reference board") name="db120" ;; diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index af4713f..70d2e0f 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -169,7 +169,8 @@ platform_check_image() { all0258n | \ cap324 | \ cap4200ag | \ - cr3000) + cr3000 |\ + cr5000) platform_check_image_allnet "$1" && return 0 return 1 ;; -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] [PATCH 2/7] ar71xx: Kernel board definition for PowerCloud CR3000
From: Daniel Dickinson Kernel part of support for PowerCloud CR3000. The CR3000 is a 802.11n 2.4 GHz wireless router with 8MB flash, 64MB RAM, a four port fast ethernet switch, and a fast ethernet wan port which was sold by PowerCloud Systems as hardware for the Skydog cloud-managed router service. Signed-off-by: Daniel Dickinson --- target/linux/ar71xx/config-4.1 | 1 + .../ar71xx/files/arch/mips/ath79/Kconfig.openwrt | 10 ++ target/linux/ar71xx/files/arch/mips/ath79/Makefile | 1 + .../ar71xx/files/arch/mips/ath79/mach-cr3000.c | 161 + .../linux/ar71xx/files/arch/mips/ath79/machtypes.h | 1 + target/linux/ar71xx/mikrotik/config-default| 1 + target/linux/ar71xx/nand/config-default| 1 + 7 files changed, 176 insertions(+) create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-cr3000.c diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 index dd1d97a..bc7561a 100644 --- a/target/linux/ar71xx/config-4.1 +++ b/target/linux/ar71xx/config-4.1 @@ -55,6 +55,7 @@ CONFIG_ATH79_MACH_CAP4200AG=y CONFIG_ATH79_MACH_CARAMBOLA2=y CONFIG_ATH79_MACH_CF_E316N_V2=y CONFIG_ATH79_MACH_CPE510=y +CONFIG_ATH79_MACH_CR3000=y CONFIG_ATH79_MACH_DB120=y CONFIG_ATH79_MACH_DGL_5500_A1=y CONFIG_ATH79_MACH_DHP_1565_A1=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt index 3433c98..b977b65 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt +++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt @@ -923,6 +923,16 @@ config ATH79_MACH_CAP4200AG select ATH79_DEV_M25P80 select ATH79_DEV_WMAC +config ATH79_MACH_CR3000 + bool "PowerCloud CR3000 support" + select SOC_AR934X + select ATH79_DEV_AP9X_PCI if PCI + select ATH79_DEV_ETH + select ATH79_DEV_GPIO_BUTTONS + select ATH79_DEV_LEDS_GPIO + select ATH79_DEV_M25P80 + select ATH79_DEV_WMAC + config ATH79_MACH_MR1750 bool "OpenMesh MR1750 board support" select SOC_QCA955X diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Makefile b/target/linux/ar71xx/files/arch/mips/ath79/Makefile index cd9f1c0..4f24f6f 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ath79/Makefile @@ -63,6 +63,7 @@ obj-$(CONFIG_ATH79_MACH_CAP324) += mach-cap324.o obj-$(CONFIG_ATH79_MACH_CAP4200AG) += mach-cap4200ag.o obj-$(CONFIG_ATH79_MACH_CF_E316N_V2) += mach-cf-e316n-v2.o obj-$(CONFIG_ATH79_MACH_CPE510)+= mach-cpe510.o +obj-$(CONFIG_ATH79_MACH_CR3000)+= mach-cr3000.o obj-$(CONFIG_ATH79_MACH_DB120) += mach-db120.o obj-$(CONFIG_ATH79_MACH_DLAN_HOTSPOT) += mach-dlan-hotspot.o obj-$(CONFIG_ATH79_MACH_DLAN_PRO_500_WP) += mach-dlan-pro-500-wp.o diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cr3000.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cr3000.c new file mode 100644 index 000..b351ae5 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cr3000.c @@ -0,0 +1,161 @@ +/* + * PowerCloud Systems CR3000 support + * + * Copyright (c) 2011 Qualcomm Atheros + * Copyright (c) 2011-2012 Gabor Juhos + * Copyright (c) 2012-2013 PowerCloud Systems + * Copyright (c) 2015 Daniel Dickinson + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + */ + +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "common.h" +#include "dev-ap9x-pci.h" +#include "dev-eth.h" +#include "dev-gpio-buttons.h" +#include "dev-leds-gpio.h" +#include "dev-m25p80.h" +#include "dev-spi.h" +#include "dev-wmac.h" +#include "machtypes.h" + +#define CR3000_GPIO_LED_WLAN_2G13 +#define CR3000_GPIO_LED_POWER_AMBER15 +#define CR3000_GPIO_LED_WAN 18 +#define CR3000_GPIO_LED_LAN119 +#define CR3000_GPIO_LED_LAN220 +#define CR3000_GPIO_LED_LAN321 +#define CR3000_GPIO_LED_LAN422 + +#define CR3000_GPIO_BTN_WPS16 +#define CR3000_GPIO_BTN_RESET 17 + +#define CR3000_KEYS_POLL_INTERVAL 20 /* msecs */ +#define CR3000_KEYS_DEBOUNCE_INTERV
[OpenWrt-Devel] [PATCH 1/7] ar71xx: Kernel board definition for PowerCloud CAP324
From: Daniel Dickinson Kernel part of support for PowerCloud CAP324 Cloud AP. The CAP324 Cloud AP was a device sold by PowerCloud Systems as hardware for the CloudCommand service for 'cloud' based managment of large numbers access points. The CAP324 is a dual-band 802.11n wireless access point with 16MB flash and 128MB RAM and single gigabit ethernet port. It can be powered via PoE or a power adaptor. Signed-off-by: Daniel Dickinson --- target/linux/ar71xx/config-4.1 | 1 + .../ar71xx/files/arch/mips/ath79/Kconfig.openwrt | 10 ++ target/linux/ar71xx/files/arch/mips/ath79/Makefile | 1 + .../ar71xx/files/arch/mips/ath79/mach-cap324.c | 133 + .../linux/ar71xx/files/arch/mips/ath79/machtypes.h | 1 + target/linux/ar71xx/mikrotik/config-default| 1 + target/linux/ar71xx/nand/config-default| 1 + 7 files changed, 148 insertions(+) create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-cap324.c diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 index 0e8b4a4..dd1d97a 100644 --- a/target/linux/ar71xx/config-4.1 +++ b/target/linux/ar71xx/config-4.1 @@ -50,6 +50,7 @@ CONFIG_ATH79_MACH_ARDUINO_YUN=y CONFIG_ATH79_MACH_AW_NR580=y CONFIG_ATH79_MACH_BHU_BXU2000N2_A=y CONFIG_ATH79_MACH_BSB=y +CONFIG_ATH79_MACH_CAP324=y CONFIG_ATH79_MACH_CAP4200AG=y CONFIG_ATH79_MACH_CARAMBOLA2=y CONFIG_ATH79_MACH_CF_E316N_V2=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt index 2b62d89..3433c98 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt +++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt @@ -903,6 +903,16 @@ config ATH79_MACH_RW2458N select ATH79_DEV_M25P80 select ATH79_DEV_USB +config ATH79_MACH_CAP324 + bool "PowerCloud CAP324 support" + select SOC_AR934X + select ATH79_DEV_AP9X_PCI if PCI + select ATH79_DEV_ETH + select ATH79_DEV_GPIO_BUTTONS + select ATH79_DEV_LEDS_GPIO + select ATH79_DEV_M25P80 + select ATH79_DEV_WMAC + config ATH79_MACH_CAP4200AG bool "Senao CAP4200AG support" select SOC_AR934X diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Makefile b/target/linux/ar71xx/files/arch/mips/ath79/Makefile index f9c5b8f..cd9f1c0 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ath79/Makefile @@ -59,6 +59,7 @@ obj-$(CONFIG_ATH79_MACH_ARCHER_C7)+= mach-archer-c7.o obj-$(CONFIG_ATH79_MACH_AW_NR580) += mach-aw-nr580.o obj-$(CONFIG_ATH79_MACH_BHU_BXU2000N2_A)+= mach-bhu-bxu2000n2-a.o obj-$(CONFIG_ATH79_MACH_BSB) += mach-bsb.o +obj-$(CONFIG_ATH79_MACH_CAP324)+= mach-cap324.o obj-$(CONFIG_ATH79_MACH_CAP4200AG) += mach-cap4200ag.o obj-$(CONFIG_ATH79_MACH_CF_E316N_V2) += mach-cf-e316n-v2.o obj-$(CONFIG_ATH79_MACH_CPE510)+= mach-cpe510.o diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cap324.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cap324.c new file mode 100644 index 000..2a6aed5 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cap324.c @@ -0,0 +1,133 @@ +/* + * PowerCloud Systems CAP324 board support + * + * Copyright (C) 2012 Gabor Juhos + * Copyright (C) 2012-2013 PowerCloud Systems + * Copyright (C) 2015 Daniel Dickinson + * + * 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 +#include +#include +#include + +#include + +#include "common.h" +#include "dev-ap9x-pci.h" +#include "dev-eth.h" +#include "dev-gpio-buttons.h" +#include "dev-leds-gpio.h" +#include "dev-m25p80.h" +#include "dev-spi.h" +#include "dev-usb.h" +#include "dev-wmac.h" +#include "machtypes.h" + +#define CAP324_GPIO_LED_POWER_GREEN12 +#define CAP324_GPIO_LED_POWER_AMBER13 +#define CAP324_GPIO_LED_LAN_GREEN 14 +#define CAP324_GPIO_LED_LAN_AMBER 15 +#define CAP324_GPIO_LED_WLAN_GREEN 18 +#define CAP324_GPIO_LED_WLAN_AMBER 19 + +#define CAP324_GPIO_BTN_RESET 17 + +#define CAP324_KEYS_POLL_INTERVAL 20 /* msecs */ +#define CAP324_KEYS_DEBOUNCE_INTERVAL (3 * CAP324_KEYS_POLL_INTERVAL) + +#define CAP324_MAC_OFFSET 0 +#define CAP324_WMAC_CALDATA_OFFSET 0x1000 +#define CAP324_PCIE_CALDATA_OFFSET 0x5000 + +static struct gpio_led cap324_leds_gpio[] __initdata = { + { + .name = "pcs:green:power", + .gpio = CAP324_GPIO_LED_POWER_GREEN, + .active_low = 1, + }, + { + .name = "pcs:amber:power", + .gpio = CAP324_GPIO_LED_POWER_AMBER, + .active_low = 1, + }, + { + .nam
[OpenWrt-Devel] [PATCH 4/7] ar71xx: PowerCloud CAP324 image generation
From: Daniel Dickinson Image generation (and mtd partition) part of support for PowerCloud CAP324 Cloud AP. The CAP324 Cloud AP is a device sold by PowerCloud Systems who's stock firmware (CloudCommand) provides 'cloud' based managment of large numbers of access points. The CAP324 is a dual-band 802.11n wireless access point with 16MB flash and 128MB RAM and single gigabit ethernet port. It can be powered via PoE or a power adaptor. --- target/linux/ar71xx/generic/profiles/pcs.mk | 20 +++ target/linux/ar71xx/image/Makefile | 56 +++-- 2 files changed, 74 insertions(+), 2 deletions(-) diff --git a/target/linux/ar71xx/generic/profiles/pcs.mk b/target/linux/ar71xx/generic/profiles/pcs.mk index 1399ef4..1466e52 100644 --- a/target/linux/ar71xx/generic/profiles/pcs.mk +++ b/target/linux/ar71xx/generic/profiles/pcs.mk @@ -27,3 +27,23 @@ define Profile/DLRTDEV01/Description endef $(eval $(call Profile,DLRTDEV01)) + +define Profile/CAP324 + NAME:=PowerCloud CAP324 Cloud AP + PACKAGES:=uboot-envtools +endef + +define Profile/CAP324/Description + Package set optimized for the PowerCloud Systems CAP324 Cloud AP + + The CAP324 Cloud AP is a device sold by PowerCloud Systems + who's stock firmware (CloudCommand) provides 'cloud' based + managment of large numbers of access points. + + The CAP324 is a dual-band 802.11n wireless access point with 16MB + flash and 128MB RAM and single gigabit ethernet port. It can be + powered via PoE or a wall wart. +endef + +$(eval $(call Profile,CAP324)) + diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index e197ed3..b64396c 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -212,7 +212,6 @@ define Device/gl-domino endef TARGET_DEVICES += gl-domino - define Device/wndr3700 BOARDNAME = WNDR3700 NETGEAR_KERNEL_MAGIC = 0x33373030 @@ -392,6 +391,60 @@ define Device/tl-wdr7500-v3 endef TARGET_DEVICES += archer-c5-v1 archer-c7-v1 archer-c7-v2 tl-wdr7500-v3 +define Device/cap324 + BOARDNAME := CAP324 + DEVICE_PROFILE := CAP324 + IMAGE_SIZE = 15296k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,15296k(firmware),640k(certs),64k(nvram),64k(art) +endef + +TARGET_DEVICES += cap324 + +define Device/cap324-nocloud + BOARDNAME := CAP324 + DEVICE_PROFILE := CAP324 + IMAGE_SIZE = 16000k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,16000k(firmware),64k(art) +endef + +TARGET_DEVICES += cap324-nocloud + +define Device/cr3000 + BOARDNAME := CR3000 + DEVICE_PROFILE := CR3000 + IMAGE_SIZE = 7104k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art) +endef + +TARGET_DEVICES += cr3000 + +define Device/cr3000-nocloud + BOARDNAME := CR3000 + DEVICE_PROFILE := CR3000 + IMAGE_SIZE = 7808k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7808k(firmware),64k(art) +endef + +TARGET_DEVICES += cr3000-nocloud + +define Device/cr5000 + BOARDNAME := CR5000 + DEVICE_PROFILE := CR5000 + IMAGE_SIZE = 7104k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art) +endef + +TARGET_DEVICES += cr5000 + +define Device/cr5000-nocloud + BOARDNAME := CR5000 + DEVICE_PROFILE := CR5000 + IMAGE_SIZE = 7808k + MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7808k(firmware),64k(art) +endef + +TARGET_DEVICES += cr5000-nocloud + define Device/antminer-s1 $(Device/tplink-8mlzma) BOARDNAME := ANTMINER-S1 @@ -1452,7 +1505,6 @@ define Build/Clean $(LOADER_MAKE) clean endef - alfa_ap96_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,256k(u-boot-env)ro,13312k(rootfs),2048k(kernel),512k(caldata)ro,15360k@0x8(firmware) alfa_mtdlayout_8M=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,6144k(rootfs),1600k(kernel),64k(nvram),64k(art)ro,7744k@0x5(firmware) alfa_mtdlayout_16M=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,15936k(firmware),64k(nvram),64k(art)ro -- 2.4.3 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] [PATCH][RFC] kernel: swconfig: add API for setting port link speed
On 13 December 2015 at 13:40, Stefan Rompf wrote: >> int (*get_port_link)(struct switch_dev *dev, int port, >>struct switch_port_link *link); >> + int (*set_port_link)(struct switch_dev *dev, int port, >> + enum switch_port_speed speed); > > this creates an assymetric API. I think the prototype of the set function > should be > > int (*set_port_link)(struct switch_dev *dev, int port, > struct switch_port_link *link); > > to allow setting other parameters that are part of struct switch_port_link, > like duplex or flow control. I'd be rather happy to disable crappy ethernet > flow control on my router... Thanks, I'll work on this. For the future: it's preferred to reply to the latest patch version. Your comment isn't visible for the V1 in patchwork: https://patchwork.ozlabs.org/patch/556017/ -- Rafał ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Ubiquiti UniFI AC Lite
Hi Wassi, great work, let me see how can I help. On 16/12/15 07:05, p.wa...@gmx.at wrote: Hi there, This message should be a response to the thread in https://lists.openwrt.org/pipermail/openwrt-devel/2015-December/037808.html You can see the status of the port for Ubiquiti UniFi AP AC LITE on this page: https://pwassi.privatedns.org/openwrt/unifiac/ Here, also additional information on the issues with eth0/phy is given. -- P.Wassi ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel