Compare commits

...

664 Commits

Author SHA1 Message Date
nevadita.chatterjee
0ce7697b9e ieee1905: 8.1.15.1 2023-08-07 09:49:16 +05:30
Vivek Kumar Dutta
399e9368ab sulu: Option to enable PWA
- Added option to enable PWA support
- Option to define path of PWA certificates
- Form validation fix
2023-08-03 19:45:23 +05:30
Vivek Kumar Dutta
1bf86ea636 sulu: 2.2.18 2023-08-01 09:57:02 +02:00
Vivek Kumar Dutta
7c5081b21d sulu: 2.2.17 2023-07-28 15:13:26 +05:30
Vivek Kumar Dutta
e84b61eed9 bbfdm: 1.1.3 2023-07-27 14:19:44 +05:30
Lukasz Kotasa
fe42f1cf3e bbfdm: 1.1.2 2023-07-26 13:35:47 +00:00
Vivek Kumar Dutta
22a8cf7d3d sulu: 2.2.16 2023-07-26 09:56:26 +02:00
Vivek Kumar Dutta
53ebf47632 sulu: fix site redirection 2023-07-26 09:56:23 +02:00
Vivek Kumar Dutta
dedb73eda7 sulu: 2.2.14 2023-07-20 19:13:49 +05:30
Vivek Kumar Dutta
d83fc6510e sulu: 2.2.13 2023-07-20 19:13:38 +05:30
Vivek Kumar Dutta
6f69d1862c sulu: 2.2.12 2023-07-20 19:13:26 +05:30
Vivek Kumar Dutta
0c2d5f0434 swmodd: 2.2.7 2023-07-20 19:10:21 +05:30
Vivek Kumar Dutta
a4b7083bf4 swmodd: 2.2.6 2023-07-20 15:58:00 +05:30
Janusz Dziedzic
d165368adc libwifi: 7.2.107 2023-07-20 10:46:52 +02:00
Michael Polyntsov
1bc5f8ebad libvoice-airoha: 1.0.5
Add tone maps for Colombia, Panama and India, fix minor issues for the USA tone map
2023-07-20 09:53:04 +02:00
Filip Matusiak
585457537c map-agent: 4.3.3.10 2023-07-13 12:35:13 +02:00
Anatoly Mirin
9773c8c2ad mcastmngr: fixed mcproxy crash for multiupstream config
If more than one upstream iface is defined, mcastmngr runs mcproxy
multiple times for each protocol (e.g. igmp) with the same config.
So second mcproxy process fails because it can't lock the MRT flag
(/proc/sys/net/ipv/default/mc_forwarding) already blocked by the
first process.

If one good and one bad (no IP address) upstream interfaces are defined,
mcastmngr generates wrong filter configuration and mcproxy cannot start
at all.

Now upstream and downstream ifaces are checked in the
'config_mcproxy_interfaces' function and only good interfaces (with IP)
are written to the mcproxy config. Only one mcproxy process is started
per protocol (igmp, mld), configured to handle multiple interfaces
if necessary.

'get_network_of' function removed. This function fails in some
uci configurations for interfaces that refer to a device indirectly.
Example - network.wan6.device='@wan'
2023-07-13 11:33:02 +02:00
Amin Ben Romdhane
a39025fea6 bbfdm: 1.1.1 2023-07-10 10:36:43 +02:00
Vivek Kumar Dutta
7a56796959 sulu: 2.2.11
(cherry picked from commit 2fb2b24201)
2023-07-06 12:21:44 +00:00
Vivek Kumar Dutta
bd3896dba0 sulu: 2.2.10
(cherry picked from commit c07da46687)
2023-07-06 12:21:21 +00:00
Vivek Kumar Dutta
fe7d43ec63 sulu: 2.2.9
(cherry picked from commit e5c76f17f6)
2023-07-06 12:20:55 +00:00
Vivek Kumar Dutta
117c470eb6 decollector: 4.0.2.6 2023-07-06 13:54:38 +02:00
Sukru Senli
8387a42f6a decontroller: periodically refresh based on mapcontroller config de_collect_interval option 2023-07-06 13:54:28 +02:00
Vivek Kumar Dutta
0e906f2189 bbfdm: Fix usp events 2023-07-06 15:58:05 +05:30
Vivek Kumar Dutta
546b14bed3 obuspa: 7.0.2.22 2023-06-29 17:29:02 +05:30
Jakob Olsson
c4523c6040 map-agent: 4.3.3.9 2023-06-28 16:56:37 +02:00
Marina Maslova
072d786a14 wifimngr: 16.0.9 2023-06-28 13:30:01 +03:00
Marina Maslova
2703fead62 wifimngr: to not trigger reload on wireless change
mac80211.sh will handle it by sending of SIGHUP to wifimngr
2023-06-28 10:17:07 +00:00
Yalu Zhang
c3922b7f3b libvoice-d2-1.0.6: Fix some errors in voice_connection_parm_update() 2023-06-28 11:05:04 +02:00
Vivek Kumar Dutta
ac1abfa6c3 bbfdm: 1.0.30 2023-06-27 19:29:51 +05:30
Wenpeng Song
40b8dd2869 voicemngr: Support ptime change on a connection
Also with refactoring below.
- Support codec and ptime change in one place
- Can support other parameter changes in the future, e.g. echo cancellation, silence suppression

libvoice-broadcom, libvoice-airoha: API updated.
libvoice-d2: Dummy API for ptime.
2023-06-27 13:01:49 +02:00
Lukasz Kotasa
578a4815ff bbfdm: 1.0.29 2023-06-27 12:29:13 +02:00
Amin Ben Romdhane
68db860632 bbfdm: 1.0.28 2023-06-27 09:45:41 +02:00
Anjan Chanda
a804d28cef decollector: 4.0.2.5 2023-06-26 20:34:45 +02:00
Jakob Olsson
81a0b6345e map-agent: 4.3.3.8 2023-06-26 13:00:50 +02:00
Vivek Kumar Dutta
3568f7c38d sulu: 2.2.8 2023-06-22 20:49:53 +05:30
Sukru Senli
7ba3ca8af4 ethmngr: update logger type 2023-06-22 14:48:13 +02:00
Sukru Senli
17b4588e03 ethmngr: adapt set port speed to updated ethctl for broadcom 2023-06-22 14:20:12 +02:00
Vivek Kumar Dutta
0c7040bab0 sulu: 2.2.7 2023-06-22 17:39:36 +05:30
Grzegorz Sluja
cab73a2760 Update package libvoice-airoha
40710f1 Add support for the US country code
ed40f7e Keep the default country setting is the configured country is not supported
2023-06-22 14:06:25 +02:00
Jakob Olsson
0b7165a05e map-agent: add map_port list to package config 2023-06-22 13:45:55 +02:00
Jakob Olsson
792981e80f map-agent: 4.3.3.7 2023-06-22 13:38:21 +02:00
Amin Ben Romdhane
d9faf65cb5 icwmp: 9.3.8 2023-06-22 09:40:29 +02:00
Amit Kumar
11b83611ba ponmnger: datamodel parameter name correction 2023-06-22 05:40:26 +00:00
Rahul Thakur
3a2674270b mcastmngr: implement snoop mode for linux targets 2023-06-22 04:38:35 +00:00
Vivek Kumar Dutta
a3d9850ae4 obuspa: 7.0.2.21 2023-06-21 21:08:45 +05:30
Sukru Senli
edb39ef5d8 ethmngr: update get_max_speed function for Broadcom 2023-06-21 16:02:30 +02:00
Vivek Kumar Dutta
e63d02dbb8 obuspa: 7.0.2.20 2023-06-21 18:00:34 +05:30
Vivek Kumar Dutta
81104955be ieee1905: 8.1.15 2023-06-20 19:08:09 +05:30
Yalu Zhang
8f30e41569 Update packages libvoice-broadcom and libvoice-airoha
Replace GSM-AMR with AMR
2023-06-20 15:29:05 +02:00
Amin Ben Romdhane
1d49d924fe bbfdm: 1.0.27 2023-06-19 17:30:50 +02:00
Amin Ben Romdhane
b24d674d6a bbfdm: 1.0.26 2023-06-19 16:13:50 +02:00
Suvendhu Hansa
5779233ec1 bbfdm: Fix port mapping rules precedence 2023-06-19 14:11:34 +00:00
Marek Puzyniak
8c768bb802 map-topology: 2.5.1.24 2023-06-19 11:46:59 +00:00
Anjan Chanda
bc51e940da ieee1905: 8.1.14 2023-06-19 13:21:07 +02:00
Vivek Kumar Dutta
1793cecba3 sulu: 2.2.6 2023-06-19 09:44:48 +05:30
Amin Ben Romdhane
17dcae26d4 bbfdm: 1.0.25 2023-06-16 09:47:27 +02:00
Jakob Olsson
1858923fec map-controller: 4.3.0.8 2023-06-15 15:28:10 +02:00
Jakob Olsson
2a392a4b98 map-agent: 4.3.3.6 2023-06-15 15:26:03 +02:00
Anjan Chanda
a6ce979c65 decollector: 4.0.2.3 2023-06-15 14:38:52 +02:00
Anjan Chanda
ed3659afe6 wifimngr: 16.0.8 2023-06-15 14:36:28 +02:00
Elena Vengerova
4abb86d20b libwifi: 7.2.106 2023-06-15 14:27:50 +02:00
Jakob Olsson
e762a9a87b map-topology: 2.5.1.23 2023-06-15 14:08:06 +02:00
Vivek Kumar Dutta
85fe1dbc92 bbfdm: 1.0.24 2023-06-15 17:37:29 +05:30
Amit Kumar
8489b6c3b6 map-topology: compilation flag for host wan stats
default enabled compilation flag defained for host was
statistics collection.
2023-06-15 16:16:04 +05:30
Grzegorz Sluja
d7e070db29 Update package dectmngr 3.5.11
Anonymous call to DECT should be displayed as "Withheld"
2023-06-15 12:43:25 +02:00
Rahul Thakur
8bca63207f libdsl: update makefile for broadcom target 2023-06-15 06:04:44 +00:00
Vivek Kumar Dutta
358e5721fe icwmp: 9.3.7 2023-06-14 14:29:53 +05:30
Jakob Olsson
807b7ed64d map-agent: 4.3.3.5 2023-06-14 10:12:11 +02:00
Amin Ben Romdhane
89bc51cace bbfdm: 1.0.23 2023-06-14 09:34:55 +02:00
Yalu Zhang
f3b90dfa4c libvoice-d2-1.0.5: Implementation of the API for changing codec on a connection 2023-06-13 16:16:49 +02:00
Yalu Zhang
79894a4580 Remove g729a from /lib/voice/codecs.json 2023-06-13 16:15:20 +02:00
Grzegorz Sluja
2a98ed289a Update package dectmngr
6ea57b3 Fix the bug that missed calls are not cleared after reading from the handset
2023-06-13 10:54:58 +02:00
Anatoly Mirin
e9f64893ac mcastmngr: fix mcast stats script
Fixed worng temp_igmp_file variable accessing, which caused the same
'temp_igmp_file' file to be used each time 'ubus call mcast stats'
was called instead of /tmp/igmp_stats_<PID> file.
Because of this, temp file was sometimes overwritten by the next call
before it had time to read and the IPTV_IGMP_4-12-1-24_2401.py test
ended with an error.

A waiting loop has also been added so that mcproxy has time to process
the signal and write the dump to a file.
2023-06-12 23:48:08 +03:00
Marek Puzyniak
caa0653bfe libwifi: 7.2.105 2023-06-12 06:55:07 +00:00
Marek Puzyniak
bcb5366e68 wifimngr: 16.0.7 2023-06-12 06:52:58 +00:00
Amin Ben Romdhane
b1158f5f60 bbfdm: 1.0.22 2023-06-09 17:09:22 +02:00
Vivek Kumar Dutta
a400700c49 obuspa: 7.0.2.19 2023-06-09 19:26:13 +05:30
Wenpeng Song
b571fd47c9 libvoice-airoha: Update codec only if the new codec is different from the current one 2023-06-09 09:45:35 +00:00
Jakob Olsson
8b952700ef map-controller: 4.3.0.7: create and use /etc/multiap 2023-06-08 16:45:08 +02:00
Vivek Kumar Dutta
23579fc961 obuspa: Fix crash on operate cmd failure 2023-06-08 19:38:20 +05:30
Jakob Olsson
76b388bb75 Revert "map-agent: add dependency on patch and diff"
This reverts commit 0d5aae21d7.
2023-06-08 13:27:32 +00:00
Jakob Olsson
0c7d3eaee4 map-agent: 4.3.3.4 2023-06-08 15:23:38 +02:00
Wenpeng Song
3986be824a libvoice-airoha: 1.0.4
Implementation of the API to set codec on a connection
2023-06-08 12:57:28 +00:00
Jakob Olsson
ba7b94d4e5 map-agent: 4.3.3.3 2023-06-08 14:21:00 +02:00
Amin Ben Romdhane
e1520fdd48 bbfdm: 1.0.21 2023-06-07 16:20:18 +02:00
Vivek Kumar Dutta
8d20d4ba45 obuspa: Added caching for refresh instances 2023-06-05 19:48:18 +05:30
Vivek Kumar Dutta
723c52bcf5 icwmp: Fix interface update handler
This change includes multiple fixes:
- Fix inform sent on interface.update with non-configured wan interface
- Fix Device.WiFi.NeighboringWiFiDiagnostic. for cwmp
2023-06-05 19:43:41 +05:30
suvendhu
6e3490b985 swmodd: uci-default scrip to migrate lxc-auto config
In release-6.5 lxc-auto used for autostart of lxc containers, this uci-default
migration script shall migrate the autostart info to the configured path.
2023-06-05 19:39:55 +05:30
Anatoly Mirin
81bfe4cc1b mcastmngr: pass max groups parameter to mcproxy
Setting '/proc/sys/net/ipv4/igmp_max_memberships' is not enough.
We must pass the max_groups parameter to the mcproxy to prevent MFC
entries from being added to mr_table and packet forwarding for extra
groups.

We also need to increase max_groups, since mcproxy always subscribe
two service groups - ALL-ROUTERS (224.0.0.2) and
ALL-IGMPv3-MC-ROUTERS (224.0.0.22).
2023-06-02 05:27:09 +00:00
arne.jonsson
653cd5bb97 iop: genconfig: display boards sorted 2023-06-01 15:34:22 +00:00
Andreas Gnau
910c8e61e2 iop: genconfig: Lower priority of BCM target
This is a hack to retain existing behaviour in case of ambiguities of
device names between differen targets. For now, let Broadcom have the
lowest priority.

genconfig script is to be replaced soon and the existing code makes
adding a proper check hard and we need some way to deal with the
ambiguity quickly.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-06-01 17:22:30 +02:00
Wenpeng Song
72a41b6d14 libvoice: fix an issue from the previous commit.
libvoice-d2, change default codec to G711A
2023-06-01 15:01:03 +02:00
Wenpeng Song
66303b874d voicemngr,libvoice-broadcom: Implement voice_connection_modify for updating codec
libvoice-airoha,libvoice-d2: Add a dummy API for setting codec on a connection TODO: the API needs to be implemented later.
2023-06-01 12:33:10 +02:00
Ratish
65d1d7932c Revert "mcastmngr: pass max groups parameter to mcproxy"
This reverts commit 9ce866a484.
2023-06-01 10:12:04 +00:00
suvendhu
cfad5f2223 icwmp:bbfdm: optimize runtime config handling 2023-06-01 14:58:25 +05:30
Amin Ben Romdhane
b47ff7b8c8 bbfdm: 1.0.19 2023-05-31 17:32:18 +02:00
Amin Ben Romdhane
e5704ad7f2 Revert "periodicstats: 1.4.2"
This reverts commit e5028b2980.
2023-05-31 16:04:10 +02:00
Vivek Kumar Dutta
729eeaba54 sulu: 2.2.5 2023-05-31 19:00:34 +05:30
Jakob Olsson
e5da615f25 map-controller: 4.3.0.6 2023-05-31 14:44:40 +02:00
Jakob Olsson
6c41215c19 map-agent: 4.3.3.2 2023-05-31 14:35:56 +02:00
Janusz Dziedzic
0b5d47b559 libwifi: 7.2.104 2023-05-31 12:23:07 +00:00
Janusz Dziedzic
7eba12fb54 libwifi: 7.2.103
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
2023-05-31 10:04:43 +00:00
Ratish
c0495af6e1 mcastmngr: fixed mcproxy crash
Fixed mcproxy crash during bootup for non broadcom platforms
2023-05-31 13:30:36 +05:30
Jakob Olsson
d04f1930d1 iop: config: select ieee1905 option CMDU_SA_IS_ALMAC 2023-05-30 11:12:13 +02:00
Vivek Kumar Dutta
852eaf8fc9 bbfdm: 1.0.18 2023-05-30 11:36:52 +05:30
Anatoly Mirin
9ce866a484 mcastmngr: pass max groups parameter to mcproxy
Setting '/proc/sys/net/ipv4/igmp_max_memberships' is not enough.
We must pass the max_groups parameter to the mcproxy to prevent MFC
entries from being added to mr_table and packet forwarding for extra
groups.

We also need to increase max_groups, since mcproxy always subscribe
two service groups - ALL-ROUTERS (224.0.0.2) and
ALL-IGMPv3-MC-ROUTERS (224.0.0.22).
2023-05-29 22:50:49 +03:00
Vivek Kumar Dutta
517e3d9f11 sulu: 2.2.4 2023-05-29 18:29:49 +05:30
Vivek Kumar Dutta
8f09187cba Optimize service restart/reloads 2023-05-28 09:53:51 +05:30
Jakob Olsson
85c139d7b7 map-controller: drop validation support for wpa and wpa2 2023-05-26 14:50:49 +02:00
subramanianc
2c1aeae4e3 qos: Handle forwarding policy tos value 2023-05-26 14:23:08 +05:30
Vivek Kumar Dutta
9d098e087f sulu: 2.2.3 2023-05-26 09:16:31 +05:30
Erik Karlsson
afb2d7f798 iop: feeds_update: return 1 on failure and add -i to update index only
Handle failures correctly so that CI for example will terminate. Add
-i option to update index only and not heads.

Take two of this which allows silent failures when updating the
feeds. This is not good but it is necessary as a workaround for the
issue with private feeds. This should be solved in a different
way. Reproducibility of builds in case of network outages for example
cannot be guaranteed as long as silent failure is allowed.
2023-05-25 14:55:45 +00:00
Amin Ben Romdhane
cb43510264 bbfdm: 1.0.17 2023-05-25 16:30:35 +02:00
Amin Ben Romdhane
b78d6684bf Revert "bulkdata: 2.1.1"
This reverts commit f0d7922c40.

It creates some issues when running cdr test. So we need to re-design how to run micro-service data model.
2023-05-25 15:16:39 +02:00
Erik Karlsson
a83ddcc563 obuspa: Add controller MTP verification
If CONFIG_OBUSPA_CONTROLLER_MTP_VERIFY=y is set, disabled by default,
reject incoming USP records if from_id does not match a controller
connected to the MTP instance on which the record was received.
2023-05-25 04:55:30 +00:00
Mikhail Kshevetskiy
c02eff7d9d Revert "iop: feeds_update: return 1 on failure and add -i to update index only"
This reverts commit 0e1ac637ac.

It breaks build for people who do not have access to all feeds.
2023-05-24 21:47:24 +03:00
Amin Ben Romdhane
c6c7d1177e bbfdm: 1.0.16 2023-05-24 18:27:19 +02:00
Vivek Kumar Dutta
b6c1bf5568 sulu: 2.2.2 2023-05-24 18:06:20 +05:30
Vivek Kumar Dutta
1b8de9ca51 obuspa: Optimize reboot/factoryReset handling 2023-05-24 15:17:36 +05:30
Grzegorz Sluja
c3199c3ea2 libvoice-airoha: 1.0.2
Disable echo_cancel by default since it caused DTMF detection
issues.
2023-05-24 10:28:17 +02:00
Erik Karlsson
0e1ac637ac iop: feeds_update: return 1 on failure and add -i to update index only
Handle failures correctly so that CI for example will terminate. Add
-i option to update index only and not heads.

Change-Id: Idabcd8c855eb513bf702c0808aff28b28262c9c7
2023-05-23 14:26:05 +00:00
Erik Karlsson
0975f022c5 iop: genconfig: avoid false positives when validating configuration
Fix config validation to avoid false positives caused by comments.
2023-05-23 14:26:05 +00:00
Erik Karlsson
93656b57db iop: genconfig: return 1 on failure
Handle failures correctly so that CI for example will terminate.

Change-Id: I676de24a797405966ae554f9f7dad186ada14e8a
2023-05-23 14:26:05 +00:00
Erik Karlsson
eab01d27dd iop: match against the full feed name when updating feeds.conf
Fix bug that is causing the wrong hash to be updated in case one feed
name happens to be a substring of another feed name.
2023-05-23 14:26:05 +00:00
Jakob Olsson
435aafe744 map-agent: 4.3.3.1 2023-05-23 13:28:13 +02:00
Amin Ben Romdhane
b6dc071e35 bbfdm: 1.0.15 2023-05-22 16:24:56 +02:00
Padmalochan Mohapatra
df7872e3f0 ponmngr : Respawn ponmngr if at all there is a failure due to initialization delay 2023-05-22 08:59:28 +00:00
Amit Kumar
fcd0e77ba8 urlfilter: handled high cpu uage of urlfilter 2023-05-22 13:18:46 +05:30
Vivek Kumar Dutta
f2f3f34859 obuspc: USP based controller 2023-05-22 11:11:18 +05:30
Vivek Kumar Dutta
69d2a50e2e sulu: 2.2.1 2023-05-19 17:33:22 +05:30
Amin Ben Romdhane
2c51c4e23e bbfdm: 1.0.14 2023-05-19 12:36:40 +02:00
Padmalochan Mohapatra
581f1eb5db urlfilter : Defensive null check for crash protection 2023-05-19 10:37:36 +05:30
Vivek Kumar Dutta
95bb5a5b48 obuspa: 7.0.2.14 2023-05-18 15:53:22 +05:30
Vivek Kumar Dutta
9d56c142ad usermngr: 1.1.4 2023-05-18 15:38:20 +05:30
Jakob Olsson
0aec0c5019 ieee1905: 8.1.11 2023-05-17 16:29:47 +02:00
Amin Ben Romdhane
fae611801e bbfdm: 1.0.13 2023-05-17 16:11:51 +02:00
Jakob Olsson
7e0e2fcf9f decollector: 4.0.2.1 2023-05-17 15:14:25 +02:00
Jakob Olsson
955c461e1c map-agent: 4.3.3.0 2023-05-17 15:07:55 +02:00
Andreas Gnau
2c6616ef05 iop: genconfig: Add hack for custom-devices
Add hack to consume configs from custom-devices in a separate feed
custom-devices, but only in that feed and not in other feeds. There is
no value in implementing a generic solution, because the whole genconfig
system will be replaced with something else.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-05-17 10:30:50 +00:00
Rahul Thakur
3202e0fbba libqos: fix compilation for mtk target 2023-05-17 12:18:50 +05:30
Vivek Kumar Dutta
84b83560b4 sulu: 2.2.0 2023-05-17 12:13:44 +05:30
ratish.28
7a61ff27bf mcastmngr: fix mcast stats for non broadcom platforms
Script for generating mcast stats is moved from common to platform
specific files. The logic for generating mcast stats on non broadcom
platforms is different and the stats format is also different.

For generating stats we are are sending SIGUSR1 signal to mcproxy
process which then writes multicast stats to /tmp/igmp_snooping_stats.
2023-05-16 14:27:22 +00:00
Rahul Thakur
d930fdd86d mcastmngr: enable snooping on linux platforms
enabling snooping in bridges in case of linux platforms
2023-05-16 14:25:41 +00:00
Padmalochan Mohapatra
80d7e57441 dslmngr : Static Code Analysis Setup and Fix Warnings 2023-05-16 14:23:46 +00:00
Amin Ben Romdhane
a9fa5d9465 bbfdm: 1.0.12 2023-05-16 16:17:19 +02:00
Amin Ben Romdhane
e5028b2980 periodicstats: 1.4.2 2023-05-16 16:17:01 +02:00
Amin Ben Romdhane
f0d7922c40 bulkdata: 2.1.1 2023-05-16 16:16:36 +02:00
Padmalochan Mohapatra
8aeadf5fdc libqos : Setup Static Code Analysis and Warning Fix 2023-05-16 09:20:26 +00:00
Padmalochan Mohapatra
680c01b121 libdsl : Setup Static Code Analysis and Warning Fix 2023-05-16 09:16:12 +00:00
Padmalochan Mohapatra
c08679e6c0 libethernet: setup static code analysis 2023-05-16 11:11:18 +05:30
Yalu Zhang
955ed436a1 libvoice-d2-1.0.3: Support DECT 2023-05-15 15:28:03 +02:00
Vivek Kumar Dutta
157a7d3946 obuspa: 7.0.2.13 2023-05-12 19:31:09 +05:30
Yalu Zhang
a4ad40ab4a dectmngr-3.5.9: Change narrow band to wide band for incoming calls to DECT handsets 2023-05-12 11:59:47 +02:00
Vivek Kumar Dutta
298045a822 bbfdm: 1.0.11 2023-05-12 12:20:26 +05:30
Amin Ben Romdhane
853ffee425 urlfilter: 1.1.7 2023-05-11 13:58:41 +02:00
Jakob Olsson
8e979cacc1 map-agent: 4.3.2.6 2023-05-11 10:55:52 +02:00
Lukasz Kotasa
3b14454efe libvoice-broadcom: Make G.722 appear in "ubus call endpt codecs" 2023-05-11 10:13:26 +02:00
Vivek Kumar Dutta
799050d650 bbfdm: 1.0.10 2023-05-10 15:22:25 +00:00
Jakob Olsson
7664dc719d map-controller: 4.3.0.5 2023-05-10 16:41:09 +02:00
Jakob Olsson
bcc93577df map-agent: 4.3.2.5 2023-05-10 16:40:29 +02:00
Janusz Dziedzic
a3cd8b5e03 libwifi: 7.2.102 2023-05-10 09:50:17 +00:00
Amin Ben Romdhane
24999bd690 urlfilter: 1.1.6 2023-05-10 05:23:35 +00:00
Nikhil Gurram
b2c3d32b51 iop: genconfig: add qualcomm ipq53xx target
Signed-off-by: Nikhil Gurram <quic_nikhgurr@quicinc.com>
2023-05-09 14:27:56 +00:00
Amin Ben Romdhane
28280c4faf bbfdm: 1.0.9 2023-05-08 18:42:57 +02:00
Yalu Zhang
e0a4b0e62a voicemngr-1.0.4: Change the logic for DECT hook event simulation 2023-05-08 17:23:13 +02:00
Amin Ben Romdhane
033b7b9e33 usermngr: 1.1.3 2023-05-08 17:01:58 +02:00
Vivek Kumar Dutta
fea3bd90b4 obuspa: 7.0.2.12 2023-05-08 17:12:21 +05:30
Vivek Kumar Dutta
d6c6cb791f obuspa: 7.0.2.11 2023-05-08 13:48:04 +05:30
Vivek Kumar Dutta
fb6a66096e obuspa: 7.0.2.10 2023-05-05 09:45:02 +05:30
Jakob Olsson
cbb6862e18 map-controller: 4.3.0.4 2023-05-04 17:35:28 +02:00
nevadita.chatterjee
a38c7d903a map-topology: 2.5.1.21 2023-05-04 13:12:26 +00:00
Jakob Olsson
b6e9f80d2a map-agent: 4.3.2.4 2023-05-04 14:56:58 +02:00
Grzegorz Sluja
de40c67ff2 libvoice-airoha: 1.0.1
Fix VoicePort validation with MTK DSP capabilities
2023-05-04 14:04:42 +02:00
Vivek Kumar Dutta
1da95ba8c2 sulu: 2.1.5 2023-05-04 16:51:14 +05:30
Arun Muthusamy
d038e4c845 Fix: Qcm, iptv fast leave is broken 2023-05-04 10:24:17 +00:00
Anjan Chanda
d8c0622287 ieee1905: 8.1.10 2023-05-04 09:26:09 +02:00
Andreas Gnau
953c01f40f kernel: gpio-button-hotplug: Support BCM SDK kernel
Move hacks to support compiling against the kernel built using the BCM SDK and
toolchain into a separate Makefile in the broadcom feed.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-05-03 15:47:57 +00:00
Vivek Kumar Dutta
97aeb16ee1 sulu: 2.1.4 2023-05-03 19:14:39 +05:30
Amin Ben Romdhane
600419c979 bbfdm: 1.0.8 2023-05-03 13:47:29 +02:00
Padmalochan Mohapatra
01918f89c4 libethernet : Fix for counters showing all zero in linux QCM platform's ubus call output 2023-05-03 15:34:34 +05:30
Jakob Olsson
9d4985297b map-agent: 4.3.2.3 2023-05-02 16:26:49 +02:00
Jakob Olsson
c2d48fa22d map-agent: 4.3.2.2 2023-05-02 16:16:59 +02:00
Sukru Senli
5cd4ce1d8d evoice: remove package 2023-05-02 11:21:10 +02:00
Grzegorz Sluja
043e8a78b5 voicemngr-1.0.3: Set the line type as per the environmental variable "hw_board_VoicePortNames" 2023-05-02 10:57:55 +02:00
Rahul Thakur
ecf76ddb06 mcastmngr: fix uci config changes get overwritten 2023-05-02 10:42:18 +05:30
Vivek Kumar Dutta
d93d8d7d1d obuspa: 7.0.2.9 2023-05-01 19:46:09 +05:30
Vivek Kumar Dutta
abed3a87ff sulu: 2.1.3 2023-05-01 14:43:06 +05:30
Vivek Kumar Dutta
e7fb499f20 swmodd: 2.2.4 2023-05-01 11:36:09 +05:30
Amin Ben Romdhane
69e902f7b9 bbfdm: 1.0.7 2023-04-28 17:58:11 +02:00
Jakob Olsson
0d5aae21d7 map-agent: add dependency on patch and diff 2023-04-28 17:19:19 +02:00
Grzegorz Sluja
87efa30939 dectmngr: 3.5.8
a9b4e71 Fix memory corruption in converAsciiToHexString()
b48f408 CI: move code-analysis to own container registry (IOP-9341)
903ea46 Fix the second caller id display issue
2023-04-28 14:33:47 +02:00
Jakob Olsson
3807a83701 map-agent: 4.3.2.1 2023-04-28 13:19:51 +02:00
Padmalochan Mohapatra
6dbebc8e88 libethernet: fix library apis for qcm and mtk targets 2023-04-28 11:19:14 +00:00
Jakob Olsson
178953ef25 map-agent: 4.3.2.0 2023-04-28 13:11:08 +02:00
Padmalochan Mohapatra
f772c65219 libethernet : Makefile changes for eth linux stats 2023-04-28 08:45:26 +00:00
Vivek Kumar Dutta
704ddf9311 icwmp: 9.3.4 2023-04-28 13:37:58 +05:30
suvendhu
993fedb1b1 swmodd: added timeout to pull container image from registry 2023-04-28 13:30:21 +05:30
subramanianc
7168b5f1e0 qosmngr: Mapping qos queue based on marked value 2023-04-28 04:15:33 +00:00
Amin Ben Romdhane
8fb0cbfb9e bbfdm: 1.0.6 2023-04-27 19:08:18 +02:00
Markus Gothe
9298fbeb33 libqos/libethernet: Use DEPENDS instead of PKG_BUILD_DEPENDS.
Due to syntax differences the latter doesn't really solve the
dependency when we use our build-script.

Instead use the same approach as the libwifi package.

Change-Id: If37b70141b541cca03474251904863a17e07ff45
2023-04-27 08:14:07 +00:00
Jani Juvan
c708007d0b iop: Remove iopsys- prefix from targets 2023-04-27 08:02:32 +00:00
Amin Ben Romdhane
2b88d9775a bbfdm: 1.0.5 2023-04-26 22:46:57 +02:00
Yalu Zhang
7b056cd783 dectmngr: fix a bug in etc/init.d/dectmngr which kills the script itself
This is a regression caused by the below commit. The command "killall dectmngr" tries to kill
both the service /usr/sbin/dectmngr and the init-script /etc/init.d/dectmngr. This is wrong.

The fix is to kill /usr/sbin/dectmngr only.

commit 501193da98
Author: Yalu Zhang <yalu.zhang@iopsys.eu>
Date:   Tue May 11 11:15:35 2021 +0200

    Rename etc/init.d/dect to etc/init.d/dectmngr
