コード例 #1
0
ファイル: mvSysAudio.c プロジェクト: BingTsai/D3-Linux
/*******************************************************************************
* mvSysAudioCodecRegWrite
*
* DESCRIPTION:
*	System interface for writing an Audio codec register.
*
* INPUT:
*       codecHandle: Handle passed by OS glue by which an audio codec is
*		     identified.
*       regOffset:   Offset of codec register to be written. 
*       regData:     Register data to write.
*
* OUTPUT:
*	None.
*
* RETURN:
*	MV_OK on success,
*	MV_ERROR otherwise.
*
*******************************************************************************/
MV_STATUS mvSysAudioCodecRegWrite(MV_VOID *codecHandle, MV_U32  regOffset, MV_U32 regData)
{
	MV_TWSI_SLAVE slave;

	slave.slaveAddr.address = mvBoardA2DTwsiAddrGet(0);
	slave.slaveAddr.type = mvBoardA2DTwsiAddrTypeGet(0);
    	slave.validOffset = MV_TRUE;
    	slave.offset = regOffset;
    	slave.moreThen256 = MV_FALSE;	

	return	mvTwsiWrite(mvBoardA2DTwsiChanNumGet(0), &slave, (MV_U8*)&regData, 1);
}
コード例 #2
0
ファイル: mvDS1339.c プロジェクト: KevinCabana/xpenology
/*******************************************************************************
* mvRtcCharWrite - Write a char from the RTC.
*
* DESCRIPTION:
*       This function writes a char to the RTC offset.
*
* INPUT:
*       offset - offset
*
* OUTPUT:
*       data - char write to addr address.
*
* RETURN:
*       None.
*
*******************************************************************************/
static MV_VOID mvRtcCharWrite(MV_U32 offset, MV_U8 data)
{
	MV_TWSI_SLAVE twsiSlave;
	
	twsiSlave.slaveAddr.type = mvBoardRtcTwsiAddrTypeGet();
	twsiSlave.slaveAddr.address = mvBoardRtcTwsiAddrGet();
	twsiSlave.validOffset = MV_TRUE;
	twsiSlave.offset = offset;
	twsiSlave.moreThen256 = MV_FALSE;
	mvTwsiWrite (MV_BOARD_RTC_I2C_CHANNEL, &twsiSlave, &data, 1);
	return;
}
コード例 #3
0
ファイル: mv_i2c.c プロジェクト: 12thmantec/u-boot-novena-spl
int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len)
{
	MV_TWSI_SLAVE twsiSlave;
	DP(puts("i2c_write\n"));

	twsiSlave.slaveAddr.type = ADDR7_BIT;
	twsiSlave.slaveAddr.address = chip;
	if(alen != 0){
		twsiSlave.validOffset = MV_TRUE;
		twsiSlave.offset = addr;
		if(alen == 2)
		{
			twsiSlave.moreThen256 = MV_TRUE;
		}
		else
		{
			twsiSlave.moreThen256 = MV_FALSE;
		}
	}
	i2c_init(CONFIG_SYS_I2C_SPEED,0); /* set the i2c frequency */
	return mvTwsiWrite (i2c_current_bus, &twsiSlave, buffer, len);
}