Merge branch 'develop-3.10' of ssh://10.10.10.29/rk/kernel into develop-3.10
[firefly-linux-kernel-4.4.55.git] / include / linux / rockchip / common.h
index be6ff44f5fee7b0abd1b7bf66c9b27595e0f40d5..0a1eb0647a860bc7b74b2e35a7c042efe7bf861e 100644 (file)
@@ -3,7 +3,7 @@
 
 #include <linux/notifier.h>
 
-#define RK_DEVICE(VIRT,PHYS,SIZE) \
+#define RK_DEVICE(VIRT, PHYS, SIZE) \
        { \
                .virtual        = (unsigned long)(VIRT), \
                .pfn            = __phys_to_pfn(PHYS), \
@@ -15,13 +15,31 @@ extern bool rockchip_jtag_enabled;
 extern unsigned long rockchip_boot_fn;
 extern struct smp_operations rockchip_smp_ops;
 
-extern int (*ddr_change_freq)(uint32_t nMHz);
-extern long (*ddr_round_rate)(uint32_t nMHz);
+struct ddr_bw_info {
+       u32 ddr_wr;
+       u32 ddr_rd;
+       u32 ddr_act;
+       u32 ddr_time;
+       u32 ddr_total;
+       u32 ddr_percent;
+
+       u32 cpum;
+       u32 gpu;
+       u32 peri;
+       u32 video;
+       u32 vio0;
+       u32 vio1;
+       u32 vio2;
+};
+extern void (*ddr_bandwidth_get)(struct ddr_bw_info *ddr_bw_ch0,
+                                struct ddr_bw_info *ddr_bw_ch1);
+extern int (*ddr_change_freq)(uint32_t mhz);
+extern long (*ddr_round_rate)(uint32_t mhz);
 extern void (*ddr_set_auto_self_refresh)(bool en);
 
-extern int rockchip_cpu_kill(unsigned int cpu);
-extern void rockchip_cpu_die(unsigned int cpu);
-extern int rockchip_cpu_disable(unsigned int cpu);
+int rockchip_cpu_kill(unsigned int cpu);
+void rockchip_cpu_die(unsigned int cpu);
+int rockchip_cpu_disable(unsigned int cpu);
 
 #define BOOT_MODE_NORMAL               0
 #define BOOT_MODE_FACTORY2             1
@@ -34,11 +52,12 @@ extern int rockchip_cpu_disable(unsigned int cpu);
 #define BOOT_MODE_WATCHDOG             8
 #define BOOT_MODE_TSADC                        9
 
-extern int rockchip_boot_mode(void);
-extern void __init rockchip_boot_mode_init(u32 flag, u32 mode);
-extern void rockchip_restart_get_boot_mode(const char *cmd, u32 *flag, u32 *mode);
-extern void __init rockchip_suspend_init(void);
-extern void __init rockchip_ion_reserve(void);
+int rockchip_boot_mode(void);
+void __init rockchip_boot_mode_init(u32 flag, u32 mode);
+void rockchip_restart_get_boot_mode(const char *cmd, u32 *flag, u32 *mode);
+void __init rockchip_efuse_init(void);
+void __init rockchip_suspend_init(void);
+void __init rockchip_ion_reserve(void);
 
 enum rockchip_pm_policy {
        ROCKCHIP_PM_POLICY_PERFORMANCE = 0,
@@ -47,25 +66,25 @@ enum rockchip_pm_policy {
        ROCKCHIP_PM_NR_POLICYS,
 };
 
-extern enum rockchip_pm_policy rockchip_pm_get_policy(void);
-extern int rockchip_pm_set_policy(enum rockchip_pm_policy policy);
-extern int rockchip_pm_policy_register_notifier(struct notifier_block *nb);
-extern int rockchip_pm_policy_unregister_notifier(struct notifier_block *nb);
+enum rockchip_pm_policy rockchip_pm_get_policy(void);
+int rockchip_pm_set_policy(enum rockchip_pm_policy policy);
+int rockchip_pm_policy_register_notifier(struct notifier_block *nb);
+int rockchip_pm_policy_unregister_notifier(struct notifier_block *nb);
 
-extern int rockchip_register_system_status_notifier(struct notifier_block *nb);
-extern int rockchip_unregister_system_status_notifier(struct notifier_block *nb);
-extern int rockchip_set_system_status(unsigned long status);
-extern int rockchip_clear_system_status(unsigned long status);
-extern unsigned long rockchip_get_system_status(void);
+int rockchip_register_system_status_notifier(struct notifier_block *nb);
+int rockchip_unregister_system_status_notifier(struct notifier_block *nb);
+int rockchip_set_system_status(unsigned long status);
+int rockchip_clear_system_status(unsigned long status);
+unsigned long rockchip_get_system_status(void);
 
 #if IS_ENABLED(CONFIG_SENSORS_ROCKCHIP_TSADC)
-extern int rockchip_tsadc_get_temp(int chn);
+int rockchip_tsadc_get_temp(int chn);
 #else
 static inline int rockchip_tsadc_get_temp(int chn) { return 0; }
 #endif
 
 #ifdef CONFIG_RK_LAST_LOG
-extern void rk_last_log_text(char *text, size_t size);
+void rk_last_log_text(char *text, size_t size);
 #else
 static inline void rk_last_log_text(char *text, size_t size) {}
 #endif