OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_47/] [or1ksim/] [peripheral/] [16450.c] - Diff between revs 1359 and 1366

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 1359 Rev 1366
Line 236... Line 236...
  debug(4, " = %"PRIx8"\n", value);
  debug(4, " = %"PRIx8"\n", value);
  return value;
  return value;
}
}
 
 
/* Function that handles incoming VAPI data.  */
/* Function that handles incoming VAPI data.  */
void uart_vapi_read (unsigned long id, unsigned long data)
void uart_vapi_read (unsigned long id, unsigned long data, void *dat)
{
{
  int uart;
  int uart;
  debug(4, "UART: id %08lx, data %08lx\n", id, data);
  debug(4, "UART: id %08lx, data %08lx\n", id, data);
  uart = id & VAPI_DEVICE_ID;
  uart = id & VAPI_DEVICE_ID;
  uarts[uart].vapi_buf[uarts[uart].vapi_buf_head_ptr] = data;
  uarts[uart].vapi_buf[uarts[uart].vapi_buf_head_ptr] = data;
Line 587... Line 587...
    if (config.uarts[i].vapi_id) {
    if (config.uarts[i].vapi_id) {
      if ((config.uarts[i].vapi_id & VAPI_DEVICE_ID) != i) {
      if ((config.uarts[i].vapi_id & VAPI_DEVICE_ID) != i) {
        fprintf (stderr, "ERROR: Wrong vapi_id (0x%lx) for uart %i, last byte is required to be %02x; ignoring.\n", config.uarts[i].vapi_id, i, i);
        fprintf (stderr, "ERROR: Wrong vapi_id (0x%lx) for uart %i, last byte is required to be %02x; ignoring.\n", config.uarts[i].vapi_id, i, i);
        config.uarts[i].vapi_id = 0;
        config.uarts[i].vapi_id = 0;
      } else {
      } else {
        vapi_install_handler (config.uarts[i].vapi_id, uart_vapi_read);
        vapi_install_handler (config.uarts[i].vapi_id, uart_vapi_read, NULL);
        register_memoryarea(config.uarts[i].baseaddr, UART_ADDR_SPACE, 1, 0, uart_read_byte, uart_write_byte, NULL);
        register_memoryarea(config.uarts[i].baseaddr, UART_ADDR_SPACE, 1, 0, uart_read_byte, uart_write_byte, NULL);
      }
      }
    } else if (config.uarts[i].channel[0]) { /* MM: Try to create stream.  */
    } else if (config.uarts[i].channel[0]) { /* MM: Try to create stream.  */
      if(channels[i])
      if(channels[i])
        channel_close(channels[i]);
        channel_close(channels[i]);

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.