⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 syscon_platform_tty.c

📁 一个专门针对mips的bootloader程序源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
}


static UINT32
board_baudrate1_verify_malta_write(
    void *param,
    void *data )
{
    return malta_tty1_on_texas ?
        com_baudrate_verify_write(param, (void *)&serial_baudrate_div_ti16550c ) :
        com_baudrate_verify_write(param, (void *)&serial_baudrate_div_smsc );
}



/************************************************************************
 *  Implementation : Public functions
 ************************************************************************/


/************************************************************************
 *
 *                          syscon_arch_tty_init
 *  Description :
 *  -------------
 *
 *  Initialize platform specific part of SYSCON TTY objects.
 *
 *  Return values :
 *  ---------------
 *
 *  None
 *
 ************************************************************************/
void
syscon_arch_tty_init( void )
{


    syscon_register_id_board( SYSCON_BOARD_TI16C550C_BASE0_ID,
			      /* Atlas */
			      board_ti16c550c_base0_atlas_read, NULL,
			      NULL,				NULL,
			      /* SEAD */
			      board_ti16c550c_base0_sead_read,	NULL,
			      NULL,				NULL,
			      /* Malta */
			      board_ti16c550c_base0_malta_read, NULL,
			      NULL,				NULL,

				  /* Pb1000 - Added 10-30-00 - DWP - NA to Pb1000 */

				  NULL,			   NULL,
			      NULL,				NULL );


    syscon_register_id_board( SYSCON_BOARD_TI16C550C_BASE1_ID,
			      /* Atlas */
			      NULL,				NULL,
			      NULL,				NULL,
			      /* SEAD */
			      board_ti16c550c_base1_sead_read,  NULL,
			      NULL,				NULL,
			      /* Malta */
			      board_ti16c550c_base1_malta_read, NULL,
			      NULL,				NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,				NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_REG_SIZE_ID,
			      /* Atlas (TI16550)   */
			      syscon_uint8_read, &size32,
			      NULL,	         NULL,
			      /* SEAD (TI16550)    */
			      syscon_uint8_read, &size32,
			      NULL,	         NULL,
			      /* Malta (TI16550) */
			      syscon_uint8_read, &size8,
			      NULL,	         NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,	         NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_REG_SIZE_ID,
			      /* Atlas (SAA9730)   */
			      NULL,		          NULL,
			      NULL,			  NULL,
			      /* SEAD (TI16550)    */
			      syscon_uint8_read,          &size32,
			      NULL,			  NULL,
			      /* Malta (TI16550) */
			      board_reg_size1_malta_read, NULL,
			      NULL,	                  NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,	                  NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_REG_SPACING_ID,
			      /* Atlas (TI16550)   */
			      syscon_uint8_read, &size64,
			      NULL,	         NULL,
			      /* SEAD (TI16550)    */
			      syscon_uint8_read, &size64,
			      NULL,	         NULL,
			      /* Malta (TI16550) */
			      syscon_uint8_read, &size8,
			      NULL,	         NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,	         NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_REG_SPACING_ID,
			      /* Atlas (SAA9730)   */
			      NULL,			   NULL,
			      NULL,			   NULL,
			      /* SEAD (TI16550)    */
			      syscon_uint8_read,           &size64,
			      NULL,			   NULL,
			      /* Malta (TI16550) */
			      board_reg_space1_malta_read, NULL,
			      NULL,			   NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,			   NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_IC_IN_USE_ID,
			      /* Atlas   */
			      syscon_true_read,  NULL,
			      NULL,	         NULL,
			      /* SEAD    */
			      syscon_false_read, NULL,
			      NULL,	         NULL,
			      /* Malta */
			      syscon_true_read,  NULL,
			      NULL,	         NULL,

				  /* Pb1000 - Added 10-30-00 - DWP - 
				  The only IC will always be used on Au1000 */

				  NULL,			   NULL,
			      NULL,	         NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_IC_IN_USE_ID,
			      /* Atlas    */
			      syscon_true_read,         NULL,
			      NULL,			NULL,
			      /* SEAD     */
			      syscon_false_read,	NULL,
			      NULL,			NULL,
			      /* Malta  */
			      board_reg_ic1_malta_read, NULL,
			      NULL,	                NULL,

				  /* Pb1000 - Added 10-30-00 - DWP - 
				  The only IC will always be used on Au1000 */

				  NULL,			   NULL,
			      NULL,	                NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_ADJUST_BREAK_ID,
			      /* Atlas   */
			      syscon_true_read,  NULL,
			      NULL,	         NULL,
			      /* SEAD    */
			      syscon_false_read, NULL, 
			      NULL,	         NULL,
			      /* Malta */
			      syscon_true_read,  NULL,
			      NULL,	         NULL,

				  /* Pb1000 - Added 10-30-00 - DWP
				  We will never use break register on Au1000 */

				  NULL,			   NULL,
			      NULL,	         NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_ADJUST_BREAK_ID,
			      /* Atlas   */
			      syscon_false_read, NULL,
			      NULL,	         NULL,
			      /* SEAD    */
			      syscon_false_read, NULL,
			      NULL,	         NULL,
			      /* Malta */
			      syscon_false_read, NULL,
			      NULL,	         NULL,

				 /* Pb1000 - Added 10-30-00 - DWP
				  We will never use break register on Au1000 */

				  NULL,			   NULL,
			      NULL,	         NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_BIGEND_ID,
			      /* Atlas   */
			      syscon_endian_big_read, NULL,
			      NULL,		      NULL,
			      /* SEAD    */
			      syscon_endian_big_read, NULL,
			      NULL,		      NULL,
			      /* Malta (PCI is always little endian) */
			      syscon_false_read,      NULL,
			      NULL,	              NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  syscon_endian_big_read, NULL,
			      NULL,	              NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_BIGEND_ID,
			      /* Atlas (SAA9730 is PCI device and thus little endian) */
			      syscon_false_read,        NULL,
			      NULL,		        NULL,
			      /* SEAD    */
			      syscon_endian_big_read,   NULL,
			      NULL,		        NULL,
			      /* Malta (PCI is always little endian) */
			      board_bigend1_malta_read, NULL,
			      NULL,		        NULL,

				  /* Pb1000 - Added 10-30-00 - DWP 
				     not used in Au1000 driver */

				  NULL,			   NULL,
			      NULL,		        NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_INTLINE_ID,
			      /* Atlas   */
			      syscon_uint32_read, &intline_atlas_ti16550,
			      NULL,	          NULL,
			      /* SEAD    */
			      syscon_uint32_read, &intline_sead_ti16550_0,
			      NULL,	          NULL,
			      /* Malta */
			      syscon_uint32_read, &intline_malta_ti16550_0,
			      NULL,	          NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,	          NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_INTLINE_ID,
			      /* Atlas   */
			      syscon_uint32_read,	 &intline_atlas_saa9730,
			      NULL,			 NULL,
			      /* SEAD    */
			      syscon_uint32_read,	 &intline_sead_ti16550_1,
			      NULL,	                 NULL,
			      /* Malta */
			      board_intline1_malta_read, NULL,
			      NULL,	                 NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
			      NULL,	                 NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_BAUDRATE_DIV_ID,
			      /* Atlas */
			      com_baudrate_div_read, (void *)&serial_baudrate_div_ti16550c,
			      NULL,		     NULL,
			      /* SEAD */
			      com_baudrate_div_read, (void *)&serial_baudrate_div_ti16550c,
			      NULL,		     NULL,
			      /* Malta */
			      com_baudrate_div_read, (void *)&serial_baudrate_div_smsc,
			      NULL,		     NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  com_baudrate_div_read, (void *)&serial_baudrate_div_Au1000,
			      NULL,		     NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_BAUDRATE_DIV_ID,
			      /* Atlas */
			      com_baudrate_div_read, (void *)&serial_baudrate_div_saa9730,
			      NULL,		     NULL,
			      /* SEAD */
			      com_baudrate_div_read, (void *)&serial_baudrate_div_ti16550c,
			      NULL,		     NULL,
			      /* Malta */
			      board_baudrate1_div_malta_read, NULL,
			      NULL,			      NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  com_baudrate_div_read, (void *)&serial_baudrate_div_Au1000,
			      NULL,			      NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_BAUDRATE_VERIFY_ID,
			      /* Atlas */
			      NULL,		         NULL,
			      com_baudrate_verify_write, (void *)&serial_baudrate_div_ti16550c,
			      /* SEAD */
			      NULL,		         NULL,
			      com_baudrate_verify_write, (void *)&serial_baudrate_div_ti16550c,
			      /* Malta */
			      NULL,		         NULL,
			      com_baudrate_verify_write, (void *)&serial_baudrate_div_smsc,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
				  com_baudrate_verify_write, (void *)&serial_baudrate_div_Au1000);

    syscon_register_id_board( SYSCON_COM_TTY1_BAUDRATE_VERIFY_ID,
			      /* Atlas */
			      NULL,			 NULL,
			      com_baudrate_verify_write, (void *)&serial_baudrate_div_saa9730,
			      /* SEAD */
			      NULL,			 NULL,
			      com_baudrate_verify_write, (void *)&serial_baudrate_div_ti16550c,
			      /* Malta */
			      NULL,				  NULL,
			      board_baudrate1_verify_malta_write, NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  NULL,			   NULL,
				  com_baudrate_verify_write, (void *)&serial_baudrate_div_Au1000);

    syscon_register_id_board( SYSCON_COM_TTY0_MAJOR, 
			      /* Atlas   */
			      syscon_uint32_read, &atlas_major_tty0,
			      NULL,	          NULL,
			      /* SEAD    */
			      syscon_uint32_read, &sead_major_tty0,
			      NULL,	          NULL,
			      /* Malta */
			      syscon_uint32_read, &malta_major_tty0,
			      NULL,	          NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  syscon_uint32_read, &pb1000_major_tty0,
			      NULL,	          NULL );

    syscon_register_id_board( SYSCON_COM_TTY0_MINOR, 
			      /* Atlas   */
			      syscon_uint32_read, &atlas_minor_tty0,
			      NULL,	          NULL,
			      /* SEAD    */
			      syscon_uint32_read, &sead_minor_tty0,
			      NULL,	          NULL,
			      /* Malta */
			      syscon_uint32_read, &malta_minor_tty0,
			      NULL,	          NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  syscon_uint32_read, &pb1000_minor_tty0,
			      NULL,	          NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_MAJOR, 
			      /* Atlas   */
			      syscon_uint32_read, &atlas_major_tty1,
			      NULL,	          NULL,
			      /* SEAD    */
			      syscon_uint32_read, &sead_major_tty1,
			      NULL,	          NULL,
			      /* Malta */
			      syscon_uint32_read, &malta_major_tty1,
			      NULL,	          NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  syscon_uint32_read, &pb1000_major_tty1,
			      NULL,	          NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_MINOR, 
			      /* Atlas   */
			      syscon_uint32_read, &atlas_minor_tty1,
			      NULL,	          NULL,
			      /* SEAD    */
			      syscon_uint32_read, &sead_minor_tty1,
			      NULL,	          NULL,
			      /* Malta */
			      syscon_uint32_read, &malta_minor_tty1,
			      NULL,	          NULL,

				  /* Pb1000 - Added 10-30-00 - DWP */

				  syscon_uint32_read, &pb1000_minor_tty1,
			      NULL,	          NULL );

    syscon_register_id_board( SYSCON_COM_TTY1_ON_TEXAS, 
			      /* Atlas   */
			      NULL,	         NULL,
			      NULL,		 NULL,
			      /* SEAD    */
			      NULL,		 NULL,
			      NULL,		 NULL,
			      /* Malta */
			      syscon_bool_read,  (void *)&malta_tty1_on_texas,
			      syscon_bool_write, (void *)&malta_tty1_on_texas,

				  /* Pb1000 - Added 10-30-00 - DWP - NA on Pb1000 */

				  NULL,			   NULL,
				  NULL,			   NULL);
}







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -