aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/lantiq/ltq-vdsl-mei
Commit message (Collapse)AuthorAgeFilesLines
* ltq-vdsl-mei: add locking to interrupt handlerJan Hoffmann2022-06-072-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some users noticed repeated resyncs at random intervals, which go away when the MEI driver is configured to use polling instead of interrupts. Debugging shows that this seems to be caused by concurrent calls to MEI_ReadMailbox (in the interrupt handler) and MEI_WriteMailbox. This appears to be mostly triggered when there is an interrupt for vectoring error reports. In polling mode, calls to MEI_ReadMailbox are protected by the same semaphore as is used in MEI_WriteMailbox. When interrupts are used, MEI_WriteMailbox appears to rely on MEI_DisableDeviceInt and MEI_EnableDeviceInt to provide mutual exclusion with the interrupt handler. These functions mask/unmask interrupts, and there is an additional check of the mask in the interrupt handler itself. However, this is not sufficient on systems with SMP, as the interrupt handler may be running in parallel, and could already be past the interrupt mask check at this point. This adds a lock to the interrupt handler, and also acquires this lock in MEI_DisableDeviceInt. This should make sure that after a call to MEI_DisableDeviceInt the interrupt is masked, and the interrupt handler is either not running, has alread finished its work, or is still before the interrupt mask check, and is thus going to detect the change. Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jan Hoffmann <jan@3e8.eu> (cherry picked from commit 17004245534731ab03c9a8683208e84d9c399979)
* ltq-vdsl-mei: enable vectoring error sample callbackJan Hoffmann2022-06-072-13/+2
| | | | | | | | | This re-enables the vectoring error sample callback and adds a dependency to the corresponding driver. Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jan Hoffmann <jan@3e8.eu> (cherry picked from commit 93f0e1f922ec1351d429259db942f10147e624ff)
* ltq-vdsl-mei: Remove static linkingHauke Mehrtens2022-01-211-0/+47
| | | | | | | | | This removes -static compile option. The -static option tells GCC to link this statically with the libc, which we do not want in OpenWrt. We want to link everything dynamically to the libc. This fixes a compile problem with glibc. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: ltq-vdsl-mei: add kernel 5.10 compatiblityMathias Kresin2021-04-122-7/+71
| | | | | | proc_create_data() expects a struct of type proc_ops. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ltq-vdsl-app: fix -Wundef warningsMathias Kresin2021-03-011-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | The following warnings are shown during build: /usr/include/vdsl/cmv_message_format.h:33:6: warning: "MEI_SUPPORT_DEBUG_STREAMS" is not defined, evaluates to 0 [-Wundef] #if (MEI_SUPPORT_DEBUG_STREAMS == 1) ^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/vdsl/drv_mei_cpe_interface.h:2256:6: warning: "MEI_SUPPORT_OPTIMIZED_FW_DL" is not defined, evaluates to 0 [-Wundef] #if (MEI_SUPPORT_OPTIMIZED_FW_DL == 1) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ The headers are provided by the MEI driver, but the defines are never set by the vdsl app. While the struct with the MEI_SUPPORT_OPTIMIZED_FW_DL conditional isn't used by the vdsl app, however CMV_USED_PAYLOAD_8BIT_SIZE which value depends on MEI_SUPPORT_DEBUG_STREAMS is. Since the MEI driver doesn't provide an autogenerated header with compile flags, the flags are hardcoded for the vdsl app. Set them for the MEI driver as well, to indicate a relation to the values used for the vdsl app and to be not surprised by a changed default in case the MEI driver gets updated. Use the current default values defined in the MEI driver. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: lantiq: fix Module.symvers handlingMathias Kresin2021-02-181-0/+2
| | | | | | | | | | | | | | | 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>
* treewide: unify OpenWrt hosted source via @OPENWRTPaul Spooren2021-02-051-1/+1
| | | | | | | | | | | 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>
* ltq-vdsl-mei: avoid underscore in package nameSungbo Eo2020-02-231-4/+4
| | | | | | | As 07e1d88d7beb ("kernel: avoid underscore in *6lowpan package names") shows, underscores might cause build failures. Replace underscore with dash. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* lantiq: Allow PKG_ASLR_PIE for DSL and voice driversHauke Mehrtens2019-11-011-2/+0
| | | | | | | | | | | 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>
* ltq-vdsl-mei: reset g_tx_link_rate on showtime exitMartin Schiller2018-06-091-0/+12
| | | | | | | | | | | | Without this change, ifx_mei_atm_showtime_check() will always return "showtime" after one call of MEI_InternalXtmSwhowtimeEntrySignal() was done, even if MEI_InternalXtmSwhowtimeExitSignal() was called in the meantime. The ifx_mei_atm_showtime_check() function is used by the ltq-atm and ltq-ptm driver. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* ltq-vdsl-mei: Fix section mismatchHauke Mehrtens2018-03-181-0/+20
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: Deactivate ASLR support for some applicationsHauke Mehrtens2018-03-031-0/+1
| | | | | | | | | The lantiq components still leak some user space linker options into the kernel space. This breaks with build when ASLR is activated, deactivate it for now on these packages. Fixes: FS#1391 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: ltq-vdsl-mei: Do not leak user space CFLAGS into kernel spaceHauke Mehrtens2018-03-032-3/+23
| | | | | | | | | Do not leak the user space CFLAGS into the kernel space any more, this allows us to activate the MIPS16 build. This decreases the size of the ipk file from 87589 bytes to 81267 bytes. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix lantiq applications kernel 4.14 compatiblityHauke Mehrtens2018-02-202-1/+25
| | | | | | | | This is fixing multiple compile problems with kernel 4.14 and updates the code to take care of changes introduced between kernel 4.9 and 4.14. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ltq-vdsl-mei: revert disable optimized firmware downloadMathias Kresin2017-09-301-2/+2
| | | | | | | | | | | | This reverts commit b428f45c062dc8ca8c2f35f491fa467dc5b85519. If the optimized firmware download is disabled, the xdsl subsystem hangs in the "idle request" state after physically disconnecting and reconnecting the xdsl modem from the line. It might fix the failing line init on boot as well. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ltq-vdsl-mei: disable optimized firmware downloadMathias Kresin2017-09-281-2/+2
| | | | | | | | | With ltq-vdsl-mei 1.5.17.6 an optimized firmware download was added and enabled by default. As soon as the optimized firmware download is enabled, a watchdog based reboot is trigger between 24h to 48h of uptime if the board isn't connected to a xdsl line. Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: add license tagsFlorian Eckert2017-06-241-0/+3
| | | | | | Add licence tags where missing. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* treewide: clean up download hashesFelix Fietkau2016-12-161-1/+1
| | | | | | Replace *MD5SUM with *HASH, replace MD5 hashes with SHA256 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ltq-vdsl-mei: update mei driver to version 1.5.17.6Hauke Mehrtens2016-09-204-51/+87
| | | | Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
* global: change my email addressJohn Crispin2016-05-121-1/+1
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* package: flag further target specific packages as nonsharedJo-Philipp Wich2016-04-261-0/+1
| | | | | | | Add nonshared flag to package depending on specific targets or subtargets as there's no guarantee otherwise that they'll be available in the shared repo. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ltq-vdsl-mei: activate format security checksHauke Mehrtens2016-02-252-1/+11
| | | | | | | | | This activates the format warnings in this package and that makes it possible to activate format-security checks. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48785
* lantiq: ltq-vdsl-mei: enable vectoring supportFelix Fietkau2015-12-052-1/+12
| | | | | | | | Dynamic Spectrum Management is a precondition for G.993.5 (VDSL2 vectoring). Signed-off-by: Mathias Kresin <openwrt@kresin.me> SVN-Revision: 47784
* lantiq: ltq-vdsl-mei: update to version 1.4.8.5John Crispin2015-11-244-27/+53
| | | | | | | | | In addition to the update this also fixes some build warnings and makes it use the same configure option as used in Lantiq UGW. Signed-off-by: Hauke Mehrtens <hauke.mehrtens@lantiq.com> SVN-Revision: 47634
* lantiq: ltq-vdsl-mei: register char device automaticallyJohn Crispin2015-11-242-5/+36
| | | | | | Signed-off-by: Hauke Mehrtens <hauke.mehrtens@lantiq.com> SVN-Revision: 47633
* lantiq: ltq-vdsl-mei: add mei_cpe_drv_test applicationJohn Crispin2015-11-241-1/+23
| | | | | | | | This application helps to debug some internal problems in the MEI driver. Signed-off-by: Hauke Mehrtens <hauke.mehrtens@lantiq.com> SVN-Revision: 47632
* lantiq: fix gcc 5 buildMatteo Croce2015-10-041-0/+13
| | | | SVN-Revision: 47106
* lantiq: Update to the latest DSL driver / application versionsJohn Crispin2015-09-142-274/+231
| | | | | | | | | | | Thanks to Sylwester Petela for testing my patch (successfully on an ADSL connection) and for pointing out some configuration mistakes. Others (including me) have also successfully tested this extensively on VDSL connections. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> SVN-Revision: 46920
* lantiq: revert vr9 driver update as it causes problemsJohn Crispin2014-09-151-2/+2
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 42556
* lantiq: update to a newer versions of the vr9 driversJohn Crispin2014-09-111-2/+2
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 42478
* ltq-vdsl-mei: disable PKG_CHECK_FORMAT_SECURITYJohn Crispin2014-07-011-0/+1
| | | | | | | | the build breaks when PKG_CHECK_FORMAT_SECURITY:=1 Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 41451
* ltq-vdsl-mei: force shell to bash to avoid compile errorsFelix Fietkau2014-05-061-0/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 40712
* ltq-vdsl-mei: disable mips16 support (fixes #15284)Felix Fietkau2014-03-181-0/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39944
* lantiq: add some missing PKG_SOURCE_URLsHauke Mehrtens2013-10-121-0/+1
| | | | | | | | These URLs where missing and causes build failures. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 38376
* lantiq: add v3.10 patchesJohn Crispin2013-09-171-17/+40
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 38031
* lantiq: update packages for v3.10John Crispin2013-09-171-1/+1
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 38028
* packages: clean up the package folderJohn Crispin2013-06-212-0/+358
Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 37007