libhd  5.0
Data Structures | Macros | Functions | Variables

Modem detection functions. More...

Data Structures

struct  speeds_s
 

Macros

#define MAX_SPEED   (sizeof speeds / sizeof *speeds)
 
#define MAX_INIT_STRING   (sizeof init_strings / sizeof *init_strings)
 

Functions

static void get_serial_modem (hd_data_t *hd_data)
 
static void add_serial_modem (hd_data_t *hd_data)
 
static int dev_name_duplicate (hd_data_t *hd_data, char *dev_name)
 
static void guess_modem_name (hd_data_t *hd_data, ser_device_t *sm)
 
static void at_cmd (hd_data_t *hd_data, char *at, int raw, int log_it)
 
static void write_modem (hd_data_t *hd_data, char *msg)
 
static void read_modem (hd_data_t *hd_data)
 
static ser_device_tadd_ser_modem_entry (ser_device_t **sm, ser_device_t *new_sm)
 
static int set_modem_speed (ser_device_t *sm, unsigned baud)
 
static int init_modem (ser_device_t *mi)
 
static unsigned chk4id (ser_device_t *mi)
 
static void dump_ser_modem_data (hd_data_t *hd_data)
 
void hd_scan_modem (hd_data_t *hd_data)
 
int check_for_responce (str_list_t *str_list, char *str, int len)
 
str_list_tstr_list_dup (str_list_t *orig)
 
int is_pnpinfo (ser_device_t *mi, int ofs)
 

Variables

static struct speeds_s speeds []
 
static char * init_strings []
 

Detailed Description

Modem detection functions.

Note: what about modem speed?

Macro Definition Documentation

◆ MAX_INIT_STRING

#define MAX_INIT_STRING   (sizeof init_strings / sizeof *init_strings)

Referenced by get_serial_modem().

◆ MAX_SPEED

#define MAX_SPEED   (sizeof speeds / sizeof *speeds)

Function Documentation

◆ add_ser_modem_entry()

ser_device_t * add_ser_modem_entry ( ser_device_t **  sm,
ser_device_t new_sm 
)
static

References s_ser_device_t::next.

Referenced by get_serial_modem().

◆ add_serial_modem()

void add_serial_modem ( hd_data_t hd_data)
static

◆ at_cmd()

void at_cmd ( hd_data_t hd_data,
char *  at,
int  raw,
int  log_it 
)
static

◆ check_for_responce()

int check_for_responce ( str_list_t str_list,
char *  str,
int  len 
)

References s_str_list_t::next, and s_str_list_t::str.

Referenced by get_serial_modem().

◆ chk4id()

unsigned chk4id ( ser_device_t mi)
static

◆ dev_name_duplicate()

int dev_name_duplicate ( hd_data_t hd_data,
char *  dev_name 
)
static

◆ dump_ser_modem_data()

void dump_ser_modem_data ( hd_data_t hd_data)
static

◆ get_serial_modem()

void get_serial_modem ( hd_data_t hd_data)
static

◆ guess_modem_name()

void guess_modem_name ( hd_data_t hd_data,
ser_device_t sm 
)
static

◆ hd_scan_modem()

void hd_scan_modem ( hd_data_t hd_data)

◆ init_modem()

int init_modem ( ser_device_t mi)
static

◆ is_pnpinfo()

int is_pnpinfo ( ser_device_t mi,
int  ofs 
)

◆ read_modem()

void read_modem ( hd_data_t hd_data)
static

References hd_data, s_ser_device_t::next, and hd_data_t::ser_modem.

Referenced by at_cmd().

◆ set_modem_speed()

int set_modem_speed ( ser_device_t sm,
unsigned  baud 
)
static

◆ str_list_dup()

str_list_t* str_list_dup ( str_list_t orig)

◆ write_modem()

void write_modem ( hd_data_t hd_data,
char *  msg 
)
static

Variable Documentation

◆ init_strings

char* init_strings[]
static
Initial value:
= {
"Q0 V1 E1",
"S0=0",
"&C1",
"&D2",
"+FCLASS=0"
}

Referenced by get_serial_modem().

◆ speeds

struct speeds_s speeds[]
static
Initial value:
= {
{ 1200, B1200 },
{ 1800, B1800 },
{ 2400, B2400 },
{ 4800, B4800 },
{ 9600, B9600 },
{ 19200, B19200 },
{ 38400, B38400 },
{ 57600, B57600 },
{ 115200, B115200 }
,{ 230400, B230400 }
,{ 460800, B460800 }
,{ 500000, B500000 }
,{ 1000000, B1000000 }
,{ 2000000, B2000000 }
,{ 4000000, B4000000 }
}

Referenced by get_serial_modem(), and set_modem_speed().