svn_rev_006
remove modem support. It's scattered all over the place
This commit is contained in:
parent
2276b77b89
commit
fd7bed4a6e
18
README
18
README
|
@ -1686,24 +1686,6 @@ The following options need to be configured:
|
|||
|
||||
-1 common/env_common.c Environment has a bad CRC, using default
|
||||
|
||||
|
||||
Modem Support:
|
||||
--------------
|
||||
|
||||
[so far only for SMDK2400 and TRAB boards]
|
||||
|
||||
- Modem support endable:
|
||||
CONFIG_MODEM_SUPPORT
|
||||
|
||||
- RTS/CTS Flow control enable:
|
||||
CONFIG_HWFLOW
|
||||
|
||||
- Modem debug support:
|
||||
CONFIG_MODEM_SUPPORT_DEBUG
|
||||
|
||||
Enables debugging stuff (char screen[1024], dbg())
|
||||
for modem support. Useful only with BDI2000.
|
||||
|
||||
- Interrupt support (PPC):
|
||||
|
||||
There are common interrupt_init() and timer_interrupt()
|
||||
|
|
|
@ -121,19 +121,6 @@ int hwflow_onoff(int on)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
static int be_quiet = 0;
|
||||
void disable_putc(void)
|
||||
{
|
||||
be_quiet = 1;
|
||||
}
|
||||
|
||||
void enable_putc(void)
|
||||
{
|
||||
be_quiet = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Output a single byte to the serial port.
|
||||
|
@ -141,10 +128,6 @@ void enable_putc(void)
|
|||
void serial_putc (const char c)
|
||||
{
|
||||
S3C24X0_UART * const uart = S3C24X0_GetBase_UART(UART_NR);
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
if (be_quiet)
|
||||
return;
|
||||
#endif
|
||||
|
||||
/* wait for room in the tx FIFO */
|
||||
while (!(uart->UTRSTAT & 0x2));
|
||||
|
|
|
@ -124,19 +124,6 @@ int hwflow_onoff(int on)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
static int be_quiet = 0;
|
||||
void disable_putc(void)
|
||||
{
|
||||
be_quiet = 1;
|
||||
}
|
||||
|
||||
void enable_putc(void)
|
||||
{
|
||||
be_quiet = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Output a single byte to the serial port.
|
||||
|
@ -145,11 +132,6 @@ void serial_putc (const char c)
|
|||
{
|
||||
lh7a40x_uart_t* uart = LH7A40X_UART_PTR(UART_CONSOLE);
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
if (be_quiet)
|
||||
return;
|
||||
#endif
|
||||
|
||||
/* wait for room in the tx FIFO */
|
||||
while (!(uart->status & UART_TXFE));
|
||||
|
||||
|
|
|
@ -271,11 +271,6 @@ smc_putc(const char c)
|
|||
volatile immap_t *im = (immap_t *)CFG_IMMR;
|
||||
volatile cpm8xx_t *cpmp = &(im->im_cpm);
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
if (gd->be_quiet)
|
||||
return;
|
||||
#endif
|
||||
|
||||
if (c == '\n')
|
||||
smc_putc ('\r');
|
||||
|
||||
|
@ -554,11 +549,6 @@ scc_putc(const char c)
|
|||
volatile immap_t *im = (immap_t *)CFG_IMMR;
|
||||
volatile cpm8xx_t *cpmp = &(im->im_cpm);
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
if (gd->be_quiet)
|
||||
return;
|
||||
#endif
|
||||
|
||||
if (c == '\n')
|
||||
scc_putc ('\r');
|
||||
|
||||
|
@ -646,12 +636,6 @@ struct serial_device serial_scc_device =
|
|||
|
||||
#endif /* CONFIG_8xx_CONS_SCCx */
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
void disable_putc(void)
|
||||
{
|
||||
gd->be_quiet = 1;
|
||||
}
|
||||
|
||||
void enable_putc(void)
|
||||
{
|
||||
gd->be_quiet = 0;
|
||||
|
|
102
lib_arm/board.c
102
lib_arm/board.c
|
@ -115,9 +115,6 @@ static int display_banner (void)
|
|||
printf ("\n\n%s\n\n", version_string);
|
||||
debug ("U-Boot code: %08lX -> %08lX BSS: -> %08lX\n",
|
||||
_armboot_start, _bss_start, _bss_end);
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
debug ("Modem Support enabled\n");
|
||||
#endif
|
||||
#ifdef CONFIG_USE_IRQ
|
||||
debug ("IRQ Stack: %08lx\n", IRQ_STACK_START);
|
||||
debug ("FIQ Stack: %08lx\n", FIQ_STACK_START);
|
||||
|
@ -370,102 +367,3 @@ void hang (void)
|
|||
puts ("### ERROR ### Please RESET the board ###\n");
|
||||
for (;;);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
static inline void mdm_readline(char *buf, int bufsiz);
|
||||
|
||||
/* called from main loop (common/main.c) */
|
||||
extern void dbg(const char *fmt, ...);
|
||||
int mdm_init (void)
|
||||
{
|
||||
char env_str[16];
|
||||
char *init_str;
|
||||
int i;
|
||||
extern char console_buffer[];
|
||||
extern void enable_putc(void);
|
||||
extern int hwflow_onoff(int);
|
||||
|
||||
enable_putc(); /* enable serial_putc() */
|
||||
|
||||
#ifdef CONFIG_HWFLOW
|
||||
init_str = getenv("mdm_flow_control");
|
||||
if (init_str && (strcmp(init_str, "rts/cts") == 0))
|
||||
hwflow_onoff (1);
|
||||
else
|
||||
hwflow_onoff(-1);
|
||||
#endif
|
||||
|
||||
for (i = 1;;i++) {
|
||||
sprintf(env_str, "mdm_init%d", i);
|
||||
if ((init_str = getenv(env_str)) != NULL) {
|
||||
serial_puts(init_str);
|
||||
serial_puts("\n");
|
||||
for(;;) {
|
||||
mdm_readline(console_buffer, CFG_CBSIZE);
|
||||
dbg("ini%d: [%s]", i, console_buffer);
|
||||
|
||||
if ((strcmp(console_buffer, "OK") == 0) ||
|
||||
(strcmp(console_buffer, "ERROR") == 0)) {
|
||||
dbg("ini%d: cmd done", i);
|
||||
break;
|
||||
} else /* in case we are originating call ... */
|
||||
if (strncmp(console_buffer, "CONNECT", 7) == 0) {
|
||||
dbg("ini%d: connect", i);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
} else
|
||||
break; /* no init string - stop modem init */
|
||||
|
||||
udelay(100000);
|
||||
}
|
||||
|
||||
udelay(100000);
|
||||
|
||||
/* final stage - wait for connect */
|
||||
for(;i > 1;) { /* if 'i' > 1 - wait for connection
|
||||
message from modem */
|
||||
mdm_readline(console_buffer, CFG_CBSIZE);
|
||||
dbg("ini_f: [%s]", console_buffer);
|
||||
if (strncmp(console_buffer, "CONNECT", 7) == 0) {
|
||||
dbg("ini_f: connected");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 'inline' - We have to do it fast */
|
||||
static inline void mdm_readline(char *buf, int bufsiz)
|
||||
{
|
||||
char c;
|
||||
char *p;
|
||||
int n;
|
||||
|
||||
n = 0;
|
||||
p = buf;
|
||||
for(;;) {
|
||||
c = serial_getc();
|
||||
|
||||
/* dbg("(%c)", c); */
|
||||
|
||||
switch(c) {
|
||||
case '\r':
|
||||
break;
|
||||
case '\n':
|
||||
*p = '\0';
|
||||
return;
|
||||
|
||||
default:
|
||||
if(n++ > bufsiz) {
|
||||
*p = '\0';
|
||||
return; /* sanity check */
|
||||
}
|
||||
*p = c;
|
||||
p++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif /* CONFIG_MODEM_SUPPORT */
|
||||
|
|
|
@ -684,13 +684,6 @@ void board_init_r (gd_t *id, ulong dest_addr)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
{
|
||||
extern int do_mdm_init;
|
||||
do_mdm_init = gd->do_mdm_init;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_WATCHDOG
|
||||
/* disable watchdog if environment is set */
|
||||
if ((s = getenv ("watchdog")) != NULL) {
|
||||
|
|
108
lib_ppc/board.c
108
lib_ppc/board.c
|
@ -1077,13 +1077,6 @@ void board_init_r (gd_t *id, ulong dest_addr)
|
|||
kbd_init();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
{
|
||||
extern int do_mdm_init;
|
||||
do_mdm_init = gd->do_mdm_init;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Initialization complete - start the monitor */
|
||||
|
||||
/* main_loop() can return to retry autoboot, if so just run it again. */
|
||||
|
@ -1103,104 +1096,3 @@ void hang (void)
|
|||
#endif
|
||||
for (;;);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MODEM_SUPPORT
|
||||
/* called from main loop (common/main.c) */
|
||||
/* 'inline' - We have to do it fast */
|
||||
static inline void mdm_readline(char *buf, int bufsiz)
|
||||
{
|
||||
char c;
|
||||
char *p;
|
||||
int n;
|
||||
|
||||
n = 0;
|
||||
p = buf;
|
||||
for(;;) {
|
||||
c = serial_getc();
|
||||
|
||||
/* dbg("(%c)", c); */
|
||||
|
||||
switch(c) {
|
||||
case '\r':
|
||||
break;
|
||||
case '\n':
|
||||
*p = '\0';
|
||||
return;
|
||||
|
||||
default:
|
||||
if(n++ > bufsiz) {
|
||||
*p = '\0';
|
||||
return; /* sanity check */
|
||||
}
|
||||
*p = c;
|
||||
p++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extern void dbg(const char *fmt, ...);
|
||||
int mdm_init (void)
|
||||
{
|
||||
char env_str[16];
|
||||
char *init_str;
|
||||
int i;
|
||||
extern char console_buffer[];
|
||||
extern void enable_putc(void);
|
||||
extern int hwflow_onoff(int);
|
||||
|
||||
enable_putc(); /* enable serial_putc() */
|
||||
|
||||
#ifdef CONFIG_HWFLOW
|
||||
init_str = getenv("mdm_flow_control");
|
||||
if (init_str && (strcmp(init_str, "rts/cts") == 0))
|
||||
hwflow_onoff (1);
|
||||
else
|
||||
hwflow_onoff(-1);
|
||||
#endif
|
||||
|
||||
for (i = 1;;i++) {
|
||||
sprintf(env_str, "mdm_init%d", i);
|
||||
if ((init_str = getenv(env_str)) != NULL) {
|
||||
serial_puts(init_str);
|
||||
serial_puts("\n");
|
||||
for(;;) {
|
||||
mdm_readline(console_buffer, CFG_CBSIZE);
|
||||
dbg("ini%d: [%s]", i, console_buffer);
|
||||
|
||||
if ((strcmp(console_buffer, "OK") == 0) ||
|
||||
(strcmp(console_buffer, "ERROR") == 0)) {
|
||||
dbg("ini%d: cmd done", i);
|
||||
break;
|
||||
} else /* in case we are originating call ... */
|
||||
if (strncmp(console_buffer, "CONNECT", 7) == 0) {
|
||||
dbg("ini%d: connect", i);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
} else
|
||||
break; /* no init string - stop modem init */
|
||||
|
||||
udelay(100000);
|
||||
}
|
||||
|
||||
udelay(100000);
|
||||
|
||||
/* final stage - wait for connect */
|
||||
for(;i > 1;) { /* if 'i' > 1 - wait for connection
|
||||
message from modem */
|
||||
mdm_readline(console_buffer, CFG_CBSIZE);
|
||||
dbg("ini_f: [%s]", console_buffer);
|
||||
if (strncmp(console_buffer, "CONNECT", 7) == 0) {
|
||||
dbg("ini_f: connected");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
|
|
Loading…
Reference in New Issue