116 lines
3.3 KiB
C
116 lines
3.3 KiB
C
/****************************************************************************
|
|
|
|
Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED.
|
|
|
|
This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT
|
|
be copied by any method or incorporated into another program without
|
|
the express written consent of Aerospace C.Power. This Information or any portion
|
|
thereof remains the property of Aerospace C.Power. The Information contained herein
|
|
is believed to be accurate and Aerospace C.Power assumes no responsibility or
|
|
liability for its use in any way and conveys no license or title under
|
|
any patent or copyright and makes no representation or warranty that this
|
|
Information is free from patent or copyright infringement.
|
|
|
|
****************************************************************************/
|
|
#ifndef _AHB_H
|
|
#define _AHB_H
|
|
|
|
#include "os_types.h"
|
|
|
|
#if HW_PLATFORM > HW_PLATFORM_SIMU
|
|
#include "ahb_hw.h"
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void ahb_reset();
|
|
void ahb_enable();
|
|
|
|
/* dma module function */
|
|
void ahb_sw_dma0_enable(void);
|
|
void ahb_sw_dma0_disable(void);
|
|
void ahb_sw_dma0_reset(void);
|
|
void ahb_sw_dma1_enable(void);
|
|
void ahb_sw_dma1_disable(void);
|
|
void ahb_sw_dma1_reset(void);
|
|
|
|
/* ada module function */
|
|
void ahb_ada_enable(void);
|
|
void ahb_ada_disable(void);
|
|
void ahb_ada_reset(void);
|
|
uint32_t ahb_ada_is_enable(void);
|
|
|
|
/* gmac module function */
|
|
void ahb_gmac_enable(void);
|
|
void ahb_gmac_disable(void);
|
|
void ahb_gmac_reset(void);
|
|
|
|
/* mac module function */
|
|
void ahb_mac_enable(void);
|
|
void ahb_mac_disable(void);
|
|
void ahb_mac_reset(void);
|
|
void ahb_mac_reset_hold(void);
|
|
void ahb_mac_reset_release(void);
|
|
|
|
/* phy module function */
|
|
void ahb_phy_mac_enable(void);
|
|
void ahb_phy_enable(void);
|
|
void ahb_phy_disable(void);
|
|
void ahb_phy_reset(void);
|
|
void ahb_phy_reset_hold(void);
|
|
void ahb_phy_reset_release(void);
|
|
void ahb_phy_reg_reset(void);
|
|
void ahb_phy_ana_reset(void);
|
|
void ahb_bb_adc_scale_set(uint32_t scale);
|
|
void ahb_bb_dac_scale_set(uint32_t scale);
|
|
|
|
/* snapshot module function */
|
|
void ahb_snapshot_enable();
|
|
void ahb_snapshot_disable();
|
|
void ahb_snapshot_reset();
|
|
|
|
/* scratch register function */
|
|
void ahb_scratch_reg_set(uint32_t scratch_id, uint32_t val);
|
|
uint32_t ahb_scratch_reg_get(uint32_t scratch_id);
|
|
|
|
/* cache function */
|
|
void ahb_cache_enable();
|
|
void ahb_cache_disable();
|
|
void ahb_cache_reset();
|
|
void ahb_cache_clear(void);
|
|
void ahb_cache_fill_valid_space();
|
|
void ahb_set_cache_buffer_mode();
|
|
void ahb_cache_space_dis();
|
|
void ahb_cache_space_ena();
|
|
void ahb_cache_space_dis_for_flash_write();
|
|
void ahb_cache_space_ena_for_flash_write();
|
|
|
|
/* dmc cache function, only kl2 support, but phy_tools.c need */
|
|
void ahb_dmc_cache_clear();
|
|
void ahb_dmc_cache_rst_clear();
|
|
|
|
/* get flash base address(cache mapped address) */
|
|
uint32_t ahb_get_flash_base(void);
|
|
|
|
void ahb_hram_adc_mode_enable(uint32_t hram_bitmap);
|
|
void ahb_hram_adc_mode_disable(uint32_t hram_bitmap);
|
|
|
|
uint32_t ahb_reg0_unlock_get(void);
|
|
void ahb_reg0_unlock_set(uint32_t unlock);
|
|
|
|
void ahb_clk_mpll_set(uint32_t enable, uint32_t div);
|
|
void ahb_clk_clock_set(uint32_t ahb_sel, uint32_t apb_sel, uint32_t apb_div);
|
|
void ahb_clk_debug_output_cfg(uint32_t type, uint32_t div);
|
|
void ahb_clk_clock_get(uint32_t *p_ahb_sel, uint32_t *p_apb_sel,
|
|
uint32_t *p_apb_div);
|
|
void ahb_rf_brg_async();
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif //_AHB_H
|