125aee3deSMauro Carvalho Chehab /*
225aee3deSMauro Carvalho Chehab 	Mantis PCI bridge driver
325aee3deSMauro Carvalho Chehab 
425aee3deSMauro Carvalho Chehab 	Copyright (C) Manu Abraham (abraham.manu@gmail.com)
525aee3deSMauro Carvalho Chehab 
625aee3deSMauro Carvalho Chehab 	This program is free software; you can redistribute it and/or modify
725aee3deSMauro Carvalho Chehab 	it under the terms of the GNU General Public License as published by
825aee3deSMauro Carvalho Chehab 	the Free Software Foundation; either version 2 of the License, or
925aee3deSMauro Carvalho Chehab 	(at your option) any later version.
1025aee3deSMauro Carvalho Chehab 
1125aee3deSMauro Carvalho Chehab 	This program is distributed in the hope that it will be useful,
1225aee3deSMauro Carvalho Chehab 	but WITHOUT ANY WARRANTY; without even the implied warranty of
1325aee3deSMauro Carvalho Chehab 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1425aee3deSMauro Carvalho Chehab 	GNU General Public License for more details.
1525aee3deSMauro Carvalho Chehab 
1625aee3deSMauro Carvalho Chehab 	You should have received a copy of the GNU General Public License
1725aee3deSMauro Carvalho Chehab 	along with this program; if not, write to the Free Software
1825aee3deSMauro Carvalho Chehab 	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
1925aee3deSMauro Carvalho Chehab */
2025aee3deSMauro Carvalho Chehab 
2125aee3deSMauro Carvalho Chehab #ifndef __MANTIS_CORE_H
2225aee3deSMauro Carvalho Chehab #define __MANTIS_CORE_H
2325aee3deSMauro Carvalho Chehab 
2425aee3deSMauro Carvalho Chehab #include "mantis_common.h"
2525aee3deSMauro Carvalho Chehab 
2625aee3deSMauro Carvalho Chehab 
2725aee3deSMauro Carvalho Chehab #define FE_TYPE_SAT	0
2825aee3deSMauro Carvalho Chehab #define FE_TYPE_CAB	1
2925aee3deSMauro Carvalho Chehab #define FE_TYPE_TER	2
3025aee3deSMauro Carvalho Chehab 
3125aee3deSMauro Carvalho Chehab #define FE_TYPE_TS204	0
3225aee3deSMauro Carvalho Chehab #define FE_TYPE_TS188	1
3325aee3deSMauro Carvalho Chehab 
3425aee3deSMauro Carvalho Chehab 
3525aee3deSMauro Carvalho Chehab struct vendorname {
3625aee3deSMauro Carvalho Chehab 	u8  *sub_vendor_name;
3725aee3deSMauro Carvalho Chehab 	u32 sub_vendor_id;
3825aee3deSMauro Carvalho Chehab };
3925aee3deSMauro Carvalho Chehab 
4025aee3deSMauro Carvalho Chehab struct devicetype {
4125aee3deSMauro Carvalho Chehab 	u8  *sub_device_name;
4225aee3deSMauro Carvalho Chehab 	u32 sub_device_id;
4325aee3deSMauro Carvalho Chehab 	u8  device_type;
4425aee3deSMauro Carvalho Chehab 	u32 type_flags;
4525aee3deSMauro Carvalho Chehab };
4625aee3deSMauro Carvalho Chehab 
4725aee3deSMauro Carvalho Chehab 
4825aee3deSMauro Carvalho Chehab extern int mantis_dma_init(struct mantis_pci *mantis);
4925aee3deSMauro Carvalho Chehab extern int mantis_dma_exit(struct mantis_pci *mantis);
5025aee3deSMauro Carvalho Chehab extern void mantis_dma_start(struct mantis_pci *mantis);
5125aee3deSMauro Carvalho Chehab extern void mantis_dma_stop(struct mantis_pci *mantis);
5225aee3deSMauro Carvalho Chehab extern int mantis_i2c_init(struct mantis_pci *mantis);
5325aee3deSMauro Carvalho Chehab extern int mantis_i2c_exit(struct mantis_pci *mantis);
5425aee3deSMauro Carvalho Chehab extern int mantis_core_init(struct mantis_pci *mantis);
5525aee3deSMauro Carvalho Chehab extern int mantis_core_exit(struct mantis_pci *mantis);
5625aee3deSMauro Carvalho Chehab 
5725aee3deSMauro Carvalho Chehab #endif /* __MANTIS_CORE_H */
58