From 57e9300142ff1c4f8df30c2d0b2dc643b63243f4 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Mon, 22 Mar 2010 09:59:57 +0100 Subject: ipa-firmware: Remove the part_length from the struct sdp_firmware * The length of the table is not at a fixed position. We will need to read the offset, seek there, read the data, convert it to the host endianes. * Prepare the code to work with offsets of 0... --- openbsc/include/openbsc/ipaccess.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'openbsc/include/openbsc') diff --git a/openbsc/include/openbsc/ipaccess.h b/openbsc/include/openbsc/ipaccess.h index 904a9627b..f34cfbd79 100644 --- a/openbsc/include/openbsc/ipaccess.h +++ b/openbsc/include/openbsc/ipaccess.h @@ -69,8 +69,7 @@ struct sdp_firmware { char date[14]; char text2[10]; char version[20]; - u_int8_t dummy[2]; - u_int16_t part_length; + u_int16_t table_offset; /* stuff i don't know */ } __attribute__((packed)); -- cgit v1.2.3 From 38722cca48771a791c08bd4911c208520e4eb627 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Mon, 22 Mar 2010 11:22:54 +0100 Subject: ipa-firmware: Write the firmware parts to a file The first non working version to dump the content of the sdp to the terminal.. --- openbsc/include/openbsc/ipaccess.h | 1 + 1 file changed, 1 insertion(+) (limited to 'openbsc/include/openbsc') diff --git a/openbsc/include/openbsc/ipaccess.h b/openbsc/include/openbsc/ipaccess.h index f34cfbd79..86248aae5 100644 --- a/openbsc/include/openbsc/ipaccess.h +++ b/openbsc/include/openbsc/ipaccess.h @@ -89,6 +89,7 @@ struct sdp_header_entry { struct sdp_header_item { struct sdp_header_entry header_entry; struct llist_head entry; + off_t absolute_offset; }; struct sdp_header { -- cgit v1.2.3 From 97a282b037408438a876af81e2e9c5194c2bb69e Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 14 Mar 2010 15:37:43 +0800 Subject: Create new gprs-conf branch with the non-SGSN part of the gprs branch This new gprs-conf branch is intended to contain everything needed to configure GPRS in the nanoBTS, but without implementing the SGSN/GGSN functionality. The SGSN/GGSN development will happen in a branch based on this branch called "gprs-sgsn" --- openbsc/include/openbsc/abis_nm.h | 1 + openbsc/include/openbsc/gsm_data.h | 13 +++++++++++++ 2 files changed, 14 insertions(+) (limited to 'openbsc/include/openbsc') diff --git a/openbsc/include/openbsc/abis_nm.h b/openbsc/include/openbsc/abis_nm.h index cff91e0a0..45307e3c8 100644 --- a/openbsc/include/openbsc/abis_nm.h +++ b/openbsc/include/openbsc/abis_nm.h @@ -154,6 +154,7 @@ int abis_nm_ipaccess_set_attr(struct gsm_bts *bts, u_int8_t obj_class, u_int8_t *attr, u_int8_t attr_len); int abis_nm_ipaccess_rsl_connect(struct gsm_bts_trx *trx, u_int32_t ip, u_int16_t port, u_int8_t stream); +void abis_nm_ipaccess_cgi(u_int8_t *buf, struct gsm_bts *bts); int ipac_parse_bcch_info(struct ipac_bcch_info *binf, u_int8_t *buf); const char *ipacc_testres_name(u_int8_t res); diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index db3eaff59..1c18c55d9 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -374,6 +374,7 @@ struct gsm_envabtse { struct gsm_bts_gprs_nsvc { struct gsm_bts *bts; int id; + u_int16_t nsvci; struct gsm_nm_state nm_state; }; @@ -467,8 +468,10 @@ struct gsm_bts { } nse; struct { struct gsm_nm_state nm_state; + u_int16_t bvci; } cell; struct gsm_bts_gprs_nsvc nsvc[2]; + u_int8_t rac; } gprs; /* transceivers */ @@ -681,6 +684,16 @@ const char *rrlp_mode_name(enum rrlp_mode mode); void gsm_trx_lock_rf(struct gsm_bts_trx *trx, int locked); +/* A parsed GPRS routing area */ +struct gprs_ra_id { + u_int16_t mnc; + u_int16_t mcc; + u_int16_t lac; + u_int8_t rac; +}; + +int gsm48_ra_id_by_bts(u_int8_t *buf, struct gsm_bts *bts); +void gprs_ra_id_by_bts(struct gprs_ra_id *raid, struct gsm_bts *bts); struct gsm_meas_rep *lchan_next_meas_rep(struct gsm_lchan *lchan); int gsm_bts_model_register(struct gsm_bts_model *model); -- cgit v1.2.3 From af387633db31059973e0ba59729802203b229248 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 14 Mar 2010 23:30:30 +0800 Subject: GPRS: make NSVC parameters VTY-configurable --- openbsc/include/openbsc/gsm_data.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'openbsc/include/openbsc') diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index 1c18c55d9..18d557b39 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -375,6 +375,9 @@ struct gsm_bts_gprs_nsvc { struct gsm_bts *bts; int id; u_int16_t nsvci; + u_int16_t local_port; + u_int16_t remote_port; + u_int32_t remote_ip; struct gsm_nm_state nm_state; }; @@ -463,6 +466,7 @@ struct gsm_bts { /* Not entirely sure how ip.access specific this is */ struct { + int enabled; struct { struct gsm_nm_state nm_state; } nse; -- cgit v1.2.3 From a5731cffc4b07a85a5a6c82cf6bc223baab7cd0c Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Mon, 22 Mar 2010 11:48:36 +0800 Subject: GPRS: make NSEI configurable from VTY --- openbsc/include/openbsc/gsm_data.h | 1 + 1 file changed, 1 insertion(+) (limited to 'openbsc/include/openbsc') diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index 18d557b39..88e7f16c3 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -469,6 +469,7 @@ struct gsm_bts { int enabled; struct { struct gsm_nm_state nm_state; + u_int16_t nsei; } nse; struct { struct gsm_nm_state nm_state; -- cgit v1.2.3