コード例 #1
0
ファイル: MDrv_Sys.c プロジェクト: wjs123lyj/Madsion
void MDrv_Sys_WholeChipReset( void )
{
    MDrv_Write4Byte(0xEA0, 0x51685168);
    MDrv_WriteRegBit(0xE52, 1, BIT7);
    MDrv_WriteRegBit(0xE52, 1, BIT6);

#if defined(CONFIG_MSTAR_EAGLE) || \
    defined(CONFIG_MSTAR_AMETHYST) || \
    defined(CONFIG_MSTAR_EMERALD) || \
    defined(CONFIG_MSTAR_KAISERIN) || \
    defined(CONFIG_MSTAR_KRONUS) || \
    defined(CONFIG_MSTAR_KAISER) || \
    defined(CONFIG_MSTAR_NUGGET) || \
    defined(CONFIG_MSTAR_KENYA) || \
    defined(CONFIG_MSTAR_KERES)

    _MDrv_WriteByte( 0xE5C, 0x79 ); //PM_SLEEP (Bank 0x000E) for T13, A1, A6, A7, Amethyst, Eagle
#elif defined(CONFIG_MSTAR_NIKON)
    _MDrv_WriteByte( 0x2E5C, 0xFF );
    udelay(1);
    _MDrv_WriteByte( 0x2E5C, 0x79 );

#else
    #if defined(CONFIG_MSTAR_ROM_BOOT_WITH_EMMC_FLASH)
	eMMC_RST_L();
	eMMC_hw_timer_delay(HW_TIMER_DELAY_1ms);
	eMMC_RST_H();
    #endif
    _MDrv_WriteByte( 0x2E5C, 0x79 ); //0x2E for T12, J2, A5, A3
    //MDrv_WriteByte( 0xE5C, 0x79 ); //0xE for T13, A1, A6, A7
#endif

    while(1);
}
コード例 #2
0
void CopyFLH2MIU(U32 dst, U32 src, U32 size)
{
    //printf("SPI %lx -> MIU %lx  length: %lx\n", spi_addr, miu_addr, length);

    while ( RIU8[(BDMA_REG_BASE + 0x02)*2]  & 0x01);   ///queue ==0?
    MDrv_Write4Byte((BDMA_REG_BASE + 0x08 ) , src  );
    MDrv_Write4Byte((BDMA_REG_BASE + 0x0c ),  dst  );
    MDrv_Write4Byte((BDMA_REG_BASE + 0x10 ), (size + 0x0f) & ~0x0fuL);
    MDrv_WriteByte((BDMA_REG_BASE + 0x06),0x00);   //increasing
    MDrv_WriteByte((BDMA_REG_BASE + 0x07),0x02);   //Set Dummy write count
    SetBdmaSrcDstDevice( SPI_FLASH , DW_8BYTE, DRAM_MIU_0, DW_8BYTE);
    MDrv_WriteByte( (BDMA_REG_BASE + 0x00), 0x01 );
    while(1) //for(k=0;k<12000;k++)
    {
        if ( (RIU8[(BDMA_REG_BASE+0x02)*2] & 0x08) == 0x08 )
        {
            return;        //pass
        }
    }
}
コード例 #3
0
ファイル: MDrv_Sys.c プロジェクト: nightcap79/kogan-tv-gpl
void MDrv_Sys_WholeChipReset( void )
{
    MDrv_Write4Byte(0xEA0, 0x51685168);
    MDrv_WriteRegBit(0xE52, 1, BIT7);
    MDrv_WriteRegBit(0xE52, 1, BIT6);

#if defined(CONFIG_MSTAR_EAGLE) || defined(CONFIG_MSTAR_AMETHYST)
    _MDrv_WriteByte( 0xE5C, 0x79 ); //PM_SLEEP (Bank 0x000E) for T13, A1, A6, A7, Amethyst, Eagle
#else
    _MDrv_WriteByte( 0x2E5C, 0x79 ); //0x2E for T12, J2, A5, A3
    //MDrv_WriteByte( 0xE5C, 0x79 ); //0xE for T13, A1, A6, A7
#endif

    while(1);
}