rk312x: define GRF register offset, add some iomap
[firefly-linux-kernel-4.4.55.git] / include / linux / rockchip / common.h
index 31b00d6479cbe7b728c6f8e4e4a00c3c12fa8bec..be6ff44f5fee7b0abd1b7bf66c9b27595e0f40d5 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef __MACH_ROCKCHIP_COMMON_H
 #define __MACH_ROCKCHIP_COMMON_H
 
+#include <linux/notifier.h>
+
 #define RK_DEVICE(VIRT,PHYS,SIZE) \
        { \
                .virtual        = (unsigned long)(VIRT), \
@@ -9,6 +11,7 @@
                .type           = MT_DEVICE, \
        }
 
+extern bool rockchip_jtag_enabled;
 extern unsigned long rockchip_boot_fn;
 extern struct smp_operations rockchip_smp_ops;
 
@@ -35,5 +38,36 @@ 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);
+
+enum rockchip_pm_policy {
+       ROCKCHIP_PM_POLICY_PERFORMANCE = 0,
+       ROCKCHIP_PM_POLICY_NORMAL,
+       ROCKCHIP_PM_POLICY_POWERSAVE,
+       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);
+
+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);
+
+#if IS_ENABLED(CONFIG_SENSORS_ROCKCHIP_TSADC)
+extern 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);
+#else
+static inline void rk_last_log_text(char *text, size_t size) {}
+#endif
 
 #endif