devfreq: exynos4: Support initialization of freq_table and max_state of devfreq's profile.
Quoted 4 lines
This patch initializes
freq_tableandmax_stateof devfreq's profile. They will be used for creating transition table.Signed-off-by Jonghwa Lee <[email protected]>
Signed-off-by MyungJoo Ham <[email protected]>
Quoted 62 lines
--- drivers/devfreq/exynos4_bus.c | 30 +++++++++++++++++++++++++++++- 1 files changed, 29 insertions(+), 1 deletions(-)drivers/devfreq/exynos4_bus.c +29
-1@@ -985,7 +985,8 @@ static __devinit int exynos4_busfreq_probe(struct platform_device *pdev)struct busfreq_data *data;struct opp *opp;struct device *dev = &pdev->dev; -int err =0 ; +int err =0 , i; +unsigned int *freq_table; data =kzalloc (sizeof (struct busfreq_data ),GFP_KERNEL );if (data ==NULL ) {@@ -1042,6 +1043,33 @@ static __devinit int exynos4_busfreq_probe(struct platform_device *pdev)platform_set_drvdata (pdev, data); +switch (data->type) { +case TYPE_BUSF_EXYNOS4210 : + freq_table =devm_kzalloc (&pdev->dev,sizeof (unsigned int ) *EX4210_LV_NUM , +GFP_KERNEL ); + +for (i =0 ; i <EX4210_LV_NUM ; i++) + freq_table[i] = exynos4210_busclk_table[i].clk; + + exynos4_devfreq_profile.max_state =EX4210_LV_NUM ; +break ; +case TYPE_BUSF_EXYNOS4x12: + freq_table =devm_kzalloc (&pdev->dev,sizeof (unsigned int ) * EX4x12_LV_NUM, +GFP_KERNEL ); + +for (i =0 ; i < EX4x12_LV_NUM; i++) + freq_table[i] = exynos4x12_mifclk_table[i].clk; + + exynos4_devfreq_profile.max_state = EX4x12_LV_NUM; +break ; +default : +dev_err (dev,"Cannot determine the device id %d\n" , data->type); + err = -EINVAL ; + goto err_opp_add; + } + + exynos4_devfreq_profile.freq_table = freq_table; +busfreq_mon_reset (data); data->devfreq = devfreq_add_device(dev, &exynos4_devfreq_profile,Signature · 1 line
1.7.4.1
�淸�{.n�+돴윯돪�+%듚�깁負쪐w��{.n�+돴쪐{깸G쳺��{ay����,j�f"톒쉹��묎�z_溫(�쉸듶줷"얎�m����G쳺�◀?솳鈺�&x�~뤳턨O뺞촾퇉v�^�m����띠�◀?뻀