2023-04-26 16:25:45 +02:00
Jakob Olsson
218d613ed1 map-agent: 4.3.1.4 2023-04-26 14:21:47 +02:00
Anjan Chanda
921a116893 multi-ap - update package maintainers 2023-04-26 10:26:42 +02:00
Anjan Chanda
d982df14eb libdsl, libethernet, libqos - update package maintainer 2023-04-26 10:14:16 +02:00
Anjan Chanda
abf5ccfc9e libwifi: 7.2.101 2023-04-26 10:08:24 +02:00
Anjan Chanda
d6c2c87675 libeasy: 7.2.100 2023-04-26 10:04:00 +02:00
Anatoly Mirin
1abf717fc6 mcastmngr: add filtering rules for downstream
This is necessary to filter IGMP messages from downstream interfaces.
2023-04-26 01:20:10 +00:00
Rahul Thakur
adb318f735 libqos: fix qos stats on bcm96858 2023-04-25 12:36:52 +05:30
Janusz Dziedzic
dcf4d539e9 wifimngr: 16.0.6
remove 05-wifi script
2023-04-24 15:29:45 +00:00
Vivek Kumar Dutta
f84ba19f44 sulu: 2.1.2 2023-04-24 19:30:29 +05:30
Anjan Chanda
8bde4af2d3 ieee1905: 8.1.8 2023-04-24 10:29:35 +02:00
Vivek Kumar Dutta
ff49277c70 owsd: 1.1.6 2023-04-24 13:24:34 +05:30
Vivek Kumar Dutta
d04fbc72d6 usp-js: 1.2.1 2023-04-24 12:50:25 +05:30
Vivek Kumar Dutta
bff308e8c9 quickjs-websocket: select libwebsocket-openssl as default 2023-04-24 12:16:46 +05:30
Vivek Kumar Dutta
6ca6f97237 obuspa: 7.0.2.8 2023-04-24 08:57:06 +05:30
Anjan Chanda
7b8d9cfff9 Revert "ieee1905: 8.1.7"
This reverts commit e0516db95c.
2023-04-21 16:46:27 +02:00
Janusz Dziedzic
a842ea4105 map-topology: 2.5.1.20 2023-04-21 07:43:09 +00:00
Janusz Dziedzic
97fea4bad0 map-agent: 4.3.1.3 2023-04-21 07:41:38 +00:00
Vivek Kumar Dutta
2b39193d48 obuspa: 7.0.2.7 2023-04-20 18:50:12 +05:30
Vivek Kumar Dutta
5bef6dfff6 obuspa: config option for E2ESession mode 2023-04-20 17:37:15 +05:30
Anjan Chanda
6062346802 wifimngr: 16.0.5 2023-04-20 12:48:32 +02:00
Anjan Chanda
e0516db95c ieee1905: 8.1.7 2023-04-20 12:47:12 +02:00
Amin Ben Romdhane
3287ec7c75 icwmp: 9.3.3 2023-04-20 12:39:38 +02:00
Vivek Kumar Dutta
6359d50427 obuspa: 7.0.2.5 2023-04-20 15:48:30 +05:30
Vivek Kumar Dutta
22744c65c5 iop: remove owsd from default config 2023-04-20 15:03:30 +05:30
Vivek Kumar Dutta
5fb534e31b sulu: 2.1.1 2023-04-20 15:02:22 +05:30
Jakob Olsson
e39e1806ec map-agent: 4.3.1.2 2023-04-20 09:51:25 +02:00
subramanian c
d30c1615ca qosmngr: qos q map based on traffic class 2023-04-20 05:36:26 +00:00
Amin Ben Romdhane
1c752ef851 icwmp: 9.3.2 2023-04-19 17:12:47 +02:00
Amin Ben Romdhane
7cbcdbc43c bbfdm: 1.0.4 2023-04-19 17:11:25 +02:00
nevadita.chatterjee
0fcd253304 map-topology: 2.5.1.19 2023-04-19 15:07:23 +05:30
Vivek Kumar Dutta
ee9528cfa6 swmodd: Select dependent kernel flags 2023-04-19 13:03:00 +05:30
Vivek Kumar Dutta
be03425493 obuspa: 7.0.2.4 2023-04-19 11:31:31 +05:30
Amit Kumar
60206d37fc qosmngr: handled number of q get 2023-04-19 11:02:59 +05:30
Amit Kumar
7a7719d10e qosmngr: handing to get number of queue 2023-04-19 10:38:06 +05:30
Vivek Kumar Dutta
67e43d1fd7 iop: Select default variants for TR-x69 modules 2023-04-18 19:31:36 +05:30
Vivek Kumar Dutta
c496d0bc1c stunc: Align with bbfdm 2023-04-18 19:28:17 +05:30
Andreas Gnau
350a814e95 Revert "iop: feeds_update: Workaround OpenWrt bug wrt targets"
This reverts commit e26a9affbd. We updated
to v22.03.4, so the workaround causes problems because the actual issue
has been fixed.
2023-04-18 12:57:03 +00:00
Vivek Kumar Dutta
91da2b0c5b twamp: 1.3.1 2023-04-18 18:16:58 +05:30
Vivek Kumar Dutta
e7a589a524 usermngr: 1.1.2 2023-04-18 18:07:14 +05:30
Vivek Kumar Dutta
bd943a5eeb periodicstats: 1.4.1 2023-04-18 17:37:52 +05:30
Andreas Gnau
dafd42d2e8 libqos: Build-depend on bcmkernel
libqos requires headers from Broadcom when built for the Broadcom
target. Add build-time dependency when being built for Broadcom.

This fixes a race-condition where the build would fail if bcmkernel
build did not finish before libethernet build.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-04-18 11:59:13 +00:00
Andreas Gnau
3e8f59a75c libethernet: Build-depend on bcmkernel
libethernet requires headers from Broadcom when built for the Broadcom
target. Add build-time dependency when being built for Broadcom.

This fixes a race-condition where the build would fail if bcmkernel
build did not finish before the libethernet build.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-04-18 11:59:13 +00:00
Amin Ben Romdhane
a522817e1f bbfdm: 1.0.3 2023-04-18 13:31:42 +02:00
Vivek Kumar Dutta
dc4065b68b periodicstats: 1.4.0 2023-04-18 15:33:47 +05:30
Vivek Kumar Dutta
a51633f9da icwmp: 9.3.1 2023-04-18 14:06:13 +05:30
Vivek Kumar Dutta
402b17bec2 bbfdm: 1.0.2 2023-04-18 12:59:09 +05:30
Amin Ben Romdhane
32c232cdbe swmodd: 2.2.1 2023-04-18 08:46:04 +02:00
Erik Karlsson
9cf5186546 Remove service_stop use
service_stop is a legacy function and it should never be used with
procd services which are automatically stopped by /etc/rc.common

Also remove unnecessary boot() which just runs the "start" function.
2023-04-18 05:59:55 +00:00
Amin Ben Romdhane
dc9e060ee5 iop: Align libbbfdm with new name 2023-04-18 01:05:26 +02:00
Amin Ben Romdhane
0a271e8449 udpecho: 2.1.0 2023-04-18 00:45:53 +02:00
Amin Ben Romdhane
b7fc922820 xmppc: 2.1.1 2023-04-18 00:37:15 +02:00
Amin Ben Romdhane
413bf32059 usermngr: 1.1.1 2023-04-18 00:22:01 +02:00
Amin Ben Romdhane
d5ccc91d7f periodicstats: 1.3.0 2023-04-18 00:17:56 +02:00
Amin Ben Romdhane
7dab676e68 icwmp: 9.3.0 2023-04-18 00:14:30 +02:00
Amin Ben Romdhane
9d9f5980d3 bbfdm: 1.0.1 2023-04-18 00:11:13 +02:00
Vivek Kumar Dutta
e0fb31082b swmodd: 2.2.0 2023-04-17 20:09:52 +05:30
Vivek Kumar Dutta
d4bae2ec02 bulkdata: 2.1.0 2023-04-17 19:19:25 +05:30
Vivek Kumar Dutta
fdc123c60b uspd: replaced by bbfdm 2023-04-17 17:18:35 +05:30
Vivek Kumar Dutta
842d3b416d xmppc: 2.1.0 2023-04-17 17:10:06 +05:30
Vivek Kumar Dutta
c75d6dfc5b usermngr: 1.1.0 2023-04-17 17:03:39 +05:30
Vivek Kumar Dutta
a199588e9f twamp: 1.3.0 2023-04-17 16:55:35 +05:30
Jakob Olsson
d34a1e379e map-agent: 4.3.1.1 2023-04-17 12:23:30 +02:00
Jakob Olsson
339a34490b map-agent: 4.3.1.0 2023-04-14 16:51:41 +02:00
Vivek Kumar Dutta
b16d125624 sulu: 2.1.0 2023-04-14 19:21:38 +05:30
Vivek Kumar Dutta
12b0229129 twamp: 1.2.6 2023-04-14 19:05:55 +05:30
Sukru Senli
de6c9598ba endptmngr: remove package
replaced by voicemngr
2023-04-14 14:04:49 +02:00
Vivek Kumar Dutta
cc94b288d7 obuspa: Align with bbfdm 2023-04-14 12:45:45 +02:00
Amin Ben Romdhane
6795490c6a icwmp: Align with bbfdm 2023-04-14 12:43:42 +02:00
Amin Ben Romdhane
c36f7967ae iop: enable bbfdmd 2023-04-14 12:41:03 +02:00
Amin Ben Romdhane
7006566087 bbfdm: Add bbfdmd deamon 2023-04-14 12:39:39 +02:00
Anjan Chanda
2870af12ed rename package wfa-capi -> capiagent 2023-04-14 11:02:13 +02:00
Sukru Senli
4d2cb43980 multi-ap: use new url for multi-ap components 2023-04-14 10:43:51 +02:00
Anjan Chanda
08397bed23 rename package wfadatad -> decollector 2023-04-14 10:23:47 +02:00
Janusz Dziedzic
b1a5ff1206 libwifi: 7.2.100 2023-04-13 15:13:24 +00:00
Amit Kumar
129dc2cf22 map-topology: restructured host wan stats handling 2023-04-13 18:00:35 +05:30
Anjan Chanda
db2176be45 ieee1905: 8.0.15 2023-04-12 08:40:34 +02:00
Erik Karlsson
176bbf7566 usp-js: fix publishing of USP agent endpoint ID
Also remove triggering on "network" and "mosquitto" configuration
change as it is not necessary re-publish on "network" change and
re-publishing on "mosquitto" change does not work anyway as it is not
possible to guarantee that "uspjs" is reloaded after "mosquitto" has
already been reloaded and is up and running.
2023-04-11 09:47:36 +00:00
Vivek Kumar Dutta
13c0240e55 obuspa: enable E2ESession context 2023-04-06 12:55:15 +05:30
Amin Ben Romdhane
1990bb5c87 bbf: 7.0.1 2023-04-05 18:57:24 +02:00
Anjan Chanda
5687972623 libethernet: 7.2.102 2023-04-05 11:00:44 +02:00
Rahul Thakur
e43f9a3b87 Update package [libethernet] 2023-04-04 21:51:18 +05:30
Rahul Thakur
e7b2f63e4d Update package [libqos] 2023-04-04 19:23:23 +05:30
Rahul Thakur
c4c94d544b Update package [libethernet] 2023-04-04 19:20:55 +05:30
Meng
b179460524 quickjs: update to the latest version
Also add patch to fix std.loadFile issue for reading proc and sysfs.
2023-04-03 12:20:18 +00:00
Rahul Thakur
0e3291c267 libdsl: update makefile 2023-04-03 17:22:44 +05:30
Rahul Thakur
8d901ea47f libethernet: update makefile 2023-04-03 17:05:33 +05:30
Marina Maslova
b5579e9e54 libqos: add missing flags in Makefile 2023-04-03 13:43:14 +03:00
Omar Kallel
7b0eceb68a icwmp: Auto dual stack
Automatically select IPv6 or IPv4 based on defined
default_wan_interface and default_wan6_interface uci options
2023-04-01 22:49:31 +05:30
Janusz Dziedzic
e9c4415255 map-controller: 4.3.0.3 2023-03-30 14:40:16 +00:00
Jakob Olsson
64e1cfb9d1 map-controller: 4.3.0.2 2023-03-30 15:11:05 +02:00
Vivek Kumar Dutta
0a3fefb3ab sulu: 2.0.13 2023-03-30 16:44:17 +05:30
Andreas Gnau
7de9e6c348 iop: feeds_update: Move feed-devices generation earlier
Move feed-devices generation earlier, before target installation to
ensure that generated files are correct earlier.

Fixes: 3472f88614 ("iop: feeds_update: Generate list of feed-devices dirs")
Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-30 11:17:32 +02:00
Andreas Gnau
3472f88614 iop: feeds_update: Generate list of feed-devices dirs
During feeds_update, generate a list of directories that contain
additional device profiles. Via some includes in the target image
Makefiles, any <BOARD/image/<SUBTARGET>.mk inside those directories will
get included, thus allowing to extend the list of devices from an
external feed. Motivation for this is that the external feed might have
a different access permission than the target-definition.

This code should probably live in the Perl script scripts/feeds in the
future, but for now, while we are experimenting with the feature, the
existing approach in feeds_update is considered good enough.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-30 10:53:35 +02:00
Andreas Gnau
e58207edf0 iop: genconfig: Fix for targets with hyphens
A recent change broke genconfig for targets with hyphens. Fix this.

Fixes: a22898c92b ("iop: genconfig: Get subtarget using data from OpenWrt")
Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-30 08:32:31 +02:00
Vivek Kumar Dutta
54402f6602 sulu: 2.0.12 2023-03-29 22:24:28 +05:30
Vivek Kumar Dutta
28c2060dd0 obuspa: 7.0.2.1 2023-03-29 22:23:53 +05:30
Vivek Kumar Dutta
06ac881ea8 usp-js: 1.2.0 2023-03-29 22:22:48 +05:30
Jakob Olsson
4350dad6ca map-agent: 4.3.0.1 2023-03-29 17:39:51 +02:00
Jakob Olsson
c7443c7c2d map-controller: 4.3.0.1 2023-03-29 17:39:51 +02:00
Andreas Gnau
a22898c92b iop: genconfig: Get subtarget using data from OpenWrt
Determine the subtarget for a given device using data generated from the
OpenWrt build system instead of parsing the image makefiles directly.
This provides correct results even when fancy tricks like includes
inside the Makefiles are used, which is the case for an upcoming feature
where additional devices can be defined in external feeds.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-29 15:33:49 +00:00
Jakob Olsson
39dbb175b9 map-agent: 4.3.0.0 2023-03-29 15:34:58 +02:00
Jakob Olsson
ef22cee7a0 map-controller: 4.3.0.0 2023-03-29 15:33:47 +02:00
Amin Ben Romdhane
27e9f13529 icwmp: 9.1.23 2023-03-29 15:20:36 +02:00
ratish.28
158927eb5f ethmngr: reset port before configuration 2023-03-29 15:46:47 +05:30
Vivek Kumar Dutta
f6966c07af obuspa: Integrate 7.0.2 2023-03-29 11:03:13 +05:30
Amin Ben Romdhane
7f9972a43b uspd: 2.2.29 2023-03-28 16:28:42 +02:00
Amin Ben Romdhane
1b10c4e030 bbf: 7.0.0 2023-03-28 16:28:19 +02:00
Vivek Kumar Dutta
6c4b157002 icwmp: 9.1.22 2023-03-28 18:56:52 +05:30
Anjan Chanda
0230678f60 libwifi: fix build when libwifi package is not selected 2023-03-27 16:10:10 +02:00
Sukru Senli
5cf4ea6045 iop: config: re-select luci-app-firewall
dependency is fixed in luci-app-firewall package
2023-03-27 11:47:07 +02:00
Amin Ben Romdhane
13062d1ba0 bbf: 6.9.5 2023-03-27 10:58:08 +02:00
Vivek Kumar Dutta
4ce3134b14 sulu: 2.0.11 2023-03-26 20:38:27 +05:30
Vivek Kumar Dutta
e18842ac85 sulu: 2.0.10 2023-03-24 19:22:35 +05:30
Vivek Kumar Dutta
2a87ab3bf4 bbf: 6.9.4 2023-03-24 17:28:32 +05:30
Anjan Chanda
e0534180ba libeasy: fix libnl3 and openssl search paths 2023-03-24 09:45:48 +01:00
Anjan Chanda
eaaba91dd2 deprecate easy-soc-libs single package approach
introduce separate packages with the names - libeasy, libdsl,
libethernet, libqos and libwifi.
2023-03-23 19:13:06 +01:00
Yalu Zhang
15d3510256 libvoice-d2-1.0.2: Initialize comfort noise (CN) in all vTSP streams 2023-03-23 17:30:49 +01:00
Andreas Gnau
7847ed2c93 dectmngr: Workaround for BCM hs_uart driver
BCM "high speed" UART driver does not put the device-tree node of the
device into sysfs
2023-03-22 17:37:19 +01:00
Andreas Gnau
aaae999e3e dectmngr: Get GPIO via gpiod-tools instead of board-db
Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-22 17:37:19 +01:00
Andreas Gnau
77d1d82a89 dectmngr: Determine UART from device tree
Instead of hardcoding it, determine UART device to use for communication
with the DCX81 DECT chip using an alias in the device-tree
/aliases/dcx81-uart.

Also use the existence of the alias as an indicator of whether the
device supports DECT instead of checking for hw.board.hasDect in
board-db.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-03-22 17:37:19 +01:00
Anjan Chanda
fb324be411 wifimngr: 16.0.2 2023-03-22 17:25:21 +01:00
Yalu Zhang
d3b5a45c4c libvoice-d2-1.0.1: Fix a bug in DTMF event report 2023-03-22 16:42:45 +01:00
Amin Ben Romdhane
0d43ed56ba bbf: 6.9.3 2023-03-22 16:29:39 +01:00
Anjan Chanda
391887f09d wifimngr: 16.0.1 2023-03-22 15:01:18 +01:00
Anjan Chanda
630e2131b8 wifimngr: update dependencies on libwifi 2023-03-22 14:22:31 +01:00
Anjan Chanda
a73368eb2c easy-soc-libs: move libwifi to a separate new package 2023-03-22 14:22:31 +01:00
subramanianc
920a7d0346 qos: modularisation of qos code 2023-03-22 09:22:03 +00:00
vdutta
8ff5a2870f icwmp: 9.1.21 2023-03-22 14:20:07 +05:30
Amin Ben Romdhane
cf306ffaeb bbf: 6.9.2 2023-03-21 17:31:05 +01:00
Janusz Dziedzic
9702bdf7e5 map-agent: 4.2.0.8 2023-03-21 15:43:11 +00:00
Yalu Zhang
7f4e2c0675 voicemngr-1.0.2: Fix compiling errors on Broadcom due to _GNU_SOURCE 2023-03-21 11:38:21 +01:00
Andreas Gnau
9a3777dde9 dectmngr: cosmetic changes in init script 2023-03-21 09:21:13 +00:00
Suvendhu Hansa
964cff4e75 bbf: 6.9.1 2023-03-21 05:25:04 +00:00
Yalu Zhang
97398cb1f6 voicemngr-1.0.1: Remove the definition of _GNU_SOURCE from CFLAGS 2023-03-20 17:56:10 +01:00
suvendhu
c1d6a3f19e bbf: added UserInterface.HTTPAccess. 2023-03-20 12:30:02 +05:30
subramanian c
cd507fc16d bbf: Update qos dscp_filter commit-id 2023-03-20 04:49:26 +00:00
Anjan Chanda
b07f22de1f easy-soc-libs: 7.2.27 2023-03-17 15:39:40 +01:00
Yalu Zhang
b12efc747b libvoice-airoha-1.0.0: add /lib/voice/codecs.json which is used by codec capability 2023-03-17 10:42:44 +01:00
subramanianc
505c95f23b qos: Handle dscp_filter value in qos classify 2023-03-17 07:38:49 +00:00
Lukasz Kotasa
ff2f9a084e voicemngr: Fix json dependencies (re-delivery)
Was removed by accident.
2023-03-17 08:16:27 +01:00
vdutta
272bdc559c sulu: 2.0.9 2023-03-17 11:21:14 +05:30
Yalu Zhang
995764bd31 libvoice-broadcom-1.0.0: add /lib/voice/codecs.json which is used by codec capability 2023-03-16 16:44:33 +01:00
Yalu Zhang
7b483aa6e5 libvoice-d2-1.0.0: add /lib/voice/codecs.json which is used by codec capability 2023-03-16 16:44:33 +01:00
Lukasz Kotasa
8b3267a444 voicemngr: fix json dependencies (new sha) 2023-03-16 15:48:37 +01:00
Lukasz Kotasa
262e344ac3 Fix json dependencies 2023-03-16 13:05:05 +00:00
Amin Ben Romdhane
3676754e61 bbf: 6.8.51 2023-03-16 14:00:01 +01:00
vdutta
e8800e61b8 icwmp: 9.1.20 2023-03-16 16:20:50 +05:30
vdutta
b58d43d19a bbf: 6.8.50 2023-03-16 16:19:41 +05:30
vdutta
dc6f85134d uspd: 2.2.28 2023-03-16 16:18:23 +05:30
Marina Maslova
10a022c0ae ethmngr: linux: don't exclude 2500 from maxspeed candidates 2023-03-16 09:42:43 +00:00
Marina Maslova
f8c2a15174 ethmngr: switch airoha to linux 2023-03-16 11:25:48 +03:00
Yalu Zhang
5384408a63 voicemngr: add package dependency +libblobmsg-json 2023-03-15 17:07:48 +01:00
Amin Ben Romdhane
71ea7517a7 uspd: reload sysctl config every time network is reloaded 2023-03-15 15:31:15 +01:00
Amin Ben Romdhane
306aabe4ea bbf: 6.8.49 2023-03-15 15:30:42 +01:00
Grzegorz Sluja
21b15495da Update package libvoice-broadcom
401a392 Implement callback for getting platform specific codec capabilities
2023-03-15 11:13:25 +01:00
Grzegorz Sluja
96c2a4885a Update package libvoice-airoha
2a6ef14 Add an empty callback for getting platform specific codec capabilities
2023-03-15 11:13:25 +01:00
Grzegorz Sluja
6e992b3a8b Update package libvoice-d2
8a67b66 Support configuration of echo cancellation and silence suppression
3c2eb5b Add an empty callback for getting platform specific codec capabilities
2023-03-15 11:13:25 +01:00
Grzegorz Sluja
4d17441d44 voicemngr: Update voicemngr with recent changes of endptmngr 2023-03-15 11:13:25 +01:00
Anjan Chanda
41f83bb782 easy-soc-lib: 7.2.26 2023-03-15 11:11:43 +01:00
Vivek Kumar Dutta
80fbdf2afe bbf: Remove use of bbf context flag
- uspd: Remove use of bbf context flag
- icwmpd: Remove use of bbf context flag
2023-03-14 16:51:05 +00:00
Erik Karlsson
a0477ff19d obuspa: move obuspa MQTT listener from sulu to obuspa package
This makes it possible for obuspa in its default configuration to
connect to local MQTT broker even if sulu package is deselected.
2023-03-14 16:36:44 +00:00
Erik Karlsson
73e6a19070 obuspa: remove usptest MQTT listener
This listener interferes with non-test use of port 9001 for a non-test
MQTT over WS listener and it may be a source of vulnerability.

Change-Id: I6c2236bf9a381fa87d1adfc0ba866527adfe7f2d
2023-03-14 16:36:44 +00:00
Erik Karlsson
1811f4e42f bbf: remove uci-defaults script for mosquitto
This script is moved to the mosquitto package.
2023-03-14 16:36:44 +00:00
Janusz Dziedzic
177d4b43b2 map-agent: 4.2.0.7 2023-03-14 10:39:40 +00:00
Janusz Dziedzic
c86a387a17 easy-soc-libs: 7.2.20 2023-03-14 10:34:46 +00:00
vdutta
c8c1bb2a47 sulu: 2.0.8 2023-03-14 15:38:05 +05:30
Amin Ben Romdhane
45f4468736 bbf: 6.8.47 2023-03-13 17:11:15 +01:00
Anjan Chanda
43fe6e522b ieee1905: 8.0.12 2023-03-13 16:54:43 +01:00
Vitaliy Gaponov
b731667227 Ponmngr: set vendorId when XPON init in sh script 2023-03-13 14:09:09 +00:00
Amin Ben Romdhane
302a93121a bbf: 6.8.46 2023-03-13 12:29:01 +01:00
vdutta
212872b353 sulu: 2.0.7 2023-03-13 13:00:56 +05:30
Janusz Dziedzic
1d894d390b easy-soc-libs: 7.2.19 2023-03-13 06:33:30 +00:00
vdutta
9b3611b287 bbf: 6.8.45 2023-03-11 10:36:14 +05:30
vdutta
de8c4dbc02 icwmp: 9.1.18 2023-03-11 10:35:02 +05:30
Lukasz Kotasa
e8c3370f35 voicemngnr,libpicoevent-bcm: include bcm-toolchain.mk 2023-03-10 15:32:20 +00:00
Lukasz Kotasa
c37809e629 libvoice-broadcom: remove BCM_VOICEMNGR_WORKAROUND 2023-03-10 15:32:20 +00:00
Lukasz Kotasa
376b69eef1 voicemngr: changes related to bcm toolchain used 2023-03-10 15:32:20 +00:00
Lukasz Kotasa
92cde1ab5f libpicoevent-bcm: changes related to bcm toolchain used 2023-03-10 15:32:20 +00:00
Lukasz Kotasa
f722c70859 copy libpicoevent to libpicoevent-bcm (no changes) 2023-03-10 15:32:20 +00:00
Janusz Dziedzic
ed1194be9d easy-soc-libs: 7.2.18 2023-03-10 15:05:08 +00:00
nevadita.chatterjee
ef0c49d853 map-topology:2.5.1.18 2023-03-10 19:56:02 +05:30
vdutta
44ad141311 icwmp: 9.1.17 2023-03-10 19:43:09 +05:30
suvendhu
28e8fda73b obuspa: Add bulkdata csv report format support 2023-03-10 18:23:34 +05:30
suvendhu
44c6d5e7e6 obuspa: Add support of bulkdata json obj-hierarchy report 2023-03-10 12:45:04 +00:00
Filip Matusiak
6a8734ad4f map-agent: 4.2.0.6
Signed-off-by: Filip Matusiak <filip.matusiak@iopsys.eu>
2023-03-10 12:20:20 +01:00
Filip Matusiak
91cd49c655 map-controller 4.2.0.3
Signed-off-by: Filip Matusiak <filip.matusiak@iopsys.eu>
2023-03-10 12:19:59 +01:00
Anatoly Mirin
cb7256eba9 mcastmngr: fix ubus call in uci default script 2023-03-10 01:52:27 +00:00
Amin Ben Romdhane
82fe2012eb bbf: 6.8.44 2023-03-09 18:53:48 +01:00
Amin Ben Romdhane
26d9c43c7a bbf: 6.8.43 2023-03-09 15:27:39 +01:00
Yalu Zhang
a88061f8bf dectmngr-3.5.7: solve building issues on Qualcomm platform 2023-03-09 12:03:50 +01:00
Rahul Thakur
a92372c236 mcastmngr: update uci default script 2023-03-09 10:20:38 +00:00
Janusz Dziedzic
f4a33e75bd wifimngr: 15.0.7 2023-03-09 09:47:07 +00:00
Janusz Dziedzic
7c8b92e588 easy-soc-libs: 7.2.17 2023-03-09 09:46:02 +00:00
vdutta
cd29e81357 sulu: 2.0.6 2023-03-08 21:53:48 +05:30
vdutta
da85372764 icwmp: 9.1.16 2023-03-08 21:50:09 +05:30
vdutta
5b7a4d13ca swmodd: 2.1.23 2023-03-08 21:49:00 +05:30
Yalu Zhang
86a553c697 Update package vicemngr and libvoice-d2
Correct the package dependencies
2023-03-08 14:05:44 +01:00
Yalu Zhang
769d814a6a libvoice-d2: add d2-voice to the package dependency 2023-03-08 12:06:13 +01:00
Yalu Zhang
51b076831a Update package libvoice-d2
Update Makefile due to d2-voice upgrading
2023-03-08 11:55:29 +01:00
Yalu Zhang
316a861269 Update package libvoice-d2
Update Makefile to fix the compilation error due to d2-voice upgrading
2023-03-08 11:44:26 +01:00
Yalu Zhang
d88eb8054b Update package libvoice-d2
Keep the default country setting if the configured country is not supported
2023-03-07 17:13:26 +01:00
Yalu Zhang
7d3387b095 Update package libvoice-d2
- Add tones unobtainble and stutter dial for supported countries
- Support playing back DTMF tones
- Configure country specific ring signal
2023-03-07 14:06:16 +01:00
Omar Kallel
f3059ca516 icwmp: Add ActiveNotificationThrottle feature 2023-03-07 11:07:57 +01:00
Jakob Olsson
ae94f3390f wfadatad: 4.0.1.7 2023-03-07 09:41:22 +01:00
Jakob Olsson
5b3ad47604 ieee1905: 8.0.11 2023-03-07 09:41:22 +01:00
Jakob Olsson
e5bda20934 map-agent: 4.2.0.5 2023-03-07 09:41:10 +01:00
vdutta
a6bde81c24 uspd: 2.2.26 2023-03-07 10:53:05 +05:30
vdutta
d1f74be5d5 sulu:2.0.5 2023-03-05 12:55:56 +05:30
Vitaliy Gaponov
8f3a5ca899 Ponmngr: move Transceiver section under ANI 2023-03-03 09:26:56 +00:00
Jakob Olsson
e5826116c1 Revert "map-agent: 4.2.0.5"
This reverts commit c3cdc2e859.
2023-03-02 14:58:15 +01:00
Jakob Olsson
a3bbe22c4d Revert "ieee1905: 8.0.11"
This reverts commit ecf1e6780f.
2023-03-02 14:58:15 +01:00
Jakob Olsson
d850fa30bc Revert "wfadatad: 4.0.1.7"
This reverts commit ac99059cd1.
2023-03-02 14:58:15 +01:00
subramanianc
ae9aa435db libqos: Enable qos stats for nvg578 and nvg678 2023-03-02 19:12:28 +05:30
Grzegorz Sluja
5ab73e5ff8 Update package voicemngr
Fix for congestion tone not played
2023-03-02 14:10:31 +01:00
Grzegorz Sluja
663afa1332 Update package libvoice-airoha
Move the definition of RTP_HEADER_SIZE from airoha-priv.h to libvoice-priv.h
2023-03-02 14:08:45 +01:00
vdutta
d343d53c36 bbf: Support for SSH object 2023-03-02 18:15:03 +05:30
vdutta
c22193831e bbf: 6.8.41 2023-03-02 16:54:39 +05:30
Jakob Olsson
ac99059cd1 wfadatad: 4.0.1.7 2023-03-02 12:15:11 +01:00
Jakob Olsson
ecf1e6780f ieee1905: 8.0.11 2023-03-02 12:09:45 +01:00
Jakob Olsson
c3cdc2e859 map-agent: 4.2.0.5 2023-03-02 12:04:08 +01:00
vdutta
b5e675774e icwmp: 9.1.14 2023-03-02 13:37:29 +05:30
vdutta
5f116f84a2 sulu: 2.0.4 2023-03-02 13:30:43 +05:30
vdutta
e16f723dd0 sulu: 2.0.3 2023-03-01 15:35:00 +05:30
vdutta
c392ca42b9 iop: replace miniupnpd with ssdpd 2023-03-01 09:45:55 +05:30
Amin Ben Romdhane
3b5f77d70d bbf: 6.8.40 2023-02-28 23:41:48 +01:00
Jakob Olsson
5a44065b48 map-controller: 4.2.0.2 2023-02-28 17:24:00 +01:00
Jakob Olsson
3c030ea40d map-agent: 4.2.0.4 2023-02-28 17:23:19 +01:00
Janusz Dziedzic
00d9c04d22 wifimngr: 15.0.6 2023-02-28 11:00:29 +00:00
vdutta
7502a9418d Reverted: bbf: config flag to select packages based on selected datamodels 2023-02-28 12:47:48 +05:30
Amin Ben Romdhane
ecbf78e517 bbf: 6.8.38 2023-02-27 18:29:58 +01:00
vdutta
024e9d6291 bbf: 6.8.37 2023-02-27 18:31:10 +05:30
suvendhu
d7f607aaa4 bbf: Added config flag to select packages based on selected datamodels 2023-02-24 19:54:22 +05:30
Omar Kallel
bd5b448d38 Move ParameterKey handling in icwmp client 2023-02-24 10:29:35 +01:00
vdutta
10ee5827b9 obuspa: 7.0.0.7 2023-02-24 10:58:53 +05:30
Janusz Dziedzic
bc0e86f2de map-agent: 4.2.0.3 2023-02-23 16:10:25 +00:00
Yalu Zhang
6584bcb6d5 Update packages libvoice-d2 and voicemngr
- libvoice-d2: Change the default RTP payload time for G.711 to 20s from 10s
- voicemngr: Move the definition of RTP_HEADER_SIZE from airoha-priv.h to libvoice-priv.h
- voicemngr: Fix truncation errors for %d representation of int
2023-02-23 12:17:09 +01:00
vdutta
adc3dee346 bbf: 6.8.34 2023-02-23 10:55:24 +05:30
vdutta
8f3027c10a obuspa: 7.0.0.6 2023-02-23 09:08:58 +05:30
Grzegorz Sluja
7f542aef0c libvoice-airoha: Fix for playing unobtainable tone 2023-02-22 14:08:06 +01:00
Amin Ben Romdhane
bb213672f7 bbf: 6.8.33 2023-02-22 10:58:40 +01:00
Grzegorz Sluja
c0bdd69f42 libvoice-airoha: Add flash hook timings to country specifications 2023-02-21 16:26:35 +01:00
Yalu Zhang
05d96f2adf Update package libvoice-d2
Support writing ingress RTP and RTCP packets to vTSP
2023-02-21 13:42:41 +01:00
Anjan Chanda
702f18b133 easy-soc-libs: move LIBWIFI_USE_CTRL_IFACE to wifi.mk 2023-02-21 13:01:01 +01:00
Jakob Olsson
ffb2ca218f map-agent: 2.4.0.2 2023-02-21 10:00:07 +01:00
Markus Gothe
cdcc69a881 gryphon-led-module: Improve error handling.
For errors to propagte correctly we cannot set
the pointer to NULL.

