void hdmi_wr_only_reg(unsigned long addr, unsigned long data)
{
    check_cts_hdmi_sys_clk_status();
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
//    
//    WRITE_APB_REG(HDMI_DATA_PORT, data);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    
    aml_write_reg32(P_HDMI_DATA_PORT, data);
}
Exemplo n.º 2
0
void hdmi_wr_reg(unsigned int addr, unsigned int data)
{
    unsigned long flags, fiq_flag;
    spin_lock_irqsave(&reg_lock, flags);
    raw_local_save_flags(fiq_flag);
    local_fiq_disable();

    check_cts_hdmi_sys_clk_status();
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_DATA_PORT, data);
    raw_local_irq_restore(fiq_flag);
    spin_unlock_irqrestore(&reg_lock, flags);
}
unsigned long hdmi_rd_reg(unsigned long addr)
{
    unsigned long data;
    check_cts_hdmi_sys_clk_status();
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    
//    data = READ_APB_REG(HDMI_DATA_PORT);
    data = aml_read_reg32(P_HDMI_DATA_PORT);
    
    return (data);
}
void hdmi_wr_reg(unsigned long addr, unsigned long data)
{
    unsigned long rd_data;
    
    check_cts_hdmi_sys_clk_status();
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
//    WRITE_APB_REG(HDMI_ADDR_PORT, addr);
//    
//    WRITE_APB_REG(HDMI_DATA_PORT, data);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    aml_write_reg32(P_HDMI_ADDR_PORT, addr);
    
    aml_write_reg32(P_HDMI_DATA_PORT, data);
    rd_data = hdmi_rd_reg (addr);
    if (rd_data != data) 
    {
        //printk("hdmi_wr_reg(%x,%x) fails to write: %x\n",addr, data, rd_data);
       //while(1){};      
    }
}