aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/lantiq/ltq-atm/src
Commit message (Collapse)AuthorAgeFilesLines
* ltq-atm: cleanup unused variables and functionsMartin Schiller2018-02-051-41/+0
| | | | Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* ltq-atm: rewrite tx path to use IRQsAlexander Couzens2018-02-052-46/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ATM subsystem is different from the generic ethernet NICs. The ATM subsystem requires a callback when a packet has been sent. It means a tx skb_buff need to be used after it has sent. While the generic NIC can fill up the TX ring and free skb_buffs if it encounter a ring buffer slot with an already sent skbuff. The ATM drivers need call the pop() function after it has send a single ATM package. The ATM subsystem controls via this ways the queuing. The ppe engine use DMA channels for read and write. Every atm_vcc has it's own TX DMA channel and each TX DMA channel has it's own ring buffer. The old driver had multiple issues: - Call the subsystem callback at the beginning of tx function (ppe_send). Didn't allowed the ATM subsystem to control the enqueued package amount. - Filled up the TX ring until full and fail futher - copy or decouple the skb from all other subsystem before giving it over to TX ring The new tx path uses interupts. - call the subsystem callback _after_ it was sent by hardware - no need to copy our decouple the skb any more - gives back control to the atm subsystem over the enqueued packages - use an interupt for every sent atm package Using interupts shouldn't be a problem because of the slow uplink bandwidth of ADSL. The speed _through_ the DSL router was always as high as it should be, only traffic generated on the router itself were affected. After changing to new tx path, the speed of iperf's run on the router itself reached the same speed. The master/trunk wasn't as much affected because of TCP optimisations (reboot-5022-gb2ea46fe236a). The following results are taken on the remote server, which receives the stream over the internet and the DSL line. The sync moves between every sync a litte bit, but is so far stable Latency / Interleave Delay: Down: Fast (0.25 ms) / Up: Fast (0.50 ms) Data Rate: Down: 13.287 Mb/s / Up: 1.151 Mb/s reboot-5521-g9f8d28285d without patch [ ID] Interval Transfer Bandwidth Retr [ 5] 0.00-10.04 sec 947 KBytes 773 Kbits/sec 0 sender [ 5] 0.00-10.04 sec 928 KBytes 757 Kbits/sec receiver reboot-5521-g9f8d28285d with patch [ 5] 0.00-10.06 sec 1.16 MBytes 970 Kbits/sec 0 sender [ 5] 0.00-10.06 sec 1.15 MBytes 959 Kbits/sec receiver v17.01.4-239-g55c23e44f4 without patch [ ID] Interval Transfer Bandwidth Retr [ 5] 0.00-10.04 sec 87.4 KBytes 71.3 Kbits/sec 0 sender [ 5] 0.00-10.04 sec 59.6 KBytes 48.7 Kbits/sec receiver v17.01.4-239-g55c23e44f4 with patch [ ID] Interval Transfer Bandwidth Retr [ 5] 0.00-10.05 sec 1.18 MBytes 983 Kbits/sec 1 sender [ 5] 0.00-10.05 sec 1.15 MBytes 959 Kbits/sec receiver Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* lantiq: ltq-atm/ltq-ptm: fix showtime handling on driver loadMartin Schiller2017-08-061-7/+3
| | | | | | | | This is needed to be able to load the ltq-atm/ltq-ptm driver from a notify script during synchronization, because the line can reach showtime state before the driver is fully loaded. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: fix ifxmips_atm_amazon_se.cTino Reichardt2017-06-031-8/+0
| | | | | | Remove 6 defines, which were defined already some lines above. Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
* lantiq: ltq-atm: set carrier statusJohn Crispin2015-12-171-1/+14
| | | | | | | | | | | | | | This prevents the unconditionally start of pppd since netifd will be triggered if the device goes into showtime. The same applies to lost showtime as well. In compare to the ptm driver, this changeset isn't strictly required, since the "not in showtime" message is limited to the debug loglevel. But it reduces the amount of ppp related messages significant. Signed-off-by: Mathias Kresin <openwrt@kresin.me> SVN-Revision: 47916
* kernel: remove lantiq specific ATM API hacks and their kernel space users ↵Felix Fietkau2015-09-171-0/+10
| | | | | | | | (fixes #20523) Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 46984
* lantiq: Make ATM and PTM drivers compatible with kernel 4.1John Crispin2015-07-071-0/+4
| | | | | | Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> SVN-Revision: 46218
* lantiq: fix atm compileJohn Crispin2014-01-121-2/+0
| | | | | | | | https://dev.openwrt.org/ticket/14633 Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 39226
* packages: clean up the package folderJohn Crispin2013-06-2123-0/+8074
Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 37007