Change-Id: Ie220f3dbe75b7eeefe2e0080279826c6b99144ef
2023-02-20 15:46:49 +00:00
Arne Jonsson
cdcafdb724 voicemngr: fix procd env variables in startup script 2023-02-20 15:22:19 +00:00
nevadita.chatterjee
ec7175267e map-topology: 2.5.1.17 2023-02-20 14:17:54 +05:30
Grzegorz Sluja
64d58681ea libvoice-airoha: Enable VAD together with CNG based on comfort_noise config 2023-02-17 12:11:41 +01:00
Yalu Zhang
7355dcb205 Update packages voicemngr and libvoice-d2
- Support connection operations
- Call voice_connection_deinit() to free resources on exit
2023-02-17 11:06:57 +01:00
Grzegorz Sluja
82afbb191c libvoice-airoha: Code refactoring, cleanup and handle ringing signals properly 2023-02-17 10:11:22 +01:00
Grzegorz Sluja
62d586fc60 libvoice-airoha: Implementation for ingress DTMF tone generation 2023-02-16 13:42:25 +01:00
Padmalochan Mohapatra
227a65b4c3 easy-soc-libs : Commit hash update in Makefile 2023-02-16 17:21:09 +05:30
Padmalochan Mohapatra
9e28ed1733 ethmngr : Makefile changes enabling dependancies for Mediatek(linux) 2023-02-16 11:12:36 +00:00
Anatoly Mirin
95471502d7 mcastmngr: integrate mcproxy
linux/lib/mcast/linux.sh converts mcastmngr UCI params to the
mcproxy native conf file.
2023-02-16 08:34:26 +00:00
suvendhu
b00207e894 obuspa: fix shellcheck errors 2023-02-16 06:26:52 +00:00
suvendhu
e508592575 swmodd: fix shell check errors 2023-02-16 06:26:27 +00:00
suvendhu
d911030e19 xmppc: fix shellcheck error 2023-02-16 06:25:11 +00:00
suvendhu
b69a074909 bulkdata: fix shellcheck error 2023-02-16 06:24:43 +00:00
suvendhu
5639e84185 udpecho: fix shellcheck error 2023-02-16 06:24:13 +00:00
suvendhu
406de53d91 uspd: fix shellcheck error 2023-02-16 06:23:43 +00:00
suvendhu
6c6abcd25a icwmp: fix shellcheck errors 2023-02-16 06:23:11 +00:00
Amin Ben Romdhane
32ea5ee333 bbf: 6.8.32 2023-02-15 16:11:35 +01:00
vdutta
4f8e7d9899 obuspa: 7.0.0.4 2023-02-15 19:42:54 +05:30
vdutta
331441e450 icwmp: 9.1.11 2023-02-15 19:33:06 +05:30
suvendhu
1ab88ddc70 twamp: fixed shellcheck errors 2023-02-15 19:04:26 +05:30
vdutta
57733d7f69 sulu: 2.0.2 2023-02-15 18:57:38 +05:30
suvendhu
f99105089a usermngr: Removed shellcheck error 2023-02-15 17:03:55 +05:30
suvendhu
649d57c9d3 bbf: removed shellcheck errors 2023-02-15 16:52:07 +05:30
Janusz Dziedzic
2e61d61460 easy-soc-libs: 7.2.15 2023-02-14 18:01:36 +00:00
Anjan Chanda
f92d060e06 wfadatad: 4.0.1.6 2023-02-14 18:42:21 +01:00
Anjan Chanda
242948948b easy-soc-libs: 7.2.14 2023-02-14 18:38:18 +01:00
Anjan Chanda
ddd2f3a7da ieee1905: 8.0.10 2023-02-14 18:34:28 +01:00
Jakob Olsson
aa7ac703b4 map-controller: 4.2.0.1 2023-02-14 17:52:16 +01:00
Jakob Olsson
f91fdd322e map-agent: 4.2.0.1 2023-02-14 17:42:50 +01:00
Grzegorz Sluja
e39818e9d1 fixup! libvoice-airoha: code refinement 2023-02-14 14:17:00 +01:00
Grzegorz Sluja
e62f24cc8e libvoice-airoha: code refinement 2023-02-14 11:33:45 +01:00
vdutta
dc20f7f5f0 icwmp: Support IPLayerCapacity diagnostics 2023-02-14 14:06:59 +05:30
vdutta
f6fa3f1a0b obudpst: support host package 2023-02-14 14:05:07 +05:30
vdutta
60ae096737 bbf: Support for TR-471 2023-02-14 14:03:03 +05:30
Amin Ben Romdhane
fc0ad5ba69 bbf: 6.8.29 2023-02-10 18:49:44 +01:00
Yalu Zhang
8ae1aa6d8c Update package libvoice-d2
Revert a tempory workaround
2023-02-10 16:17:52 +01:00
Yalu Zhang
0e774b253c Update packages voicemngr and libvoice-d2
Update dependencies for Qualcomm platform
2023-02-10 14:41:00 +01:00
vdutta
a853005c4d sulu: 2.0.1 2023-02-10 19:00:55 +05:30
subramanian c
19b0491590 qosmngr: Handle classify section name as per uci 2023-02-09 14:26:46 +00:00
Jakob Olsson
dd153fb261 map-agent: 4.2.0.0 2023-02-09 14:54:22 +01:00
Jakob Olsson
87ef9d3f67 map-controller: 4.2.0.0 2023-02-09 14:53:20 +01:00
Jakob Olsson
fb24ea7fef ieee1905: 8.0.0 2023-02-09 14:52:03 +01:00
Janusz Dziedzic
fd5b6a249b map-agent: 4.1.2.3 2023-02-09 13:27:57 +00:00
Janusz Dziedzic
287db84d6d easy-soc-libs: 7.2.13 2023-02-09 11:03:42 +00:00
vdutta
6c59af0c91 easy-soc-libs: fix compilation 2023-02-09 10:48:47 +05:30
vdutta
8072d96785 icwmp: 9.1.9 2023-02-09 09:48:27 +05:30
vdutta
7a552e7faf bbf: 6.8.28 2023-02-09 09:03:47 +05:30
Sukru Senli
21bef13eff iop: genconfig: remove support for iopsys-ramips 2023-02-08 14:16:41 +01:00
Sukru Senli
379d09248d easy-soc-libs: remove reference to iopsys-ramips target 2023-02-08 14:09:35 +01:00
Andreas Gnau
31e356de22 uboot: Remove package
This package delivers our own U-Boot port to MT7621. Remove it, because
we drop support for the ramips target. In the meantime, U-Boot upstream
also has full support for MT7621, but given that support for the ramips
target with the MT7621 subtarget and EX400 device is dropped anyways,
there is no point in migrating to that.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
2023-02-06 19:43:07 +01:00
Amin Ben Romdhane
58afb75fd5 icwmp: 9.1.8 2023-02-06 17:48:59 +01:00
Amin Ben Romdhane
f6cf333457 bbf: 6.8.27 2023-02-06 17:46:34 +01:00
vdutta
5e71c0b886 icwmp: 9.1.7 2023-02-06 15:45:55 +05:30
Jakob Olsson
7fb146dea4 map-agent: 4.1.2.2 2023-02-06 11:02:55 +01:00
Rahul Thakur
669c87149f ponmngr: xpon ubus object minor fixes 2023-02-05 21:52:44 +05:30
Subramanian C
9c2a82ea90 qosmngr: Map DSCPCheck to option dscp_filter for uci qos 2023-02-03 12:33:53 +00:00
Markus Gothe
1e74f24e1c xmpcc: Fix hotplug-script so it is executed.
Use of 'local' outside of a function makes the script
halt and never get to the point where it reloads xmppc.
2023-02-03 11:53:15 +01:00
Markus Gothe
e82b011f20 ethmngr: Fix number of ports for Broadcom runner platforms. 2023-02-03 04:37:39 +00:00
Markus Gothe
09211031ac qosmngr: Update BDMF shell usage 2023-02-03 04:35:01 +00:00
nevadita.chatterjee
7a877b0c45 map-agent:4.1.2.1 2023-02-02 13:55:24 +00:00
Anjan Chanda
814e17842f ieee1905: 7.0.16 2023-02-02 14:47:58 +01:00
Grzegorz Sluja
5340619a96 libvoice-airoha: Support the basic call scenarios 2023-02-02 13:07:24 +01:00
Vivek Kumar Dutta
9e65220253 sulu: Separate packages for plugins
- Check Readme.md for details
2023-02-02 11:02:13 +00:00
Grzegorz Sluja
3cd58f18cc Add a new package libvoice-airoha 2023-02-02 10:40:20 +00:00
Padmalochan Mohapatra
36a51d0a77 easy-soc-libs : Makefile update 2023-02-02 14:36:42 +05:30
vdutta
52ae39fa32 bbf: 6.8.26 2023-02-02 12:08:59 +05:30
arne.jonsson
139c5a7d6e easy-soc-libs: 7.2.11 Support new BCM WL22D1GA driver
commit 4569d6a5e4cda440003ee7f0cb1e60cba82aa988
Author: Andreas Gnau <andreas.gnau@iopsys.eu>
Date:   Wed Feb 1 17:05:42 2023 +0100

    libwifi: Temporarily comment WLC_E_PROBE_STA_IND

    Temporarily comment WLC_E_PROBE_STA_IND until we have updated the
    BCM WiFi patches to the new impl91 driver. This commit is to be
    reverted once that is done.

    Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>

commit c0a1ff8ac5a9c06e6d9b56c32d27711146fab149
Author: Anjan Chanda <anjan.chanda@iopsys.eu>
Date:   Fri Nov 11 20:38:02 2022 +0100

    libwifi: Update for BCM WL22D1GA impl91/impl93

    Add new include and adapt field name for new Broadcom WiFi driver
    22.1-17.10.251.3202 (impl91/impl93) that we switch to as part of
    moving  to SDK 5.04L.04p1.
2023-02-01 18:28:03 +01:00
Sukru Senli
28fa1ed6f9 Mcast platform 2023-02-01 11:46:10 +00:00
Janusz Dziedzic
116b9c4e70 map-agent: 4.1.2.0 2023-02-01 09:53:19 +00:00
Janusz Dziedzic
e728729917 wifimngr: 15.0.5 2023-02-01 09:31:28 +00:00
Maxim Menshikov
ed1c6c4cbb easy-soc-libs: 7.2.10
libqos/econet: inverse queue number by default
2023-02-01 10:18:24 +01:00
vdutta
84f10fa947 swmodd: 2.1.21 2023-02-01 10:46:47 +05:30
Marina Maslova
6c2439841d easy-soc-libs: 7.2.9
libqos: fix build issue for airoha caused by stats type change to u64
2023-01-31 18:06:40 +01:00
Anjan Chanda
428071241f wfadatad: 4.0.1.0 2023-01-31 16:56:29 +01:00
Omar Kallel
8c651abc6d icwmp: Update dhcp option 60 handling 2023-01-31 16:17:27 +01:00
suvendhu
5a1a0af706 icwmpd: remove DHCP option 125 deletion 2023-01-31 13:52:39 +00:00
Amin Ben Romdhane
a79b121895 bbf: 6.8.25 2023-01-31 14:48:51 +01:00
nevadita.chatterjee
f859973f32 map-topology:2.5.1.16 2023-01-31 19:13:48 +05:30
arne.jonsson
a9706e0d73 Remove use of BRCM_SDK_VER 2023-01-31 10:22:22 +01:00
Jakob Olsson
9953e9ee9b map-controller: 4.1.2.0 2023-01-31 10:11:02 +01:00
Jakob Olsson
0b680a8f67 map-agent: 4.1.1.0 2023-01-31 10:09:29 +01:00
Jakob Olsson
ef3e1681f9 ieee1905: 7.0.3 2023-01-31 10:08:39 +01:00
Maxim Menshikov
e28995fa4e qosmngr/airoha: enable eight queue PQ/WRR 2023-01-31 08:29:44 +00:00
vdutta
aee1acab41 sulu: 1.3.30 2023-01-30 17:46:37 +05:30
Padmalochan Mohapatra
0c7aa209b5 iopsys : Update packages [easy-soc-libs] [qosmngr] 2023-01-30 11:25:41 +00:00
Amin Ben Romdhane
827d2768d6 bbf: 6.8.24 2023-01-30 11:39:56 +01:00
Padmalochan Mohapatra
60e4467f88 easy-soc-libs : Makefile changes to support linux in libqos. 2023-01-30 06:48:25 +00:00
Yalu Zhang
81950e5334 Update packages voicemngr and libvoice-broadcom
Remove some unused events.
2023-01-27 15:20:55 +01:00
vdutta
d8c7ebb2d6 sulu: 1.3.29 2023-01-27 15:36:12 +05:30
Amin Ben Romdhane
5de90c7a9c bbf: 6.8.23 2023-01-26 15:01:30 +01:00
vdutta
5d7e5772a8 obudpst: 7.5.1 2023-01-26 17:15:42 +05:30
Amin Ben Romdhane
0f886bbdf1 bbf: 6.8.22 2023-01-26 12:02:58 +01:00
vdutta
2275c00b9f sulu: 1.3.28 2023-01-26 12:18:09 +05:30
Markus Gothe
00c6f60f2e twamp: Don't try to resolve IP-adresses in firewall. 2023-01-26 04:24:49 +00:00
Erik Karlsson
6fd65dddc8 urlfilter: use iptables/ip6tables -nL 2023-01-25 18:54:53 +01:00
Erik Karlsson
4c7577bf1c udpecho: use iptables/ip6tables -nL 2023-01-25 18:54:29 +01:00
Erik Karlsson
d162e82d20 bbf: use iptables -nL 2023-01-25 18:53:53 +01:00
Jakob Olsson
49f95c3d05 map-agent: 4.1.0.4: add unauthorized sta option 2023-01-25 12:08:11 +01:00
Amit Kumar
f361dbd5e7 ponmngr: updated xpon json for onuactivation param 2023-01-25 12:13:35 +05:30
Amin Ben Romdhane
bce4779702 bbf: 6.8.21 2023-01-24 14:21:41 +01:00
Amin Ben Romdhane
a715e0a659 ssdpd: 1.0.5 2023-01-24 14:12:42 +01:00
vdutta
f288578904 sulu: 1.3.27 2023-01-20 11:52:54 +05:30
Amit Kumar
1231fc226c ponmngr: bbf json updated for xpon data model
Updated for Transceiver connector type
2023-01-19 13:05:08 +05:30
Jakob Olsson
1d189552b2 map-agent: 4.1.0.3 2023-01-18 17:14:42 +01:00
Jakob Olsson
ce4d398492 map-controller: 4.1.1.1 2023-01-18 16:55:09 +01:00
Jakob Olsson
b553bc34bf map-agent: 4.1.0.2 2023-01-18 16:15:35 +01:00
vdutta
ddb3e69af8 usp-js: 1.1.0 2023-01-18 20:25:29 +05:30
vdutta
fc6a687322 obuspa: 7.0.0.3 2023-01-18 20:13:46 +05:30
Amin Ben Romdhane
d7c553457c bbf: 6.8.20 2023-01-18 15:05:40 +01:00
Jakob Olsson
2a82271322 map-controller: correctly bump package to 4.1.1.0 2023-01-18 13:18:43 +01:00
Jakob Olsson
a2b454ccb6 map-controller: 4.1.1.0 2023-01-18 13:07:43 +01:00
Janusz Dziedzic
cb17e5b375 map-controller: 4.1.0.4 2023-01-18 10:22:46 +00:00
Sukru Senli
c54cb80862 qosmngr: do not limit number of queues to 4 for BCM68880
also remove unused check of /proc/socinfo
2023-01-18 06:26:11 +00:00
subramanian c
bf1d366ce7 qosmngr: generate ip rules from classify section 2023-01-18 06:16:29 +00:00
Rahul
346319892c qosmngr: add order to default classification rules 2023-01-18 05:50:40 +00:00
Omar Kallel
060a1ccfbb extract ManagementServer datamodel to cwmp package as dynamic aobject 2023-01-18 06:04:48 +01:00
Jakob Olsson
74a8169050 map-controller: 4.1.0.3 2023-01-17 17:23:01 +01:00
vdutta
15bb04abd1 obuspa: 7.0.0.2 2023-01-17 19:27:03 +05:30
Janusz Dziedzic
51b2ffd607 easy-soc-libs: 7.2.7 2023-01-17 12:34:50 +00:00
vdutta
091c4b81f9 bbf: 6.8.19 2023-01-17 17:44:46 +05:30
nevadita.chatterjee
c68554a42c map-controller: Fixing pidof in reload 2023-01-17 16:48:26 +05:30
Jakob Olsson
10de78cd1a map-topology: 2.5.1.15 2023-01-17 11:40:17 +01:00
Filip Matusiak
6bd995e445 map-controller: 4.1.0.2
Signed-off-by: Filip Matusiak <filip.matusiak@iopsys.eu>
2023-01-17 09:41:52 +01:00
suvendhu
087e0e3750 icwmp: Added dslforum.org in dhcp option 60 2023-01-16 16:58:40 +05:30
Sukru Senli
c3f5c269aa iop: genconfig: in customerconfigs use the same branch as in iowrt repo 2023-01-16 11:57:04 +01:00
vdutta
4ef1ac4703 udpecho: 2.0.3 2023-01-16 15:20:05 +05:30
vdutta
b9c58a99a5 twamp: 1.2.4 2023-01-16 14:48:48 +05:30
vdutta
4bec432070 swmodd: 2.1.20 2023-01-16 14:45:27 +05:30
vdutta
e2556a0f3d stunc: 1.1.15 2023-01-16 14:44:02 +05:30
vdutta
f265b9fe7b usermngr: 1.0.6 2023-01-16 14:41:59 +05:30
Anjan Chanda
c2bf977fb6 iop: add libwifiutils package in default config 2023-01-16 09:52:51 +01:00
Anjan Chanda
44030e710a wfadatad: add libwifiutils.so as package dependency 2023-01-16 09:52:51 +01:00
Anjan Chanda
e0028e8079 map-controller: add libwifiutils.so as package dependency 2023-01-16 09:52:51 +01:00
Anjan Chanda
9c14d21609 easy-soc-libs: 7.2.6: fix build on platforms having no WiFi 2023-01-16 09:52:51 +01:00
Amit Kumar
d690e1a7a5 ponmngr: Updated XPON bbf json for Transceiver 2023-01-16 07:50:30 +00:00
vdutta
bfacccba18 obuspa: Integrate obuspa-7.0.0 2023-01-16 12:47:36 +05:30
Marek Puzyniak
8b93d6ce3a wifimngr: 15.0.4 2023-01-13 16:35:16 +00:00
Marek Puzyniak
69d12b567d easy-soc-libs: 7.2.5 2023-01-13 16:33:28 +00:00
Jakob Olsson
4fbede4cb2 map-controller: 4.1.0.1 2023-01-13 16:55:53 +01:00
Jakob Olsson
e758208a17 map-agent: 4.1.0.1 2023-01-13 16:42:26 +01:00
Amin Ben Romdhane
a5f04ddb5f bbf: 6.8.18 2023-01-13 11:18:25 +01:00
vdutta
48913ed4bf sulu: 1.3.26 2023-01-13 12:20:48 +05:30
Amin Ben Romdhane
a8e8d4b109 ssdpd: 1.0.4 2023-01-12 13:33:40 +00:00
Amit Kumar
3a968d1914 map-topology: Updated Makefile commit version 2023-01-12 17:56:20 +05:30
Amit Kumar
58f4ad8e5a map-topology: cherry-pick from 6.5 2023-01-12 09:47:28 +05:30
Amit Kumar
549d681fab ponmngr: updated bbf json file for transceiver 2023-01-11 08:54:02 +00:00
Amin Ben Romdhane
5313770972 usermngr: 1.0.5 2023-01-10 17:39:46 +01:00
Amin Ben Romdhane
9046c71d00 bbf: 6.8.17 2023-01-10 17:38:27 +01:00
Filip Matusiak
87a71c7389 map-controller: validate thresholds in sta_steering section of config
Signed-off-by: Filip Matusiak <filip.matusiak@iopsys.eu>
2023-01-10 11:38:46 +00:00
Janusz Dziedzic
834bab34ab easy-soc-libs: 7.2.4
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
2023-01-10 09:30:51 +00:00
Anjan Chanda
a04593f02d wfadatad-decollector-4.0.0.1: deprecate wfadatad (deagent) package 2023-01-05 13:14:16 +01:00
Anjan Chanda
f7456c22f9 wfa-capi: 2.0.1 2023-01-05 10:07:03 +01:00
Anjan Chanda
34e5487f75 map-agent: 4.1.0.0 2023-01-04 17:01:55 +01:00
Anjan Chanda
a49e91f18e map-controller: 4.1.0.0 2023-01-04 17:01:55 +01:00
Anjan Chanda
ff55ae40f9 ieee1905: 7.0.2 2023-01-04 17:01:55 +01:00
Anjan Chanda
3bdc11c5c4 wifimngr: 15.0.3 2023-01-04 17:01:55 +01:00
Anjan Chanda
2cd976f5b9 easy-soc-libs: 7.2.3 2023-01-04 17:01:55 +01:00
Sukru Senli
cc306932e8 iop: do not select ethmngr by default
this causes problem building for airoha due to libethernet's dependency to xpon_bsp which is selected as =m
2023-01-04 16:55:49 +01:00
Anjan Chanda
d3927168b2 wifimngr: 15.0.2 2023-01-04 16:03:14 +01:00
Anjan Chanda
96ede99d63 easy-soc-libs: 7.2.1 2023-01-04 16:02:35 +01:00
Sukru Senli
86e90969e3 dslmngr: allow compiling for non broadcom targets
to be able to use test stub libdsl
2023-01-04 14:46:56 +01:00
Sukru Senli
99024c3111 dslmngr: move dsl scripts from target feeds to dslmngr package 2023-01-04 13:57:16 +01:00
Anjan Chanda
93777c899c wifimngr: 15.0.1 2023-01-04 13:14:30 +01:00
Anjan Chanda
d4bf893482 ieee1905: 7.0.1 2023-01-04 12:52:05 +01:00
Anjan Chanda
9da34a4fff easy-soc-libs: 7.2.0 2023-01-04 12:52:05 +01:00
Padmalochan Mohapatra
f7e6238928 qos Improvements on mtk qos tc+iptable classification 2023-01-03 15:26:20 +00:00
Sukru Senli
9192b863ea ethmngr: update port config generation and get correct max speed 2023-01-03 16:14:18 +01:00
Sukru Senli
0ef4d4e6b1 ethmngr: make scripts available for all targets even though ethmngr/libethernet pair is not available 2023-01-03 15:40:31 +01:00
Sukru Senli
af22e1abc3 iop: let easy-soc libraries be selected by the managers 2023-01-03 15:37:40 +01:00
Sukru Senli
b9e6f56110 iop: select ethmngr and qosmngr 2023-01-03 15:14:10 +01:00
Sukru Senli
d8454fab29 ethmngr: merge port-management into ethmngr 2023-01-03 15:06:39 +01:00
Wenpeng Song
8abeee9d23 Update packages endptmngr and dectmngr
dectmngr-3.5.6: Send CALL_REJECT only for an unanswered incoming call 
endptmngr: Fix CALL_REJECT and ON-HOOK handling

(cherry picked from commit 8605c1e455)
2023-01-03 13:35:30 +00:00
Sukru Senli
1164e33371 qosmngr: simplify Makefile 2023-01-03 13:01:34 +01:00
Janusz Dziedzic
15a65a071e wifimngr: 14.3.3
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
2023-01-02 15:29:19 +00:00
Janusz Dziedzic
ecddbb5992 easy-soc-libs: 6.9.0
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
2023-01-02 15:29:19 +00:00
Sukru Senli
4dbf7ac1da qosmngr: add intall section for ipq95xx target 2023-01-02 16:21:51 +01:00
Sukru Senli
f071d28911 qosmngr: allow selecting for ipq95xx target 2023-01-02 13:07:22 +01:00
Suresh Krishna
16e834d0f6 ipq95xx: add support for building target ipq95xx based on mac80211
Signed-off-by: Suresh Krishna <quic_sureshkr@quicinc.com>
2023-01-02 11:34:58 +00:00
Suvendhu Hansa
881711bb11 dhcp option 43 handling 2022-12-30 08:30:19 +00:00
Padmalochan Mohapatra
6961bbb4a7 qos : tc-Classification dead code cleanup 2022-12-30 03:16:49 +00:00
Padmalochan Mohapatra
591f9d9dde qos : Classification with tc+iptables for QoS on MTK_PANTHER 2022-12-29 12:09:38 +00:00
subramanian c
d942f2c606 qos: Deprecate firewall.qos and handle through qos config 2022-12-27 04:32:07 +00:00
Marina Maslova
01819a7f72 qos: enable should be 1 by default 2022-12-26 13:11:44 +03:00
Yalu Zhang
c8969996c7 Update package voicemngr and libvoice-broadcom
Get voice port configuration from the board database
2022-12-23 16:11:48 +01:00
nevadita.chatterjee
0bb0ade1ec map-topology:2.5.1.14 2022-12-22 10:40:59 +05:30
Amin Ben Romdhane
52c338366b ssdpd: 1.0.4 2022-12-21 23:25:36 +01:00
Marina Maslova
0dae8c3786 qos: default uplink limit should be 0 (unlimited) 2022-12-21 23:31:02 +03:00
vdutta
cbbe02096f ssdpd: 1.0.3 2022-12-21 22:22:11 +05:30
vdutta
fae6a213ac ssdpd: 1.0.2 2022-12-21 22:10:49 +05:30
vdutta
5e57b31c45 uspd: 2.2.23 2022-12-21 22:00:55 +05:30
vdutta
eb5437892d bbf: 6.8.16 2022-12-21 21:57:58 +05:30
vdutta
12e2a84ad1 ssdpd: 1.0.1 2022-12-21 21:46:20 +05:30
vdutta
0b11d79816 bbf: host access_control dm support 2022-12-21 19:09:40 +05:30
subramanian c
56fffd6b9c Firewall: Handle access control through /etc/config/hosts 2022-12-21 13:13:37 +00:00
sverma
0c28e45434 add psk mode on i1905, agent and controller 2022-12-21 13:06:06 +01:00
Jakob Olsson
72f48f9230 map-agent: 2.10.4.17 2022-12-21 13:04:29 +01:00
Jakob Olsson
787810e8ab ieee1905: 6.0.21 2022-12-21 12:57:30 +01:00
Jakob Olsson
15f2cd62e6 map-agent: 2.10.4.16 2022-12-21 12:49:16 +01:00
Jakob Olsson
6153f47f95 map-controller: 2.11.0.24 2022-12-21 12:19:42 +01:00
Jakob Olsson
1ec4f0f0da map-controller: 2.11.0.23 2022-12-21 11:43:43 +01:00
Jakob Olsson
c0e5dfae7f map-agent: 2.10.4.15 2022-12-21 11:42:10 +01:00
Jakob Olsson
d3766ede6c ieee1905: uci-defaults: convert old 'option ifname' to 'list ifname' entries 2022-12-21 11:35:02 +01:00
Sukru Senli
f03743634f iop: config: select ip6tables-zz-legacy 2022-12-21 11:30:41 +01:00
vdutta
5419eb07d2 sulu: use mosquitto uci for services 2022-12-21 14:27:38 +05:30
vdutta
34c0b3bb9e obuspa: 6.0.0.14 2022-12-21 14:23:49 +05:30
vdutta
d664b70bf6 bbf: 6.8.14 2022-12-21 14:22:36 +05:30
Jakob Olsson
dd674c2d93 map-controller: 2.11.0.22 2022-12-20 16:41:41 +01:00
Jakob Olsson
19ff43afe2 map-agent: 2.10.4.14 2022-12-20 16:41:34 +01:00
Saurabh Verma
2f80620644 map-controller: init.d: add support for other enc methods 2022-12-20 16:14:44 +01:00
vdutta
67555eed9f obuspa: 6.0.0.13 2022-12-20 18:32:41 +05:30
vdutta
8e7738a153 bbf: 6.8.13 2022-12-20 18:27:10 +05:30
suvendhu
5ca4dabf49 bbf: added uci-default script mqtt dm 2022-12-20 12:54:29 +00:00
vdutta
e6042743cb icwmp: 9.1.4 2022-12-20 18:23:47 +05:30
suvendhu
7353a6bfe7 Fix GW info overwrite on boot 2022-12-20 10:55:38 +00:00
Padmalochan Mohapatra
deef704d42 Revert "Revert "qosmngr : standard Linux support via tc+iptables"" 2022-12-20 09:30:24 +00:00
248 changed files with 8954 additions and 7782 deletions

View File

@@ -1,117 +0,0 @@
{
"Device.UserInterface.": {
"type": "object",
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"access": false,
"array": false,
"Device.UserInterface.RemoteAccess.": {
"type": "object",
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"access": false,
"array": false,
"Enable": {
"type": "boolean",
"read": true,
"write": true,
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"mapping": [
{
"type": "uci",
"uci": {
"file": "userinterface",
"section": {
"name": "remote_access"
},
"option": {
"name": "enable"
}
}
}
]
},
"Port": {
"type": "unsignedInt",
"read": true,
"write": true,
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"range": [
{
"max": 65535
}
],
"mapping": [
{
"type": "uci",
"uci": {
"file": "userinterface",
"section": {
"name": "remote_access"
},
"option": {
"name": "port"
}
}
}
]
},
"SupportedProtocols": {
"type": "string",
"read": true,
"write": false,
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"list": {
"datatype": "string",
"enumerations": [
"HTTP",
"HTTPS"
]
},
"default": "HTTP"
},
"Protocol": {
"type": "string",
"read": true,
"write": true,
"version": "2.0",
"protocols": [
"cwmp",
"usp"
],
"mapping": [
{
"type": "uci",
"uci": {
"file": "userinterface",
"section": {
"name": "remote_access"
},
"option": {
"name": "protocol"
}
}
}
]
}
}
}
}

View File

@@ -1,6 +0,0 @@
config userinterface 'remote_access'
option enable '0'
option interface 'wan'
option port '80'
option protocol 'HTTP'

View File

@@ -1,88 +0,0 @@
#!/bin/sh
#!/bin/sh
. /lib/functions.sh
IDENTIFIER="REMOTE-ACCESS-WAN"
log() {
echo "${@}"|logger -t firewall.userinterface -p info
}
if [ ! -f "/etc/config/userinterface" ]; then
exit 0;
fi
function exec_cmd()
{
if ! $@; then
log "Failed to run [$@]"
fi
}
function configure_firewall_rule()
{
local enable port protocol gui_port
local zone interface
config_load userinterface
config_get_bool enable remote_access enable 1
config_get port remote_access port
config_get interface remote_access interface
if [ "${enable}" -eq "0" -o -z "${port}" -o -z "${interface}" ]; then
return 0;
fi
zone="zone_${interface}_input"
iptables -w 1 -t filter -nL ${zone} 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
iptables -w 1 -I ${zone} -p tcp -m multiport --dports ${port} -m conntrack --ctstate NEW,ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
zone="zone_${interface}_output"
iptables -w 1 -t filter -nL ${zone} 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
iptables -w 1 -I ${zone} -p tcp -m multiport --dports ${port} -m conntrack --ctstate ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
}
function delete_firewall_rule()
{
local zone interface
local CMD
config_load userinterface
config_get interface remote_access interface
# Clean remote interface rules
if [ -z "${interface}" ]; then
return 0
fi
zone="zone_${interface}_input"
CMD="iptables -w 1 -t filter -L ${zone} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd iptables -w 1 -t filter -D ${zone} ${rule_num};
fi
done
zone="zone_${interface}_output"
CMD="iptables -w 1 -t filter -L ${zone} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd iptables -w 1 -t filter -D ${zone} ${rule_num};
fi
done
}
# Delete existing remote access rules
delete_firewall_rule
# Configure the User Interface rule
configure_firewall_rule

View File

@@ -1,27 +0,0 @@
#!/bin/sh /etc/rc.common
START=99
STOP=01
USE_PROCD=1
start_service() {
local enable
procd_open_instance usp
config_load userinterface
config_get_bool enable global enable 1
# Inject firewall rules
if [ "${enable}" -eq "1" ]; then
/etc/firewall.userinterface
fi
procd_close_instance
}
service_triggers()
{
procd_add_reload_trigger "userinterface"
}

View File

@@ -18,6 +18,10 @@ config BBF_TR143
bool "Enable TR-143 Data Model Support"
default y
config BBF_TR471
bool "Enable TR-471 Data Model Support"
default y
config BBFDM_ENABLE_JSON_PLUGIN
bool "Enable json plugin to extend datamodel"
default y

View File

