aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo-bts-sysmo/l1_transp_hw.c
AgeCommit message (Collapse)AuthorFilesLines
2013-06-24sysmobts: Read multiple primitives at once but only up to 3Holger Hans Peter Freyther1-25/+56
In most cases there are multiple messages ready to be read from the queue and it is more efficient to read them in one go instead of going through the select again.
2013-06-24sysmobts: Use writev for the outgoing data of the write queueHolger Hans Peter Freyther1-0/+69
Attempt to write multiple primitives at the same time instead of the select/write, select/write that is currently done. The queue size is big enough to hold several entries at the same time and it is unlikely we get the -EAGAIN from the kernel driver. The writev code works by assuming that each element in the queue has the same size. This is not verified by the code and if this assumption breaks at some point the code will drop primitives or send some twice.
2012-12-22misc: Fix compilation on debian stable with GCC 4.4.5Holger Hans Peter Freyther1-2/+2
l1_transp_hw.c:89: error: redefinition of typedef 'dummyprim' l1_transp_hw.c:88: note: previous declaration of 'dummyprim' was here
2012-07-26sysmobts: Support older firmware on the RevB hardwareHolger Hans Peter Freyther1-1/+7
For the firmware used on RevB the GsmL1_Prim_t was bigger than the femtobts control structure. Solve it by introducing a macro that will select the biggest size and use this macro. This is a follow up fix for 08fce19cfce84432fbf8293318486a96437a3427.
2012-07-19Allow L1 forward proxy to provide all 4 queues to seperate applicationsAndreas Eversberg1-65/+51
Different applications can now connect to L1 forward proxy or access DSP directly, if they use different message queues.
2012-07-19Allocate correct message size for L1 primitivesAndreas Eversberg1-1/+1
This is required for using firmware v2.4
2012-05-31sysmobts: fix double-free if msgq cannot be openedHarald Welte1-4/+3
2012-05-13sysmobts l1: make sure to read messages of arbitrary sizeHarald Welte1-1/+7
... and warn if the size is not what we expect. This is required to work with sysmobts-v2 firmware >= v2.1, as the SuperFemto_Prim_t is now larger than the GsmL1_Prim_t.
2012-04-28sysmo-bts: Use HW_SYSMOBTS_V1 to select the development hardwareHolger Hans Peter Freyther1-4/+4
2012-04-14femtobts: The separate pdch/tch queues are not available in the old firmwareHolger Hans Peter Freyther1-1/+7
The old firmware does not expose separate queues for PDCH and TCH. The change appears to be too intrusive and I will try to find a more elegant solution.
2012-04-14femtobts: Use HW_FEMTOBTS instead of HW_VERSION_1 to select femtobtsHolger Hans Peter Freyther1-1/+1
Our header files use HW_FEMTOBTS guards to select the older femtobts design. Use the same macro in the bts code.
2012-04-12misc: Address a compiler warning and add an assert to a branchHolger Hans Peter Freyther1-0/+7
The compiler can not know that the "int priv_nr" will hold the enum values of the write queue, add a default branch and add a warning and an assert there. l1_transp_hw.c:108:1: warning: control reaches end of non-void function [-Wreturn-type]
2012-03-15update to new "superfemto.h" header file namingHarald Welte1-1/+1
2012-03-07prepare for splitting L1 queue into signalling/tch/pdtchHarald Welte1-3/+23
We don't use multiple queues yet, but we very well might end up using them soon.
2011-06-27re-work original osmo-bts with support for sysmocom femtobtsHarald Welte1-0/+192
This code re-works osmo-bts to add support for the upcoming sysmocom BTS. It also tries to add some level of abstraction between the generic part of a BTS (A-bis, RSL, OML, data structures, paging scheduling, BCCH/AGCH scheduling, etc.) and the actual hardware-specific bits. The hardware-specific bits are currently only implemented for the sysmocom femtobts, but should be (re-)added for osmocom-bb, as well as a virtual BTS for simulation purpose later. The sysmocom bts specific parts require hardware-specific header files which are (at least currently) not publicly distributed.