From ed5cacb240b846c106f0fc6a3ab8e8721f4c70a5 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Wed, 17 Aug 2011 22:44:07 +0200 Subject: src: port openBSC over libosmo-abis This is a big patch that ports openBSC over libosmo-abis. Sorry, the changes that are included here are all dependent of libosmo-abis, splitting them into smaller pieces would leave the repository in some intermediate state, which is not desired. The main changes are: - The directory libabis/ has been removed as it now lives in libosmo-abis. - new configuration file format for nanoBTS and HSL femto, we need to define the virtual e1_line and attach it to the OML link. - all the existing BTS drivers (nanoBTS, hsl femto, Nokia site, BS11 and rbs2000) now use the new libosmo-abis framework. - use r232 input driver available in libosmo-abis for bs11_config. - use ipa_msg_recv instead of old ipaccess_read_msg function. - delete definition of gsm_e1_subslot and input_signal_data. These structures now lives in libosmo-abis. Most of this patch are deletions of libabis/ which has been moved to libosmo-abis. This patch also modifies openBSC to use all the new definitions available in libosmocore and libosmo-abis. In order to do that, we have replaced the following: - DINP, DMI, DMIB and DMUX by their respective DL* correspondences. - SS_GLOBAL by SS_L_GLOBAL - SS_INPUT by SS_L_INPUT - S_GLOBAL_SHUTDOWN by S_L_GLOBAL_SHUTDOWN - SS_INPUT by SS_L_INPUT - S_INP_* by S_L_INP_* sub-signals - E1INP_NODE by L_E1INP_NODE vty node This patch has been tested with: - one nanoBTS - the HSL femto with the examples available under libosmo-abis - BS11 with both dahdi and misdn drivers. --- openbsc/src/libabis/input/lapd.h | 58 ---------------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 openbsc/src/libabis/input/lapd.h (limited to 'openbsc/src/libabis/input/lapd.h') diff --git a/openbsc/src/libabis/input/lapd.h b/openbsc/src/libabis/input/lapd.h deleted file mode 100644 index dd22028ab..000000000 --- a/openbsc/src/libabis/input/lapd.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef OPENBSC_LAPD_H -#define OPENBSC_LAPD_H - -#include - -#include - -typedef enum { - LAPD_MPH_NONE = 0, - - LAPD_MPH_ACTIVATE_IND, - LAPD_MPH_DEACTIVATE_IND, - - LAPD_DL_DATA_IND, - LAPD_DL_UNITDATA_IND, - -} lapd_mph_type; - -struct lapd_instance { - struct llist_head list; /* list of LAPD instances */ - int network_side; - - void (*transmit_cb)(uint8_t *data, int len, void *cbdata); - void *cbdata; - - struct llist_head tei_list; /* list of TEI in this LAPD instance */ -}; - -enum lapd_recv_errors { - LAPD_ERR_NONE = 0, - LAPD_ERR_BAD_LEN, - LAPD_ERR_BAD_ADDR, - LAPD_ERR_UNKNOWN_S_CMD, - LAPD_ERR_UNKNOWN_U_CMD, - LAPD_ERR_UNKNOWN_TEI, - LAPD_ERR_BAD_CMD, - __LAPD_ERR_MAX -}; - -extern uint8_t *lapd_receive(struct lapd_instance *li, uint8_t *data, - unsigned int len, int *ilen, lapd_mph_type *prim, - int *error); - -extern void lapd_transmit(struct lapd_instance *li, uint8_t tei, uint8_t sapi, - uint8_t *data, unsigned int len); - -struct lapd_instance *lapd_instance_alloc(int network_side, - void (*tx_cb)(uint8_t *data, int len, - void *cbdata), void *cbdata); - - -/* Start a (user-side) SAP for the specified TEI/SAPI on the LAPD instance */ -int lapd_sap_start(struct lapd_instance *li, uint8_t tei, uint8_t sapi); - -/* Stop a (user-side) SAP for the specified TEI/SAPI on the LAPD instance */ -int lapd_sap_stop(struct lapd_instance *li, uint8_t tei, uint8_t sapi); - -#endif /* OPENBSC_LAPD_H */ -- cgit v1.2.3