summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@oarcorp.com>2014-10-09 12:56:18 -0500
committerJoel Sherrill <joel.sherrill@oarcorp.com>2014-10-10 10:17:17 -0500
commit4977f07e6872d7253535a7ec67b153254e1c4088 (patch)
treec70d92497b2b9d60fb0b5e4f89428477f0d9d644 /c/src/lib/libbsp/i386
parentgumstix/include/bsp.h: Do not include libchip/serial to avoid conflicts when ... (diff)
downloadrtems-4977f07e6872d7253535a7ec67b153254e1c4088.tar.bz2
i386/pc386: Eliminate multiple warnings
Diffstat (limited to 'c/src/lib/libbsp/i386')
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/conscfg.c7
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/keyboard.c99
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/outch.c6
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/rtd316.c3
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/rtd316.h24
-rw-r--r--c/src/lib/libbsp/i386/pc386/ide/ide.c2
-rw-r--r--c/src/lib/libbsp/i386/pc386/include/bsp.h6
-rw-r--r--c/src/lib/libbsp/i386/pc386/startup/bspstart.c3
-rw-r--r--c/src/lib/libbsp/i386/pc386/timer/timer.c39
-rw-r--r--c/src/lib/libbsp/i386/shared/comm/i386-stub.c12
10 files changed, 122 insertions, 79 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/console/conscfg.c b/c/src/lib/libbsp/i386/pc386/console/conscfg.c
index f9ed5d8c2f..f0295ef29e 100644
--- a/c/src/lib/libbsp/i386/pc386/console/conscfg.c
+++ b/c/src/lib/libbsp/i386/pc386/console/conscfg.c
@@ -5,7 +5,7 @@
*/
/*
- * COPYRIGHT (c) 1989-2011.
+ * COPYRIGHT (c) 1989-2014.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -21,6 +21,7 @@
#include "vgacons.h"
#include <bsp/irq.h>
#include <rtems/pci.h>
+#include <bsp/rtd316.h>
#define VGA_CONSOLE_FUNCTIONS &vgacons_fns
#if 0
@@ -39,7 +40,7 @@
#define CLOCK_RATE (115200 * 16)
-uint8_t com_get_register(uint32_t addr, uint8_t i)
+static uint8_t com_get_register(uint32_t addr, uint8_t i)
{
register uint8_t val;
@@ -47,7 +48,7 @@ uint8_t com_get_register(uint32_t addr, uint8_t i)
return val;
}
-void com_set_register(uint32_t addr, uint8_t i, uint8_t val)
+static void com_set_register(uint32_t addr, uint8_t i, uint8_t val)
{
outport_byte( (addr + i),val );
}
diff --git a/c/src/lib/libbsp/i386/pc386/console/keyboard.c b/c/src/lib/libbsp/i386/pc386/console/keyboard.c
index 271c5e3759..3a33c54acc 100644
--- a/c/src/lib/libbsp/i386/pc386/console/keyboard.c
+++ b/c/src/lib/libbsp/i386/pc386/console/keyboard.c
@@ -28,7 +28,7 @@
#define KBD_DEFLOCK 0
#endif
-int set_bit(int nr, unsigned long * addr)
+static int set_bit(int nr, unsigned long * addr)
{
int mask;
int retval;
@@ -43,7 +43,7 @@ int set_bit(int nr, unsigned long * addr)
return retval;
}
-int clear_bit(int nr, unsigned long * addr)
+static int clear_bit(int nr, unsigned long * addr)
{
int mask;
int retval;
@@ -58,7 +58,7 @@ int clear_bit(int nr, unsigned long * addr)
return retval;
}
-int test_bit(int nr, unsigned long * addr)
+static int test_bit(int nr, unsigned long * addr)
{
int mask;
@@ -167,19 +167,20 @@ static int sysrq_pressed;
* string, and in both cases we might assume that it is
* in utf-8 already.
*/
-void to_utf8(ushort c) {
- if (c < 0x80)
- put_queue(c); /* 0******* */
- else if (c < 0x800) {
- put_queue(0xc0 | (c >> 6)); /* 110***** 10****** */
- put_queue(0x80 | (c & 0x3f));
- } else {
- put_queue(0xe0 | (c >> 12)); /* 1110**** 10****** 10****** */
- put_queue(0x80 | ((c >> 6) & 0x3f));
- put_queue(0x80 | (c & 0x3f));
- }
- /* UTF-8 is defined for words of up to 31 bits,
- but we need only 16 bits here */
+static void to_utf8(ushort c)
+{
+ if (c < 0x80)
+ put_queue(c); /* 0******* */
+ else if (c < 0x800) {
+ put_queue(0xc0 | (c >> 6)); /* 110***** 10****** */
+ put_queue(0x80 | (c & 0x3f));
+ } else {
+ put_queue(0xe0 | (c >> 12)); /* 1110**** 10****** 10****** */
+ put_queue(0x80 | ((c >> 6) & 0x3f));
+ put_queue(0x80 | (c & 0x3f));
+ }
+ /* UTF-8 is defined for words of up to 31 bits,
+ but we need only 16 bits here */
}
/*
@@ -333,20 +334,19 @@ void handle_scancode(unsigned char scancode, int down)
static void ( *driver_input_handler_kbd )( void *, unsigned short, unsigned long ) = 0;
/*
*/
-void kbd_set_driver_handler( void ( *handler )( void *, unsigned short, unsigned long ) )
+void kbd_set_driver_handler(
+ void ( *handler )( void *, unsigned short, unsigned long )
+)
{
driver_input_handler_kbd = handler;
}
static void put_queue(int ch)
{
- if( driver_input_handler_kbd )
- {
- driver_input_handler_kbd( ( void *)kbd, (unsigned short)ch, 0 );
- }
- else
- {
- add_to_queue( ch );
+ if ( driver_input_handler_kbd ) {
+ driver_input_handler_kbd( ( void *)kbd, (unsigned short)ch, 0 );
+ } else {
+ add_to_queue( ch );
}
}
@@ -377,7 +377,6 @@ static void enter(void)
if (vc_kbd_mode(kbd,VC_CRLF))
put_queue(10);
-
}
static void caps_toggle(void)
@@ -403,12 +402,10 @@ static void hold(void)
if (rep )
return;
chg_vc_kbd_led(kbd, VC_SCROLLOCK );
-
}
static void num(void)
{
-
if (vc_kbd_mode(kbd,VC_APPLIC))
applkey('P', 1);
else
@@ -771,39 +768,45 @@ static unsigned char ledstate = 0xff; /* undefined */
static unsigned char ledioctl;
unsigned char getledstate(void) {
- return ledstate;
+ return ledstate;
}
void setledstate(struct kbd_struct *kbd, unsigned int led) {
- if (!(led & ~7)) {
- ledioctl = led;
- kbd->ledmode = LED_SHOW_IOCTL;
- } else
+ if (!(led & ~7)) {
+ ledioctl = led;
+ kbd->ledmode = LED_SHOW_IOCTL;
+ } else
;
- kbd->ledmode = LED_SHOW_FLAGS;
- set_leds();
+ kbd->ledmode = LED_SHOW_FLAGS;
+ set_leds();
}
static struct ledptr {
- unsigned int *addr;
- unsigned int mask;
- unsigned char valid:1;
+ unsigned int *addr;
+ unsigned int mask;
+ unsigned char valid:1;
} ledptrs[3];
-void register_leds(int console, unsigned int led,
- unsigned int *addr, unsigned int mask) {
- struct kbd_struct *kbd = kbd_table + console;
+void register_leds(
+ int console,
+ unsigned int led,
+ unsigned int *addr,
+ unsigned int mask
+)
+{
+ struct kbd_struct *kbd = kbd_table + console;
- if (led < 3) {
- ledptrs[led].addr = addr;
- ledptrs[led].mask = mask;
- ledptrs[led].valid = 1;
- kbd->ledmode = LED_SHOW_MEM;
- } else
- kbd->ledmode = LED_SHOW_FLAGS;
+ if (led < 3) {
+ ledptrs[led].addr = addr;
+ ledptrs[led].mask = mask;
+ ledptrs[led].valid = 1;
+ kbd->ledmode = LED_SHOW_MEM;
+ } else
+ kbd->ledmode = LED_SHOW_FLAGS;
}
-static inline unsigned char getleds(void){
+static inline unsigned char getleds(void)
+{
struct kbd_struct *kbd = kbd_table + fg_console;
diff --git a/c/src/lib/libbsp/i386/pc386/console/outch.c b/c/src/lib/libbsp/i386/pc386/console/outch.c
index f0c7599939..90ffedf250 100644
--- a/c/src/lib/libbsp/i386/pc386/console/outch.c
+++ b/c/src/lib/libbsp/i386/pc386/console/outch.c
@@ -239,7 +239,7 @@ int ro,co;
return rval;
}
-void
+static void
clear_screen(void)
{
int i,j;
@@ -308,6 +308,10 @@ _IBMPC_initVideo(void)
} /* _IBMPC_initVideo */
/* for old DOS compatibility n-curses type of applications */
+void gotoxy( int x, int y );
+int whereX( void );
+int whereY( void );
+
void gotoxy( int x, int y )
{
gotorc(y,x);
diff --git a/c/src/lib/libbsp/i386/pc386/console/rtd316.c b/c/src/lib/libbsp/i386/pc386/console/rtd316.c
index e27f128d4f..7219ff68b6 100644
--- a/c/src/lib/libbsp/i386/pc386/console/rtd316.c
+++ b/c/src/lib/libbsp/i386/pc386/console/rtd316.c
@@ -7,7 +7,7 @@
*/
/*
- * COPYRIGHT (c) 1989-2012.
+ * COPYRIGHT (c) 1989-2014.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -26,6 +26,7 @@
#include <rtems/bspIo.h>
#include <bsp/rtd316.h>
#include <rtems/score/i386.h>
+#include <rtems/console_private.h>
#define RTD_CLOCK_RATE (460800 * 32)
diff --git a/c/src/lib/libbsp/i386/pc386/console/rtd316.h b/c/src/lib/libbsp/i386/pc386/console/rtd316.h
index 6c3478cc65..aabad2c263 100644
--- a/c/src/lib/libbsp/i386/pc386/console/rtd316.h
+++ b/c/src/lib/libbsp/i386/pc386/console/rtd316.h
@@ -7,7 +7,7 @@
*/
/*
- * COPYRIGHT (c) 1989-2012.
+ * COPYRIGHT (c) 1989-2014.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -47,6 +47,28 @@ rtems_device_driver rtd316_initialize(
void *arg
);
+/**
+ * @brief RTD316 Obtain Register Helper
+ *
+ * This method is used to read registers on the RTD316.
+ *
+ * @param[in] addr is the base address
+ * @param[in] reg is the register number
+ *
+ * @return This method returns the value of the register.
+ */
+uint8_t rtd316_com_get_register(uint32_t addr, uint8_t reg);
+
+/**
+ * @brief RTD316 Set Register Helper
+ *
+ * This method is used to set registers on the RTD316.
+ *
+ * @param[in] addr is the base address
+ * @param[in] reg is the register number
+ */
+void rtd316_com_set_register(uint32_t addr,uint8_t reg, uint8_t val);
+
#ifdef __cplusplus
}
#endif
diff --git a/c/src/lib/libbsp/i386/pc386/ide/ide.c b/c/src/lib/libbsp/i386/pc386/ide/ide.c
index e74a1934b5..73b6df2cc0 100644
--- a/c/src/lib/libbsp/i386/pc386/ide/ide.c
+++ b/c/src/lib/libbsp/i386/pc386/ide/ide.c
@@ -230,6 +230,8 @@ static void pc386_ide_initialize
char* p = &model_number[0];
bool data_ready;
+ (void) cur_multiple_sectors; /* avoid set but not used warning */
+
memset(model_number, 0, sizeof(model_number));
outport_byte(port+IDE_REGISTER_DEVICE_HEAD,
diff --git a/c/src/lib/libbsp/i386/pc386/include/bsp.h b/c/src/lib/libbsp/i386/pc386/include/bsp.h
index ef16b4ade8..7e6d3f39a2 100644
--- a/c/src/lib/libbsp/i386/pc386/include/bsp.h
+++ b/c/src/lib/libbsp/i386/pc386/include/bsp.h
@@ -179,9 +179,15 @@ char _IBMPC_inch (void); /* from 'inch.c' */
char _IBMPC_inch_sleep (void); /* from 'inch.c' */
void Wait_X_ms(unsigned int timeToWait); /* from 'timer.c' */
+void Calibrate_loop_1ms(void); /* from 'timer.c' */
+
+void rtems_irq_mngt_init(void); /* from 'irq_init.c' */
+
+void bsp_size_memory(void); /* from 'bspstart.c' */
void Clock_driver_install_handler(void); /* from 'ckinit.c' */
void Clock_driver_support_initialize_hardware(void); /* from 'ckinit.c' */
+
size_t read_aux(char * buffer, size_t count); /* from 'ps2_mouse.c' */
/* Definitions for BSPConsolePort */
diff --git a/c/src/lib/libbsp/i386/pc386/startup/bspstart.c b/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
index ff67cc7e1b..ebe6b7c390 100644
--- a/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
+++ b/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
@@ -36,9 +36,6 @@
/*
* External routines
*/
-extern void Calibrate_loop_1ms(void);
-extern void rtems_irq_mngt_init(void);
-extern void bsp_size_memory(void);
void Clock_driver_install_handler(void);
/*-------------------------------------------------------------------------+
diff --git a/c/src/lib/libbsp/i386/pc386/timer/timer.c b/c/src/lib/libbsp/i386/pc386/timer/timer.c
index 953db03f8f..541d2e391a 100644
--- a/c/src/lib/libbsp/i386/pc386/timer/timer.c
+++ b/c/src/lib/libbsp/i386/pc386/timer/timer.c
@@ -65,15 +65,16 @@ void Timer_exit(void);
*/
/*
- * Timer cleanup routine at RTEMS exit. NOTE: This routine is
- * not really necessary, since there will be a reset at exit.
+ * Timer cleanup routine at RTEMS exit.
+ *
+ * NOTE: This routine is not really necessary, since there will be
+ * a reset at exit.
*/
-
-void tsc_timer_exit(void)
+static void tsc_timer_exit(void)
{
}
-void tsc_timer_initialize(void)
+static void tsc_timer_initialize(void)
{
static bool First = true;
@@ -86,9 +87,9 @@ void tsc_timer_initialize(void)
}
/*
- *
+ * Read TSC timer value.
*/
-uint32_t tsc_read_timer(void)
+static uint32_t tsc_read_timer(void)
{
register uint32_t total;
@@ -151,16 +152,18 @@ static rtems_raw_irq_connect_data timer_raw_irq_data = {
};
/*
- * Timer cleanup routine at RTEMS exit. NOTE: This routine is
- * not really necessary, since there will be a reset at exit.
- */ void
-i386_timer_exit(void)
+ * Timer cleanup routine at RTEMS exit.
+ *
+ * NOTE: This routine is not really necessary, since there will be
+ * a reset at exit.
+ */
+static void i386_timer_exit(void)
{
i386_delete_idt_entry (&timer_raw_irq_data);
}
extern void rtems_irq_prologue_0(void);
-void i386_timer_initialize(void)
+static void i386_timer_initialize(void)
{
static bool First = true;
@@ -192,7 +195,7 @@ void i386_timer_initialize(void)
/*
* Read hardware timer value.
*/
-uint32_t i386_read_timer(void)
+static uint32_t i386_read_timer(void)
{
register uint32_t total, clicks;
register uint8_t lsb, msb;
@@ -268,7 +271,7 @@ static unsigned short lastLoadedValue;
*
* Returns: Nothing. Loaded value must be a number of clock bits...
*/
-void loadTimerValue( unsigned short loadedValue )
+static void loadTimerValue( unsigned short loadedValue )
{
lastLoadedValue = loadedValue;
outport_byte(TIMER_MODE, TIMER_SEL0|TIMER_16BIT|TIMER_SQWAVE);
@@ -282,7 +285,7 @@ void loadTimerValue( unsigned short loadedValue )
*
* Returns: number of clock bits elapsed since last load.
*/
-unsigned int readTimer0(void)
+static unsigned int readTimer0(void)
{
unsigned short lsb, msb;
unsigned char status;
@@ -302,19 +305,19 @@ unsigned int readTimer0(void)
return (2*lastLoadedValue - count);
}
-void Timer0Reset(void)
+static void Timer0Reset(void)
{
loadTimerValue(0xffff);
readTimer0();
}
-void fastLoop (unsigned int loopCount)
+static void fastLoop (unsigned int loopCount)
{
unsigned int i;
for( i=0; i < loopCount; i++ )outport_byte( SLOW_DOWN_IO, 0 );
}
-void slowLoop (unsigned int loopCount)
+static void slowLoop (unsigned int loopCount)
{
unsigned int j;
for (j=0; j <100 ; j++) {
diff --git a/c/src/lib/libbsp/i386/shared/comm/i386-stub.c b/c/src/lib/libbsp/i386/shared/comm/i386-stub.c
index 578b0189d4..8113d7ed2c 100644
--- a/c/src/lib/libbsp/i386/shared/comm/i386-stub.c
+++ b/c/src/lib/libbsp/i386/shared/comm/i386-stub.c
@@ -607,7 +607,7 @@ set_char (char *addr, int val)
/* return a pointer to the last char put in buf (null) */
/* If MAY_FAULT is non-zero, then we should set mem_err in response to
a fault; if zero treat a fault like any other fault in the stub. */
-char *
+static char *
mem2hex (char *mem, char *buf, int count, int may_fault)
{
int i;
@@ -654,7 +654,7 @@ hex2mem (char *buf, char *mem, int count, int may_fault)
/* this function takes the 386 exception vector and attempts to
translate this number into a unix compatible signal value */
-int
+static int
computeSignal (int exceptionVector)
{
int sigval;
@@ -715,7 +715,7 @@ computeSignal (int exceptionVector)
/* WHILE WE FIND NICE HEX CHARS, BUILD AN INT */
/* RETURN NUMBER OF CHARS PROCESSED */
/**********************************************/
-int
+static int
hexToInt (char **ptr, int *intValue)
{
int numChars = 0;
@@ -742,8 +742,12 @@ hexToInt (char **ptr, int *intValue)
/*
* This function does all command procesing for interfacing to gdb.
+ *
+ * NOTE: This method is called from assembly code so must be marked
+ * as used.
*/
-void
+static void handle_exception (int exceptionVector) __attribute__((used));
+static void
handle_exception (int exceptionVector)
{
int sigval;