提交SMOD ATSC IMX APP版本 V122
This commit is contained in:
Executable
+139
@@ -0,0 +1,139 @@
|
||||
#ifndef _I2C_DRV_H
|
||||
#define _I2C_DRV_H
|
||||
#include "type.h"
|
||||
#include "config.h"
|
||||
|
||||
|
||||
|
||||
|
||||
#if 1//ADD
|
||||
|
||||
#define FPGA_I2C_NUM 1
|
||||
#define FPGA_DEV_ADDRESS (0X5A<<1)
|
||||
#define DRYLOOP_DEV_ADDRESS (0x42<<1)
|
||||
|
||||
#define EXT_I2C_NUM 0
|
||||
#define TS2IP_DEV_ADDRESS (0x5D<<1) // (0x70<<1)
|
||||
#define TS2IP2_DEV_ADDRESS (0x5E<<1) // (0x90<<1)
|
||||
|
||||
#define TUNER_I2C_NUM 0
|
||||
//#define TS2IP_DEV_ADDRESS (0x5D<<1) // (0x70<<1)
|
||||
//#define TS2IP2_DEV_ADDRESS (0x5E<<1) // (0x90<<1)
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define TS_NET_I2C_READ 0
|
||||
#define TS_NET_I2C_WRITE 1
|
||||
|
||||
#if USE_TUNER_18273
|
||||
#define TUNER18273_ADDRESS (0xC6)
|
||||
#else
|
||||
#define TUNER18273_ADDRESS (0xC0)
|
||||
#endif
|
||||
|
||||
void e2_byte_write(uint16 addr,uint8 data,uint32 chip);
|
||||
uint8 e2_byte_read(uint16 addr,uint32 chip);
|
||||
uint8 e2_byte_read_v2(uint16 addr, uint8 default_value,uint32 chip);
|
||||
|
||||
|
||||
uint32 atmel_write_e2rom_buf(uint8* pbuf,uint16 offset,uint16 num,uint8 chip);
|
||||
uint32 atmel_read_e2rom_buf(uint8* pbuf,uint16 offset,uint16 num,uint8 chip);
|
||||
|
||||
|
||||
|
||||
|
||||
void i2c_hw_init(void);
|
||||
|
||||
#define E2_PROM_PAGE_SIZE (64) //E2的页大小
|
||||
#define E2_PROM_TOTLE_SIZE (32*1024) //E2的总大小
|
||||
#define E2_PROM_OFFSET_SIZE (2) //E2的参数地址字节数
|
||||
|
||||
#define I2C_READ_OK 0
|
||||
#define I2C_WRITE_OK 0
|
||||
#define I2C_WAIT_TIME_OUT 1
|
||||
#define I2C_PARA_INVALID 2
|
||||
|
||||
#define E2_TOTAL_NUM 3
|
||||
|
||||
#define E2_CHIP_1 0 //三个E2
|
||||
#define E2_CHIP_2 1
|
||||
#define E2_CHIP_3 2
|
||||
|
||||
|
||||
#define c256_byteread_default(a,b) e2_byte_read_v2(a,b,E2_CHIP_1) // add a new param need this function
|
||||
|
||||
#define c256_byteread(a) e2_byte_read(a,E2_CHIP_1)
|
||||
#define c256_bytewrite(a,b) e2_byte_write(a,b,E2_CHIP_1)
|
||||
|
||||
#define c256_byteread2(a) e2_byte_read(a,E2_CHIP_2)
|
||||
#define c256_bytewrite2(a,b) e2_byte_write(a,b,E2_CHIP_2)
|
||||
|
||||
#define c256_byteread3(a) e2_byte_read(a,E2_CHIP_3)
|
||||
#define c256_bytewrite3(a,b) e2_byte_write(a,b,E2_CHIP_3) //方便后续激励器移植
|
||||
|
||||
#define atmel_write_e1(pbuf,offset,num) atmel_write_e2rom_buf(pbuf,offset,num,E2_CHIP_1)
|
||||
#define atmel_read_e1(pbuf,offset,num) atmel_read_e2rom_buf(pbuf,offset,num,E2_CHIP_1)
|
||||
|
||||
#define atmel_write_e2(pbuf,offset,num) atmel_write_e2rom_buf(pbuf,offset,num,E2_CHIP_2)
|
||||
#define atmel_read_e2(pbuf,offset,num) atmel_read_e2rom_buf(pbuf,offset,num,E2_CHIP_2)
|
||||
|
||||
#define atmel_write_e3(pbuf,offset,num) atmel_write_e2rom_buf(pbuf,offset,num,E2_CHIP_3)
|
||||
#define atmel_read_e3(pbuf,offset,num) atmel_read_e2rom_buf(pbuf,offset,num,E2_CHIP_3)
|
||||
|
||||
|
||||
|
||||
void fpga_byte_write(uint8 segment,uint32 addr,uint8 data);
|
||||
uint8 fpga_byte_read(uint8 segment,uint32 addr);
|
||||
|
||||
void fpga_reset_save_segment(void);
|
||||
|
||||
uint8 dryloop_read(uint32 addr);
|
||||
uint32 dryloop_write(uint32 addr,uint8 data);
|
||||
uint32 tuner_byte_write(uint32 addr,uint8 data);
|
||||
uint8 tuner_byte_read(uint32 addr);
|
||||
|
||||
void ip2ts_i2c_rw(uint8 *pucData, uint8 addr,uint16 cnt, uint32 rw);
|
||||
|
||||
|
||||
#if 1
|
||||
extern void tsoip_byte_write(int tsoip_index, uint32 addr, uint8 data);
|
||||
extern uint8 tsoip_byte_read(int tsoip_index,uint32 addr);
|
||||
extern void fpga_i2c_sim_spi_read(uint16 addr, uint32 *p_data);
|
||||
|
||||
extern void fpga_i2c_sim_spi_write(uint16 addr, uint32 data);
|
||||
extern void e_map_init(void);
|
||||
extern void ii2c_hw_init(void);
|
||||
extern uint8 fpga_byte_reads(uint8 segment,uint32 addr,uint8 *pdata,uint8 rlen);
|
||||
extern int fpga_byte_writes(uint8 segment,uint32 addr,uint8 *pdata,uint8 wlen);
|
||||
|
||||
|
||||
|
||||
uint32 tuner_i2c_write(uint8 slave_addr,uint8 *pdata,uint8 length);
|
||||
uint32 tuner_i2c_read(uint8 slave_addr,uint8 *pdata,uint8 length);
|
||||
uint32 tuner_i2c_read_offset8(uint8 slave_addr,uint8 offset,uint8 *pdata,uint8 length);
|
||||
uint32 tuner_i2c_read_offset16(uint8 slave_addr,uint8 offset[8],uint8 *pdata,uint8 length);
|
||||
int tuner_nbytes_write(uint32 dev_addr, uint32 offset, uint8 *pdata, uint32 wlen);
|
||||
/*
|
||||
void fpga_write_axi0(u32 addr, u32 data, u32 count);
|
||||
int fpga_read_axi0(u32 addr, u32 *pdata, u32 count);
|
||||
|
||||
int fpga_read_axi0_test(uint32 addr, uint32 *pdata, uint32 count);
|
||||
void fpga_write_axi0_test(uint32 addr, uint32 data, uint32 count);
|
||||
*/
|
||||
void fpga_write_axi0_test(uint32 addr, uint32 data, uint32 count);
|
||||
void fpga_write_axi0(uint32 addr, uint32 data, uint32 count);
|
||||
int fpga_read_axi0(uint32 addr, uint32 *pdata, uint32 count);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user