@@ -1,31 +1,30 @@
#
# Copyright (C) 2022 IOPSYS
# Copyright (C) 2023 IOPSYS
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libbbfdm
PKG_VERSION:=6.8.12
PKG_NAME:=bbfdm
PKG_VERSION:=1.1.3
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bbf.git
PKG_SOURCE_VERSION:=78157b22411816642f2bab81119c6d997c180c37
PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/bbfdm.git
PKG_SOURCE_VERSION:=f83f4ab2302e49dceebc87f7bd4617fcc9db83e4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
PKG_RELEASE=$(PKG_SOURCE_VERSION)
PKG_LICENSE:=LGPL-2.1
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/libbbf_api
define Package/libbbfdm-api
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=BBF datamodel library, provides API to extend datamodel using DotSO plugins
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c
ABI_VERSION:=1.0
endef
@@ -34,13 +33,16 @@ define Package/libbbfdm/default
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=Library for broadband forum data model support
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libcurl +libbbf_api
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libcurl +libbbfdm-api \
+BBF_TR471:obudpst
endef
define Package/libbbfdm
$(Package/libbbfdm/default)
TITLE += (internal)
VARIANT:=internal
TITLE += (default)
VARIANT:=default
DEPENDS += +PACKAGE_libbbfdm-openssl:libopenssl
DEFAULT_VARIANT:=1
endef
define Package/libbbfdm-mbedtls
@@ -48,23 +50,33 @@ define Package/libbbfdm-mbedtls
TITLE += (mbedtls)
DEPENDS += +PACKAGE_libbbfdm-mbedtls:libmbedtls
VARIANT:=mbedtls
DEFAULT_VARIANT:=1
CONFLICTS := libbbfdm libbbfdm-openssl libbbfdm-wolfssl
endef
define Package/libbbfdm-openssl
$(Package/libbbfdm/default)
TITLE += (openssl)
DEPENDS += +PACKAGE_libbbfdm-openssl:libopenssl
CONFLICTS := libbbfdm-mbedtls
VARIANT:=openssl
CONFLICTS := libbbfdm libbbfdm-mbedtls libbbfdm-wolfssl
endef
define Package/libbbfdm-wolfssl
$(Package/libbbfdm/default)
TITLE += (wolfssl)
DEPENDS += +PACKAGE_libbbfdm-wolfssl:libwolfssl
CONFLICTS := libbbfdm-mbedtls libbbfdm-openssl
VARIANT:=wolfssl
CONFLICTS := libbbfdm libbbfdm-mbedtls libbbfdm-openssl
endef
define Package/bbfdmd
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=Datamodel ubus backend
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libbbfdm-api +PACKAGE_libbbfdm-mbedtls:libbbfdm-mbedtls \
+PACKAGE_libbbfdm-openssl:libbbfdm-openssl +PACKAGE_libbbfdm-wolfssl:libbbfdm-wolfssl \
+PACKAGE_libbbfdm:libbbfdm
endef
define Package/userinterface
@@ -75,14 +87,14 @@ define Package/userinterface
endef
define Package/userinterface/description
Package to add Device.UserInterface. datamodel support using libbbf JSON Plugin
Package to add Device.UserInterface. datamodel support
endef
define Package/libbbfdm/config
source "$(SOURCE)/Config_bbfdm.in"
endef
define Package/libbbf_api/description
define Package/libbbfdm-api/description
Library contains the API(UCI, UBUS, JSON, CLI and Browse) of libbbfdm
endef
@@ -99,6 +111,7 @@ endif
CMAKE_OPTIONS += \
-DBBF_TR181=ON
-DBBF_WIFI_DATAELEMENTS=ON
ifeq ($(CONFIG_BBF_TR104),y)
CMAKE_OPTIONS += \
@@ -110,6 +123,11 @@ CMAKE_OPTIONS += \
-DBBF_TR143=ON
endif
ifeq ($(CONFIG_BBF_TR471),y)
CMAKE_OPTIONS += \
-DBBF_TR471=ON
endif
ifeq ($(CONFIG_BBF_VENDOR_EXTENSION),y)
CMAKE_OPTIONS += \
-DBBF_VENDOR_EXTENSION=ON
@@ -131,6 +149,10 @@ CMAKE_OPTIONS += \
-DBBF_DOTSO_PLUGIN=ON
endif
ifeq ($(BUILD_VARIANT),default)
CMAKE_OPTIONS += -DWITH_OPENSSL=ON
endif
ifeq ($(BUILD_VARIANT),openssl)
CMAKE_OPTIONS += -DWITH_OPENSSL=ON
endif
@@ -143,21 +165,35 @@ ifeq ($(BUILD_VARIANT),mbedtls)
CMAKE_OPTIONS += -DWITH_MBEDTLS=ON
endif
define Package/libbbf_api/install
ifeq ($(CONFIG_PACKAGE_bbfdmd),y)
CMAKE_OPTIONS += \
-DBBFDMD_MAX_MSG_LEN:Integer=10485760
endif
define Package/libbbfdm-api/install
$(INSTALL_DIR) $(1)/lib
$(CP) $(PKG_BUILD_DIR)/libbbfdm-api/libbbfdm-api.so $(1)/lib/
endef
define Package/libbbfdm/default/install
$(INSTALL_DIR) $(1)/lib
$(INSTALL_DIR) $(1)/etc/bbfdm
$(INSTALL_DIR) $(1)/etc/bbfdm/dmmap
$(INSTALL_DIR) $(1)/etc/bbfdm/json
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(CP) $(PKG_BUILD_DIR)/libbbfdm/libbbfdm.so $(1)/lib/
$(INSTALL_DATA) ./files/lib/upgrade/keep.d/bbf $(1)/lib/upgrade/keep.d/bbf
ifeq ($(CONFIG_BBF_TR143),y)
$(INSTALL_DIR) $(1)/usr/share/bbfdm
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
$(CP) $(PKG_BUILD_DIR)/libbbfdm.so $(1)/lib/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/scripts/* $(1)/usr/share/bbfdm
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libbbfdm/scripts/* $(1)/usr/share/bbfdm
$(LN) /usr/share/bbfdm/bbf.diag $(1)/usr/libexec/rpcd/bbf.diag
endif
ifeq ($(CONFIG_BBFDM_ENABLE_JSON_PLUGIN),y)
$(INSTALL_DIR) $(1)/etc/bbfdm/json
endif
ifeq ($(CONFIG_BBFDM_ENABLE_DOTSO_PLUGIN),y)
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
endif
endef
define Package/libbbfdm/default/prerm
@@ -166,22 +202,40 @@ define Package/libbbfdm/default/prerm
exit 0
endef
define Package/bbfdmd/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_DIR) $(1)/etc/bbfdm
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) ./files/etc/init.d/bbfdmd $(1)/etc/init.d/bbfdmd
$(INSTALL_BIN) ./files/etc/hotplug.d/iface/85-bbfdm-sysctl $(1)/etc/hotplug.d/iface/85-bbfdm-sysctl
$(INSTALL_CONF) ./files/etc/config/bbfdm $(1)/etc/config/bbfdm
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bbfdmd/src/bbfdmd $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/json/input.json $(1)/etc/bbfdm/
endef
define Package/userinterface/install
$(INSTALL_DIR) $(1)/etc/bbfdm/json
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DATA) ./files/etc/bbfdm/json/UserInterface.json $(1)/etc/bbfdm/json/
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(INSTALL_DATA) ./files/etc/config/userinterface $(1)/etc/config/userinterface
$(INSTALL_DATA) ./files/lib/upgrade/keep.d/userinterface $(1)/lib/upgrade/keep.d/userinterface
$(INSTALL_BIN) ./files/etc/init.d/userinterface $(1)/etc/init.d/userinterface
$(INSTALL_BIN) ./files/etc/uci-defaults/93-userinterface-firewall $(1)/etc/uci-defaults/93-userinterface-firewall
$(INSTALL_BIN) ./files/etc/uci-defaults/94-userinterface-json $(1)/etc/uci-defaults/94-userinterface-json
$(INSTALL_BIN) ./files/etc/uci-defaults/95-portmap-firewall $(1)/etc/uci-defaults/95-portmap-firewall
$(INSTALL_BIN) ./files/etc/firewall.userinterface $(1)/etc/firewall.userinterface
$(INSTALL_BIN) ./files/etc/firewall.portmap $(1)/etc/firewall.portmap
endef
Package/libbbfdm/prerm = $(Package/libbbfdm/default/prerm)
Package/libbbfdm-openssl/prerm = $(Package/libbbfdm/default/prerm)
Package/libbbfdm-wolfssl/prerm = $(Package/libbbfdm/default/prerm)
Package/libbbfdm-mbedtls/prerm = $(Package/libbbfdm/default/prerm)
Package/libbbfdm/install = $(Package/libbbfdm/default/install)
Package/libbbfdm-openssl/install = $(Package/libbbfdm/default/install)
Package/libbbfdm-wolfssl/install = $(Package/libbbfdm/default/install)
Package/libbbfdm-mbedtls/install = $(Package/libbbfdm/default/install)
@@ -190,16 +244,22 @@ define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/include/libbbfdm
$(INSTALL_DIR) $(1)/usr/include/libbbfdm-api
$(INSTALL_DIR) $(1)/usr/include/libbbf_api
$(INSTALL_DATA) $(PKG_BUILD_DIR)/include/*.h $(1)/usr/include/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/*.h $(1)/usr/include/libbbfdm/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbf_api/*.h $(1)/usr/include/libbbf_api/
$(CP) $(PKG_BUILD_DIR)/libbbfdm.so $(1)/usr/lib/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/include/*.h $(1)/usr/include/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm/dmtree/tr181/device.h $(1)/usr/include/libbbfdm/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm/dmtree/vendor/vendor.h $(1)/usr/include/libbbfdm/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/*.h $(1)/usr/include/libbbfdm-api/
# Work around for backward compatibility
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/*.h $(1)/usr/include/libbbf_api/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/include/libbbfdm_api.h $(1)/usr/include/libbbf_api.h
endef
$(eval $(call BuildPackage,userinterface))
$(eval $(call BuildPackage,libbbf_api))
$(eval $(call BuildPackage,libbbfdm-api))
$(eval $(call BuildPackage,libbbfdm))
$(eval $(call BuildPackage,libbbfdm-openssl))
$(eval $(call BuildPackage,libbbfdm-wolfssl))
$(eval $(call BuildPackage,libbbfdm-mbedtls))
$(eval $(call BuildPackage,bbfdmd))
$(eval $(call BuildPackage,userinterface))

View File

@@ -0,0 +1,7 @@
config bbfdmd 'bbfdmd'
option enabled '1'
option loglevel '1'
option refresh_time '10'
option transaction_timeout '10'

View File

@@ -0,0 +1,3 @@
config userinterface 'global'
option enable '1'

View File

@@ -0,0 +1,74 @@
#!/bin/sh
. /lib/functions.sh
log() {
echo "${@}"|logger -t firewall.dnat -p info
}
exec_cmd() {
if ! eval "$*"; then
log "Failed to run [$*]"
fi
}
reorder_dnat_rules() {
nat_chains=$(iptables -t nat -S | grep -E "^-N zone[a-zA-Z0-9_]+prerouting$" | cut -d' ' -f 2)
for chain in ${nat_chains}; do
# Collect empty remote host & empty dport rules
EMPTY_HOST_PORT=$(iptables -t nat -S ${chain} | grep -E "REDIRECT|DNAT" | grep -v "\-\-dport" | grep -v "\-s ")
if [ -n "${EMPTY_HOST_PORT}" ]; then
echo "${EMPTY_HOST_PORT}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd | sed 's/-A /-D /g')"
exec_cmd $cmd1
done
fi
# Collect empty remote host but non empty dport rules
EMPTY_HOST=$(iptables -t nat -S ${chain} | grep -E "REDIRECT|DNAT" | grep "\-\-dport" | grep -v "\-s ")
if [ -n "${EMPTY_HOST}" ]; then
echo "${EMPTY_HOST}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd | sed 's/-A /-D /g')"
exec_cmd $cmd1
done
fi
# Collect non empty remote host but empty dport rules
EMPTY_PORT=$(iptables -t nat -S ${chain} | grep -E "REDIRECT|DNAT" | grep -v "\-\-dport" | grep "\-s ")
if [ -n "${EMPTY_PORT}" ]; then
echo "${EMPTY_PORT}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd | sed 's/-A /-D /g')"
exec_cmd $cmd1
done
fi
# Now add rules as per datamodel precedence shown below
## Non empty remote host, empty dport
## empty remote host, non empty dport
## empty remote host, empty dport
if [ -n "${EMPTY_PORT}" ]; then
echo "${EMPTY_PORT}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd)"
exec_cmd $cmd1
done
fi
if [ -n "${EMPTY_HOST}" ]; then
echo "${EMPTY_HOST}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd)"
exec_cmd $cmd1
done
fi
if [ -n "${EMPTY_HOST_PORT}" ]; then
echo "${EMPTY_HOST_PORT}" | while read cmd; do
cmd1="iptables -t nat $(echo $cmd)"
exec_cmd $cmd1
done
fi
done
}
# Re-order portmapping rules according to precedence hierarchy
reorder_dnat_rules

View File

@@ -0,0 +1,125 @@
#!/bin/sh
. /lib/functions.sh
IDENTIFIER="UI-REMOTE-ACCESS-WAN"
log() {
echo "${@}"|logger -t firewall.userinterface -p info
}
if [ ! -f "/etc/config/userinterface" ] || [ ! -f "/etc/config/nginx" ]; then
exit 0;
fi
exec_cmd() {
if ! "$@"; then
log "Failed to run [$*]"
fi
}
delete_ui_firewall_rules() {
input_chains=$(iptables -S | grep -E "^-N zone[a-zA-Z0-9_]+input$" | cut -d' ' -f 2)
output_chains=$(iptables -S | grep -E "^-N zone[a-zA-Z0-9_]+output$" | cut -d' ' -f 2)
for chain in ${input_chains}; do
CMD="iptables -w 1 -t filter -nL ${chain} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd iptables -w 1 -t filter -D "${chain}" "${rule_num}";
fi
done
done
for chain in ${output_chains}; do
CMD="iptables -w 1 -t filter -nL ${chain} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd iptables -w 1 -t filter -D "${chain}" "${rule_num}";
fi
done
done
input6_chains=$(ip6tables -S | grep -E "^-N zone[a-zA-Z0-9_]+input$" | cut -d' ' -f 2)
output6_chains=$(ip6tables -S | grep -E "^-N zone[a-zA-Z0-9_]+output$" | cut -d' ' -f 2)
for chain in ${input6_chains}; do
CMD="ip6tables -w 1 -t filter -nL ${chain} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd ip6tables -w 1 -t filter -D "${chain}" "${rule_num}";
fi
done
done
for chain in ${output6_chains}; do
CMD="ip6tables -w 1 -t filter -nL ${chain} --line-numbers"
while ${CMD} 2>/dev/null | grep "${IDENTIFIER}"; do
rule_num="$(${CMD} | grep "${IDENTIFIER}" | head -1|awk '{print $1}')"
if [ -n "${rule_num}" ]; then
exec_cmd ip6tables -w 1 -t filter -D "${chain}" "${rule_num}";
fi
done
done
}
configure_ui_firewall_rule() {
local sec="${1}"
local enabled access interface
local port=""
config_get_bool enabled "${sec}" uci_enable '1'
config_get access "${sec}" uci_access ""
config_get interface "${sec}" uci_interface ""
if [ "${enabled}" -eq "1" ] && [ "${access}" == "remote" ] && [ -n "${interface}" ]; then
port_list=$(uci -q show nginx."${1}".listen|cut -d'=' -f 2|sed "s/'/ /g"|sed "s/\[\:\:\]\://g")
for item in ${port_list}; do
if [ -z "${item##[0-9]*}" ]; then
port="${item}"
break
fi
done
if [ -z "${port}" ]; then
return 0
fi
zone="zone_${interface}_input"
iptables -w 1 -t filter -nL ${zone} 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
iptables -w 1 -I "${zone}" -p tcp -m multiport --dports "${port}" -m conntrack --ctstate NEW,ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
ip6tables -w 1 -t filter -nL ${zone} 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
ip6tables -w 1 -I "${zone}" -p tcp -m multiport --dports "${port}" -m conntrack --ctstate NEW,ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
zone="zone_${interface}_output"
iptables -w 1 -t filter -nL "${zone}" 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
iptables -w 1 -I "${zone}" -p tcp -m multiport --dports "${port}" -m conntrack --ctstate ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
ip6tables -w 1 -t filter -nL "${zone}" 2>/dev/null 1>&2
if [ "$?" -eq 0 ]; then
ip6tables -w 1 -I "${zone}" -p tcp -m multiport --dports "${port}" -m conntrack --ctstate ESTABLISHED -m comment --comment "${IDENTIFIER}" -j ACCEPT
fi
fi
}
# Delete existing remote access rules
delete_ui_firewall_rules
config_load userinterface
config_get_bool serv_enable global enable 1
if [ "${serv_enable}" -eq "1" ]; then
config_load nginx
# Configure the User Interface rule
config_foreach configure_ui_firewall_rule server
fi

View File

@@ -0,0 +1,17 @@
#!/bin/sh
[ "$ACTION" = "ifup" ] || exit 0
apply_sysctl_configuration() {
local sysctl_conf
sysctl_conf="/etc/bbfdm/sysctl.conf"
[ -f "${sysctl_conf}" ] || touch "${sysctl_conf}"
sysctl -e -p "${sysctl_conf}" >&-
}
ubus -t 10 wait_for network.device
apply_sysctl_configuration

View File

@@ -0,0 +1,80 @@
#!/bin/sh /etc/rc.common
START=96
STOP=10
USE_PROCD=1
PROG=/usr/sbin/bbfdmd
BBFDM_JSON_INPUT="/etc/bbfdm/input.json"
log() {
echo "${@}"|logger -t bbfdmd.init -p info
}
validate_bbfdm_bbfdmd_section()
{
uci_validate_section bbfdm bbfdmd "bbfdmd" \
'enabled:bool:true' \
'debug:bool:false' \
'loglevel:uinteger' \
'sock:string' \
'refresh_time:uinteger' \
'transaction_timeout:uinteger' \
'subprocess_level:uinteger'
}
configure_bbfdmd()
{
local enabled debug sock
config_load bbfdm
validate_bbfdm_bbfdmd_section || {
log "Validation of bbfdmd section failed"
return 1;
}
[ "${enabled}" -eq 0 ] && return 0
[ ! -f "${BBFDM_JSON_INPUT}" ] && return 0
if [ -n "${loglevel}" ]; then
echo "$(jq --arg res ${loglevel} '.daemon.config += {"loglevel": $res}' ${BBFDM_JSON_INPUT})" > ${BBFDM_JSON_INPUT}
fi
if [ -n "${refresh_time}" ]; then
echo "$(jq --arg res ${refresh_time} '.daemon.config += {"refresh_time": $res}' ${BBFDM_JSON_INPUT})" > ${BBFDM_JSON_INPUT}
fi
if [ -n "${transaction_timeout}" ]; then
echo "$(jq --arg res ${transaction_timeout} '.daemon.config += {"transaction_timeout": $res}' ${BBFDM_JSON_INPUT})" > ${BBFDM_JSON_INPUT}
fi
if [ -n "${subprocess_level}" ]; then
echo "$(jq --arg res ${subprocess_level} '.daemon.config += {"subprocess_level": $res}' ${BBFDM_JSON_INPUT})" > ${BBFDM_JSON_INPUT}
fi
procd_set_param command ${PROG}
if [ "${debug}" -eq 1 ]; then
procd_set_param stdout 1
procd_set_param stderr 1
fi
if [ -f "${sock}" ]; then
procd_append_param command -s "${sock}"
fi
}
start_service()
{
procd_open_instance "bbfdm"
configure_bbfdmd
procd_set_param respawn
procd_close_instance "bbfdm"
}
service_triggers()
{
procd_add_reload_trigger "bbfdm"
}

View File

@@ -0,0 +1,33 @@
#!/bin/sh /etc/rc.common
START=99
STOP=01
USE_PROCD=1
start_service() {
local enable
config_load userinterface
config_get_bool enable global enable 1
if [ ! -f "/etc/config/nginx" ]; then
return 0
fi
if [ "${enable}" -eq "1" ]; then
ubus call service state '{"name":"nginx", "spawn":true}'
else
ubus call service state '{"name":"nginx", "spawn":false}'
fi
# Inject firewall rules
procd_open_instance userinterface
/etc/firewall.userinterface
procd_close_instance
}
service_triggers()
{
procd_add_reload_trigger "userinterface" "nginx"
}

View File

@@ -0,0 +1,9 @@
#!/bin/sh
# This deletes the userinterface json plugin if exists in case of upgrade
if [ -f "/etc/bbfdm/json/UserInterface.json" ]; then
rm /etc/bbfdm/json/UserInterface.json
fi
exit 0

View File

@@ -0,0 +1,12 @@
#!/bin/sh
uci -q batch <<-EOT
delete firewall.port_hook
set firewall.port_hook=include
set firewall.port_hook.path=/etc/firewall.portmap
set firewall.port_hook.reload=1
commit firewall
EOT
exit 0

View File

@@ -0,0 +1 @@
/etc/bbfdm/sysctl.conf

View File

@@ -0,0 +1 @@
/etc/nginx/allow_host_*

View File

@@ -1,28 +1,24 @@
#
# Copyright (C) 2022 iopsys Software Solutions AB
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=bulkdata
PKG_VERSION:=2.0.9
PKG_VERSION:=2.1.0
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bulkdata.git
PKG_SOURCE_VERSION:=6e85d2032e66df581fae7c72cd83cc89367b8fc8
PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/bulkdata.git
PKG_SOURCE_VERSION:=2dd55d9c9eb01ed1b11e16bad9e2c3e8badfffeb
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk

View File

@@ -16,8 +16,8 @@ get_next_count()
fi
while [ "${found}" -ne 1 ]; do
uci -q get ${config}.${default_name}_${count} >/dev/null
if [ $? -eq 0 ]; then
uci -q get "${config}"."${default_name}"_${count} >/dev/null
if [ "$?" -eq 0 ]; then
count=$((count + 1))
else
found=1;
@@ -39,8 +39,8 @@ translate_profile_id_to_profile_name() {
[ "${curr_profile_id}" != "${profile_id}" ] && return
uci -q set bulkdata.${section}.profile_name="${profile_name}"
uci -q set bulkdata.${section}.profile_id=""
uci -q set bulkdata."${section}".profile_name="${profile_name}"
uci -q set bulkdata."${section}".profile_id=""
}
update_profile_sections() {
@@ -54,7 +54,7 @@ update_profile_sections() {
case "${section}" in
"cfg"*)
profile_name="$(get_next_count bulkdata ${default} ${PROFILE_COUNT})"
profile_name="$(get_next_count bulkdata "${default}" ${PROFILE_COUNT})"
uci_rename bulkdata "${section}" "${profile_name}"
;;
esac
@@ -62,7 +62,7 @@ update_profile_sections() {
[ -n "$profile_name" ] && section="${profile_name}"
uci -q set bulkdata.${section}.profile_id=""
uci -q set bulkdata."${section}".profile_id=""
config_foreach translate_profile_id_to_profile_name profile_parameter "${profile_id}" "${profile_name}"
config_foreach translate_profile_id_to_profile_name profile_http_request_uri_parameter "${profile_id}" "${profile_name}"

View File

@@ -1,17 +1,17 @@
#
# Copyright (C) 2021 IOPSYS
# Copyright (C) 2021-2023 IOPSYS
#
include $(TOPDIR)/rules.mk
PKG_NAME:=wfa-capi
PKG_VERSION:=1.1.3
PKG_NAME:=capiagent
PKG_VERSION:=2.1.0
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=64d9101c8e4930cbd3fe6ce471fb4cfd2b9b80dc
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wfa-capi.git
PKG_SOURCE_VERSION:=3e671db8f567b19c109fc13b25bc571c4c73a962
PKG_SOURCE_URL:=https://dev.iopsys.eu/multi-ap/capiagent.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
@@ -24,18 +24,18 @@ PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
#define Package/wfa-capi/config
#define Package/capiagent/config
# source "$(SOURCE)/Config.in"
#endef
define Package/wfa-capi
TITLE+= wfa-capi (agent daemon for Wi-Fi Alliance's CAPI commands)
define Package/capiagent
TITLE+= capiagent (daemon implementing Wi-Fi Alliance's CAPI commands)
DEPENDS= +libubox +libuci +libubus +libnl-genl +libeasy +libwifi \
+libjson-c +libblobmsg-json +ubus +libieee1905
endef
define Package/wfa-capi/description
This package provides agent for WiFi Alliance's CAPI specification.
define Package/capiagent/description
This package provides agent for the WiFi Alliance's CAPI specification.
endef
TARGET_CFLAGS += \
@@ -46,7 +46,7 @@ TARGET_CFLAGS += \
MAKE_PATH:=src
define Package/wfa-capi/install
define Package/capiagent/install
$(CP) ./files/* $(1)/
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_DIR) $(1)/lib/wifi/capi
@@ -54,4 +54,4 @@ define Package/wfa-capi/install
$(CP) $(PKG_BUILD_DIR)/src/scripts/* $(1)/lib/wifi/capi
endef
$(eval $(call BuildPackage,wfa-capi))
$(eval $(call BuildPackage,capiagent))

80
decollector/Makefile Normal file
View File

@@ -0,0 +1,80 @@
#
# Copyright (C) 2021-2023 IOPSYS Software Solutions AB
#
include $(TOPDIR)/rules.mk
PKG_NAME:=decollector
PKG_VERSION:=4.0.2.6
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=944a981d8d3f9548f464c862778b67455aee9112
PKG_SOURCE_URL:=https://dev.iopsys.eu/multi-ap/decollector.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
define Package/decollector
SECTION:=utils
CATEGORY:=Utilities
TITLE:=WiFi DataElements Collector Proxy
DEPENDS:=+libuci +libubox +ubus +libpthread +libnl-genl \
+libeasy +libwifiutils +libieee1905 +map-plugin
endef
define Package/decollector/description
It implements the WiFi DataElements Agent as defined in the Wi-Fi Alliance's
DataElements specification.
endef
define Package/decollector/config
source "$(SOURCE)/Config.in"
endef
ifneq (,$(findstring ALPHA,$(CONFIG_VERSION_CODE)))
MAKE_FLAGS += DEBUG=1
endif
ifneq (,$(findstring BETA,$(CONFIG_VERSION_CODE)))
MAKE_FLAGS += DEBUG=1
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/libnl3 \
-D_GNU_SOURCE
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
rsync -r --exclude=.* ~/git/decollector/ $(PKG_BUILD_DIR)/
endef
endif
MAKE_PATH:=src
TARGET_CFLAGS += -DEASYMESH_VERSION=$(CONFIG_DECOLLECTOR_EASYMESH_VERSION)
EXECS := \
$(if $(CONFIG_PACKAGE_decollector),decollector)
MAKE_FLAGS += EXECS="$(EXECS)"
define Package/decollector/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) ./files/decollector.init $(1)/etc/init.d/decollector
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/decollector $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,decollector))

View File

@@ -17,10 +17,11 @@ start_service() {
config_load mapcontroller
config_get en controller enabled "0"
config_get collect_int controller de_collect_interval
[ $en -gt 0 ] && {
procd_open_instance
procd_set_param command "$PROG" "-d"
procd_set_param command "$PROG" "-d" "${collect_int:+-t $collect_int}"
#procd_set_param stdout 1
#procd_set_param stderr 1
procd_set_param respawn

View File

@@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=dectmngr
PKG_RELEASE:=3
PKG_VERSION:=3.5.5
PKG_VERSION:=3.5.11
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/dectmngr.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=cf4e91ffe0a1d83140fef5b41d16e581e5341cec
PKG_SOURCE_VERSION:=18dece420502e25a9bd9f3b534bc6c338fcc9377
PKG_MIRROR_HASH:=skip
endif
@@ -34,7 +34,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/$(PKG_NAME)
CATEGORY:=Utilities
TITLE:=DECT Manager
DEPENDS:= +libubox +ubus +uci +libxml2 +libjson-c
DEPENDS:= +libubox +ubus +uci +libxml2 +libjson-c +gpiod-tools
endef
define Package/$(PKG_NAME)/description

View File

@@ -6,31 +6,63 @@ START=70
STOP=12
USE_PROCD=1
NAME=dectmngr
PROG=/usr/sbin/dectmngr
LOG_PATH=/var/log/dectmngr
DB_PATH=/etc/dect
DCX81_UART_DT_ALIAS=/proc/device-tree/aliases/dcx81-uart
DECT_GPIO=$(db -q get hw.board.dect_gpio)
DECT_GPIO="$(gpiofind DCX81_RSTN | cut -d ' ' -f 2 2>/dev/null)"
# Ask dectmngr to exit nicely and wait for it to clean up, which is a slow process.
stop_and_wait_dectmngr() {
pidof $NAME && killall -q $NAME
dect_pid=$(pidof $PROG)
[ -n "$dect_pid" ] && kill $dect_pid
pidof $NAME && sleep 2 # wait for the process to stop gracefully
while pidof $NAME; do
killall -q -9 $NAME
pidof $PROG > /dev/null 2>&1 && sleep 2 # wait for the process to stop gracefully
while pidof $PROG > /dev/null 2>&1; do
dect_pid=$(pidof $PROG)
[ -n "$dect_pid" ] && kill -9 $dect_pid
sleep 1
done
}
has_dect() {
[ -f "$DCX81_UART_DT_ALIAS" ]
}
get_dcx81_device() {
readonly dcx81_uart_dt_node="/proc/device-tree/$(cat "$DCX81_UART_DT_ALIAS" 2>/dev/null)"
[ -e "$dcx81_uart_dt_node" ] || return 1
for tty_dt_node in /sys/class/tty/*/device/of_node; do
if [ "$tty_dt_node" -ef "$dcx81_uart_dt_node" ]; then
readonly uevent_file="${tty_dt_node%%/device/of_node}/uevent"
local device_name_line
device_name_line="$(grep '^DEVNAME=' "$uevent_file")" || return 1
readonly device="/dev/${device_name_line##DEVNAME=}"
[ -c "$device" ] || return 1
printf "%s" "$device"
return 0
fi
done
return 1
}
start_service() {
local opt_ext=
local rfpi=
local model_id=
local rxtun=
test $(db get hw.board.hasDect) = "0" && return
if ! has_dect; then
logger -t "$PROG" "Not starting because no DECT hardware is available."
return 0
fi
local dcx81_uart_device
if ! dcx81_uart_device="$(get_dcx81_device)"; then
logger -t "$PROG" -p daemon.warning "Could not determine DCX81 UART device. Falling back to default ttyH0."
dcx81_uart_device=/dev/ttyH0
fi
[ -n "$DECT_GPIO" ] && echo 1 > /sys/class/gpio/gpio${DECT_GPIO}/value
@@ -51,18 +83,25 @@ start_service() {
config_get log_dect_cmbs global log_dect_cmbs syslog
procd_open_instance
if [ "$log_dect_cmbs" = "none" ]; then
# dectmngr takes expects device without /dev
readonly dcx81_uart_device_wo_dev="${dcx81_uart_device##/dev/}"
case "$log_dect_cmbs" in
none)
echo "Starting dectmngr with cmbs logging disabled"
procd_set_param command $PROG -comname ttyH0 $opt_ext
procd_set_param command "$PROG" -comname "$dcx81_uart_device_wo_dev" $opt_ext
rm -f $LOG_PATH/*
elif [ "$log_dect_cmbs" = "file" ]; then
;;
file)
echo "Starting dectmngr with cmbs logging enabled to file"
procd_set_param command $PROG -comname ttyH0 -log $LOG_PATH/dect-cmbs.log $opt_ext
else
procd_set_param command "$PROG" -comname "$dcx81_uart_device_wo_dev" -log $LOG_PATH/dect-cmbs.log $opt_ext
;;
*)
echo "Starting dectmngr with cmbs logging enabled to syslog"
procd_set_param command $PROG -comname ttyH0 -syslog $opt_ext
procd_set_param command "$PROG" -comname "$dcx81_uart_device_wo_dev" -syslog $opt_ext
rm -f $LOG_PATH/*
fi
;;
esac
procd_set_param respawn 6 2 3
procd_set_param term_timeout 20
@@ -71,7 +110,7 @@ start_service() {
}
stop_service() {
test $(db get hw.board.hasDect) = "0" && return
has_dect || return 0
[ -n "$DECT_GPIO" ] && echo 0 > /sys/class/gpio/gpio${DECT_GPIO}/value
stop_and_wait_dectmngr
@@ -81,8 +120,7 @@ reload_service() {
ubus call dect reload
}
service_triggers()
{
service_triggers() {
procd_add_config_trigger "config.change" "asterisk" /etc/init.d/dectmngr restart
procd_add_config_trigger "config.change" "dect" /etc/init.d/dectmngr reload
}
@@ -97,4 +135,3 @@ boot() {
[ ! -d $DB_PATH ] && mkdir -p $DB_PATH
start
}

View File

@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=dslmngr
PKG_VERSION:=1.1.2
PKG_VERSION:=1.2.0
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=bb754ae620a9fc66fd6fc0745f0fead0708c7a17
PKG_SOURCE_VERSION:=43dec92b1c86be7859521da337e7bd1168848b26
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/dslmngr.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
@@ -68,6 +68,10 @@ define Build/Compile
endef
define Package/dslmngr/install
$(CP) ./files/common/* $(1)/
ifeq ($(CONFIG_TARGET_brcmbca),y)
$(CP) ./files/broadcom/* $(1)/
endif
$(INSTALL_DIR) $(1)/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/dslmngr $(1)/sbin/
endef

View File

@@ -0,0 +1,311 @@
#!/bin/sh
. /lib/functions.sh
# ATM #
check_pvc() {
local vpi=$1
local vci=$2
local ret
ret=$(xtmctl operate conn --show | awk -v test="$vpi/$vci" '{if ($3==test ) print $5 }')
case $ret in
''|*[!0-9]*) return 0 ;;
*) return $ret ;;
esac
}
check_xtm_list() {
local qclass=$1
local pcr scr mbs
local ret
case $# in
1)
pcr=0
scr=0
mbs=0
;;
2)
pcr=$2
scr=0
mbs=0
;;
4)
pcr=$2
scr=$3
mbs=$4
;;
esac
ret=$(xtmctl operate tdte --show | awk -v test="$qclass" -v pcr="$pcr" -v scr="$scr" -v mbs="$mbs" '{if ($2==test && $3==pcr && $4==scr && $5==mbs ) print $1 }')
case $ret in
''|*[!0-9]*) return 0 ;;
*) return $ret ;;
esac
}
configure_atm_device() {
local name vpi vci device link_type encapsulation qos_class pcr mbs scr i
config_get name $1 name "ATM"
config_get vpi $1 vpi "8"
config_get vci $1 vci "35"
config_get device $1 device "atm0"
config_get link_type $1 link_type "eoa"
config_get encapsulation $1 encapsulation "llc"
config_get qos_class $1 qos_class "ubr"
config_get pcr $1 pcr
config_get mbs $1 mbs
config_get scr $1 scr
check_pvc $vpi $vci
ret=$?
if [ "$ret" -eq 0 ]; then
check_xtm_list $qos_class $pcr $scr $mbs
ret=$?
if [ "$ret" -eq 0 ]; then
case $qos_class in # ubr, cbr, gfr, vbr-nrt, vbr-rt, ubr+, abr
ubr)
xtmctl operate tdte --add "$qos_class"
;;
ubr_pcr|ubr+)
xtmctl operate tdte --add "$qos_class" $pcr
;;
cbr)
xtmctl operate tdte --add "$qos_class" $pcr
;;
nrtvbr|vbr-nrt)
xtmctl operate tdte --add "$qos_class" $pcr $scr $mbs
;;
rtvbr|vbr-rt)
xtmctl operate tdte --add "$qos_class" $pcr $scr $mbs
;;
gfr)
;;
abr)
;;
esac
fi
case $link_type in # EoA, IPoA, PPPoA, CIP
EoA|eoa)
[ $encapsulation == "vcmux" ] && encapsulation="vcmux_eth" || encapsulation="llcsnap_eth"
;;
PPPoA|pppoa)
[ $encapsulation == "vcmux" ] && encapsulation="vcmux_pppoa" || encapsulation="llcencaps_ppp"
;;
IPoA|ipoa)
[ $encapsulation == "vcmux" ] && encapsulation="vcmux_ipoa" || encapsulation="llcsnap_rtip"
;;
CIP|cip)
;;
esac
check_xtm_list $qos_class $pcr $scr $mbs
ret="$?"
xtmctl operate conn --add 1.$vpi.$vci aal5 $encapsulation 0 1 $ret
for i in `seq 0 7`; do
xtmctl operate conn --addq 1.$vpi.$vci $i wrr 1 dt # queue priority 0-7
done
xtmctl operate conn --createnetdev 1.$vpi.$vci $device
xtmctl operate intf --state 1 enable
fi
}
remove_atm_devices() {
local vpi vci rest
local vpivci=`xtmctl operate conn --show | grep "ATM\|mode" | awk '{if (NR!=1 && $1!="PTM") {print $3}}'`
for i in $vpivci
do
rest=${i#\/}
vpi=${rest%%\/*}
vci=${rest#*\/}
echo "xtmctl operate conn --delete 1.$vpi.$vci"
xtmctl operate conn --delete 1.$vpi.$vci
echo "xtmctl operate conn --deletenetdev 1.$vpi.$vci"
xtmctl operate conn --deletenetdev 1.$vpi.$vci
done
}
create_atm_devices() {
echo "Creating ATM Device(s)"
config_load dsl
config_foreach configure_atm_device atm-device
}
# ATM END #
# PTM #
check_ptm() {
local ret
local ptmprio=$1
local dslat=$2
if [ "$ptmprio" -eq 2 ]; then
ptmprio="high"
else
ptmprio="low"
fi
ret=$(xtmctl operate conn --show | awk -v dslat="$dslat" -v ptmprio="$ptmprio" '{if ($2 == dslat && $3 == ptmprio ) print $2 }')
case $ret in
''|*[!0-9]*) return 0 ;;
*) return $ret ;;
esac
}
configure_ptm_device() {
local name device priority portid i
config_get name $1 name "PTM"
config_get device $1 device "ptm0"
config_get priority $1 priority 1
config_get portid $1 portid 1
check_ptm $priority $portid
ret=$?
if [ "$ret" -eq 0 ]; then
xtmctl operate conn --add $portid.$priority
for i in `seq 0 7`; do
xtmctl operate conn --addq $portid.$priority $i wrr 1 dt -1 -1 3000 # queue priority 0-7
done
echo "xtmctl operate conn --createnetdev $portid.$priority $device"
xtmctl operate conn --createnetdev $portid.$priority $device
xtmctl operate intf --state 1 enable
fi
}
remove_ptm_devices() {
local delptm
local x=0
IFS=$'\n'
for i in `xtmctl operate conn --show | grep "PTM\|mode"`
do
if [ $x -eq 1 ]; then
delptm=$(echo $i | awk '{if ($1!="ATM") print $2"."$11}')
echo "xtmctl operate conn --delete $delptm"
xtmctl operate conn --delete $delptm
xtmctl operate conn --deletenetdev $delptm
fi
x=1
done
unset IFS
}
create_ptm_devices() {
echo "Creating PTM Device(s)"
config_load dsl
config_foreach configure_ptm_device ptm-device
}
# PTM END #
prioritize_arp()
{
ebtables -t nat -D POSTROUTING -j mark --mark-or 0x7 -p ARP >/dev/null
ebtables -t nat -A POSTROUTING -j mark --mark-or 0x7 -p ARP >/dev/null
}
xtm_remove_devices() {
remove_atm_devices
remove_ptm_devices
}
xtm_create_devices() {
local tpstc="$(xdslctl info --show | grep TPS-TC)"
if echo "$tpstc" | grep -q "ATM Mode"; then
create_atm_devices
elif echo "$tpstc" | grep -q "PTM Mode"; then
create_ptm_devices
fi
}
xdsl_configure() {
local VDSL=0
local GFAST=0
local mod=""
local modes=""
local profile=""
config_load dsl
# Modes
config_get mode line mode
for mod in $mode; do
[ $mod == "gdmt" ] && modes="${modes}d"
[ $mod == "glite" ] && modes="${modes}l"
[ $mod == "t1413" ] && modes="${modes}t"
[ $mod == "adsl2" ] && modes="${modes}2"
[ $mod == "adsl2p" ] && modes="${modes}p"
[ $mod == "annexl" ] && modes="${modes}e"
[ $mod == "annexm" ] && modes="${modes}m"
[ $mod == "vdsl2" ] && modes="${modes}v" && VDSL=1
[ $mod == "gfast" ] && modes="${modes}f" && GFAST=1
done
# VDSL Profiles
config_get profile line profile
# Capabilities
config_get_bool bitswap line bitswap 1
[ $bitswap -eq 1 ] && bitswap="on" || bitswap="off"
config_get_bool sra line sra 1
[ $sra -eq 1 ] && sra="on" || sra="off"
# config_get_bool trellis line trellis 1
config_get_bool sesdrop line sesdrop 0
[ $sesdrop -eq 1 ] && sesdrop="on" || sesdrop="off"
# VDSL2 only
config_get_bool us0 line us0 1
[ $us0 -eq 1 ] && us0="on" || us0="off"
# config_get_bool dynamicd line dynamicd 1
# config_get_bool dynamicf line dynamicf 1
config_get_bool sos line sos 0
[ $sos -eq 1 ] && sos="on" || sos="off"
config_get_bool phyReXmtUs line phyReXmtUs 0
config_get_bool phyReXmtDs line phyReXmtDs 1
phyReXmt=$(( $((phyReXmtUs<<1)) + phyReXmtDs))
if [ $VDSL -eq 1 -o $GFAST -eq 1 ]; then
echo "xdslctl start --up --mod $modes --profile "$profile" --sra $sra --bitswap $bitswap --us0 $us0 --sesdrop $sesdrop --SOS $sos --phyReXmt $phyReXmt"
xdslctl start --up --mod $modes --profile "$profile" --sra $sra --bitswap $bitswap --us0 $us0 --sesdrop $sesdrop --SOS $sos --phyReXmt $phyReXmt
# G.Fast hardware to VDSL hardware, to set the driver bit kPhyCfg2EnableGfastVdslMMTimeOut0.
# Enable V43 tone for GFAST.
echo "xdslctl configure1 --phycfg 0 0 0 0 0 0 0 0 0 0 0 0x1400400 0x1400400"
xdslctl configure1 --phycfg 0 0 0 0 0 0 0 0 0 0 0 0x1400400 0x1400400
else
echo "xdslctl start --up --mod $modes --sra $sra --bitswap $bitswap --sesdrop $sesdrop --SOS $sos --phyReXmt $phyReXmt"
xdslctl start --up --mod $modes --sra $sra --bitswap $bitswap --sesdrop $sesdrop --SOS $sos --phyReXmt $phyReXmt
fi
if [ $GFAST -eq 1 ]; then
# G.Fast hardware to VDSL hardware, to set the driver bit kPhyCfg2EnableGfastVdslMMTimeOut0.
# Enable V43 tone for GFAST.
echo "xdslctl configure1 --phycfg 0 0 0 0 0 0 0 0 0 0 0 0x1400400 0x1400400"
xdslctl configure1 --phycfg 0 0 0 0 0 0 0 0 0 0 0 0x1400400 0x1400400
fi
}
xdsl_stop() {
# echo "Stopping DSL"
# stop causes IRQ issues
# xdslctl stop
return 0
}
xdsl_init() {
prioritize_arp
echo "Starting DSL"
xtmctl start
xtmctl operate intf --state 1 enable
}

View File

@@ -0,0 +1,53 @@
# OEM specific parameters
config oem-parameters 'oem'
# option country_code "0000" # 2 bytes hex
# option vendor_id "IO" # 4 bytes string
# option vendor_suffix "0000" # 2 bytes hex
# option sw_version "iopsys" # 16 bytes string
# option serial_nr "00000000" # 32 bytes string
# DSL Modes
config dsl-line line
list mode gdmt
list mode glite
list mode t1413
list mode adsl2
list mode adsl2p
list mode annexl
list mode annexm
list mode vdsl2
# VDSL2 profiles
list profile 8a
list profile 8b
list profile 8c
list profile 8d
list profile 12a
list profile 12b
list profile 17a
list profile 30a
option bitswap 1
option sra 1
option us0 1 # VDSL2 only
option sesdrop 0
option sos 0
option phyReXmtUs 0
option phyReXmtDs 1
config atm-device atm0
option name 'ATM'
option vpi '8'
option vci '35'
option device atm0
option link_type 'eoa' # EoA, IPoA, PPPoA, CIP
option encapsulation 'llc' # llc, vcmux
option qos_class 'ubr' # ubr, cbr, gfr, vbr-nrt, vbr-rt, ubr+, abr
# option pcr '512'
# option scr '256'
# option mbs '1024'
config ptm-device ptm0
option name 'PTM'
option device 'ptm0'
option priority '1'
option portid '1'

View File

@@ -0,0 +1,7 @@
[ "$STATUS" == "up" -o "$STATUS" == "down" ] || exit 0
. /lib/functions.sh
include /lib/dsl
xtm_remove_devices
xtm_create_devices

View File

@@ -0,0 +1,7 @@
if [ "$STATUS" == "up" ]; then
ubus call led.dsl set '{"state":"ok"}'
elif [ "$STATUS" == "down" ]; then
ubus call led.dsl set '{"state":"off"}'
elif [ "$STATUS" == "training" ]; then
ubus call led.dsl set '{"state":"alert"}'
fi

View File

@@ -0,0 +1,45 @@
#!/bin/sh /etc/rc.common
. /lib/functions.sh
include /lib/dsl
START=20
USE_PROCD=1
DSLMNGR=$(which dslmngr)
start_service() {
[ -n "$DSLMNGR" ] && {
procd_open_instance
procd_set_param command "$DSLMNGR"
procd_set_param respawn
procd_close_instance
}
xdsl_configure
xtm_create_devices
}
stop_service() {
xtm_remove_devices
xdsl_stop
}
boot() {
local HASADSL="$(db -q get hw.board.hasAdsl)"
local HASVDSL="$(db -q get hw.board.hasVdsl)"
[ "$HASADSL" == "1" -o "$HASVDSL" == "1" ] || return
xdsl_init
start
}
reload_service() {
stop
start
}
service_triggers() {
procd_add_reload_trigger dsl
}

View File

@@ -1,5 +0,0 @@
# libeasy configuration
config LIBWIFI_USE_CTRL_IFACE
bool "Use UNIX sockets"
default n

View File

@@ -1,141 +0,0 @@
#
# Copyright (C) 2020 iopsys Software Solutions AB
#
# This is free software, licensed under the GNU General Public License v2.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=easy-soc-libs
PKG_VERSION:=6.8.0
PKG_RELEASE:=1
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=ddc7b272bec5e3b5c2a216a1f86cd5589a1a4a19
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/easy-soc-libs.git
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=GPLv2
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
define Package/easy-soc-libs
SECTION:=libs
CATEGORY:=Libraries
TITLE:=IOPSYS Easy SoC libraries
SUBMENU:=IOPSYS Easy SoC libraries
DEPENDS:=+libopenssl
MENU:=1
endef
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
TARGET_WIFI_TYPE=BROADCOM
CHIP_ID=$(patsubst "%",%,$(CONFIG_BCM_CHIP_ID))
TARGET_CFLAGS +=-DIOPSYS_BROADCOM -DCHIP_$(CHIP_ID) -DCONFIG_BCM9$(CHIP_ID) \
-I$(STAGING_DIR)/usr/include/bcm963xx/bcmdrivers/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/userspace/public/include
else ifeq ($(CONFIG_TARGET_iopsys_ramips),y)
TARGET_PLATFORM=MEDIATEK
TARGET_WIFI_TYPE=MAC80211
TARGET_CFLAGS +=-DIOPSYS_MAC80211
else ifeq ($(CONFIG_TARGET_iopsys_x86),y)
TARGET_PLATFORM=TEST
TARGET_WIFI_TYPE=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_iopsys_armvirt),y)
TARGET_PLATFORM=TEST
TARGET_WIFI_TYPE=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_airoha),y)
TARGET_PLATFORM=ECONET
TARGET_WIFI_TYPE=MAC80211
TARGET_CFLAGS +=-DIOPSYS_ECONET
else
$(info Unexpected CONFIG_TARGET, use default MAC80211)
TARGET_PLATFORM=MAC80211
TARGET_WIFI_TYPE=MAC80211
TARGET_CFLAGS +=-DIOPSYS_MAC80211
endif
export TARGET_PLATFORM
export TARGET_WIFI_TYPE
subdirs := \
$(if $(CONFIG_PACKAGE_libeasy),libeasy) \
$(if $(CONFIG_PACKAGE_libwifi),libwifi) \
$(if $(CONFIG_PACKAGE_libdsl),libdsl) \
$(if $(CONFIG_PACKAGE_libethernet),libethernet) \
$(if $(CONFIG_PACKAGE_libqos),libqos)
EASY_SOC_LIBS := \
libeasy \
libwifi \
libdsl \
libethernet \
libqos
ifeq ($(CONFIG_LIBWIFI_USE_CTRL_IFACE),y)
TARGET_CFLAGS +=-DLIBWIFI_USE_CTRL_IFACE
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall -I./" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FPIC="$(FPIC)" \
PLATFORM="$(TARGET_PLATFORM)" \
WIFI_TYPE="$(TARGET_WIFI_TYPE)" \
subdirs="$(subdirs)"
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
rsync -r --exclude=.* ~/git/easy-soc-libs/ $(PKG_BUILD_DIR)/
endef
endif
include easy.mk
include wifi.mk
include dsl.mk
include ethernet.mk
include qos.mk
ifneq ($(wildcard $(PKG_BUILD_DIR)/.config_*),\
$(PKG_BUILD_DIR)/.config_$(patsubst "%",%,$(CONFIG_TARGET_PROFILE)))
define Build/Compile/rebuild
$(FIND) $(PKG_BUILD_DIR) -name \*.o -or -name \*.so\* | $(XARGS) rm -f;
$(if $(wildcard $(PKG_BUILD_DIR)/config_*), \
rm -f $(PKG_BUILD_DIR)/.config_*)
endef
endif
STAMP_CONFIGURED:=$(strip $(STAMP_CONFIGURED))_$(shell echo $(TARGET_CFLAGS) | mkhash md5)
define Build/Compile
$(Build/Compile/rebuild)
touch $(PKG_BUILD_DIR)/.config_$(CONFIG_TARGET_PROFILE)
$(call Build/Compile/Default)
$(foreach dir,$(subdirs),$(call Build/Compile/$(dir)))
endef
define Build/InstallDev
$(foreach dir,$(subdirs),$(call Build/InstallDev/$(dir),$(1),$(2));)
endef
define Package/easy-soc-libs/install
:
endef
$(eval $(foreach e,$(EASY_SOC_LIBS),$(call BuildPackage,$(e))))

View File

@@ -1,44 +0,0 @@
define Package/libdsl
$(call Package/easy-soc-libs)
TITLE:= xDSL library (libdsl)
endef
define Package/libdsl/config
if PACKAGE_libdsl
config LIBDSL_DEBUG
depends on PACKAGE_libdsl
bool "Enable dsl debugging"
default n
config LIBDSL_TEST
depends on PACKAGE_libdsl
bool "Enable dsl test program"
default n
endif
endef
define Build/InstallDev/libdsl
$(INSTALL_DIR) $(1)/usr/include/xdsl
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libdsl/xdsl.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/libdsl/xtm.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/libdsl/common.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/libdsl/libdsl.so* $(1)/usr/lib/
endef
ifeq ($(CONFIG_LIBDSL_TEST),y)
define Build/Compile/libdsl
$(MAKE) -C "$(PKG_BUILD_DIR)/libdsl/test" $(MAKE_FLAGS)
endef
endif
define Package/libdsl/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_BUILD_DIR)/libdsl/libdsl.so* $(1)/usr/lib/
ifeq ($(CONFIG_LIBDSL_TEST),y)
$(CP) $(PKG_BUILD_DIR)/libdsl/test/libdsl_test $(1)/usr/bin/
endif
endef

View File

@@ -1,29 +0,0 @@
define Package/libeasy
$(call Package/easy-soc-libs)
TITLE:= Common helper functions library (libeasy)
DEPENDS+=+libnl +libnl-route
endef
define Package/libeasy/config
source "$(SOURCE)/Config.in"
endef
define Build/InstallDev/libeasy
$(INSTALL_DIR) $(1)/usr/include/easy
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libeasy/easy.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/event.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/if_utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/debug.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/hlist.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/libeasy*.so* $(1)/usr/lib/
endef
define Package/libeasy/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libeasy/libeasy*.so* $(1)/usr/lib/
endef

View File

@@ -1,27 +0,0 @@
define Package/libethernet
$(call Package/easy-soc-libs)
TITLE:= Ethernet library (libethernet)
DEPENDS+=+libnl +libnl-route +libeasy +TARGET_iopsys_ramips:swconfig +TARGET_airoha:ecnt_api
endef
define Package/libethernet/config
config LIBETHERNET_DEBUG
depends on PACKAGE_libethernet
bool "Enable ethernet debugging"
default n
endef
define Build/InstallDev/libethernet
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libethernet/ethernet.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libethernet/libethernet.so $(1)/usr/lib/
endef
define Package/libethernet/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libethernet/libethernet.so* $(1)/usr/lib/
endef

View File

@@ -1,27 +0,0 @@
define Package/libqos
$(call Package/easy-soc-libs)
TITLE:= QoS library (libqos)
DEPENDS+=+libnl +libnl-route +libeasy
endef
define Package/libqos/config
config LIBQOS_DEBUG
depends on PACKAGE_libqos
bool "Enable qos debugging"
default n
endef
define Build/InstallDev/libqos
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libqos/include/qos.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libqos/libqos.so $(1)/usr/lib/
endef
define Package/libqos/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libqos/libqos*.so* $(1)/usr/lib/
endef

View File

@@ -1,29 +0,0 @@
define Package/libwifi
$(call Package/easy-soc-libs)
TITLE:= WiFi library (libwifi)
DEPENDS+=+libnl +libnl-route +libeasy +TARGET_brcmbca:bcmkernel
endef
define Package/libwifi/config
if PACKAGE_libdsl
config LIBWIFI_DEBUG
depends on PACKAGE_libwifi
bool "Enable wifi debugging"
default n
endif
endef
define Build/InstallDev/libwifi
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwifi/wifi.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libwifi/libwifi*.so* $(1)/usr/lib/
endef
define Package/libwifi/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwifi/libwifi*.so* $(1)/usr/lib/
endef

View File

@@ -1,4 +0,0 @@
config ENDPT_OPEN
bool "Use pre-compiled version for Open SDK"
default n

View File

@@ -1,69 +0,0 @@
#
# Copyright (C) 2018 IOPSYS Software Solutions AB
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=endptmngr
PKG_VERSION:=0.6
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/endptmngr.git
PKG_SOURCE_VERSION:=dc12712af8c4088f7873502ca845e51c68a1ada9
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
PKG_LICENSE:=PROPRIETARY
PKG_LICENSE_FILES:=LICENSE
export BUILD_DIR
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_PARALLEL:=1
# All config variable that are passed to the make invocation, directly or
# indirectly. This ensures that the package is rebuilt on config-changes.
PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
export CONFIG_BRCM_SDK_VER_504040
export CONFIG_BCM_CHIP_ID
include $(INCLUDE_DIR)/package.mk
define Package/endptmngr/config
source "$(SOURCE)/Config.in"
endef
define Package/endptmngr
CATEGORY:=Utilities
TITLE:=Broadcom Voice Endpoint Manager
URL:=
DEPENDS:= +libubox +ubus +libpicoevent +uci +bcmkernel @TARGET_HAS_VOICE @BCM_VOICE
endef
define Package/endptmngr/description
endptmngr
endef
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
rsync -av --exclude=.* ~/git/endptmngr/* $(PKG_BUILD_DIR)/
endef
endif
TARGET_CFLAGS += \
-Wall \
-Werror
define Package/endptmngr/install
$(CP) ./files/* $(1)/
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/endptmngr $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,endptmngr))

View File

@@ -1,27 +0,0 @@
#!/bin/sh /etc/rc.common
START=68
STOP=12
USE_PROCD=1
NAME=endptmngr
start_service() {
[ "$(db -q get hw.board.hasVoice)" = "1" ] || return
procd_open_instance
procd_set_param env hw_board_hasDect=$(db get hw.board.hasDect)
procd_set_param command $NAME
procd_set_param respawn "5" "0" "3"
procd_set_param nice -12
procd_close_instance
}
reload_service() {
stop
start
}
service_triggers() {
procd_add_reload_trigger asterisk
}

View File

@@ -5,7 +5,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ethmngr
PKG_VERSION:=2.0.1
PKG_VERSION:=2.1.0
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=5a0ff3bc7c49dcb05129f423ef8e0c4929f6aa03
@@ -23,7 +23,7 @@ define Package/ethmngr
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Ethernet status and configration utility
DEPENDS:=+libethernet +libuci +libubox +ubus +libpthread +libnl-genl
DEPENDS:=+(TARGET_brcmbca||TARGET_airoha||TARGET_ipq95xx||TARGET_mediatek):libethernet +libuci +libubox +ubus +libpthread +libnl-genl
endef
define Package/ethmngr/description
@@ -37,10 +37,22 @@ TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include/libnl3 \
-D_GNU_SOURCE
ifeq ($(CONFIG_TARGET_brcmbca)$(CONFIG_TARGET_airoha)$(CONFIG_TARGET_ipq95xx)$(CONFIG_TARGET_mediatek),)
define Build/Compile
endef
endif
define Package/ethmngr/install
$(INSTALL_DIR) $(1)/etc/init.d $(1)/usr/sbin
$(INSTALL_BIN) ./files/ethmngr.init $(1)/etc/init.d/ethmngr
$(CP) ./files/common/* $(1)/
ifneq ($(CONFIG_TARGET_brcmbca),)
$(CP) ./files/broadcom/* $(1)/
else
$(CP) ./files/linux/* $(1)/
endif
ifneq ($(CONFIG_TARGET_brcmbca)$(CONFIG_TARGET_airoha)$(CONFIG_TARGET_ipq95xx)$(CONFIG_TARGET_mediatek),)
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/ethmngr $(1)/usr/sbin/
endif
endef
$(eval $(call BuildPackage,ethmngr))

View File

@@ -0,0 +1,144 @@
# arg1: port ifname, ex: eth0
get_max_port_speed() {
if [ -z "$1" ]; then
echo 0
return
fi
local ifname="$1"
local phycap="$(ethctl $ifname media-type 2>/dev/null | grep 'PHY Speed Capabilities' | awk '{print$NF}')"
local speed=1000
case "$phycap" in
10GFD*) speed=10000 ;;
5GFD*) speed=5000 ;;
2.5GFD*) speed=2500 ;;
1GFD*) speed=1000 ;;
100MFD*|100MHD*) speed=100 ;;
10MFD*|10MHD*) speed=10 ;;
esac
echo $speed
}
# arg1: port name, ex: eth0
get_port_number() {
[ -z "$1" ] && return
local ports="0 1 2 3 4 5 6 7 8"
local units="0 1"
local port="$1"
local ifname
for unit in $units; do
for prt in $ports; do
ifname="$(ethswctl getifname $unit $prt 2>/dev/null | awk '{print$NF}')"
if [ "$ifname" == "$port" ]; then
echo "$unit $prt"
return
fi
done
done
}
# arg1: port ifname, ex: eth0
reset_port() {
local ifname="$1"
ethctl $ifname phy-reset >/dev/null
}
# arg1: port ifname, ex: eth0
# arg2: port enabled, ex: 1
power_updown() {
local ifname="$1"
local enabled=$2
local updown="up"
[ $enabled -eq 0 ] && updown="down"
ethctl $ifname phy-power $updown >/dev/null
}
# arg1: port ifname, ex: eth0
# arg2: port enabled, ex: 1
# arg3: port speed, ex: 1000
# arg4: port duplex, ex: full
# arg5: port autoneg, ex: on
# arg6: port eee, ex: 0
# arg7: port pause, ex: 0
set_port_settings() {
local ifname="$1"
local enabled=$2
local speed="$3"
local duplex=$4
local autoneg=$5
local eee=$6
local pause=$7
[ -d /sys/class/net/$ifname ] || return
local unitport="$(get_port_number $ifname)"
local unit=$(echo $unitport | cut -d ' ' -f 1)
local port=$(echo $unitport | cut -d ' ' -f 2)
[ $autoneg -eq 1 ] && autoneg="on" || autoneg="off"
[ "$duplex" == "half" ] && duplex=0 || duplex=1
[ "$duplex" == 0 ] && dplx="HD" || dplx="FD"
[ "$autoneg" == "on" ] && media_type="auto" || media_type="$speed$dplx"
phycaps="$(ethctl $ifname media-type 2>/dev/null | grep 'PHY Speed Capabilities' | awk '{print$NF}')"
numofcaps="$(echo $phycaps | tr ':' ' ' | wc -w)"
# Reset the port before setting new params
reset_port $ifname
if [ "$numofcaps" == "1" ]; then
logger -t "ethmngr" "$ifname is capable of $phycaps only; not setting speed/duplex"
else
logger -t "ethmngr" "$ifname is capable of $phycaps; setting speed/duplex to $media_type"
ethctl $ifname media-type $media_type ${pyhendpoint:+ port $pyhendpoint} &>/dev/null
fi
[ $eee -eq 1 ] && eee="on" || eee="off"
ethtool --set-eee $ifname eee $eee 2>/dev/null
case $pause in
off|0)
pause=0x0
auto=off
rx=off
tx=off
;;
on|1)
pause=0x2
auto=off
rx=on
tx=on
;;
auto)
pause=0x1
auto=on
rx=on
tx=on
;;
tx)
pause=0x3
auto=off
rx=off
tx=on
;;
rx)
pause=0x4
auto=off
rx=on
tx=off
;;
esac
if [ "$auto" == "on" ]; then
# Use ethswctl utility to set pause autoneg
# as ethtool is not setting it properly
ethswctl -c pause -n $unit -p $port -v $pause 2>&1 >/dev/null
else
ethtool --pause $ifname autoneg $auto rx $rx tx $tx 2>/dev/null
fi
power_updown $ifname $enabled
}

View File

@@ -1,12 +1,15 @@
#!/bin/sh /etc/rc.common
START=15
STOP=90
USE_PROCD=1
PROG=/usr/sbin/ethmngr
. /lib/functions.sh
include /lib/network
include /lib/ethernet
configure_ports(){
configure_ethernet_port(){
local cfg=$1
local ifname enabled speed duplex autoneg eee pause
@@ -24,11 +27,22 @@ configure_ports(){
}
start_service() {
[ -f /lib/network/port.sh ] || return
if [ -s /etc/config/ports ]; then
config_load ports
config_foreach configure_ethernet_port ethport
fi
config_load ports
config_foreach configure_ports ethport
config_foreach configure_ports sfpport
if [ -f $PROG ]; then
procd_open_instance
procd_set_param command ${PROG}
procd_set_param respawn
procd_close_instance
fi
}
reload_service() {
stop
start
}
service_triggers() {

View File

@@ -2,7 +2,8 @@
populate_config_from_db() {
. /lib/functions.sh
include /lib/network
. /lib/network/utils.sh
include /lib/ethernet
portorder="$(db -q get hw.board.ethernetPortOrder)"
for port in $portorder; do

View File

@@ -1,19 +0,0 @@
#!/bin/sh /etc/rc.common
START=95
STOP=10
USE_PROCD=1
PROG=/usr/sbin/ethmngr
start_service() {
procd_open_instance
procd_set_param command ${PROG}
procd_set_param respawn
procd_close_instance
}
reload_service() {
stop
start
}

View File

@@ -0,0 +1,95 @@
# arg1: port ifname, ex: eth0
get_max_port_speed() {
if [ -z "$1" ]; then
echo 0
return
fi
local ifname="$1"
local phycap="$(ethtool $ifname | grep -A 10 "Supported link modes" | grep 00 | tail -n 1 | awk '{print$NF}')"
local speed=1000
case "$phycap" in
10000*) speed=10000 ;;
5000*) speed=5000 ;;
2500*) speed=2500 ;;
1000*) speed=1000 ;;
100*) speed=100 ;;
10*) speed=10 ;;
esac
echo $speed
}
# arg1: port ifname, ex: eth0
# arg2: port enabled, ex: 1
power_updown() {
local ifname="$1"
local enabled=$2
local updown="up"
[ $enabled -eq 0 ] && updown="down"
ip link set dev $ifname $updown
}
# arg1: port ifname, ex: eth0
# arg2: port enabled, ex: 1
# arg3: port speed, ex: 1000
# arg4: port duplex, ex: full
# arg5: port autoneg, ex: on
# arg6: port eee, ex: 0
# arg7: port pause, ex: 0
set_port_settings() {
local ifname="$1"
local enabled=$2
local speed="$3"
local duplex=$4
local autoneg=$5
local eee=$6
local pause=$7
[ -d /sys/class/net/$ifname ] || return
[ $autoneg -eq 1 ] && autoneg="on" || autoneg="off"
ethtool --change $ifname speed $speed duplex $duplex autoneg $autoneg
[ $eee -eq 1 ] && eee="on" || eee="off"
ethtool --set-eee $ifname eee $eee 2>/dev/null
case $pause in
off|0)
pause=0x0
auto=off
rx=off
tx=off
;;
on|1)
pause=0x2
auto=off
rx=on
tx=on
;;
auto)
pause=0x1
auto=on
rx=on
tx=on
;;
tx)
pause=0x3
auto=off
rx=off
tx=on
;;
rx)
pause=0x4
auto=off
rx=on
tx=off
;;
esac
ethtool --pause $ifname autoneg $auto rx $rx tx $tx 2>/dev/null
power_updown $ifname $enabled
}

View File

@@ -1,106 +0,0 @@
#
# Copyright (C) 2022 IOPSYS Software Solutions AB
#
include $(TOPDIR)/rules.mk
PKG_NAME:=evoice
PKG_VERSION:=0.2.39
LOCAL_DEV=0
LOCAL_DEV_EVOICE_DIR=~/voip/evoice
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/evoice.git
PKG_SOURCE_VERSION:=30d65330de0368f73ecf4a2e804c39a2ee280454
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
PKG_LICENSE:=PROPRIETARY IOPSYS
PKG_LICENSE_FILES:=LICENSE
# All config variable that are passed to the make invocation, directly or
# indirectly. This ensures that the package is rebuilt on config-changes.
#PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
include $(INCLUDE_DIR)/package.mk
define Package/$(PKG_NAME)
CATEGORY:=Network
SUBMENU:=Telephony
TITLE:=Ensemble Voice
URL:=
DEPENDS:= +libubox +libubus +libpicoevent +libuci +libstdcpp +libopenssl +libjson-c +libblobmsg-json\
+TARGET_brcmbca:bcmkernel\
+TARGET_airoha:kmod-voip_driver\
+TARGET_airoha:voip_app +libbbf_api
endef
define Package/$(PKG_NAME)/description
Ensemble Voice. A stand alone SIP VoIP application.
endef
ifeq ($(LOCAL_DEV),1)
# If you want to build the code from your own local repositiory enable
# LOCAL_DEV and set LOCAL_DEV_EVOICE_DIR to your own git repository.
define Build/Prepare
@echo "======================================================="
@echo "DEVELOPMENT BUILD! rsync $(LOCAL_DEV_EVOICE_DIR) to $(PKG_BUILD_DIR)"
@echo "======================================================="
rsync -a $(LOCAL_DEV_EVOICE_DIR)/* $(PKG_BUILD_DIR)/
endef
endif
IDIR = $(STAGING_DIR)/usr/include
TONES_INI_REQUIRED=
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
BDIR = bcm963xx/userspace/private/apps/voice
CC_FLAGS = -I$(IDIR) -I$(IDIR)/$(BDIR)/inc\
-I$(IDIR)/bcm963xx/xchg/bos/publicInc\
-I$(IDIR)/bcm963xx/bcmdrivers/broadcom/include/bcm963xx
TRG=SVrgBcmFxs
JSONFILE=codecs_brcm.json
else ifeq ($(CONFIG_TARGET_airoha),y)
TARGET_PLATFORM=ECONET
TONES_INI_REQUIRED=y
TRG=SVrgMtekOwrt
JSONFILE=codecs_airoha.json
endif
# disable temporarily some not important warnings, force PIC
CC_FLAGS_VS=$(CC_FLAGS) -Wno-unused-parameter -Wno-unused-function -fPIC
export TARGET_PLATFORM
#used and altered by BIDE makefiles
export _XFLAGS
BIDE_MAKE_OPTS = -r -R -C $(PKG_BUILD_DIR) -f _bld/src/cdabs.mk\
SWB=b_gxxqca6 HWA=a_openwrt HWC=c_hosted OSP=p_posix LIF=cerder DBG=dbg
define Build/Compile
@echo "TARGET_PLATFORM=${TARGET_PLATFORM}"
+$(MAKE) $(BIDE_MAKE_OPTS) CC_FLAGS="$(CC_FLAGS)" TRG=$(TRG)
@echo "clean libvoiceservice before building shared lib!"
+$(MAKE) $(BIDE_MAKE_OPTS) CC_FLAGS="$(CC_FLAGS_VS)" TRG=libvoiceservice cleanall
+$(MAKE) $(BIDE_MAKE_OPTS) CC_FLAGS="$(CC_FLAGS_VS)" TRG=libvoiceservice
endef
define Package/evoice/install
$(CP) ./files/* $(1)/
$(if $(TONES_INI_REQUIRED),,$(RM) $(1)/etc/evoice/tones.ini)
$(INSTALL_DIR) $(1)/usr/sbin
$(CP) $(1)/lib/voice/$(JSONFILE) $(1)/lib/voice/codecs_evoice.json
$(RM) $(1)/lib/voice/codecs_brcm.json
$(RM) $(1)/lib/voice/codecs_airoha.json
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
$(INSTALL_BIN) $(PKG_BUILD_DIR)/_bin/a_openwrt/evoice $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/_bin/a_openwrt/libvoiceservice.so $(1)/usr/lib/bbfdm/
endef
$(eval $(call BuildPackage,evoice))

View File

@@ -1,334 +0,0 @@
config SIPClient 'Client1'
option Enable '1'
option RegisterMode 'RFC3261'
option AuthUserName '51234'
option AuthPassword '51234'
option Network 'Network1'
option MaxSessions '5'
option RegisiterURI '51234@sip-proxy.iopsys.eu'
option E164Format '1'
config SIPClient 'Client2'
option Enable '1'
option RegisterMode 'RFC3261'
option AuthUserName '51235'
option AuthPassword '51235'
option Network 'Network1'
option MaxSessions '5'
option RegisiterURI '51235@sip-proxy.iopsys.eu'
option E164Format '1'
config SIPNetwork 'Network1'
option Enable '1'
option ProxyServer 'sip-proxy.iopsys.eu'
option AcceptFromProxyOnly '0'
option ProxyServerPort '5060'
option ProxyServerTransport 'UDP'
option RegistrarServer 'sip-proxy.iopsys.eu'
option RegistrarServerPort '5060'
option RegistrarServerTransport 'UDP'
option RegistrationPeriod '3240'
option RegisterExpires '3600'
option UserAgentDomain ' '
option TimerRegistrationFailed '120'
option TimerT1 '500'
option VoIPProfile 'VoIPProfile1'
option SIPSessionTimerEnable '0'
option SIPSessionExpireInterval '1800'
option SIPSessionMinimumTimer '90'
option SIPSessionRefresher 'NONE'
option SIPSessionTimerMode 'REQUEST'
option SIPSessionRefreshRequest 'UPDATE'
list CodecList '1CodecProfile1'
list CodecList '1CodecProfile2'
list CodecList '1CodecProfile3'
list CodecList '1CodecProfile5'
list CodecList '1CodecProfile4'
config CodecProfile '1CodecProfile1'
option Enable '1'
option Codec 'G.711ALaw'
option PacketizationPeriod '20'
option SilenceSupression '1'
config CodecProfile '1CodecProfile2'
option Enable '1'
option Codec 'G.711MuLaw'
option PacketizationPeriod '20'
option SilenceSupression '1'
config CodecProfile '1CodecProfile3'
option Enable '1'
option Codec 'G.726'
option PacketizationPeriod '20'
option SilenceSupression '0'
config CodecProfile '1CodecProfile4'
option Enable '1'
option Codec 'G.722'
option PacketizationPeriod '20'
option SilenceSupression '0'
config CodecProfile '1CodecProfile5'
option Enable '1'
option Codec 'G.729'
option PacketizationPeriod '20'
option SilenceSupression '0'
config VoIPProfile 'VoIPProfile1'
option Enable '1'
option DTMFMethod 'RFC4733'
option RTP '1RTP'
config RTP '1RTP'
option LocalPortMin '10020'
option LocalPortMax '10039'
option JitterBufferType 'Static'
config FXXPorts 'POTS'
option Region 'US'
config FXSPorts 'FXS1'
option Enable '1'
option DialType 'Tone'
option TransmitGain '0'
option ReceiveGain '0'
option EchoCancellationEnable '1'
config FXSPorts 'FXS2'
option Enable '1'
option DialType 'Tone'
option TransmitGain '0'
option ReceiveGain '0'
option EchoCancellationEnable '1'
config Extension 'Extension1'
option Enable '1'
option ExtensionNumber '10#'
option Provider 'FXS1'
option CallingFeatures 'Set1'
option Name 'Phone 1'
config Extension 'Extension2'
option Enable '1'
option ExtensionNumber '11#'
option Provider 'FXS2'
option CallingFeatures 'Set1'
option Name 'Phone 2'
config Line 'Line1'
option Enable '1'
option Provider 'Client1'
option CallingFeatures 'Set1'
config Line 'Line2'
option Enable '1'
option Provider 'Client2'
option CallingFeatures 'Set2'
config IncomingMap 'IncomingMap1'
option Enable '1'
option Extension 'Extension1'
option Line 'Line1'
config IncomingMap 'IncomingMap2'
option Enable '1'
option Extension 'Extension2'
option Line 'Line2'
config IncomingMap 'IncomingMap3'
option Enable '0'
option Extension 'Extension2'
option Line 'Line1'
config OutgoingMap 'OutgoingMap1'
option Enable '1'
option Extension 'Extension1'
option Line 'Line1'
config OutgoingMap 'OutgoingMap2'
option Enable '1'
option Extension 'Extension2'
option Line 'Line2'
config CallingFeatures 'Set1'
option CallerIDEnable '1'
option CallerIDNameEnable '1'
option CallForwardUnconditionalEnable '0'
option CallForwardUnconditionalNumber ' '
option CallForwardOnBusyEnable '0'
option CallForwardOnBusyNumber ' '
option CallForwardOnNoAnswerEnable '0'
option CallForwardOnNoAnswerRingTimeout '24'
option CallForwardOnNoAnswerNumber ' '
option CallTransferEnable '1'
option MWIEnable '1'
option VMWIEnable '1'
option LineMessagesWaiting '0'
option AnonymousCallRejectionEnable '0'
option AnonymousCallEnable '1'
option DoNotDisturbEnable '1'
option RepeatDialEnable '1'
option VoiceMailEnable '1'
option CallPickUpEnable '1'
option CCBSEnable '1'
option CallWaitingEnable '0'
config CallingFeatures 'Set2'
option CallerIDEnable '1'
option CallerIDNameEnable '1'
option CallForwardUnconditionalEnable '0'
option CallForwardUnconditionalNumber ' '
option CallForwardOnBusyEnable '0'
option CallForwardOnBusyNumber ' '
option CallForwardOnNoAnswerEnable '0'
option CallForwardOnNoAnswerRingTimeout '24'
option CallForwardOnNoAnswerNumber ' '
option CallTransferEnable '1'
option MWIEnable '1'
option VMWIEnable '1'
option LineMessagesWaiting '0'
option AnonymousCallRejectionEnable '0'
option AnonymousCallEnable '1'
option DoNotDisturbEnable '1'
option RepeatDialEnable '1'
option VoiceMailEnable '1'
option CallPickUpEnable '1'
option CCBSEnable '1'
option CallWaitingEnable '1'
config NumberingPlan 'NumberingPlan1'
option MinimumNumberOfDigits '1'
option MaximumNumberOfDigits '15'
option InterDigitTimerStd '2000'
option InterDigitTimerOpen '2000'
option TerminationDigit '#'
config NumberingPlan 'NumberingPlan2'
option MinimumNumberOfDigits '5'
option MaximumNumberOfDigits '15'
option InterDigitTimerStd '2000'
option InterDigitTimerOpen '2000'
option TerminationDigit ' '
list PrefixList '2PrefixInfo1'
list PrefixList '2PrefixInfo2'
list PrefixList '2PrefixInfo3'
list PrefixList '2PrefixInfo4'
list PrefixList '2PrefixInfo5'
list PrefixList '2PrefixInfo6'
list PrefixList '2PrefixInfo7'
list PrefixList '2PrefixInfo8'
list PrefixList '2PrefixInfo9'
config NumberingPlan 'NumberingPlan3'
option MinimumNumberOfDigits '5'
option MaximumNumberOfDigits '15'
option InterDigitTimerStd '2000'
option InterDigitTimerOpen '2000'
option TerminationDigit '#'
list PrefixList '3PrefixInfo1'
config PrefixInfo '2PrefixInfo1'
option Enable '1'
option PrefixRange '*43#'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CW_ACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo2'
option Enable '1'
option PrefixRange '#43#'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CW_DEACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo3'
option Enable '1'
option PrefixRange '*21*(X+)#'
option PrefixMinNumberOfDigits '9'
option PrefixMaxNumberOfDigits '9'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFU_ACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo4'
option Enable '1'
option PrefixRange '#21#'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFU_DEACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo5'
option Enable '1'
option PrefixRange '*67*(X+)#'
option PrefixMinNumberOfDigits '9'
option PrefixMaxNumberOfDigits '9'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFB_ACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo6'
option Enable '1'
option PrefixRange '#67#'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFB_DEACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo7'
option Enable '1'
option PrefixRange '*61*(X+(*X+)?)#'
option PrefixMinNumberOfDigits '15'
option PrefixMaxNumberOfDigits '15'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFNR_ACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo8'
option Enable '1'
option PrefixRange '#61#'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CFNR_DEACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '2PrefixInfo9'
option Enable '1'
option PrefixRange '*31*'
option PrefixMinNumberOfDigits '4'
option PrefixMaxNumberOfDigits '4'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'CA_ACTIVATE'
option FacilityActionArgument ' '
config PrefixInfo '3PrefixInfo1'
option Enable '1'
option PrefixRange '110|112'
option PrefixMinNumberOfDigits '7'
option PrefixMaxNumberOfDigits '7'
option NumberOfDigitsToRemove '0'
option PosOfDigitsToRemove '0'
option FacilityAction 'X_IOPSYS_EU_EMERGENCY'
option FacilityActionArgument ' '
config DialPlan 'X_IOPSYS_EU_InternalNumber1'
option RegExp '1X#'

File diff suppressed because it is too large Load Diff

View File

@@ -1,181 +0,0 @@
# RO (Main)
config account 'map_board'
option HW_Has_Voice 'hw.board.hasVoice'
option HW_Has_DECT 'hw.board.hasDect'
option HW_Nr_Of_POTS_Ports 'hw.board.VoicePorts'
option HW_VoiceDSP 'hw.board.VoiceDSP'
option ProductID 'device.deviceinfo.ModelName'
option I3_VERSION 'device.deviceinfo.SoftwareVersion'
option SerialNumber 'device.deviceinfo.SerialNumber'
config account 'map_pots'
option Country 'voice.POTS.Region'
# Voice Service navigation paths
# Not used to initialize internal configuration
config navigation 'map_vs'
option Account 'voice.Client@.'
option Network 'voice.Client@.Network'
option VoIPProfile 'voice.Network@.VoIPProfile'
option CfAccount 'voice.Line@.CallingFeatures'
option CfPhone 'voice.Extension@.CallingFeatures'
option CodecList 'voice.Network@.CodecList'
option Codec 'voice.Codec@.Codec'
option OutgoingMapEnabled 'voice.OutgoingMap@.Enable'
option From_Phone 'voice.OutgoingMap@.Extension'
option Extension 'voice.Extension@.Provider'
option To_Account 'voice.OutgoingMap@.Line'
option Line 'voice.Line@.Provider'
option LineEnable 'voice.Line@.Enable'
option LineProvider 'voice.Line@.Provider'
option IncomingMapEnabled 'voice.IncomingMap@.Enable'
option From_Account 'voice.IncomingMap@.Line'
option To_Phone 'voice.IncomingMap@.Extension'
option ExtensionEnable 'voice.Extension@.Enable'
option ExtensionProvider 'voice.Extension@.Provider'
# Registration for account A-Z is associate with SIP.Clienti.Enable
# All parameters in this table are written to internal configuration
config account 'map_account'
option Registration 'voice.Client@.Enable'
option Display_Name ''
option PhoneNumber 'voice.Client@.RegisiterURI'
option Username 'voice.Client@.AuthUserName'
option Password 'voice.Client@.AuthPassword'
option SIP_Telephone_Syntax 'voice.Client@.E164Format'
option Device_Description 'voice.Client@.UserAgent'
# Network stuff associated with an account.
# All parameters in this table are written to internal configuration
config network 'map_net'
option Enable 'voice.Network@.Enable'
option Registration_Server 'voice.Network@.RegistrarServer'
option Outbound_Proxy 'voice.Network@.ProxyServer'
option Accept_From_Registered 'voice.Network@.AcceptFromProxyOnly'
option SIP_Port 'voice.Network@.RegistrarServerPort'
option SIP_Transport 'voice.Network@.RegistrarServerTransport'
option RegistrationPeriod 'voice.Network@.RegistrationPeriod'
option Registration_Interval 'voice.Network@.RegisterExpires'
option Reg_Failure_Interval 'voice.Network@.TimerRegistrationFailed'
option T1 'voice.Network@.TimerT1'
option UserAgentDomain 'voice.Network@.UserAgentDomain'
option SIP_SessTmrEnable 'voice.Network@.SIPSessionTimerEnable'
option SIP_SessTmrMode 'voice.Network@.SIPSessionTimerMode'
option SIP_SessTmrMsg 'voice.Network@.SIPSessionRefreshRequest'
option SIP_SessTmrRefresher 'voice.Network@.SIPSessionRefresher'
option SIP_MinSE 'voice.Network@.SIPSessionMinimumTimer'
option SIP_SessInterval 'voice.Network@.SIPSessionExpireInterval'
config VoIPProfile 'map_voip'
option Enable 'voice.VoIPProfile@.Enable'
option DTMF_Method 'voice.VoIPProfile@.DTMFMethod'
option RTP 'voice.VoIPProfile@.RTP'
config RTP 'map_rtp'
option RTP_Port_Base 'voice.@RTP@.LocalPortMin'
option RTP_Port_End 'voice.@RTP@.LocalPortMax'
config codecs 'map_codec'
option Codec 'voice.CodecProfile@.Codec'
option enable 'voice.CodecProfile@.Enable'
option ptime 'voice.CodecProfile@.PacketizationPeriod'
option dtx 'voice.CodecProfile@.SilenceSupression'
config fxsinfo 'map_fxs'
option Enable 'voice.FXS@.Enable'
option DialType 'voice.FXS@.DialType'
option TransmitGain 'voice.FXS@.TransmitGain'
option ReceiveGain 'voice.FXS@.ReceiveGain'
option EchoCancellationEnable 'voice.FXS@.EchoCancellationEnable'
config extensioninfo 'map_ext'
option Enable 'voice.Extension@.Enable'
option Internal_Number_Phone 'voice.Extension@.ExtensionNumber'
option Display_Name_Phone 'voice.Extension@.Name'
config capabilities 'map_capa'
option Call_Waiting_Enable 'voice.Capabilities@FacilityActions'
option Enable_Call_Diversion 'voice.Capabilities@FacilityActions'
config cs_account 'map_set'
option BusyCallWait 'voice.Set@.CallWaitingEnable'
option AlwaysDivert 'voice.Set@.CallForwardUnconditionalEnable'
option CFU_Number 'voice.Set@.CallForwardUnconditionalNumber'
option BusyDivert 'voice.Set@.CallForwardOnBusyEnable'
option CFB_Number 'voice.Set@.CallForwardOnBusyNumber'
option NoAnswDivert 'voice.Set@.CallForwardOnNoAnswerEnable'
option CFNR_Number 'voice.Set@.CallForwardOnNoAnswerNumber'
option CFNR_Timeout 'voice.Set@.CallForwardOnNoAnswerRingTimeout'
option Enable_Call_Transfer 'voice.Set@.CallTransferEnable'
option AnonymousReject 'voice.Set@.AnonymousCallRejectionEnable'
option AllowAnonymousConf 'voice.Set@.AnonymousCallEnable'
option CallerIDEnable 'voice.Set@.CallerIDEnable'
config cs_xvendor 'map_np_cs'
option np_sc_actCW 'voice.X_IOPSYS_EU_NpSc@.CW_ACT'
option np_sc_actCW_output 'voice.X_IOPSYS_EU_NpSc@.CW_OUT'
option np_sc_deactCW 'voice.X_IOPSYS_EU_NpSc@.CW_DEACT'
option np_sc_isactCW 'voice.X_IOPSYS_EU_NpSc@.CW_ISACT'
option np_sc_actCFU 'voice.X_IOPSYS_EU_NpSc@.CFU_ACT'
option np_sc_actCFU_output 'voice.X_IOPSYS_EU_NpSc@.CFU_OUT'
option np_sc_deactCFU 'voice.X_IOPSYS_EU_NpSc@.CFU_DEACT'
option np_sc_actCFB 'voice.X_IOPSYS_EU_NpSc@.CFB_ACT'
option np_sc_actCFB_output 'voice.X_IOPSYS_EU_NpSc@.CFB_OUT'
option np_sc_deactCFB 'voice.X_IOPSYS_EU_NpSc@.CFB_DEACT'
option np_sc_actCFNR 'voice.X_IOPSYS_EU_NpSc@.CFNR_ACT'
option np_sc_actCFNR_output 'voice.X_IOPSYS_EU_NpSc@.CFNR_OUT'
option np_sc_deactCFNR 'voice.X_IOPSYS_EU_NpSc@.CFNR_DEACT'
option np_sc_actRA 'voice.X_IOPSYS_EU_NpSc@.RA_ACT'
option np_sc_deactRA 'voice.X_IOPSYS_EU_NpSc@.RA_DEACT'
option np_sc_actAC 'voice.X_IOPSYS_EU_NpSc@.AC_ACT'
option np_sc_deactAC 'voice.X_IOPSYS_EU_NpSc@.AC_DEACT'
option np_sc_actAA 'voice.X_IOPSYS_EU_NpSc@.AA_ACT'
option np_sc_deactAA 'voice.X_IOPSYS_EU_NpSc@.AA_DEACT'
option np_sc_actAD 'voice.X_IOPSYS_EU_NpSc@.AD_ACT'
option np_sc_actAD_output 'voice.X_IOPSYS_EU_NpSc@.AD_OUT'
option np_sc_deactAD 'voice.X_IOPSYS_EU_NpSc@.AD_DEACT'
option np_sc_actMWSplash 'voice.X_IOPSYS_EU_NpSc@.MWI_SPLASH_ACT'
option np_sc_deactMWSplash 'voice.X_IOPSYS_EU_NpSc@.MWI_SPLASH_DEACT'
option np_sc_actMWTone 'voice.X_IOPSYS_EU_NpSc@.MWI_TONE_ACT'
option np_sc_deactMWTone 'voice.X_IOPSYS_EU_NpSc@.MWI_TONE_DEACT'
option np_sc_redial 'voice.X_IOPSYS_EU_NpSc@.REDIAL'
option np_sc_setMiscConf 'voice.X_IOPSYS_EU_NpSc@.SET_MISC'
config cc_xvendor 'map_np_in'
option np_in_limitExp 'voice.X_IOPSYS_EU_InternalNumber@.RegExp'
config cc_xvendor 'map_np_sh'
option sh_no_str 'voice.X_IOPSYS_EU_ShortNumber@.RegExp'
config cc_xvendor 'map_np_eme'
option np_eme 'voice.X_IOPSYS_EU_EmergencyNumber@.RegExp'
option np_eme_out 'voice.X_IOPSYS_EU_EmergencyNumber@.OutStr'
config cc_xvendor 'map_np_rn'
option np_rn 'voice.X_IOPSYS_EU_RegularNumber@.RegExp'
option np_rn_out 'voice.X_IOPSYS_EU_RegularNumber@.OutStr'
option np_rn_account 'voice.X_IOPSYS_EU_RegularNumber@.AccStr'
config cc_xvendor 'map_np_bn'
option np_bn 'voice.X_IOPSYS_EU_BarredNumber@.RegExp'
option np_bn_out 'voice.X_IOPSYS_EU_BarredNumber@.OutStr'
config TR104NumberingPlan 'map_np_tr'
option min_digits 'voice.NumberingPlan@.MinimumNumberOfDigits'
option max_digits 'voice.NumberingPlan@.MaximumNumberOfDigits'
option tmo_std 'voice.NumberingPlan@.InterDigitTimerStd'
option tmo_open 'voice.NumberingPlan@.InterDigitTimerOpen'
option term_digit 'voice.NumberingPlan@.TerminationDigit'
option prefix_list 'voice.NumberingPlan@.PrefixList'
config TR104NumberingPlanPrefix 'map_np_pf'
option enable 'voice.@PrefixInfo@.Enable'
option range 'voice.@PrefixInfo@.PrefixRange'
option prefix_min_digits 'voice.@PrefixInfo@.PrefixMinNumberOfDigits'
option prefix_max_digits 'voice.@PrefixInfo@.PrefixMaxNumberOfDigits'
option remove_digits 'voice.@PrefixInfo@.NumberOfDigitsToRemove'
option remove_pos 'voice.@PrefixInfo@.NumberOfDigitsToRemove'
option facility_act 'voice.@PrefixInfo@.FacilityAction'
option facility_arg 'voice.@PrefixInfo@.FacilityActionArgument'

View File

@@ -1,56 +0,0 @@
config static_prm 'defaults'
option Print_Control '4'
option Print_UDP_Addr '192.168.1.3'
option Print_UDP_Port '60000'
option Verbosity 'On'
option Failure_Log 'On'
option Message_Log 'On'
option Method_Trace 'Off'
option Dial_Cache_Size '0'
option Reverse_Fax_Detection '0'
option DSP_24 '0'
option DSP_36 '0'
option DSP_43 '0'
option Swap_Name_Nr_CID '0'
option R_Button_Lower_Lim '100'
option R_Button_Upper_Lim '800'
option HookOn_Delay '0'
option SupportLDD '0'
option LDD_Min_Break_Time '41'
option LDD_Max_Break_Time '94'
option LDD_Percent_Break '55'
option Tone_On_Hangup '1'
option BusyTone_On_Hangup '1'
option Enable_Analouge_Conf '0'
option PrackUsage '1'
option SIP_SupportedPath '0'
option IMS_Access_Network_Info ' '
option SIP_Reason_Protocol '0'
option SIP_Body_QOST '0'
option SIP_HistoryInfo '0'
option Customer_Spec2 '1'
option UTF8_Enable '0'
option RFC3325 '0'
option Accept_From_Registered '0'
option Polarity_Reversal '0'
option Closed_Dial_Plan '0'
option Netw_Dial '0'
option No_Answer_Tmo '180'
option UPnP_Enabled '0'
option NAT_Address ' '
option NAT_Address_From_SIP '0'
option HookOn_Transfer '0'
option Enable_Call_Transfer '1'
option CallerIDEnable '1'
option Multiparty_Transp '0'
option Presence_Indication '0'
option Login_Note ' '
option Login_Description ' '
option Logout_Note ' '
option Logout_Description ' '
option Resolve_Every_Transaction '2'
option Translate_Plus '1'
option Mid_Call_Services '0'
option Account_Restriction '0'
option Answering_Machine_Enable '0'

View File

@@ -1,32 +0,0 @@
#!/bin/sh /etc/rc.common
START=68
STOP=12
USE_PROCD=1
NAME=evoice
VOICE_UCI_CONFIG=voice
start_service() {
[ "$(db -q get hw.board.hasVoice)" = "1" ] || return
which endptmngr >/dev/null 2>&1 && {
echo "evoice can't be started since endptmngr is installed. Please remove endptmngr and retry"
return
}
procd_open_instance
procd_set_param command $NAME
procd_set_param respawn "5" "0" "3"
procd_close_instance
}
reload_service() {
stop
start
}
service_triggers() {
procd_add_reload_trigger $VOICE_UCI_CONFIG
}

View File

@@ -1,50 +0,0 @@
{
"G.711ALaw": [
{
"BitRate": 64000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
],
"G.711MuLaw": [
{
"BitRate": 64000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
],
"G.722": [
{
"BitRate": 64000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
],
"G.726": [
{
"BitRate": 32000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
},
{
"BitRate": 24000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
],
"G.729": [
{
"BitRate": 8000,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
],
"AMR": [
{
"BitRate": 7400,
"PacketizationPeriod": "20",
"SilenceSuppression": false
}
]
}

View File

@@ -1,140 +0,0 @@
{
"G.711MuLaw": [
{
"BitRate": 64000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"G.711ALaw": [
{
"BitRate": 64000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"G.726": [
{
"BitRate": 16000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 24000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 32000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 40000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"G.723.1": [
{
"BitRate": 5300,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 6300,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"G.729": [
{
"BitRate": 8000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"iLBC": [
{
"BitRate": 15200,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 13300,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"G.722": [
{
"BitRate": 64000,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"AMR": [
{
"BitRate": 12200,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 10200,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 7950,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 7400,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 6700,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 5900,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 5150,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
},
{
"BitRate": 4750,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"GSM-EFR": [
{
"BitRate": 12200,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"GSM-FR": [
{
"BitRate": 13200,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
],
"GSM-HR": [
{
"BitRate": 5600,
"PacketizationPeriod": "10-30",
"SilenceSuppression": true
}
]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -41,32 +41,8 @@ EXTRA_KCONFIG:= CONFIG_RGB_LED=m
MODULE_INCLUDE=-I$(PKG_BUILD_DIR)
ifeq ($(CONFIG_TARGET_brcmbca),y)
LINUX_DIR:=$(BUILD_DIR)/bcmkernel/bcm963xx/kernel/linux-4.19
# This assumes that the MODULES_SUBDIR set by OpenWrt is of the form
# lib/modules/4.19.235-abcdef where 4.19.235 is the version of our fake bcmlinux kernel
# and abcdef the git-commit.
# The kernel compiled by the Broadcom SDK has a uname -r of 4.19.235, i.e. without the git-commit.
# The assignment below removes the part after the - which puts modules in the right directory as
# long as the bcmlinux version matches the kernel version in the BCM SDK.
# So, this will only stop working in the time window where the BCM SDK has been updated
# but bcmlinux has not yet been updated.
MODULES_SUBDIR:=$(firstword $(subst -, ,$(MODULES_SUBDIR)))
TARGET_CROSS:=$(CONFIG_BRCM_ALT_TOOLCHAIN_BASE)/$(CONFIG_BRCM_ALT_ARM_TOOLCHAIN_TOPDIR)/bin/$(CONFIG_BRCM_ALT_ARM_TOOLCHAIN_PREFIX)-
ifeq ($(CONFIG_BCM_CHIP_ID),$(filter $(CONFIG_BCM_CHIP_ID),"63158" "6856" "6858"))
# These targets use a 64-bit kernel
LINUX_KARCH:=arm64
TARGET_CROSS:=$(CONFIG_BRCM_ALT_TOOLCHAIN_BASE)/$(CONFIG_BRCM_ALT_AARCH64_TOOLCHAIN_TOPDIR)/bin/$(CONFIG_BRCM_ALT_AARCH64_TOOLCHAIN_PREFIX)-
else ifeq ($(CONFIG_BCM_CHIP_ID),$(filter $(CONFIG_BCM_CHIP_ID),"6855" "6756" "47622" "63148" "63178"))
# These targets use a 32-bit arm-sfp kernel
LINUX_KARCH:=arm
TARGET_CROSS:=$(CONFIG_BRCM_ALT_TOOLCHAIN_BASE)/$(CONFIG_BRCM_ALT_ARMSFP_TOOLCHAIN_TOPDIR)/bin/$(CONFIG_BRCM_ALT_ARMSFP_TOOLCHAIN_PREFIX)-
endif
# For some reason, Broadcom's kernel does not set the include paths correctly when compiling out-of-tree modules
EXTRA_KCPPFLAGS:="-I $(LINUX_DIR)/../bcmkernel/include -I $(LINUX_DIR)/arch/arm/mach-bcm963xx/include"
endif
# support compilation against BCM SDK kernel
include ../../broadcom/bcmkernel/bcm-kernel-toolchain.mk
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)/kdevlinks/

View File

@@ -220,7 +220,6 @@ static int canyon_led_probe(struct platform_device *pdev)
if (IS_ERR(leds->clock_gpio)) {
dev_err(&pdev->dev, "Failed to acquire clock GPIO %ld\n",
PTR_ERR(leds->clock_gpio));
leds->clock_gpio = NULL;
return PTR_ERR(leds->clock_gpio);
}
@@ -228,7 +227,6 @@ static int canyon_led_probe(struct platform_device *pdev)
if (IS_ERR(leds->clock_gpio)) {
dev_err(&pdev->dev, "Failed to acquire clock GPIO %ld\n",
PTR_ERR(leds->clock_gpio));
leds->clock_gpio = NULL;
return PTR_ERR(leds->clock_gpio);
} else {
printk(KERN_INFO "Got clock gpio\n");
@@ -246,7 +244,6 @@ static int canyon_led_probe(struct platform_device *pdev)
if (IS_ERR(leds->data_gpio)) {
dev_err(&pdev->dev, "Failed to acquire data GPIO %ld\n",
PTR_ERR(leds->data_gpio));
leds->data_gpio = NULL;
return PTR_ERR(leds->data_gpio);
}
@@ -254,7 +251,6 @@ static int canyon_led_probe(struct platform_device *pdev)
if (IS_ERR(leds->data_gpio)) {
dev_err(&pdev->dev, "Failed to acquire data GPIO %ld\n",
PTR_ERR(leds->data_gpio));
leds->data_gpio = NULL;
return PTR_ERR(leds->data_gpio);
} else {
printk(KERN_INFO "Got data gpio\n");

View File

@@ -1,5 +1,5 @@
#
# Copyright (C) 2020-2022 IOPSYS Software Solutions AB
# Copyright (C) 2020-2023 IOPSYS Software Solutions AB
#
# This is free software, licensed under the BSD-3-Clause
# See /LICENSE for more information.
@@ -8,11 +8,11 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=icwmp
PKG_VERSION:=9.1.3
PKG_VERSION:=9.3.8
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/icwmp.git
PKG_SOURCE_VERSION:=71488fdc4e1a97416fa7f8ad356314c80e4c0b87
PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/icwmp.git
PKG_SOURCE_VERSION:=09b7cd7a6b647dd8cbc038698af9298883b5c262
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
@@ -29,33 +29,44 @@ define Package/icwmp/default
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=TR069 CWMP client
DEPENDS:=+libuci +libubox +libblobmsg-json +libubus +libjson-c +libcurl +mxml +libuuid
DEPENDS:=+libuci +libubox +libblobmsg-json +libubus +libjson-c +libcurl +mxml +libuuid +libbbfdm-api
endef
define Package/icwmp
$(Package/icwmp/default)
VARIANT:=default
DEFAULT_VARIANT:=1
DEPENDS += +PACKAGE_icwmp-openssl:libopenssl
endef
define Package/icwmp-openssl
$(Package/icwmp/default)
TITLE += (openssl)
DEPENDS += +PACKAGE_icwmp-openssl:libopenssl
VARIANT:=openssl
DEPENDS += +PACKAGE_icwmp-openssl:libopenssl
CONFLICTS := icwmp icwmp-mbedtls icwmp-wolfssl
endef
define Package/icwmp-wolfssl
$(Package/icwmp/default)
TITLE += (wolfssl)
DEPENDS += +PACKAGE_icwmp-wolfssl:libwolfssl
CONFLICTS := icwmp-openssl
VARIANT:=wolfssl
DEPENDS += +PACKAGE_icwmp-wolfssl:libwolfssl
CONFLICTS := icwmp icwmp-mbedtls icwmp-openssl
endef
define Package/icwmp-mbedtls
$(Package/icwmp/default)
TITLE += (mbedtls)
DEPENDS += +PACKAGE_icwmp-mbedtls:libmbedtls
CONFLICTS := icwmp-openssl icwmp-wolfssl
VARIANT:=mbedtls
DEFAULT_VARIANT:=1
CONFLICTS := icwmp icwmp-wolfssl icwmp-openssl
endef
ifeq ($(BUILD_VARIANT),default)
CMAKE_OPTIONS += -DWITH_OPENSSL=ON
endif
ifeq ($(BUILD_VARIANT),openssl)
CMAKE_OPTIONS += -DWITH_OPENSSL=ON
endif
@@ -84,6 +95,8 @@ define Package/icwmp/default/install
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(INSTALL_DIR) $(1)/etc/bbfdm/json/
$(INSTALL_DIR) $(1)/etc/udhcpc.user.d
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libcwmpdm.so $(1)/usr/lib/bbfdm/libcwmpdm.so
$(INSTALL_BIN) $(PKG_BUILD_DIR)/icwmpd $(1)/usr/sbin/icwmpd
$(INSTALL_DATA) ./files/etc/config/cwmp $(1)/etc/config/cwmp
$(INSTALL_BIN) ./files/etc/firewall.cwmp $(1)/etc/firewall.cwmp
@@ -93,13 +106,16 @@ define Package/icwmp/default/install
$(INSTALL_DATA) ./files/lib/upgrade/keep.d/icwmp $(1)/lib/upgrade/keep.d/icwmp
$(INSTALL_BIN) ./files/etc/icwmpd/update.sh $(1)/etc/icwmpd/update.sh
$(INSTALL_DATA) ./files/etc/bbfdm/json/CWMPManagementServer.json $(1)/etc/bbfdm/json/
$(INSTALL_BIN) ./files/etc/udhcpc.user.d/udhcpc_icwmp.user $(1)/etc/udhcpc.user.d/udhcpc_icwmp.user
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/etc/udhcpc.user.d/udhcpc_icwmp_opt125.user $(1)/etc/udhcpc.user.d/udhcpc_icwmp_opt125.user
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/etc/udhcpc.user.d/udhcpc_icwmp_opt43.user $(1)/etc/udhcpc.user.d/udhcpc_icwmp_opt43.user
endef
Package/icwmp/install = $(Package/icwmp/default/install)
Package/icwmp-openssl/install = $(Package/icwmp/default/install)
Package/icwmp-wolfssl/install = $(Package/icwmp/default/install)
Package/icwmp-mbedtls/install = $(Package/icwmp/default/install)
$(eval $(call BuildPackage,icwmp))
$(eval $(call BuildPackage,icwmp-openssl))
$(eval $(call BuildPackage,icwmp-wolfssl))
$(eval $(call BuildPackage,icwmp-mbedtls))

View File

@@ -11,8 +11,6 @@ config acs 'acs'
option retry_min_wait_interval '5'
#­ possible configs interval :[1000:65535]
option retry_interval_multiplier '2000'
option ipv6_enable '0'
option ip_version '4'
config cpe 'cpe'
option enable '1'
@@ -38,6 +36,7 @@ config cpe 'cpe'
option periodic_notify_enable '1'
option periodic_notify_interval '10'
option incoming_rule 'Port_Only'
option active_notif_throttle '0'
config lwn 'lwn'
option enable '1'

View File

@@ -5,14 +5,14 @@ log() {
echo "${@}"|logger -t firewall.cwmp -p info
}
if [ ! -f "/var/state/cwmp" ]; then
if [ ! -f "/var/state/icwmp" ]; then
exit 0;
fi
zone_name=$(uci -c /var/state -q get cwmp.acs.zonename)
zone_name=$(uci -c /var/state -q get icwmp.acs.zonename)
port=$(uci -q get cwmp.cpe.port)
ipaddr=$(uci -c /var/state -q get cwmp.acs.ip)
ip6addr=$(uci -c /var/state -q get cwmp.acs.ip6)
ipaddr=$(uci -c /var/state -q get icwmp.acs.ip)
ip6addr=$(uci -c /var/state -q get icwmp.acs.ip6)
incoming_rule=$(uci -q get cwmp.cpe.incoming_rule|tr 'A-Z' 'a-z')
if [ -z "${zone_name}" ]; then
@@ -20,13 +20,13 @@ if [ -z "${zone_name}" ]; then
exit 0
elif [ "$zone_name" = "icwmp" ]; then
iptables -nL zone_icwmp_input 2> /dev/null
if [ $? != 0 ]; then
if [ "$?" != 0 ]; then
iptables -w 1 -N zone_icwmp_input
iptables -w 1 -t filter -A INPUT -j zone_icwmp_input
iptables -w 1 -I zone_icwmp_input -p tcp --dport $port -j REJECT
iptables -w 1 -I zone_icwmp_input -p tcp --dport "${port}" -j REJECT
else
iptables -w 1 -F zone_icwmp_input
iptables -w 1 -I zone_icwmp_input -p tcp --dport $port -j REJECT
iptables -w 1 -I zone_icwmp_input -p tcp --dport "${port}" -j REJECT
fi
else
iptables -w 1 -F zone_icwmp_input 2> /dev/null
@@ -64,17 +64,17 @@ else
fi
fi
echo ${cmd}|grep -q "\-\-dport \|\-s "
echo "${cmd}"|grep -q "\-\-dport \|\-s "
if [ "$?" -eq 0 ]; then
cmd="${cmd} -j ACCEPT -m comment --comment=Open_ACS_port"
${cmd}
fi
echo ${cmd6}|grep -q "\-\-dport \|\-s "
echo "${cmd6}"|grep -q "\-\-dport \|\-s "
if [ "$?" -eq 0 ]; then
cmd6="${cmd6} -j ACCEPT -m comment --comment=Open_ACS_port"
${cmd6}
fi
uci -c /var/state -q set cwmp.cpe.firewall_restart="init"
uci -c /var/state -q commit cwmp
uci -c /var/state -q set icwmp.cpe.firewall_restart="init"
uci -c /var/state -q commit icwmp

View File

@@ -14,11 +14,13 @@ handle_icwmp_update() {
return 0
fi
# wait for some time to avoid interface fluctuation
sleep 10
ret=$(ubus call service list '{"name":"icwmpd"}' | jsonfilter -qe '@.icwmpd.instances.icwmp.running')
if [ "$ret" == "true" ]; then
# read status from var/state/cwmp
status=$(uci -q -c /var/state get cwmp.sess_status.current_status)
if [ "$ret" = "true" ]; then
# read status from var/state/icwmp
status=$(uci -q -c /var/state get icwmp.sess_status.current_status)
if [ "$status" != "running" ]; then
log "Trigger out of bound inform, since last inform status was failure"
ubus -t 10 call tr069 inform >/dev/null 2>&1
@@ -29,4 +31,4 @@ handle_icwmp_update() {
fi
}
handle_icwmp_update $@
handle_icwmp_update "$@"

View File

@@ -23,22 +23,22 @@ regenerate_ssl_link()
[ ! -d "${cert_dir}" ] && return 0;
### Generate all ssl link for pem certicates ###
all_file=$(ls $cert_dir/*.pem 2>/dev/null)
all_file=$(ls "${cert_dir}"/*.pem 2>/dev/null)
if [ -n "${all_file}" ]; then
for cfile in $all_file; do
rehash="$(openssl x509 -hash -noout -in $cfile)"
[ -f ${cert_dir}/${rehash}.0 ] || \
ln -s $cfile $cert_dir/${rehash}.0
rehash="$(openssl x509 -hash -noout -in "${cfile}")"
[ -f "${cert_dir}"/"${rehash}".0 ] || \
ln -s "${cfile}" "${cert_dir}"/"${rehash}".0
done
fi
### Generate all ssl link for crt certicates ###
all_file=$(ls $cert_dir/*.crt 2>/dev/null)
all_file=$(ls "${cert_dir}"/*.crt 2>/dev/null)
if [ -n "${all_file}" ]; then
for cfile in $all_file; do
rehash="$(openssl x509 -hash -noout -in $cfile)"
[ -f ${cert_dir}/${rehash}.0 ] || \
ln -s $cfile $cert_dir/${rehash}.0
rehash="$(openssl x509 -hash -noout -in "${cfile}")"
[ -f "${cert_dir}"/"${rehash}".0 ] || \
ln -s "${cfile}" "${cert_dir}"/"${rehash}".0
done
fi
}
@@ -47,8 +47,8 @@ enable_dhcp_option43() {
local wan="${1}"
### Ask for DHCP Option 43 only if CWMP is enabled ###
local reqopts="$(uci -q get network.$wan.reqopts)"
local proto="$(uci -q get network.$wan.proto)"
local reqopts="$(uci -q get network."${wan}".reqopts)"
local proto="$(uci -q get network."${wan}".proto)"
local newreqopts=""
local option43_present=0
@@ -64,8 +64,8 @@ enable_dhcp_option43() {
fi
newreqopts="$reqopts 43"
if [ "${proto}" == "dhcp" ]; then
uci -q set network.$wan.reqopts="$newreqopts"
if [ "${proto}" = "dhcp" ]; then
uci -q set network."${wan}".reqopts="$newreqopts"
uci commit network
ubus call network reload
fi
@@ -122,12 +122,12 @@ configure_send_op125() {
serial_len=$(echo -n "${serial}" | wc -m)
class_len=$(echo -n "${class}" | wc -m)
if [ ${oui_len} -eq 0 ] || [ ${serial_len} -eq 0 ]; then
if [ "${oui_len}" -eq 0 ] || [ "${serial_len}" -eq 0 ]; then
return 0
fi
opt125_len=$((oui_len + serial_len + class_len))
if [ ${class_len} -gt 0 ]; then
if [ "${class_len}" -gt 0 ]; then
opt125_len=$((opt125_len + 6))
else
opt125_len=$((opt125_len + 4))
@@ -159,7 +159,7 @@ configure_send_op125() {
opt125="${opt125}:05:${hex_serial_len}${hex_serial}"
fi
if [ ${class_len} -gt 0 ]; then
if [ "${class_len}" -gt 0 ]; then
hex_class=$(convert_to_hex "${class}")
if [ -z "${hex_class}" ]; then
return 0
@@ -176,9 +176,9 @@ configure_send_op125() {
if [ "${uci}" = "network" ]; then
new_send_opt="$sendopt $opt125"
uci -q set network.$intf.sendopts="$new_send_opt"
uci -q set network."${intf}".sendopts="$new_send_opt"
else
uci -q add_list dhcp.$intf.dhcp_option="$opt125"
uci -q add_list dhcp."${intf}".dhcp_option="$opt125"
fi
}
@@ -187,9 +187,9 @@ enable_dnsmasq_option125() {
local send125_present=0
local opt125="125,"
local proto="$(uci -q get dhcp.$lan.dhcpv4)"
local proto="$(uci -q get dhcp."${lan}".dhcpv4)"
if [ "${proto}" = "server" ]; then
opt_list="$(uci -q get dhcp.$lan.dhcp_option)"
opt_list="$(uci -q get dhcp."${lan}".dhcp_option)"
for sopt in $opt_list; do
if [[ "$sopt" == "$opt125"* ]]; then
@@ -205,13 +205,27 @@ enable_dnsmasq_option125() {
fi
}
enable_disable_dhcp_option125() {
set_vendor_id() {
local wan="${1}"
local action="${2}"
local proto="$(uci -q get network."${wan}".proto)"
local reqopts="$(uci -q get network.$wan.reqopts)"
local sendopts="$(uci -q get network.$wan.sendopts)"
local proto="$(uci -q get network.$wan.proto)"
if [ "${proto}" = "dhcp" ]; then
vendorid="$(uci -q get network."${wan}".vendorid)"
if [ -z "${vendorid}" ]; then
uci -q set network."${wan}".vendorid="dslforum.org"
ubus call uci commit '{"config":"network"}'
elif [[ $vendorid != *"dslforum.org"* ]]; then
uci -q set network."${wan}".vendorid="${vendorid},dslforum.org"
ubus call uci commit '{"config":"network"}'
fi
fi
}
enable_dhcp_option125() {
local wan="${1}"
local reqopts="$(uci -q get network."${wan}".reqopts)"
local sendopts="$(uci -q get network."${wan}".sendopts)"
local proto="$(uci -q get network."${wan}".proto)"
local newreqopts=""
local newsendopts=""
local req125_present=0
@@ -233,35 +247,16 @@ enable_disable_dhcp_option125() {
fi
done
if [ "${proto}" == "dhcp" ]; then
if [ "${action}" == "enable" ]; then
if [ ${req125_present} -eq 0 ]; then
newreqopts="$reqopts 125"
uci -q set network.$wan.reqopts="$newreqopts"
network_uci_update=1
fi
if [ "${proto}" = "dhcp" ]; then
if [ ${req125_present} -eq 0 ]; then
newreqopts="$reqopts 125"
uci -q set network."${wan}".reqopts="$newreqopts"
network_uci_update=1
fi
if [ ${send125_present} -eq 0 ]; then
configure_send_op125 "${sendopts}" "${wan}" "network"
network_uci_update=1
fi
else
if [ ${req125_present} -eq 1 ]; then
newreqopts=$(echo ${reqopts/125/})
uci -q set network.$wan.reqopts="$newreqopts"
network_uci_update=1
fi
if [ ${send125_present} -eq 1 ]; then
for sopt in $sendopts; do
if [[ "$sopt" == "$opt125"* ]]; then
newsendopts=$(echo ${sendopts/"${sopt}"/})
uci -q set network.$wan.sendopts="$newreqopts"
network_uci_update=1
break
fi
done
fi
if [ ${send125_present} -eq 0 ]; then
configure_send_op125 "${sendopts}" "${wan}" "network"
network_uci_update=1
fi
fi
@@ -288,12 +283,6 @@ wait_for_resolvfile() {
copy_cwmp_etc_files_to_varstate() {
mkdir -p /var/run/icwmpd
if [ -f /etc/icwmpd/cwmp ]; then
uci -q -c /etc/icwmpd delete cwmp.acs
uci -q -c /etc/icwmpd commit cwmp
cp -f /etc/icwmpd/cwmp /var/state/cwmp
fi
if [ -f /etc/icwmpd/icwmpd_backup_session.xml ]; then
cp -f /etc/icwmpd/icwmpd_backup_session.xml /var/run/icwmpd/ 2>/dev/null
fi
@@ -312,12 +301,6 @@ copy_cwmp_varstate_files_to_etc() {
cp -f /var/run/icwmpd/dm_enabled_notify /etc/icwmpd/ 2>/dev/null
fi
if [ -f /var/state/cwmp ]; then
uci -q -c /var/state delete cwmp.sess_status
uci -q -c /var/state commit cwmp
cp -f /var/state/cwmp /etc/icwmpd/
fi
# move the successful custom notify import marker to persistent storage
if [ -f /var/run/icwmpd/icwmpd_notify_import_marker ]; then
cp -f /var/run/icwmpd/icwmpd_notify_import_marker /etc/icwmpd/
@@ -337,7 +320,6 @@ validate_acs_section()
'compression:or("GZIP","Deflate","Disabled")' \
'retry_min_wait_interval:range(1, 65535)' \
'retry_interval_multiplier:range(1000, 65535)' \
'ipv6_enable:bool' \
'ssl_capath:string'
}
@@ -394,25 +376,33 @@ validate_defaults() {
}
boot() {
local enable_cwmp="0"
local dhcp_discovery="0"
config_load cwmp
config_get_bool enable_cwmp cpe enable 1
local wan_interface=""
config_get wan_interface cpe default_wan_interface "wan"
if [ "$enable_cwmp" = "0" ]; then
return 0
fi
config_get dhcp_discovery acs dhcp_discovery "0"
config_get wan_interface cpe default_wan_interface "wan"
if [ "${dhcp_discovery}" == "enable" ] || [ "${dhcp_discovery}" == "1" ]; then
if [ "${dhcp_discovery}" = "enable" ] || [ "${dhcp_discovery}" = "1" ]; then
# Set dhcp option 43 if not already configured
enable_dhcp_option43 "${wan_interface}"
# Set dhcp option 60
set_vendor_id "${wan_interface}"
fi
config_get lan_interface cpe default_lan_interface ""
if [ -n "${lan_interface}" ]; then
# Set dhcp_option 125 if not already configured
enable_disable_dhcp_option125 "${wan_interface}" "enable"
enable_dhcp_option125 "${wan_interface}"
enable_dnsmasq_option125 "${lan_interface}"
else
# Remove dhcp option 125 if exists
enable_disable_dhcp_option125 "${wan_interface}" "disable"
fi
config_get ssl_capath acs ssl_capath
@@ -421,6 +411,11 @@ boot() {
regenerate_ssl_link "${ssl_capath}"
fi
# Copy backup data so that if it restart latter on, it gets the info
copy_cwmp_etc_files_to_varstate
mkdir -p /var/run/icwmpd/
touch /var/run/icwmpd/cwmp
start
}
@@ -443,9 +438,6 @@ start_service() {
return 1;
}
# Copy backup data so that if it restart latter on it gets the info
copy_cwmp_etc_files_to_varstate
procd_open_instance icwmp
procd_set_param command "$PROG"
procd_append_param command -b
@@ -457,11 +449,6 @@ start_service() {
procd_close_instance
}
service_stopped()
{
copy_cwmp_varstate_files_to_etc
}
stop_service()
{
copy_cwmp_varstate_files_to_etc
@@ -487,7 +474,7 @@ reload_service() {
return 0
fi
status="$(echo $tr069_status | jsonfilter -qe '@.cwmp.status')"
status="$(echo "${tr069_status}" | jsonfilter -qe '@.cwmp.status')"
ret="$?"
if [ "$status" = "up" ]; then
ubus -t 1 call tr069 command '{"command":"reload"}'
@@ -501,20 +488,17 @@ reload_service() {
fi
}
service_triggers() {
procd_add_reload_trigger "cwmp"
procd_open_trigger
json_add_array
json_add_string "" "interface.update"
json_add_array
json_add_array
json_add_string "" "run_script"
json_add_string "" "/etc/icwmpd/update.sh"
json_close_array
json_close_array
json_add_int "" "2000"
json_close_array
procd_close_trigger
add_interface_trigger() {
procd_add_interface_trigger "interface.update" "$1" /etc/icwmpd/update.sh
}
service_triggers() {
local wan_interface
config_load cwmp
config_get wan_interface cpe default_wan_interface "wan"
procd_add_reload_trigger "cwmp"
add_interface_trigger ${default_wan_interface}
}

View File

@@ -1,122 +0,0 @@
#!/bin/sh
CLASS=""
OUI=""
SERIAL=""
get_vivsoi() {
# opt125 environment variable has data in below format
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
# | enterprise-number1 |
# | |
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
# | data-len1 | |
# +-+-+-+-+-+-+-+-+ option-data1 |
# / /
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -----
# | enterprise-number2 | ^
# | | |
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
# | data-len2 | | optional
# +-+-+-+-+-+-+-+-+ option-data2 | |
# / / |
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
# ~ ... ~ V
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -----
# Enterprise Id Len Sub Op SLen Data Sub Op SLen Data Sub Op SLen Data
# +-------------+-----+------+------+----+------+-----+----+-----+------+-----+----+
# | id | n | 1 | n1 | D1 | 2 | n2 | D2 | ... | 6 | n6 | D6 |
# +-------------+-----+------+------+----+------+-----+----+-----+------+-----+----+
local opt125="$1"
local len="$2"
local ent_id
#hex-string 2 character=1 Byte
# length in hex string will be twice of actual Byte length
[ "$len" -gt "8" ] || return
data="${opt125}"
rem_len="${len}"
while [ $rem_len -gt 0 ]; do
ent_id=${data:0:8}
ent_id=$(printf "%d\n" "0x$ent_id")
if [ $ent_id -ne 3561 ]; then
len_val=${data:8:2}
data_len=$(printf "%d\n" "0x$len_val")
# add 4 byte for ent_id and 1 byte for len
data_len=$(( data_len * 2 + 10 ))
# move ahead data to next enterprise id
data=${data:"${data_len}":"${rem_len}"}
rem_len=$(( rem_len - $data_len ))
continue
fi
# read the length of enterprise data
len_val=${data:8:2}
opt_len=$(printf "%d\n" "0x$len_val")
[ $opt_len -eq 0 ] && return
# populate the option data of enterprise id
sub_data_len=$(( opt_len * 2))
# starting 10 means ahead of length field
sub_data=${data:10:"${sub_data_len}"}
# parsing of suboption of option 125
while [ $sub_data_len -gt 0 ]; do
# get the suboption id
sub_opt_id=${sub_data:0:2}
sub_opt_id=$(printf "%d\n" "0x$sub_opt_id")
# get the length of suboption
sub_opt_len=${sub_data:2:2}
sub_opt_len=$(printf "%d\n" "0x$sub_opt_len")
sub_opt_len=$(( sub_opt_len * 2 ))
# get the value of sub option starting 4 means starting after length
sub_opt_val=${sub_data:4:${sub_opt_len}}
# assign the value found in sub option
case "${sub_opt_id}" in
"4") OUI=$(echo -n $sub_opt_val | sed 's/\([0-9A-F]\{2\}\)/\\\\\\x\1/gI' | xargs printf && echo '')
;;
"5") SERIAL=$(echo -n $sub_opt_val | sed 's/\([0-9A-F]\{2\}\)/\\\\\\x\1/gI' | xargs printf && echo '')
;;
"6") CLASS=$(echo -n $sub_opt_val | sed 's/\([0-9A-F]\{2\}\)/\\\\\\x\1/gI' | xargs printf && echo '')
;;
esac
# add 2 bytes for sub_opt id and sub_opt len field
sub_opt_end=$(( sub_opt_len + 4 ))
# fetch next sub option hex string
sub_data=${sub_data:${sub_opt_end}:${sub_data_len}}
# update the remaining sub option hex string length
sub_data_len=$((sub_data_len - sub_opt_end))
done
break
done
}
wan_intf=$(uci -q get cwmp.cpe.default_wan_interface)
if [ -n "${wan_intf}" ] && [ "${wan_intf}" == "${INTERFACE}" ]; then
if [ -n "$opt125" ]; then
len=$(printf "$opt125"|wc -c)
get_vivsoi "$opt125" "$len"
fi
sec=$(uci -q -c /var/state get cwmp.gatewayinfo)
if [ -z "${sec}" ]; then
sec=$(uci -q -c /var/state add cwmp gatewayinfo)
uci -q -c /var/state rename cwmp."${sec}"="gatewayinfo"
fi
uci -q -c /var/state set cwmp.gatewayinfo.class="$CLASS"
uci -q -c /var/state set cwmp.gatewayinfo.oui="$OUI"
uci -q -c /var/state set cwmp.gatewayinfo.serial="$SERIAL"
uci -q -c /var/state commit cwmp
fi

View File

@@ -1,17 +1,17 @@
#
# Copyright (C) 2021 IOPSYS
# Copyright (C) 2020-2023 IOPSYS Software Solutions AB
#
include $(TOPDIR)/rules.mk
PKG_NAME:=ieee1905
PKG_VERSION:=6.0.20
PKG_VERSION:=8.1.15.1
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=166fc0543f578336089f0940d9f5d2c27fac73a6
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/ieee1905.git
PKG_SOURCE_VERSION:=4843afa0069c8eff18c6bdde6a5dd76625dc1ac5
PKG_SOURCE_URL:=https://dev.iopsys.eu/multi-ap/ieee1905.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif

View File

@@ -44,7 +44,8 @@ validate_ap_section() {
uci_validate_section ieee1905 $section "${1}" \
'band:or("2", "5", "60", "6")' \
'ssid:string' \
'encryption:or("psk2", "sae-mixed", "sae", string)' \
'encryption:or("psk2", "sae-mixed", "sae",
"psk", "psk-mixed", "none", string)' \
'key:string' \
'uuid:string' \
'manufacturer:string' \

View File

@@ -0,0 +1,18 @@
#!/bin/sh
. /lib/functions.sh
config_load ieee1905
ifname_to_list() {
local section=$1
config_get ifname $section ifname # get list or option as space separated values
ifname=${ifname//,/\ } # convert csv with space separation
uci del ieee1905.${section}.ifname # delete entry
for i in ${ifname}; do
uci add_list ieee1905.${section}.ifname="$i" # writeback entry as list
done
}
config_foreach ifname_to_list al-iface

View File

@@ -18,12 +18,7 @@ start_service() {
procd_close_instance
}
stop() {
service_stop imonitor
}
reload_service() {
stop
start
}

View File

@@ -56,8 +56,8 @@ CONFIG_LOCALMIRROR="https://download.iopsys.eu/iopsys/mirror/"
# EasySoC HAL #
CONFIG_PACKAGE_inbd=y
CONFIG_PACKAGE_libwifi=y
CONFIG_PACKAGE_port-management=y
CONFIG_PACKAGE_qosmngr=y
CONFIG_PACKAGE_libwifiutils=y
CONFIG_PACKAGE_wifimngr=y
# Multi-AP #
@@ -65,11 +65,12 @@ CONFIG_PACKAGE_ieee1905=y
CONFIG_PACKAGE_map-agent=m
CONFIG_PACKAGE_map-controller=m
CONFIG_PACKAGE_map-topology=y
CONFIG_PACKAGE_wfadatad-collector=y
CONFIG_PACKAGE_decollector=y
CONFIG_IEEE1905_CMDU_SA_IS_ALMAC=y
# Network #
CONFIG_PACKAGE_netmode=y
CONFIG_PACKAGE_owsd=m
CONFIG_PACKAGE_urlfilter=y
# System #
@@ -79,12 +80,13 @@ CONFIG_PACKAGE_rulengd=y
CONFIG_PACKAGE_usermngr=y
# TR-x69 #
CONFIG_PACKAGE_uspd-mbedtls=y
CONFIG_PACKAGE_icwmp-mbedtls=y
CONFIG_PACKAGE_libbbfdm=y
CONFIG_PACKAGE_bbfdmd=y
CONFIG_PACKAGE_icwmp=y
CONFIG_PACKAGE_obuspa=y
CONFIG_PACKAGE_bulkdata=y
CONFIG_PACKAGE_periodicstats=y
CONFIG_PACKAGE_stunc-mbedtls=m
CONFIG_PACKAGE_stunc=m
CONFIG_PACKAGE_swmodd=m
CONFIG_PACKAGE_twamp=m
CONFIG_PACKAGE_udpecho-client=m
@@ -108,6 +110,8 @@ CONFIG_PACKAGE_comgt=y
CONFIG_PACKAGE_comgt-directip=y
CONFIG_PACKAGE_comgt-ncm=y
CONFIG_PACKAGE_ds-lite=y
CONFIG_PACKAGE_firewall=y
# CONFIG_PACKAGE_firewall4 is not set
CONFIG_PACKAGE_gre=y
CONFIG_PACKAGE_map=y
CONFIG_PACKAGE_ntfs-3g=y
@@ -131,7 +135,7 @@ CONFIG_PACKAGE_atftp=m
CONFIG_PACKAGE_atftpd=m
CONFIG_PACKAGE_ddns-scripts=y
CONFIG_PACKAGE_dnsmasq=y
CONFIG_PACKAGE_miniupnpd-iptables=y
CONFIG_PACKAGE_ssdpd=y
CONFIG_PACKAGE_mosquitto-client-ssl=y
CONFIG_PACKAGE_mosquitto-ssl=y
CONFIG_PACKAGE_nginx=y
@@ -153,6 +157,7 @@ CONFIG_PACKAGE_ip-bridge=y
CONFIG_PACKAGE_ip-full=y
CONFIG_PACKAGE_iperf3=y
CONFIG_PACKAGE_ipset=y
CONFIG_PACKAGE_ip6tables-zz-legacy=y
CONFIG_PACKAGE_iptables-zz-legacy=y
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
CONFIG_PACKAGE_iptables-mod-filter=y
@@ -302,10 +307,3 @@ CONFIG_BUSYBOX_CONFIG_FEATURE_VOLUMEID_SQUASHFS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VOLUMEID_UBIFS=y
CONFIG_BUSYBOX_CONFIG_TIMEOUT=y
CONFIG_BUSYBOX_CONFIG_NOHUP=y
# Use fw3 iptables-based instead of newer nftables-based fw4
# TODO: for now we cannot build an image with fw3 and luci-app-firewall (i.e. fw3)
# Enabling luci-app-firewall enables fw4
# CONFIG_PACKAGE_luci-app-firewall is not set
CONFIG_PACKAGE_firewall=y
# CONFIG_PACKAGE_firewall4 is not set

View File

@@ -1,15 +1,26 @@
#! /bin/bash
#!/bin/bash
function feeds_update {
heads=1
developer=0
override=1
start=$(date -u +'%s')
while getopts "n" opt; do
while getopts "inh" opt; do
case $opt in
i)
heads=0
;;
n)
override=0
;;
h|\?)
echo "Usage: ./iop feeds_update [-i] [-n] [-h]"
echo
echo "OPTIONS:"
echo " -i - Only update index. Do not change HEAD in feeds."
echo " -n - Do not replace core packages with iopsys versions."
echo " -h - Display this help message and exit."
exit 1
;;
esac
done
@@ -17,47 +28,42 @@ function feeds_update {
cp .config .genconfig_config_bak
#if -d argument is passed, clone feeds with ssh instead of http
if [ $developer == 1 ]; then
./scripts/feeds update -g
else
./scripts/feeds update
if [ $heads == 1 ]; then
if [ $developer == 1 ]; then
./scripts/feeds update -g
else
./scripts/feeds update
fi
fi
./scripts/feeds update -ai
./scripts/feeds update -ai || exit 1
# replace core packages with iopsys versions
if [ $override == 1 ]; then
./scripts/feeds install -f -p openwrt_core -a
./scripts/feeds install -f -p openwrt_core -a || exit 1
fi
(
echo '# DO NOT EDIT. Autogenerated file by ./iop feeds_update'
echo 'FEED_DEVICES_DIRS:='
find feeds -type f -name .is-feed-devices-dir -printf 'FEED_DEVICES_DIRS+=$(TOPDIR)/%h'
) > target/linux/feed-devices/feed-devices-list.mk || exit 1
# targets need to be installed explicitly
for target in $(ls ./feeds/targets); do
rm -f target/linux/$target
./scripts/feeds install -p targets $target
done
# Workaround for bug in 22.03.0-rc4 where installed target path has been
# moved to target/linux/feeds but Config.in and Makefile from installed
# targets are not properly included from the new location.
# This hack is to be removed once the issues are fixed.
# Note that the above block of code might no longer necessary because
# targets no longer need to be installed explicitly.
echo "Working around installed-target-bug"
for f in target/linux/feeds/*; do
ln -vsf "feeds/$(basename "$f")" "target/linux/$(basename "$f")"
./scripts/feeds install -f -p targets $target || exit 1
done
# install all packages
./scripts/feeds install -a
./scripts/feeds install -a || exit 1
# remove broken symlinks ( for packages that are no longer in the feed )
find -L package/feeds -maxdepth 2 -type l -delete
find -L package/feeds -maxdepth 2 -type l -delete || exit 1
cp .genconfig_config_bak .config
make defconfig
make defconfig || exit 1
# record when we last run this script
touch tmp/.iop_bootstrap
touch tmp/.iop_bootstrap || exit 1
# always return true
exit 0

View File

@@ -14,12 +14,12 @@ function genconfig {
target="bogus"
target_config_path=""
brcmbca_feed="target/linux/feeds/brcmbca"
ramips_feed="target/linux/feeds/iopsys-ramips"
airoha_feed="target/linux/feeds/airoha"
x86_feed="target/linux/feeds/iopsys-x86"
armvirt_feed="target/linux/feeds/iopsys-armvirt"
mediatek_feed="target/linux/feeds/iopsys-mediatek"
x86_feed="target/linux/feeds/x86"
armvirt_feed="target/linux/feeds/armvirt"
mediatek_feed="target/linux/feeds/mediatek"
qualcomm_ipq95xx_feed="target/linux/feeds/ipq95xx"
qualcomm_ipq53xx_feed="target/linux/feeds/ipq53xx"
Red='\033[0;31m' # Red
Color_Off='\033[0m' # Text Reset
@@ -42,19 +42,13 @@ function genconfig {
}
function verify_config {
IFS=$'\n'
org=$(<.genconfig.config)
unset IFS
local num
local conf_opt
local conf_org
local conf_new
#echo "lines to check $tot_lines"
num=0
for line in $org
while read -r line
do
conf_opt=$(echo $line | grep CONFIG_ | sed 's|.*\(CONFIG_[^ =]*\)[ =].*|\1|')
conf_opt=$(echo $line | grep "^[ #]*CONFIG_" | sed 's|.*\(CONFIG_[^ =]*\)[ =].*|\1|')
if [ -n "${conf_opt}" ]
then
conf_org=$(find_last ${conf_opt} .genconfig.config)
@@ -75,8 +69,7 @@ function genconfig {
#echo -e "wanted [$conf_org] got [$conf_new]"
fi
fi
num=$((num+1))
done
done < .genconfig.config
}
# Takes a board name and returns the target name in global var $target
@@ -111,45 +104,30 @@ function genconfig {
[ -e $brcmbca_feed/genconfig ] &&
brcmbca=$(cd $brcmbca_feed; ./genconfig)
[ -e $ramips_feed/genconfig ] &&
iopsys_ramips=$(cd $ramips_feed; ./genconfig)
[ -e $airoha_feed/genconfig ] &&
airoha=$(cd $airoha_feed; ./genconfig)
[ -e $x86_feed/genconfig ] &&
iopsys_x86=$(cd $x86_feed; ./genconfig)
x86=$(cd $x86_feed; ./genconfig)
[ -e $armvirt_feed/genconfig ] &&
iopsys_armvirt=$(cd $armvirt_feed; ./genconfig)
armvirt=$(cd $armvirt_feed; ./genconfig)
[ -e $mediatek_feed/genconfig ] &&
iopsys_mediatek=$(cd $mediatek_feed; ./genconfig)
mediatek=$(cd $mediatek_feed; ./genconfig)
[ -e $qualcomm_ipq95xx_feed/genconfig ] &&
ipq95xx=$(cd $qualcomm_ipq95xx_feed; ./genconfig)
[ -e $qualcomm_ipq53xx_feed/genconfig ] &&
ipq53xx=$(cd $qualcomm_ipq53xx_feed; ./genconfig)
if [ "$profile" == "LIST" ]; then
for list in brcmbca iopsys_ramips airoha iopsys_x86 iopsys_armvirt iopsys_mediatek ipq95xx; do
for list in brcmbca airoha x86 armvirt mediatek ipq95xx ipq53xx; do
echo "$list based boards:"
for b in ${!list}; do
a=$(echo "${!list}" | sort)
for b in $a; do
echo -e "\t$b"
done
done
return
fi
for p in $brcmbca; do
if [ $p == $profile ]; then
target="brcmbca"
target_config_path="$brcmbca_feed/config"
return
fi
done
for p in $iopsys_ramips; do
if [ $p == $profile ]; then
target="iopsys_ramips"
target_config_path="$ramips_feed/config"
return
fi
done
for p in $airoha; do
if [ $p == $profile ]; then
target="airoha"
@@ -158,25 +136,25 @@ function genconfig {
fi
done
for p in $iopsys_x86; do
for p in $x86; do
if [ $p == $profile ]; then
target="iopsys_x86"
target="x86"
target_config_path="$x86_feed/config"
return
fi
done
for p in $iopsys_armvirt; do
for p in $armvirt; do
if [ $p == $profile ]; then
target="iopsys_armvirt"
target="armvirt"
target_config_path="$armvirt_feed/config"
return
fi
done
for p in $iopsys_mediatek; do
for p in $mediatek; do
if [ $p == $profile ]; then
target="iopsys_mediatek"
target="mediatek"
target_config_path="$mediatek_feed/config"
return
fi
@@ -189,6 +167,22 @@ function genconfig {
return
fi
done
for p in $ipq53xx; do
if [ $p == $profile ]; then
target="ipq53xx"
target_config_path="$qualcomm_ipq53xx_feed/config"
return
fi
done
for p in $brcmbca; do
if [ $p == $profile ]; then
target="brcmbca"
target_config_path="$brcmbca_feed/config"
return
fi
done
}
git remote -v | grep -qE '(git@|ssh://)' && {
@@ -276,11 +270,22 @@ function genconfig {
setup_dirs()
{
git remote -v | grep -q http || {
CUSTBRANCH="$(git rev-parse --abbrev-ref HEAD)"
if git ls-remote $CUSTREPO -q 2>/dev/null; then
if [ ! -d "$CUSTPATH" ]; then
git clone "$CUSTREPO" "$CUSTPATH"
echo "Cloning $CUSTBRANCH branch of $CUSTREPO"
git clone -b "$CUSTBRANCH" "$CUSTREPO" "$CUSTPATH" 2>/dev/null || {
DEFBRANCH="$(git remote show $CUSTREPO | grep 'HEAD branch' | cut -d' ' -f5)"
echo "$CUSTBRANCH branch is not found, cloning $DEFBRANCH branch of $CUSTREPO"
git clone "$CUSTREPO" "$CUSTPATH"
}
elif [ $IMPORT -eq 1 ]; then
cd $CUSTPATH
echo "Checking out $CUSTBRANCH branch in $CUSTPATH"
git checkout "$CUSTBRANCH" 2>/dev/null || {
DEFBRANCH="$(git symbolic-ref refs/remotes/origin/HEAD | cut -d '/' -f4)"
echo "Checking out $CUSTBRANCH branch has failed, using $DEFBRANCH branch in $CUSTPATH"
}
v "git pull"
git pull
cd - >/dev/null #go back
@@ -298,6 +303,24 @@ function genconfig {
fi
}
get_subtarget_for_device() {
readonly target="$1"
readonly device="$2"
readonly targetinfo_file="tmp/info/.targetinfo-feeds_$target"
readonly target_profile_line="Target-Profile: DEVICE_$device"
# We want to know after which Target: $target/$subtarget line
# our $target_profile_line appears
# This is a crude way to "parse" the file using shell 🤯
# 1. grep for both lines with line number output
# 2. grep again to determine the device profile line that we looked for
# but output one context line before as well to determine corresponding subtarget line
# 4. Use head and sed to extract the subtarget
grep "^Target: $target/\|^$target_profile_line" "$targetinfo_file" \
| grep -E -B1 "^$target_profile_line" \
| head -n1 \
| sed -E "s|^Target: $target/||"
}
create_and_copy_files()
{
local BOARDTYPE=$1
@@ -339,18 +362,22 @@ function genconfig {
cat $target_config_path/$BOARDTYPE/config >> .config
echo "" >> .config
fi
# Special handling for targets which use TARGET_DEVICES
# hack to support custom-devices until we have deprecated this genconfig-script...
if [ -f "feeds/custom_devices/devices/$target/config/$BOARDTYPE/config" ]; then
cat "feeds/custom_devices/devices/$target/config/$BOARDTYPE/config" >> .config
echo "" >> .config
fi
# Special handling for targets which use TARGET_DEVICES
case "$target" in
iopsys_ramips | airoha | iopsys_mediatek | brcmbca | ipq95xx)
airoha | mediatek | brcmbca | ipq95xx | ipq53xx)
# This assumes the device name to be unique within one target,
# which is a fair assumption to make.
local mk_file="$(grep -Fx --files-with-matches "define Device/${BOARDTYPE}" "$target_config_path/../image/"*.mk)"
if [ -z "$mk_file" ]; then
local subtarget="$(get_subtarget_for_device "${target/_/-}" "$BOARDTYPE")"
if [ -z "$subtarget" ]; then
echo "Error determining subtarget for $target / ${BOARDTYPE}"
return 1
fi
local subtarget="$(basename "${mk_file%.mk}")"
echo "CONFIG_TARGET_${target}=y" >> .config
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
@@ -443,7 +470,7 @@ function genconfig {
if [ ! -e tmp/.iop_bootstrap ]; then
echo "You have not installed feeds. Running genconfig in this state would create a non functional configuration."
echo "Run: iop feeds_update"
exit 0
exit 1
fi
if [ $# -eq 0 ]; then
@@ -480,7 +507,7 @@ function genconfig {
CUSTREPO="${CUSTREPO:-git@dev.iopsys.eu:consumer/iopsys.git}"
setup_dirs
create_and_copy_files "$@"
create_and_copy_files "$@" || exit 1
fi
}

View File

@@ -13,12 +13,12 @@ function genconfig_min {
target="bogus"
target_config_path=""
brcmbca_feed="target/linux/feeds/brcmbca"
ramips_feed="target/linux/feeds/iopsys-ramips"
airoha_feed="target/linux/feeds/airoha"
x86_feed="target/linux/feeds/iopsys-x86"
armvirt_feed="target/linux/feeds/iopsys-armvirt"
mediatek_feed="target/linux/feeds/iopsys-mediatek"
x86_feed="target/linux/feeds/x86"
armvirt_feed="target/linux/feeds/armvirt"
mediatek_feed="target/linux/feeds/mediatek"
qualcomm_ipq95xx_feed="target/linux/feeds/ipq95xx"
qualcomm_ipq53xx_feed="target/linux/feeds/ipq53xx"
Red='\033[0;31m' # Red
Color_Off='\033[0m' # Text Reset
@@ -41,19 +41,13 @@ function genconfig_min {
}
function verify_config {
IFS=$'\n'
org=$(<.genconfig.config)
unset IFS
local num
local conf_opt
local conf_org
local conf_new
#echo "lines to check $tot_lines"
num=0
for line in $org
while read -r line
do
conf_opt=$(echo $line | grep CONFIG_ | sed 's|.*\(CONFIG_[^ =]*\)[ =].*|\1|')
conf_opt=$(echo $line | grep "^[ #]*CONFIG_" | sed 's|.*\(CONFIG_[^ =]*\)[ =].*|\1|')
if [ -n "${conf_opt}" ]
then
conf_org=$(find_last ${conf_opt} .genconfig.config)
@@ -74,8 +68,7 @@ function genconfig_min {
#echo -e "wanted [$conf_org] got [$conf_new]"
fi
fi
num=$((num+1))
done
done < .genconfig.config
}
# Takes a board name and returns the target name in global var $target
@@ -110,45 +103,30 @@ function genconfig_min {
[ -e $brcmbca_feed/genconfig ] &&
brcmbca=$(cd $brcmbca_feed; ./genconfig)
[ -e $ramips_feed/genconfig ] &&
iopsys_ramips=$(cd $ramips_feed; ./genconfig)
[ -e $airoha_feed/genconfig ] &&
airoha=$(cd $airoha_feed; ./genconfig)
[ -e $x86_feed/genconfig ] &&
iopsys_x86=$(cd $x86_feed; ./genconfig)
x86=$(cd $x86_feed; ./genconfig)
[ -e $armvirt_feed/genconfig ] &&
iopsys_armvirt=$(cd $armvirt_feed; ./genconfig)
armvirt=$(cd $armvirt_feed; ./genconfig)
[ -e $mediatek_feed/genconfig ] &&
iopsys_mediatek=$(cd $mediatek_feed; ./genconfig)
mediatek=$(cd $mediatek_feed; ./genconfig)
[ -e $qualcomm_ipq95xx_feed/genconfig ] &&
ipq95xx=$(cd $qualcomm_ipq95xx_feed; ./genconfig)
[ -e $qualcomm_ipq53xx_feed/genconfig ] &&
ipq53xx=$(cd $qualcomm_ipq53xx_feed; ./genconfig)
if [ "$profile" == "LIST" ]; then
for list in brcmbca iopsys_ramips airoha iopsys_x86 iopsys_armvirt iopsys_mediatek ipq95xx; do
for list in brcmbca airoha x86 armvirt mediatek ipq95xx ipq53xx; do
echo "$list based boards:"
for b in ${!list}; do
a=$(echo "${!list}" | sort)
for b in $a; do
echo -e "\t$b"
done
done
return
fi
for p in $brcmbca; do
if [ $p == $profile ]; then
target="brcmbca"
target_config_path="$brcmbca_feed/config"
return
fi
done
for p in $iopsys_ramips; do
if [ $p == $profile ]; then
target="iopsys_ramips"
target_config_path="$ramips_feed/config"
return
fi
done
for p in $airoha; do
if [ $p == $profile ]; then
target="airoha"
@@ -157,25 +135,25 @@ function genconfig_min {
fi
done
for p in $iopsys_x86; do
for p in $x86; do
if [ $p == $profile ]; then
target="iopsys_x86"
target="x86"
target_config_path="$x86_feed/config"
return
fi
done
for p in $iopsys_armvirt; do
for p in $armvirt; do
if [ $p == $profile ]; then
target="iopsys_armvirt"
target="armvirt"
target_config_path="$armvirt_feed/config"
return
fi
done
for p in $iopsys_mediatek; do
for p in $mediatek; do
if [ $p == $profile ]; then
target="iopsys_mediatek"
target="mediatek"
target_config_path="$mediatek_feed/config"
return
fi
@@ -188,16 +166,26 @@ function genconfig_min {
return
fi
done
for p in $ipq53xx; do
if [ $p == $profile ]; then
target="ipq53xx"
target_config_path="$qualcomm_ipq53xx_feed/config"
return
fi
done
for p in $brcmbca; do
if [ $p == $profile ]; then
target="brcmbca"
target_config_path="$brcmbca_feed/config"
return
fi
done
}
git remote -v | grep -qE '(git@|ssh://)' && {
DEVELOPER=1
bcmAllowed=0
endptAllowed=0
git ls-remote git@dev.iopsys.eu:broadcom/bcmcreator.git -q 2>/dev/null && bcmAllowed=1
git ls-remote git@dev.iopsys.eu:iopsys/endptmngr.git -q 2>/dev/null && endptAllowed=1
}
v() {
@@ -289,6 +277,24 @@ function genconfig_min {
fi
}
get_subtarget_for_device() {
readonly target="$1"
readonly device="$2"
readonly targetinfo_file="tmp/info/.targetinfo-feeds_$target"
readonly target_profile_line="Target-Profile: DEVICE_$device"
# We want to know after which Target: $target/$subtarget line
# our $target_profile_line appears
# This is a crude way to "parse" the file using shell 🤯
# 1. grep for both lines with line number output
# 2. grep again to determine the device profile line that we looked for
# but output one context line before as well to determine corresponding subtarget line
# 4. Use head and sed to extract the subtarget
grep "^Target: $target/\|^$target_profile_line" "$targetinfo_file" \
| grep -E -B1 "^$target_profile_line" \
| head -n1 \
| sed -E "s|^Target: $target/||"
}
create_and_copy_files()
{
local BOARDTYPE=$1
@@ -330,18 +336,22 @@ function genconfig_min {
cat $target_config_path/$BOARDTYPE/config >> .config
echo "" >> .config
fi
# hack to support custom-devices until we have deprecated this genconfig-script...
if [ -f "feeds/custom_devices/devices/$target/config/$BOARDTYPE/config" ]; then
cat "feeds/custom_devices/devices/$target/config/$BOARDTYPE/config" >> .config
echo "" >> .config
fi
# Special handling for targets which use TARGET_DEVICES
case "$target" in
iopsys_ramips | airoha | iopsys_mediatek | brcmbca | ipq95xx)
airoha | mediatek | brcmbca | ipq95xx | ipq53xx)
# This assumes the device name to be unique within one target,
# which is a fair assumption to make.
local mk_file="$(grep -Fx --files-with-matches "define Device/${BOARDTYPE}" "$target_config_path/../image/"*.mk)"
if [ -z "$mk_file" ]; then
local subtarget="$(get_subtarget_for_device "${target/_/-}" "$BOARDTYPE")"
if [ -z "$subtarget" ]; then
echo "Error determining subtarget for $target / ${BOARDTYPE}"
return 1
fi
local subtarget="$(basename "${mk_file%.mk}")"
echo "CONFIG_TARGET_${target}=y" >> .config
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
@@ -428,7 +438,7 @@ function genconfig_min {
if [ ! -e tmp/.iop_bootstrap ]; then
echo "You have not installed feeds. Running genconfig in this state would create a non functional configuration."
echo "Run: iop feeds_update"
exit 0
exit 1
fi
if [ $# -eq 0 ]; then

View File

@@ -449,7 +449,7 @@ insert_feed_hash_in_feeds_config()
local feed=$1
local TO=$(cd feeds/${feed}; git rev-parse HEAD)
sed -i feeds.conf -e "/ ${feed}/ s/\(.*\)[;^].*/\1^${TO}/"
sed -i feeds.conf -e "/ ${feed} / s/\(.*\)[;^].*/\1^${TO}/"
git add feeds.conf
}

