aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/include/mach/busfreq_exynos5.h
diff options
context:
space:
mode:
authorcodeworkx <codeworkx@cyanogenmod.com>2012-09-22 09:48:20 +0200
committercodeworkx <codeworkx@cyanogenmod.com>2012-09-22 14:02:16 +0200
commit2489007e7d740ccbc3e0a202914e243ad5178787 (patch)
treeb8e6380ea7b1da63474ad68a5dba997e01146043 /arch/arm/mach-exynos/include/mach/busfreq_exynos5.h
parent5f67568eb31e3a813c7c52461dcf66ade15fc2e7 (diff)
downloadkernel_samsung_smdk4412-2489007e7d740ccbc3e0a202914e243ad5178787.zip
kernel_samsung_smdk4412-2489007e7d740ccbc3e0a202914e243ad5178787.tar.gz
kernel_samsung_smdk4412-2489007e7d740ccbc3e0a202914e243ad5178787.tar.bz2
merge opensource jb u5
Change-Id: I1aaec157aa196f3448eff8636134fce89a814cf2
Diffstat (limited to 'arch/arm/mach-exynos/include/mach/busfreq_exynos5.h')
-rw-r--r--arch/arm/mach-exynos/include/mach/busfreq_exynos5.h93
1 files changed, 0 insertions, 93 deletions
diff --git a/arch/arm/mach-exynos/include/mach/busfreq_exynos5.h b/arch/arm/mach-exynos/include/mach/busfreq_exynos5.h
deleted file mode 100644
index fe00bd1..0000000
--- a/arch/arm/mach-exynos/include/mach/busfreq_exynos5.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* linux/arch/arm/mach-exynos/include/mach/busfreq_exynos5.h
- *
- * Copyright (c) 2010 Samsung Electronics Co., Ltd.
- * http://www.samsung.com
- *
- * EXYNOS4 - BUSFreq support
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_BUSFREQ_H
-#define __ASM_ARCH_BUSFREQ_H __FILE__
-
-#include <linux/notifier.h>
-#include <linux/earlysuspend.h>
-
-#include <mach/ppmu.h>
-
-#define MAX_LOAD 100
-#define LOAD_HISTORY_SIZE 5
-#define DIVIDING_FACTOR 10000
-
-#define TIMINGROW_OFFSET 0x34
-
-enum busfreq_level_idx {
- LV_0,
- LV_1,
- LV_2,
- LV_3,
- LV_INT_END,
- LV_MIF_END = LV_3,
-};
-
-struct opp;
-struct device;
-struct busfreq_table;
-
-struct busfreq_data {
- bool use;
- struct device *dev[PPMU_TYPE_END];
- struct delayed_work worker;
- unsigned long curr_freq[PPMU_TYPE_END];
- unsigned long max_freq[PPMU_TYPE_END];
- unsigned long min_freq[PPMU_TYPE_END];
- struct regulator *vdd_reg[PPMU_TYPE_END];
- unsigned int sampling_rate;
- struct kobject *busfreq_kobject;
- struct busfreq_table *table[PPMU_TYPE_END];
- unsigned long long time_in_state[PPMU_TYPE_END][LV_INT_END];
- unsigned long long last_time[PPMU_TYPE_END];
- unsigned int load_history[PPMU_END][LOAD_HISTORY_SIZE];
- int index;
-
- struct notifier_block exynos_buspm_notifier;
- struct notifier_block exynos_reboot_notifier;
- struct notifier_block exynos_request_notifier;
- struct early_suspend busfreq_early_suspend_handler;
- struct attribute_group busfreq_attr_group;
- int (*init) (struct device *dev, struct busfreq_data *data);
- void (*monitor) (struct busfreq_data *data, struct opp **mif_opp,
- struct opp **int_opp);
- void (*target) (struct busfreq_data *data, enum ppmu_type type, int index);
- unsigned int (*get_int_volt) (unsigned long freq);
- int (*get_table_index) (unsigned long freq, enum ppmu_type type);
- void (*busfreq_prepare) (int index);
- void (*busfreq_post) (int index);
- void (*busfreq_suspend) (void);
- void (*busfreq_resume) (void);
-
- /* Dividers calculated at boot/probe-time */
- unsigned int lex_divtable[LV_INT_END];
- unsigned int r0x_divtable[LV_INT_END];
- unsigned int r1x_divtable[LV_INT_END];
- unsigned int cdrex_divtable[LV_MIF_END];
- unsigned int cdrex2_divtable[LV_MIF_END];
-};
-
-struct busfreq_table {
- unsigned int idx;
- unsigned int mem_clk;
- unsigned int volt;
- unsigned int clk_topdiv;
- unsigned int clk_dmc0div;
- unsigned int clk_dmc1div;
-};
-
-void exynos_request_apply(unsigned long freq);
-unsigned long step_down(struct busfreq_data *data, enum ppmu_type type, int step);
-
-int exynos5250_init(struct device *dev, struct busfreq_data *data);
-#endif /* __ASM_ARCH_BUSFREQ_H */