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
 |