View File

@@ -32,8 +32,3 @@ start_service() {
procd_set_param respawn
procd_close_instance
}
#stop() {
# service_stop /sbin/iwatchdog
#}

106
libdsl/Makefile Normal file
View File

@@ -0,0 +1,106 @@
#
# Copyright (C) 2020-2023 Iopsys
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libdsl
PKG_VERSION:=7.2.99
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=f9f3fcd0f4140540db5bd41059bcca7ded083024
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libdsl.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
CHIP_ID=$(patsubst "%",%,$(CONFIG_BCM_CHIP_ID))
TARGET_CFLAGS +=-DIOPSYS_BROADCOM -DCHIP_$(CHIP_ID) -DCONFIG_BCM9$(CHIP_ID) \
-I$(STAGING_DIR)/usr/include/bcm963xx/bcmdrivers/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/userspace/public/include
else ifeq ($(CONFIG_TARGET_x86),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_armvirt),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall -I./" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FPIC="$(FPIC)" \
PLATFORM="$(TARGET_PLATFORM)" \
subdirs="$(subdirs)"
define Package/libdsl
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=IOPSYS HAL libs
MENU:=1
TITLE:= xDSL library (libdsl)
endef
define Package/libdsl/description
Library provides xDSL/GFAST HAL APIs
endef
define Package/libdsl/config
if PACKAGE_libdsl
config LIBDSL_DEBUG
depends on PACKAGE_libdsl
bool "Enable dsl debugging"
default n
config LIBDSL_TEST
depends on PACKAGE_libdsl
bool "Enable dsl test program"
default n
endif
endef
define Build/InstallDev/libdsl
$(INSTALL_DIR) $(1)/usr/include/xdsl
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/xdsl.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/xtm.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/common.h $(1)/usr/include/xdsl
$(CP) $(PKG_BUILD_DIR)/libdsl.so* $(1)/usr/lib/
endef
define Build/InstallDev
$(call Build/InstallDev/libdsl,$(1),$(2))
endef
ifeq ($(CONFIG_LIBDSL_TEST),y)
define Build/Compile/libdsl
$(MAKE) -C "$(PKG_BUILD_DIR)/test" $(MAKE_FLAGS)
endef
endif
define Package/libdsl/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_BUILD_DIR)/libdsl.so* $(1)/usr/lib/
ifeq ($(CONFIG_LIBDSL_TEST),y)
$(CP) $(PKG_BUILD_DIR)/test/libdsl_test $(1)/usr/bin/
endif
endef
$(eval $(call BuildPackage,libdsl))

