Exemplo n.º 1
0
/**
 *
 * This routine initializes the console IO driver.
 *
 * Parameters
 * @param major major number
 * @param minor minor number
 *
 * Output parameters:  NONE
 *
 * @return void
 */
rtems_device_driver console_initialize(rtems_device_major_number major,
    rtems_device_minor_number minor,
    void *arg) {
  rtems_status_code status = RTEMS_NOT_DEFINED;
#if CONSOLE_USE_INTERRUPTS
  int               i      = 0;
#endif

  status = bfin_uart_initialize(major, &config);
  if (status != RTEMS_SUCCESSFUL) {
    rtems_fatal_error_occurred(status);
  }

#if CONSOLE_USE_INTERRUPTS
  for (i = 0; i < sizeof(bfinUARTISRs) / sizeof(bfinUARTISRs[0]); i++) {
    bfin_interrupt_register(&bfinUARTISRs[i]);
#if INTERRUPT_USE_TABLE
#else
    bfin_interrupt_enable(&bfinUARTISRs[i], 1);
#endif
  }
#endif

  return RTEMS_SUCCESSFUL;
}
Exemplo n.º 2
0
int bf537Stamp_network_driver_attach(struct rtems_bsdnet_ifconfig *config,
                                     int attaching) {
  int result;
  int i;

  result = bfin_ethernet_driver_attach(config, attaching, &ethConfig);
  for (i = 0; i < sizeof(ethISRs) / sizeof(ethISRs[0]); i++) {
    bfin_interrupt_register(&ethISRs[i]);
    bfin_interrupt_enable(&ethISRs[i], TRUE);
  }

  return result;
}