This is a preparation for adding support for dsl_cpe_pipe.sh with a
similar set of commands compared to the VDSL variant.
The configuration is simplified by using the "--enable-model" option.
Other options are chosen to match the VDSL variant, while also making
sure that previously enabled options stay like that. However, ReTx
options stay disabled, because of incompatibility with the ubus code.
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20241019174041.1281093-2-jan@3e8.eu/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Convert DSL_XTUDir_t to DSL_AccessDir_t to get rid of enum-conversion
warning.
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Link: https://github.com/openwrt/openwrt/pull/15811
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Fix compilation warning:
./include/linux/export.h:29:22: error: passing argument 1 of 'class_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
29 | #define THIS_MODULE (&__this_module)
| ~^~~~~~~~~~~~~~~
| |
| struct module *
/home/aleksander/workspace/openwrt/build_dir/target-mips_24kc_musl/linux-lantiq_xway/ltq-dsl-ar9/drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c:1105:29: note: in expansion of macro 'THIS_MODULE'
1105 | dsl_class = class_create(THIS_MODULE, "dsl_cpe_api");
| ^~~~~~~~~~~
In file included from ./include/linux/device.h:31,
from ./include/linux/platform_device.h:13,
from ./include/linux/of_device.h:5,
from ./include/linux/of_platform.h:10,
from /home/aleksander/workspace/openwrt/build_dir/target-mips_24kc_musl/linux-lantiq_xway/ltq-dsl-ar9/drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c:15:
./include/linux/device/class.h:230:54: note: expected 'const char *' but argument is of type 'struct module *'
230 | struct class * __must_check class_create(const char *name);
| ~~~~~~~~~~~~^~~~
/home/aleksander/workspace/openwrt/build_dir/target-mips_24kc_musl/linux-lantiq_xway/ltq-dsl-ar9/drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c:1105:16: error: too many arguments to function 'class_>
1105 | dsl_class = class_create(THIS_MODULE, "dsl_cpe_api");
| ^~~~~~~~~~~~
./include/linux/device/class.h:230:29: note: declared here
230 | struct class * __must_check class_create(const char *name);
| ^~~~~~~~~~~~
cc1: all warnings being treated as errors
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
This makes the components used on the lantiq SoCs compile with kernel
6.1.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[also fix ifxmips_ptm_adsl.c]
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Add patch fixing compilation warning due to not handled switch
fallthrough, stack limit and compilation warning in g997 module.
Fix compilation warning:
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/pm/drv_dsl_cpe_pm_core.c: In function 'DSL_DRV_PM_CountersReset':
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/pm/drv_dsl_cpe_pm_core.c:2277:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
2277 | if (ResetType == DSL_PM_RESET_HISTORY)
| ^
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/pm/drv_dsl_cpe_pm_core.c:2280:4: note: here
2280 | case DSL_PM_RESET_TOTAL:
| ^~~~
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/pm/drv_dsl_cpe_pm_core.c:2284:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
2284 | if (ResetType == DSL_PM_RESET_TOTAL)
| ^
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/pm/drv_dsl_cpe_pm_core.c:2287:4: note: here
2287 | case DSL_PM_RESET_HISTORY_SHOWTIME:
| ^~~~
cc1: all warnings being treated as errors
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/device/drv_dsl_cpe_device_danube.c: In function 'DSL_DRV_DEV_AutobootHandleTraining':
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/device/drv_dsl_cpe_device_danube.c:3189:19: error: this statement may fall through [-Werror=implicit-fallthrough=]
3189 | if (nErrCode != DSL_SUCCESS)
| ^
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/device/drv_dsl_cpe_device_danube.c:3197:13: note: here
3197 | case DSL_LINESTATE_IDLE:
| ^~~~
cc1: all warnings being treated as errors
/home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/g997/drv_dsl_cpe_api_g997_danube.c: In function 'DSL_DRV_DEV_G997_PowerManagementStateForcedTrigger':
/home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/g997/drv_dsl_cpe_api_g997_danube.c:2532:52: error: bitwise comparison always evaluates to false [-Werror=tautological-compare]
2532 | else if (((nVal >> 4) & 0x15) == 0x9)
| ^~
/home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/g997/drv_dsl_cpe_api_g997_danube.c: In function 'DSL_DRV_DEV_G997_DeltHlogGet':
/home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_ase/ltq-dsl-ase/drv_dsl_cpe_api-3.24.4.4/src/g997/drv_dsl_cpe_api_g997_danube.c:2108:1: error: the frame size of 1056 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
2108 | }
| ^
cc1: all warnings being treated as errors
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
The driver maintains elapsed times by repeatedly accumulating the time
since the previous update in a loop. For the elapsed showtime time, the
time difference is truncated to seconds before adding it, leading to a
sizable error over time.
Move the truncation to before calculation of the time difference in
order to remove this error. Also maintain the total elapsed time in the
same way in full seconds, to prevent the unsigned 32-bit counter from
wrapping around after about 50 days.
Testing on a VR9 device shows that the reported line uptime now matches
the actual elapsed wall time. The ADSL variant is only compile-tested,
but it should also work as the relevant code is identical.
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
If an external module uses exported symbols from another external
module, Kbuild needs to have full knowledge of all symbols to
avoid spitting out warnings about undefined symbols.
Use PKG_EXTMOD_SUBDIRS to point to the build directory which contains
the Module.symvers.
Pass KERNEL_MAKE_FLAGS to the external module build, to inject
KBUILD_EXTRA_SYMBOLS. KBUILD_EXTRA_SYMBOLS holds a space separated list
of Module.symvers, which list all exported symbols.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Multiple sources are hosted on OpenWrts source server only. The source
URLs to point to the server vary based on different epochs in OpenWrts
history.
Replace all by @OPENWRT which is an "empty" mirror, therefore using the
fallback servers sources.cdn.openwrt.org and sources.openwrt.org.
Signed-off-by: Paul Spooren <mail@aparcar.org>
This fixes a few minor issues (partially cosmetic) in ltq-adsl and
ltq-adsl-fw Makefiles:
- fix PKG_SOURCE_URL and switch to https
- remove non-existant FW_NAME variable
- fix package name for config inclusion
- fix config symbol for debugging
Fixes: 1d0a9d0c04 ("move ltq-adsl")
Cc: John Crispin <john@phrozen.org>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Upstream commit e4b92b108c6cd6 ("timekeeping: remove obsolete time
accessors") removed do_gettimeofday(). In Linux 4.19 this was only a
wrapper around ktime_get_real_ts64(). Use ktime_get_real_ts64() now that
the wrapper is gone to fix compilation against Linux 5.4.
Move the ifxmips_mei_interface header to the include directory, it can't
be found otherwise during compilation. The reason for the changed
behaviour is not yet clear, however having header files in an include
directory is more straight forward.
To use the of_device_id struct, the mod_devicetable header need to be
included. Instead of including this header, include the of_platform
header, which includes the mod_devicetable on its own.
Signed-off-by: Mathias Kresin <dev@kresin.me>
When ASLR_PIE was activated globally these drivers failed to build
because the user space LDFLAGS leaked into the kernel build process.
This was fixed in upstream Linux kernel commit ce99d0bf312d ("kbuild:
clear LDFLAGS in the top Makefile") which went into Linux 4.17. The
lantiq target is now on Linux 4.19 only and these exceptions are not
needed any more.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The package still leaks some user space linker options into the kernel
space. This breaks the build when ASLR is activated, deactivate it for
now.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>