68
libeasy/Makefile Normal file
View File

@@ -0,0 +1,68 @@
#
# Copyright (C) 2020-2023 Iopsys
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libeasy
PKG_VERSION:=7.2.100
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=32db1b79bd88eba85a3e7518dbbbd1e29f4b06d9
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libeasy.git
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall"
define Package/libeasy
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=IOPSYS HAL libs
MENU:=1
TITLE:= Common helper library (libeasy)
DEPENDS+=+libnl +libnl-route +libopenssl
endef
define Package/libeasy/description
Library provides common utility functions
endef
define Build/InstallDev/libeasy
$(INSTALL_DIR) $(1)/usr/include/easy
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/easy.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/event.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/if_utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/debug.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/hlist.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy*.so* $(1)/usr/lib/
endef
define Build/InstallDev
$(call Build/InstallDev/libeasy,$(1),$(2))
endef
define Package/libeasy/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libeasy*.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libeasy))

105
libethernet/Makefile Normal file
View File

@@ -0,0 +1,105 @@
#
# Copyright (C) 2020-2023 Iopsys
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libethernet
PKG_VERSION:=7.2.104
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=d777636ca43302a95e571ab030ec44ef50905570
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libethernet.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
CHIP_ID=$(patsubst "%",%,$(CONFIG_BCM_CHIP_ID))
TARGET_CFLAGS +=-DIOPSYS_BROADCOM -DCHIP_$(CHIP_ID) -DCONFIG_BCM9$(CHIP_ID) \
-I$(STAGING_DIR)/usr/include/bcm963xx/shared/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/bcmdrivers/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/userspace/public/include
else ifeq ($(CONFIG_TARGET_x86),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_armvirt),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_airoha),y)
TARGET_PLATFORM=ECONET
TARGET_CFLAGS +=-DIOPSYS_ECONET
else ifeq ($(CONFIG_TARGET_mediatek),y)
TARGET_PLATFORM=MEDIATEK
TARGET_CFLAGS +=-DIOPSYS_MEDIATEK
else
$(info Unexpected CONFIG_TARGET, use default LINUX)
TARGET_PLATFORM=LINUX
TARGET_CFLAGS +=-DIOPSYS_LINUX
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall -I./" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FPIC="$(FPIC)" \
PLATFORM="$(TARGET_PLATFORM)" \
subdirs="$(subdirs)"
define Package/libethernet
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=IOPSYS HAL libs
MENU:=1
TITLE:= Ethernet library (libethernet)
DEPENDS+=+libnl +libnl-route +libeasy +TARGET_airoha:ecnt_api +TARGET_brcmbca:bcmkernel
endef
define Package/libethernet/description
Library provides ethernet HAL APIs
endef
define Package/libethernet/config
config LIBETHERNET_DEBUG
depends on PACKAGE_libethernet
bool "Enable ethernet debugging"
default n
endef
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
$(CP) -rf ./libethernet/* $(PKG_BUILD_DIR)/
endef
endif
define Build/InstallDev/libethernet
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/ethernet.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libethernet.so $(1)/usr/lib/
endef
define Build/InstallDev
$(call Build/InstallDev/libethernet,$(1),$(2))
endef
define Package/libethernet/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libethernet.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libethernet))

52
libpicoevent-bcm/Makefile Normal file
View File

@@ -0,0 +1,52 @@
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_RELEASE:=1
PKG_VERSION:=0.3
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libpicoevent.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=f446f186102539cceedaa15a95a33547ac3c1fd7
PKG_NAME:=libpicoevent-bcm
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
include $(INCLUDE_DIR)/package.mk
define Package/libpicoevent-bcm
CATEGORY:=Libraries
TITLE:=Libpicoevent-bcm
URL:=
DEPENDS:= +TARGET_brcmbca:bcmkernel
include $(TOPDIR)/feeds/broadcom/bcmkernel/bcm-toolchain.mk
TARGET_CFLAGS := -Os -pipe -mfpu=vfpv3-d16 -mfloat-abi=softfp -DCONFIG_TARGET_brcmbca -g3 -fno-caller-saves -fno-plt -Wno-error=unused-but-set-variable -Wno-error=unused-result \
-mfloat-abi=soft -fmacro-prefix-map=$(BUILD_DIR)libpicoevent-bcm-0.3=libpicoevent-bcm-0.3 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 \
-Wl,-z,now -Wl,-z,relro -Wl,--build-i
endef
define Package/libpicoevent-bcm/description
Minimal event library
endef
define Package/libpicoevent-bcm/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(STAGING_DIR)/usr/lib
$(INSTALL_DIR) $(STAGING_DIR)/usr/lib/broadcom
$(INSTALL_DIR) $(STAGING_DIR)/usr/include
$(INSTALL_DIR) $(STAGING_DIR)/usr/include/bcm963xx
$(CP) $(PKG_BUILD_DIR)/libpicoevent.h $(STAGING_DIR)/usr/include/bcm963xx
mkdir -p $(1)/usr/lib/broadcom
$(CP) $(PKG_BUILD_DIR)/libpicoevent.so $(STAGING_DIR)/usr/lib/broadcom
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libpicoevent.so $(1)/usr/lib/broadcom
endef
$(eval $(call BuildPackage,libpicoevent-bcm))

103
libqos/Makefile Normal file
View File

@@ -0,0 +1,103 @@
#
# Copyright (C) 2020-2023 Iopsys
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libqos
PKG_VERSION:=7.2.101
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=93ca0a66d6f82bca208bbe52b75ed582b20aa094
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libqos.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
CHIP_ID=$(patsubst "%",%,$(CONFIG_BCM_CHIP_ID))
TARGET_CFLAGS +=-DIOPSYS_BROADCOM -DCHIP_$(CHIP_ID) -DCONFIG_BCM9$(CHIP_ID) \
-I$(STAGING_DIR)/usr/include/bcm963xx/bcmdrivers/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/userspace/public/include
else ifeq ($(CONFIG_TARGET_x86),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_armvirt),y)
TARGET_PLATFORM=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_airoha),y)
TARGET_PLATFORM=ECONET
TARGET_CFLAGS +=-DIOPSYS_ECONET
else ifeq ($(CONFIG_TARGET_ipq95xx),y)
TARGET_PLATFORM=IPQ95XX
TARGET_CFLAGS +=-DIPQ95XX
else ifeq ($(CONFIG_TARGET_mediatek),y)
TARGET_PLATFORM=LINUX
TARGET_CFLAGS +=-DIOPSYS_LINUX
else
$(info Unexpected CONFIG_TARGET, use default LINUX)
TARGET_PLATFORM=LINUX
TARGET_CFLAGS +=-DIOPSYS_LINUX
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall -I./" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FPIC="$(FPIC)" \
PLATFORM="$(TARGET_PLATFORM)" \
subdirs="$(subdirs)"
define Package/libqos
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=IOPSYS HAL libs
MENU:=1
TITLE:= QoS library (libqos)
DEPENDS+=+libnl +libnl-route +libeasy +TARGET_brcmbca:bcmkernel
endef
define Package/libqos/config
config LIBQOS_DEBUG
depends on PACKAGE_libqos
bool "Enable qos debugging"
default n
endef
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
$(CP) -rf ./libqos/* $(PKG_BUILD_DIR)/
endef
endif
define Build/InstallDev/libqos
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/include/qos.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libqos.so $(1)/usr/lib/
endef
define Build/InstallDev
$(call Build/InstallDev/libqos,$(1),$(2))
endef
define Package/libqos/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libqos*.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libqos))

57
libvoice-airoha/Makefile Normal file
View File

@@ -0,0 +1,57 @@
#
# Copyright (C) 2022 IOPSYS Software Solutions AB
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libvoice-airoha
PKG_RELEASE:=1
PKG_VERSION:=1.0.5
PKG_LICENSE:=PROPRIETARY
PKG_LICENSE_FILES:=LICENSE
LOCAL_SRC_DIR:=~/git/voip/$(PKG_NAME)
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/$(PKG_NAME).git
PKG_SOURCE_VERSION:=3f4cdca981b30d54ec5a426775fdcec2a63f83d9
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
# All config variable that are passed to the make invocation, directly or
# indirectly. This ensures that the package is rebuilt on config-changes.
PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
LIBVOICE_PKG_BUILD_DIR := $(PKG_BUILD_DIR)
include $(INCLUDE_DIR)/package.mk
TARGET_CFLAGS += -Wall -Werror
define Package/$(PKG_NAME)
CATEGORY:=Utilities
TITLE:=IOPSYS libvoice for Airoha platform
URL:=
DEPENDS:=
endef
define Package/$(PKG_NAME)/description
Libvoice is a library that provides a uniform set of APIs and data types with hardware abstract layer for DSP/SLIC from different vendors
endef
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
rsync -av --exclude=.* $(LOCAL_SRC_DIR)/* $(PKG_BUILD_DIR)/
endef
endif
define Package/$(PKG_NAME)/install
$(CP) ./files/* $(1)/
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

View File

@@ -0,0 +1,59 @@
{
"ulaw": {
"name": "G.711MuLaw",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"alaw": {
"name": "G.711ALaw",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"g726": {
"name": "G.726",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 16
},
"g723": {
"name": "G.723.1",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 30,
"ptime_increment": 30,
"bitrate": 5.3
},
"g729": {
"name": "G.729",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 8
},
"ilbc": {
"name": "iLBC",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 30,
"bitrate": 15.2
},
"gsm": {
"name": "AMR",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 20,
"bitrate": 12.2
}
}

View File

@@ -7,7 +7,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libvoice-broadcom
PKG_VERSION:=0.1
PKG_RELEASE:=1
PKG_VERSION:=1.0.1
PKG_LICENSE:=PROPRIETARY
PKG_LICENSE_FILES:=LICENSE
@@ -16,7 +17,7 @@ LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/$(PKG_NAME).git
PKG_SOURCE_VERSION:=b53e93ca1a2fdda56ca9caffb6020e158e684f3d
PKG_SOURCE_VERSION:=548f8fccc9f8f0b5dd6bb39bdd9cac8659400cb6
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
@@ -27,7 +28,6 @@ PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
LIBVOICE_PKG_BUILD_DIR := $(PKG_BUILD_DIR)
export CONFIG_BRCM_SDK_VER_504040
export CONFIG_BCM_CHIP_ID
include $(INCLUDE_DIR)/package.mk
@@ -52,9 +52,7 @@ endef
endif
define Package/$(PKG_NAME)/install
# Although there is nothing needs to be installed, but the install section must NOT be empty. Otherwise the package will be skipped as below.
# WARNING: skipping libvoice-broadcom -- package has no install section
$(INSTALL_DIR) $(1)/usr/lib
$(CP) ./files/* $(1)/
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

View File

@@ -0,0 +1,59 @@
{
"ulaw": {
"name": "G.711MuLaw",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"alaw": {
"name": "G.711ALaw",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"g726": {
"name": "G.726",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 16
},
"g723": {
"name": "G.723.1",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 30,
"ptime_increment": 30,
"bitrate": 5.3
},
"g729": {
"name": "G.729",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 8
},
"ilbc": {
"name": "iLBC",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 30,
"bitrate": 15.2
},
"gsm": {
"name": "AMR",
"ptime_min": 10,
"ptime_max": 30,
"ptime_default": 20,
"ptime_increment": 20,
"bitrate": 12.2
}
}

View File

@@ -7,7 +7,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libvoice-d2
PKG_VERSION:=0.1
PKG_RELEASE:=1
PKG_VERSION:=1.0.6
PKG_LICENSE:=PROPRIETARY
PKG_LICENSE_FILES:=LICENSE
@@ -16,7 +17,7 @@ LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/$(PKG_NAME).git
PKG_SOURCE_VERSION:=45e7d35f97f258f5e13c3afa0542db724bf59828
PKG_SOURCE_VERSION:=062a265754b93a865cfcd2745f200aa09fb4a668
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
@@ -25,17 +26,17 @@ endif
# indirectly. This ensures that the package is rebuilt on config-changes.
PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
LIBVOICE_PKG_BUILD_DIR := $(PKG_BUILD_DIR)
include $(INCLUDE_DIR)/package.mk
export D2_VTSP_PLATFORM := $(shell echo $(CONFIG_D2_VTSP_PLATFORM))
TARGET_CFLAGS += -Wall -Werror
define Package/$(PKG_NAME)
CATEGORY:=Utilities
TITLE:=IOPSYS libvoice for D2 which is software DSP
URL:=
DEPENDS:=
DEPENDS:=+d2-voice
endef
define Package/$(PKG_NAME)/description
@@ -49,9 +50,7 @@ endef
endif
define Package/$(PKG_NAME)/install
# Although there is nothing needs to be installed, but the install section must NOT be empty. Otherwise the package will be skipped as below.
# WARNING: skipping libvoice-d2 -- package has no install section
$(INSTALL_DIR) $(1)/usr/lib
$(CP) ./files/* $(1)/
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

View File

@@ -0,0 +1,34 @@
{
"ulaw": {
"name": "G.711MuLaw",
"ptime_min": 10,
"ptime_max": 40,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"alaw": {
"name": "G.711ALaw",
"ptime_min": 10,
"ptime_max": 40,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 64
},
"g729": {
"name": "G.729",
"ptime_min": 10,
"ptime_max": 40,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 8
},
"g722": {
"name": "G.722",
"ptime_min": 10,
"ptime_max": 40,
"ptime_default": 20,
"ptime_increment": 10,
"bitrate": 56
}
}

162
libwifi/Makefile Normal file
View File

@@ -0,0 +1,162 @@
#
# Copyright (C) 2020-2023 Iopsys
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libwifi
PKG_VERSION:=7.2.107
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=1bd819ac21f86a0956b1f69ef1d110665e240a5f
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/libwifi.git
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
ifeq ($(CONFIG_TARGET_brcmbca),y)
TARGET_PLATFORM=BROADCOM
TARGET_WIFI_TYPE=BROADCOM
CHIP_ID=$(patsubst "%",%,$(CONFIG_BCM_CHIP_ID))
TARGET_CFLAGS +=-DIOPSYS_BROADCOM -DCHIP_$(CHIP_ID) -DCONFIG_BCM9$(CHIP_ID) \
-I$(STAGING_DIR)/usr/include/bcm963xx/bcmdrivers/opensource/include/bcm963xx \
-I$(STAGING_DIR)/usr/include/bcm963xx/userspace/public/include
else ifeq ($(CONFIG_TARGET_x86),y)
TARGET_PLATFORM=TEST
TARGET_WIFI_TYPE=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_armvirt),y)
TARGET_PLATFORM=TEST
TARGET_WIFI_TYPE=TEST
TARGET_CFLAGS +=-DIOPSYS_TEST
else ifeq ($(CONFIG_TARGET_airoha),y)
TARGET_PLATFORM=ECONET
TARGET_WIFI_TYPE=MEDIATEK MAC80211
TARGET_CFLAGS +=-DIOPSYS_ECONET
else ifeq ($(CONFIG_TARGET_ipq95xx),y)
TARGET_PLATFORM=IPQ95XX
TARGET_WIFI_TYPE=QUALCOMM MAC80211
TARGET_CFLAGS +=-DIPQ95XX
else ifeq ($(CONFIG_TARGET_mediatek),y)
TARGET_PLATFORM=LINUX
TARGET_WIFI_TYPE=MAC80211
TARGET_CFLAGS +=-DIOPSYS_LINUX
else
$(info Unexpected CONFIG_TARGET, use default MAC80211)
TARGET_PLATFORM=MAC80211
TARGET_WIFI_TYPE=MAC80211
TARGET_CFLAGS +=-DIOPSYS_MAC80211
endif
ifneq ($(CONFIG_PACKAGE_libwifi),)
TARGET_CFLAGS +=-DHAS_WIFI
endif
ifeq ($(CONFIG_LIBWIFI_USE_CTRL_IFACE),y)
TARGET_CFLAGS +=-DLIBWIFI_USE_CTRL_IFACE
endif
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-I$(STAGING_DIR)/usr/include/openssl \
-I$(STAGING_DIR)/usr/include/libnl3
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -Wall -I./" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FPIC="$(FPIC)" \
PLATFORM="$(TARGET_PLATFORM)" \
WIFI_TYPE="$(TARGET_WIFI_TYPE)" \
subdirs="$(subdirs)"
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
rsync -r --exclude=.* ~/git/libwifi/ $(PKG_BUILD_DIR)/
endef
endif
define Package/libwifi-common
SECTION:=libs
CATEGORY:=Libraries
TITLE:=libwifi
SUBMENU:=IOPSYS HAL libs
DEPENDS:=+libopenssl
MENU:=1
endef
define Package/libwifi/description
Library provides WiFi HAL APIs and WiFi common utility functions
endef
define Package/libwifiutils
$(call Package/libwifi-common)
TITLE:= WiFi utility library (libwifiutils.so)
DEPENDS+=+libnl +libnl-route +libeasy
endef
define Build/InstallDev/libwifiutils
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/wifidefs.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/wifiutils.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libwifiutils*.so* $(1)/usr/lib/
endef
define Package/libwifiutils/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwifiutils*.so* $(1)/usr/lib/
endef
define Package/libwifi
$(call Package/libwifi-common)
TITLE:= WiFi library (libwifi)
DEPENDS+=+libnl +libnl-route +libeasy +libwifiutils +TARGET_brcmbca:bcmkernel
endef
define Package/libwifi/config
if PACKAGE_libwifi
config LIBWIFI_DEBUG
depends on PACKAGE_libwifi
bool "Enable debugging in libwifi"
default n
config LIBWIFI_USE_CTRL_IFACE
bool "Create UNIX sockets to interface with hostapd/wpa_supplicant"
default n
endif
endef
define Build/InstallDev/libwifi
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/wifiops.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/wifi.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/libwifi-7*.so* $(1)/usr/lib/
endef
define Build/InstallDev
$(call Build/InstallDev/libwifiutils,$(1),$(2))
ifneq ($(CONFIG_PACKAGE_libwifi),)
$(call Build/InstallDev/libwifi,$(1),$(2))
endif
endef
define Package/libwifi/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwifi-7*.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libwifiutils))
$(eval $(call BuildPackage,libwifi))

View File

@@ -20,10 +20,6 @@ start_service() {
fi
}
stop() {
service_stop /sbin/loop-detector
}
service_triggers()
{
procd_add_reload_trigger loop_detection
@@ -33,4 +29,3 @@ reload_service() {
stop
start
}

View File

@@ -33,5 +33,17 @@ config AGENT_EASYMESH_VENDOR_EXT_OUI
enabled through AGENT_EASYMESH_VENDOR_EXT. Please provide the Vendor's OUI
through which such features would be exposed.
config AGENT_UNAUTHORIZED_STA_IN_ASSOCLIST
bool "Create STA entry before authorization is completed"
config AGENT_CHANSWITCH_SKIP_DFS_UNAVAILABLE
bool "Skip DFS unavailable channels when channel switch"
config AGENT_LOCAL_ACS_SERVICE
bool "Enable loacal ACS daemon usage"
config AGENT_STRICT_OPER_CHANNEL_REPORT
bool "Report operation channel strictly, skip some unsolicited reports"
endmenu
endif

View File

@@ -1,14 +1,14 @@
#
# Copyright (C) 2020-22 IOPSYS Software Solutions AB
# Copyright (C) 2020-2023 IOPSYS Software Solutions AB
#
include $(TOPDIR)/rules.mk
PKG_NAME:=map-agent
PKG_VERSION:=2.10.4.13
PKG_VERSION:=4.3.3.10
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=fdce58318b082b8683f80688c5d284e21efa7908
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE_VERSION:=644884a8b421fd830f793b94779876395eecd8e6
PKG_MAINTAINER:=Jakob Olsson <jakob.olsson@iopsys.eu>
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
@@ -16,7 +16,7 @@ PKG_LICENSE_FILES:=LICENSE
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-agent
PKG_SOURCE_URL:=https://dev.iopsys.eu/multi-ap/map-agent
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
@@ -78,6 +78,21 @@ TARGET_CFLAGS += -DEASYMESH_VENDOR_EXT_OUI=\\\"$(CONFIG_AGENT_EASYMESH_VENDOR_EX
TARGET_CFLAGS += -DEASYMESH_VENDOR_EXT
endif
ifeq ($(CONFIG_AGENT_UNAUTHORIZED_STA_IN_ASSOCLIST),y)
TARGET_CFLAGS += -DUNAUTHORIZED_STA_IN_ASSOCLIST
endif
ifeq ($(CONFIG_AGENT_CHANSWITCH_SKIP_DFS_UNAVAILABLE),y)
TARGET_CFLAGS += -DCHANSWITCH_SKIP_DFS_UNAVAILABLE
endif
ifeq ($(CONFIG_AGENT_LOCAL_ACS_SERVICE),y)
TARGET_CFLAGS += -DLOCAL_ACS_SERVICE
endif
ifeq ($(CONFIG_AGENT_STRICT_OPER_CHANNEL_REPORT),y)
TARGET_CFLAGS += -DSTRICT_OPER_CHANNEL_REPORT
endif
MAKE_PATH:=src

View File

@@ -8,6 +8,7 @@ config agent 'agent'
option eth_onboards_wifi_bhs '0'
# option controller_macaddr '0a:1b:2c:3d:4e:50'
option scan_on_boot_only '0'
list map_port 'all'
config dynamic_backhaul
option missing_bh_timer '60'

View File

@@ -25,7 +25,7 @@ validate_agent_section() {
uci_validate_section mapagent agent "agent" \
'enabled:bool:true' \
'debug:range(0,16)' \
'profile:range(1,2):2' \
'profile:range(1,4):2' \
'brcm_setup:bool:false' \
'controller_macaddr:macaddr' \
'al_bridge:string' \
@@ -104,7 +104,11 @@ validate_radio_section() {
'include_sta_metric:bool:false' \
'rcpi_hysteresis_margin:range(0,255)' \
'report_util_threshold:range(0,255)' \
'encryption:or("sae", "psk2", "sae-mixed")'
'encryption:or("sae", "sae+aes", "psk2",
"psk2+aes", "sae-mixed", "sae-mixed+aes",
"none", "psk-mixed", "psk-mixed+aes",
"wpa", "wpa+aes", "wpa2", "wpa2+aes",
"psk", "psk+aes")' \
[ "$?" -ne 0 ] && {
logger -s -t "mapagent" "Validation of radio section failed"
@@ -171,6 +175,7 @@ validate_agent_config() {
create_dir() {
mkdir -p /var/run/multiap
mkdir -p /etc/multiap
}
start_service() {

View File

@@ -1,18 +1,19 @@
#
# Copyright (C) 2020-22 IOPSYS Software Solutions AB
# Copyright (C) 2020-2023 IOPSYS Software Solutions AB
#
include $(TOPDIR)/rules.mk
PKG_NAME:=map-controller
PKG_VERSION:=2.11.0.21
PKG_VERSION:=4.3.0.8
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=24fb4d95c3a1d0b736239de28a8e14ab7a185630
PKG_SOURCE_VERSION:=0d83f8acd66a4cb97f2f123149696334d7f03e6e
PKG_MAINTAINER:=Jakob Olsson <jakob.olsson@iopsys.eu>
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-controller
PKG_SOURCE_URL:=https://dev.iopsys.eu/multi-ap/map-controller
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
endif
@@ -26,7 +27,7 @@ define Package/map-controller
SECTION:=utils
CATEGORY:=Utilities
TITLE:=WiFi Multi-AP Controller (EasyMesh R2)
DEPENDS:=+libuci +libubox +ubus +libeasy +libieee1905 +ieee1905 +map-plugin
DEPENDS:=+libuci +libubox +ubus +libeasy +libwifiutils +libieee1905 +ieee1905 +map-plugin
endef
define Package/map-controller/description

View File

@@ -45,7 +45,13 @@ validate_sta_steering_section() {
'use_bcn_metrics:bool:false' \
'use_usta_metrics:bool:false' \
'bandsteer:bool:false' \
'diffsnr:range(0,100)'
'diffsnr:range(0,100)' \
'rcpi_threshold_2g:range(0,220)' \
'rcpi_threshold_5g:range(0,220)' \
'rcpi_threshold_6g:range(0,220)' \
'report_rcpi_threshold_2g:range(0,220)' \
'report_rcpi_threshold_5g:range(0,220)' \
'report_rcpi_threshold_6g:range(0,220)'
[ "$?" -ne 0 ] && {
logger -s -t "mapcontroller" "Validation of sta_steering section failed"
@@ -62,7 +68,9 @@ validate_ap_section() {
'band:or("2", "5", "6")' \
'ssid:string' \
'encryption:or("sae", "sae+aes", "psk2",
"psk2+aes", "sae-mixed", "sae-mixed+aes")' \
"psk2+aes", "sae-mixed", "sae-mixed+aes",
"none", "psk-mixed", "psk-mixed+aes",
"psk", "psk+aes")' \
'key:string' \
'vid:range(1,65535):1' \
'type:or("backhaul", "fronthaul", "combined")' \
@@ -147,6 +155,10 @@ validate_controller_config() {
return 0
}
create_dir() {
mkdir -p /etc/multiap
}
start_service() {
local enabled
@@ -156,6 +168,8 @@ start_service() {
config_get_bool enabled controller enabled 1
[ "$enabled" -eq 0 ] && return
create_dir
procd_open_instance
procd_set_param command "/usr/sbin/mapcontroller" "-d"
@@ -190,7 +204,7 @@ reload_service() {
return
fi
pidof "mapcontroller" > /dev/null
pidof "/usr/sbin/mapcontroller" > /dev/null
if [[ $? -ne 0 ]] ; then
start
return

Some files were not shown because too many files have changed in this diff Show More