aboutsummaryrefslogtreecommitdiff
path: root/drivers/misc/mediatek/eccci/mt6735/ccci_platform.h
blob: 71c4e45e4d55fc6597dbe0ccd30a571abcc2708d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef _CCCCI_PLATFORM_H_
#define _CCCCI_PLATFORM_H_

#include <mach/sync_write.h>
#include <mach/ccci_config.h>
#include "ccci_core.h"

#define INVALID_ADDR (0xF0000000) // the last EMI bank, properly not used
#define KERN_EMI_BASE (0x40000000) // Bank4

//- AP side, using mcu config base
//-- AP Bank4
#define AP_BANK4_MAP0 (0) // ((volatile unsigned int*)(MCUSYS_CFGREG_BASE+0x200))
#define AP_BANK4_MAP1 (0) // ((volatile unsigned int*)(MCUSYS_CFGREG_BASE+0x204))

//- MD side, using infra config base
#define DBG_FLAG_DEBUG		(1<<0)
#define DBG_FLAG_JTAG		(1<<1)
#define MD_DBG_JTAG_BIT		(1<<0)

#define ccci_write32(b, a, v)           mt_reg_sync_writel(v, (b)+(a))
#define ccci_write16(b, a, v)           mt_reg_sync_writew(v, (b)+(a))
#define ccci_write8(b, a, v)            mt_reg_sync_writeb(v, (b)+(a))
#define ccci_read32(b, a)               ioread32((void __iomem *)((b)+(a)))
#define ccci_read16(b, a)               ioread16((void __iomem *)((b)+(a)))
#define ccci_read8(b, a)                ioread8((void __iomem *)((b)+(a)))


void ccci_clear_md_region_protection(struct ccci_modem *md);
void ccci_set_mem_access_protection(struct ccci_modem *md);
void ccci_set_ap_region_protection(struct ccci_modem *md);
#ifdef ENABLE_DSP_SMEM_SHARE_MPU_REGION
void ccci_set_exp_region_protection(struct ccci_modem *md);
#endif
void ccci_set_mem_remap(struct ccci_modem *md, unsigned long smem_offset, phys_addr_t invalid);
unsigned int ccci_get_md_debug_mode(struct ccci_modem *md);
void ccci_get_platform_version(char * ver);
void ccci_set_dsp_region_protection(struct ccci_modem *md, int loaded);
void ccci_clear_dsp_region_protection(struct ccci_modem *md);
int ccci_plat_common_init(void);
int ccci_platform_init(struct ccci_modem *md);

#define MD_IN_DEBUG(md) ((ccci_get_md_debug_mode(md)&(DBG_FLAG_JTAG|DBG_FLAG_DEBUG))!=0)
#endif //_CCCCI_PLATFORM_H_