135 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			135 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
/*
 | 
						|
 * Copyright © 2004 Ralph Thomas
 | 
						|
 *
 | 
						|
 * Permission to use, copy, modify, distribute, and sell this software and its
 | 
						|
 * documentation for any purpose is hereby granted without fee, provided that
 | 
						|
 * the above copyright notice appear in all copies and that both that
 | 
						|
 * copyright notice and this permission notice appear in supporting
 | 
						|
 * documentation, and that the name of Ralph Thomas not be used in
 | 
						|
 * advertising or publicity pertaining to distribution of the software without
 | 
						|
 * specific, written prior permission.  Ralph Thomas makes no
 | 
						|
 * representations about the suitability of this software for any purpose.  It
 | 
						|
 * is provided "as is" without express or implied warranty.
 | 
						|
 *
 | 
						|
 * RALPH THOMAS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 | 
						|
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 | 
						|
 * EVENT SHALL RALPH THOMAS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 | 
						|
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
 | 
						|
 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
 | 
						|
 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 | 
						|
 * PERFORMANCE OF THIS SOFTWARE.
 | 
						|
 */
 | 
						|
/*
 | 
						|
** VIA CLE266 driver
 | 
						|
** Copyright 2004 (C) Ralph Thomas <ralpht@gmail.com>
 | 
						|
**
 | 
						|
** http://www.viatech.com.tw/
 | 
						|
**
 | 
						|
** This is the stub code which links the VIA drawing code into the kdrive
 | 
						|
** framework.
 | 
						|
*/
 | 
						|
 | 
						|
#include "via.h"
 | 
						|
#include <klinux.h>
 | 
						|
 | 
						|
/*
 | 
						|
** void InitCard( char* name )
 | 
						|
**
 | 
						|
** Description:
 | 
						|
**	Initialize the graphics chip. We find the chip on the PCI bus, 
 | 
						|
**	register the functions to access the chip.
 | 
						|
**
 | 
						|
** Arguments:
 | 
						|
**	name	XXX: unknown.
 | 
						|
**
 | 
						|
** Return:
 | 
						|
**	None.
 | 
						|
*/
 | 
						|
void
 | 
						|
InitCard( char* name ) {
 | 
						|
	KdCardAttr attr;
 | 
						|
 | 
						|
	if( LinuxFindPci( 0x1106, 0x3122, 0, &attr ) )
 | 
						|
		KdCardInfoAdd( &viaFuncs, &attr, 0 );
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
** void InitOutput( ScreenInfo* pScreenInfo, int argc, char** argv )
 | 
						|
**
 | 
						|
** Description:
 | 
						|
**	Initialize I/O, or something. XXX: Or what?
 | 
						|
**
 | 
						|
** Arguments:
 | 
						|
**	pScreenInfo	XXX
 | 
						|
**	argc		command line argument count
 | 
						|
**	argv		command line arguments
 | 
						|
**
 | 
						|
** Return:
 | 
						|
**	None.
 | 
						|
*/
 | 
						|
void
 | 
						|
InitOutput( ScreenInfo* pScreenInfo, int argc, char** argv ) {
 | 
						|
	KdInitOutput( pScreenInfo, argc, argv );
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
** void InitInput( int argc, char** argv )
 | 
						|
**
 | 
						|
** Description:
 | 
						|
**	Initialize keyboard and mouse input.
 | 
						|
**
 | 
						|
** Arguments:
 | 
						|
**	argc		command line argument count
 | 
						|
**	argv		command line arguments
 | 
						|
**
 | 
						|
** Return:
 | 
						|
**	None.
 | 
						|
*/
 | 
						|
void
 | 
						|
InitInput( int argc, char** argv ) {
 | 
						|
	KdInitInput( &LinuxMouseFuncs, &LinuxKeyboardFuncs );
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
** void ddxUseMsg()
 | 
						|
**
 | 
						|
** Description:
 | 
						|
**	Print the usage message for Xvia.
 | 
						|
**
 | 
						|
** Arguments:
 | 
						|
**	None.
 | 
						|
**
 | 
						|
** Return:
 | 
						|
**	None.
 | 
						|
*/
 | 
						|
void
 | 
						|
ddxUseMsg() {
 | 
						|
	KdUseMsg();
 | 
						|
	vesaUseMsg();
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/*
 | 
						|
** int ddxProcessArgument( int argc, char** argv, int i )
 | 
						|
**
 | 
						|
** Description:
 | 
						|
**	Process a single command line argument.
 | 
						|
**
 | 
						|
** Arguments:
 | 
						|
**	argc		command line argument count
 | 
						|
**	argv		command line arguments
 | 
						|
**	i		number of argument to process
 | 
						|
**
 | 
						|
** Return:
 | 
						|
**	some values.
 | 
						|
*/
 | 
						|
int
 | 
						|
ddxProcessArgument( int argc, char** argv, int i ) {
 | 
						|
	int ret;
 | 
						|
 | 
						|
	if( !( ret = vesaProcessArgument( argc, argv, i ) ))
 | 
						|
		ret = KdProcessArgument( argc, argv, i );
 | 
						|
	return ret;
 | 
						|
}
 | 
						|
 |