diff options
author | Archit Taneja <archit@ti.com> | 2011-02-24 03:47:30 -0500 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-03-11 08:46:27 -0500 |
commit | 1bb478350670fadf708d3cbd6137c32dfbe3fd5f (patch) | |
tree | 387ed4990280ad1bbfd17f763d9249c66a2d750c /drivers/video/omap2/dss/dsi.c | |
parent | 067a57e48e302863eb2d5ac0900ae9ae65dbc8c3 (diff) |
OMAP2PLUS: DSS2: DSI: Generalize DSI PLL Clock Naming
DSI PLL output clock names have been made more generic. The clock name
describes what the source of the clock and what clock is used for. Some of
DSI PLL parameters like dividers and DSI PLL source have also been made more
generic.
dsi1_pll_fclk and dsi2_pll_fclk have been changed as dsi_pll_hsdiv_dispc_clk
and dsi_pll_hsdiv_dsi_clk respectively. Also, the hsdividers are now named
regm_dispc and regm_dsi instead of regm3 and regm4.
Functions and macros named on the basis of these clock names have also been
made generic.
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/dsi.c')
-rw-r--r-- | drivers/video/omap2/dss/dsi.c | 134 |
1 files changed, 70 insertions, 64 deletions
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index 3ef94227bbe7..37ffbb6ecf69 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c | |||
@@ -189,8 +189,8 @@ struct dsi_reg { u16 idx; }; | |||
189 | #define FINT_MIN 750000 | 189 | #define FINT_MIN 750000 |
190 | #define REGN_MAX (1 << 7) | 190 | #define REGN_MAX (1 << 7) |
191 | #define REGM_MAX ((1 << 11) - 1) | 191 | #define REGM_MAX ((1 << 11) - 1) |
192 | #define REGM3_MAX (1 << 4) | 192 | #define REGM_DISPC_MAX (1 << 4) |
193 | #define REGM4_MAX (1 << 4) | 193 | #define REGM_DSI_MAX (1 << 4) |
194 | #define LP_DIV_MAX ((1 << 13) - 1) | 194 | #define LP_DIV_MAX ((1 << 13) - 1) |
195 | 195 | ||
196 | enum fifo_size { | 196 | enum fifo_size { |
@@ -642,7 +642,7 @@ static void dsi_vc_disable_bta_irq(int channel) | |||
642 | dsi_write_reg(DSI_VC_IRQENABLE(channel), l); | 642 | dsi_write_reg(DSI_VC_IRQENABLE(channel), l); |
643 | } | 643 | } |
644 | 644 | ||
645 | /* DSI func clock. this could also be DSI2_PLL_FCLK */ | 645 | /* DSI func clock. this could also be dsi_pll_hsdiv_dsi_clk */ |
646 | static inline void enable_clocks(bool enable) | 646 | static inline void enable_clocks(bool enable) |
647 | { | 647 | { |
648 | if (enable) | 648 | if (enable) |
@@ -712,14 +712,14 @@ static inline int dsi_if_enable(bool enable) | |||
712 | return 0; | 712 | return 0; |
713 | } | 713 | } |
714 | 714 | ||
715 | unsigned long dsi_get_dsi1_pll_rate(void) | 715 | unsigned long dsi_get_pll_hsdiv_dispc_rate(void) |
716 | { | 716 | { |
717 | return dsi.current_cinfo.dsi1_pll_fclk; | 717 | return dsi.current_cinfo.dsi_pll_hsdiv_dispc_clk; |
718 | } | 718 | } |
719 | 719 | ||
720 | static unsigned long dsi_get_dsi2_pll_rate(void) | 720 | static unsigned long dsi_get_pll_hsdiv_dsi_rate(void) |
721 | { | 721 | { |
722 | return dsi.current_cinfo.dsi2_pll_fclk; | 722 | return dsi.current_cinfo.dsi_pll_hsdiv_dsi_clk; |
723 | } | 723 | } |
724 | 724 | ||
725 | static unsigned long dsi_get_txbyteclkhs(void) | 725 | static unsigned long dsi_get_txbyteclkhs(void) |
@@ -732,11 +732,11 @@ static unsigned long dsi_fclk_rate(void) | |||
732 | unsigned long r; | 732 | unsigned long r; |
733 | 733 | ||
734 | if (dss_get_dsi_clk_source() == DSS_CLK_SRC_FCK) { | 734 | if (dss_get_dsi_clk_source() == DSS_CLK_SRC_FCK) { |
735 | /* DSI FCLK source is DSS1_ALWON_FCK, which is dss1_fck */ | 735 | /* DSI FCLK source is DSS_CLK_FCK */ |
736 | r = dss_clk_get_rate(DSS_CLK_FCK); | 736 | r = dss_clk_get_rate(DSS_CLK_FCK); |
737 | } else { | 737 | } else { |
738 | /* DSI FCLK source is DSI2_PLL_FCLK */ | 738 | /* DSI FCLK source is dsi_pll_hsdiv_dsi_clk */ |
739 | r = dsi_get_dsi2_pll_rate(); | 739 | r = dsi_get_pll_hsdiv_dsi_rate(); |
740 | } | 740 | } |
741 | 741 | ||
742 | return r; | 742 | return r; |
@@ -806,16 +806,16 @@ static int dsi_calc_clock_rates(struct omap_dss_device *dssdev, | |||
806 | if (cinfo->regm == 0 || cinfo->regm > REGM_MAX) | 806 | if (cinfo->regm == 0 || cinfo->regm > REGM_MAX) |
807 | return -EINVAL; | 807 | return -EINVAL; |
808 | 808 | ||
809 | if (cinfo->regm3 > REGM3_MAX) | 809 | if (cinfo->regm_dispc > REGM_DISPC_MAX) |
810 | return -EINVAL; | 810 | return -EINVAL; |
811 | 811 | ||
812 | if (cinfo->regm4 > REGM4_MAX) | 812 | if (cinfo->regm_dsi > REGM_DSI_MAX) |
813 | return -EINVAL; | 813 | return -EINVAL; |
814 | 814 | ||
815 | if (cinfo->use_dss2_fck) { | 815 | if (cinfo->use_sys_clk) { |
816 | cinfo->clkin = dss_clk_get_rate(DSS_CLK_SYSCK); | 816 | cinfo->clkin = dss_clk_get_rate(DSS_CLK_SYSCK); |
817 | /* XXX it is unclear if highfreq should be used | 817 | /* XXX it is unclear if highfreq should be used |
818 | * with DSS2_FCK source also */ | 818 | * with DSS_SYS_CLK source also */ |
819 | cinfo->highfreq = 0; | 819 | cinfo->highfreq = 0; |
820 | } else { | 820 | } else { |
821 | cinfo->clkin = dispc_pclk_rate(dssdev->manager->id); | 821 | cinfo->clkin = dispc_pclk_rate(dssdev->manager->id); |
@@ -836,15 +836,17 @@ static int dsi_calc_clock_rates(struct omap_dss_device *dssdev, | |||
836 | if (cinfo->clkin4ddr > 1800 * 1000 * 1000) | 836 | if (cinfo->clkin4ddr > 1800 * 1000 * 1000) |
837 | return -EINVAL; | 837 | return -EINVAL; |
838 | 838 | ||
839 | if (cinfo->regm3 > 0) | 839 | if (cinfo->regm_dispc > 0) |
840 | cinfo->dsi1_pll_fclk = cinfo->clkin4ddr / cinfo->regm3; | 840 | cinfo->dsi_pll_hsdiv_dispc_clk = |
841 | cinfo->clkin4ddr / cinfo->regm_dispc; | ||
841 | else | 842 | else |
842 | cinfo->dsi1_pll_fclk = 0; | 843 | cinfo->dsi_pll_hsdiv_dispc_clk = 0; |
843 | 844 | ||
844 | if (cinfo->regm4 > 0) | 845 | if (cinfo->regm_dsi > 0) |
845 | cinfo->dsi2_pll_fclk = cinfo->clkin4ddr / cinfo->regm4; | 846 | cinfo->dsi_pll_hsdiv_dsi_clk = |
847 | cinfo->clkin4ddr / cinfo->regm_dsi; | ||
846 | else | 848 | else |
847 | cinfo->dsi2_pll_fclk = 0; | 849 | cinfo->dsi_pll_hsdiv_dsi_clk = 0; |
848 | 850 | ||
849 | return 0; | 851 | return 0; |
850 | } | 852 | } |
@@ -857,18 +859,18 @@ int dsi_pll_calc_clock_div_pck(bool is_tft, unsigned long req_pck, | |||
857 | struct dispc_clock_info best_dispc; | 859 | struct dispc_clock_info best_dispc; |
858 | int min_fck_per_pck; | 860 | int min_fck_per_pck; |
859 | int match = 0; | 861 | int match = 0; |
860 | unsigned long dss_clk_fck2, max_dss_fck; | 862 | unsigned long dss_sys_clk, max_dss_fck; |
861 | 863 | ||
862 | dss_clk_fck2 = dss_clk_get_rate(DSS_CLK_SYSCK); | 864 | dss_sys_clk = dss_clk_get_rate(DSS_CLK_SYSCK); |
863 | 865 | ||
864 | max_dss_fck = dss_feat_get_max_dss_fck(); | 866 | max_dss_fck = dss_feat_get_max_dss_fck(); |
865 | 867 | ||
866 | if (req_pck == dsi.cache_req_pck && | 868 | if (req_pck == dsi.cache_req_pck && |
867 | dsi.cache_cinfo.clkin == dss_clk_fck2) { | 869 | dsi.cache_cinfo.clkin == dss_sys_clk) { |
868 | DSSDBG("DSI clock info found from cache\n"); | 870 | DSSDBG("DSI clock info found from cache\n"); |
869 | *dsi_cinfo = dsi.cache_cinfo; | 871 | *dsi_cinfo = dsi.cache_cinfo; |
870 | dispc_find_clk_divs(is_tft, req_pck, dsi_cinfo->dsi1_pll_fclk, | 872 | dispc_find_clk_divs(is_tft, req_pck, |
871 | dispc_cinfo); | 873 | dsi_cinfo->dsi_pll_hsdiv_dispc_clk, dispc_cinfo); |
872 | return 0; | 874 | return 0; |
873 | } | 875 | } |
874 | 876 | ||
@@ -889,8 +891,8 @@ retry: | |||
889 | memset(&best_dispc, 0, sizeof(best_dispc)); | 891 | memset(&best_dispc, 0, sizeof(best_dispc)); |
890 | 892 | ||
891 | memset(&cur, 0, sizeof(cur)); | 893 | memset(&cur, 0, sizeof(cur)); |
892 | cur.clkin = dss_clk_fck2; | 894 | cur.clkin = dss_sys_clk; |
893 | cur.use_dss2_fck = 1; | 895 | cur.use_sys_clk = 1; |
894 | cur.highfreq = 0; | 896 | cur.highfreq = 0; |
895 | 897 | ||
896 | /* no highfreq: 0.75MHz < Fint = clkin / regn < 2.1MHz */ | 898 | /* no highfreq: 0.75MHz < Fint = clkin / regn < 2.1MHz */ |
@@ -916,30 +918,32 @@ retry: | |||
916 | if (cur.clkin4ddr > 1800 * 1000 * 1000) | 918 | if (cur.clkin4ddr > 1800 * 1000 * 1000) |
917 | break; | 919 | break; |
918 | 920 | ||
919 | /* DSI1_PLL_FCLK(MHz) = DSIPHY(MHz) / regm3 < 173MHz */ | 921 | /* dsi_pll_hsdiv_dispc_clk(MHz) = |
920 | for (cur.regm3 = 1; cur.regm3 < REGM3_MAX; | 922 | * DSIPHY(MHz) / regm_dispc < 173MHz/186Mhz */ |
921 | ++cur.regm3) { | 923 | for (cur.regm_dispc = 1; cur.regm_dispc < REGM_DISPC_MAX; |
924 | ++cur.regm_dispc) { | ||
922 | struct dispc_clock_info cur_dispc; | 925 | struct dispc_clock_info cur_dispc; |
923 | cur.dsi1_pll_fclk = cur.clkin4ddr / cur.regm3; | 926 | cur.dsi_pll_hsdiv_dispc_clk = |
927 | cur.clkin4ddr / cur.regm_dispc; | ||
924 | 928 | ||
925 | /* this will narrow down the search a bit, | 929 | /* this will narrow down the search a bit, |
926 | * but still give pixclocks below what was | 930 | * but still give pixclocks below what was |
927 | * requested */ | 931 | * requested */ |
928 | if (cur.dsi1_pll_fclk < req_pck) | 932 | if (cur.dsi_pll_hsdiv_dispc_clk < req_pck) |
929 | break; | 933 | break; |
930 | 934 | ||
931 | if (cur.dsi1_pll_fclk > max_dss_fck) | 935 | if (cur.dsi_pll_hsdiv_dispc_clk > max_dss_fck) |
932 | continue; | 936 | continue; |
933 | 937 | ||
934 | if (min_fck_per_pck && | 938 | if (min_fck_per_pck && |
935 | cur.dsi1_pll_fclk < | 939 | cur.dsi_pll_hsdiv_dispc_clk < |
936 | req_pck * min_fck_per_pck) | 940 | req_pck * min_fck_per_pck) |
937 | continue; | 941 | continue; |
938 | 942 | ||
939 | match = 1; | 943 | match = 1; |
940 | 944 | ||
941 | dispc_find_clk_divs(is_tft, req_pck, | 945 | dispc_find_clk_divs(is_tft, req_pck, |
942 | cur.dsi1_pll_fclk, | 946 | cur.dsi_pll_hsdiv_dispc_clk, |
943 | &cur_dispc); | 947 | &cur_dispc); |
944 | 948 | ||
945 | if (abs(cur_dispc.pck - req_pck) < | 949 | if (abs(cur_dispc.pck - req_pck) < |
@@ -968,9 +972,9 @@ found: | |||
968 | return -EINVAL; | 972 | return -EINVAL; |
969 | } | 973 | } |
970 | 974 | ||
971 | /* DSI2_PLL_FCLK (regm4) is not used */ | 975 | /* dsi_pll_hsdiv_dsi_clk (regm_dsi) is not used */ |
972 | best.regm4 = 0; | 976 | best.regm_dsi = 0; |
973 | best.dsi2_pll_fclk = 0; | 977 | best.dsi_pll_hsdiv_dsi_clk = 0; |
974 | 978 | ||
975 | if (dsi_cinfo) | 979 | if (dsi_cinfo) |
976 | *dsi_cinfo = best; | 980 | *dsi_cinfo = best; |
@@ -994,18 +998,20 @@ int dsi_pll_set_clock_div(struct dsi_clock_info *cinfo) | |||
994 | 998 | ||
995 | dsi.current_cinfo.fint = cinfo->fint; | 999 | dsi.current_cinfo.fint = cinfo->fint; |
996 | dsi.current_cinfo.clkin4ddr = cinfo->clkin4ddr; | 1000 | dsi.current_cinfo.clkin4ddr = cinfo->clkin4ddr; |
997 | dsi.current_cinfo.dsi1_pll_fclk = cinfo->dsi1_pll_fclk; | 1001 | dsi.current_cinfo.dsi_pll_hsdiv_dispc_clk = |
998 | dsi.current_cinfo.dsi2_pll_fclk = cinfo->dsi2_pll_fclk; | 1002 | cinfo->dsi_pll_hsdiv_dispc_clk; |
1003 | dsi.current_cinfo.dsi_pll_hsdiv_dsi_clk = | ||
1004 | cinfo->dsi_pll_hsdiv_dsi_clk; | ||
999 | 1005 | ||
1000 | dsi.current_cinfo.regn = cinfo->regn; | 1006 | dsi.current_cinfo.regn = cinfo->regn; |
1001 | dsi.current_cinfo.regm = cinfo->regm; | 1007 | dsi.current_cinfo.regm = cinfo->regm; |
1002 | dsi.current_cinfo.regm3 = cinfo->regm3; | 1008 | dsi.current_cinfo.regm_dispc = cinfo->regm_dispc; |
1003 | dsi.current_cinfo.regm4 = cinfo->regm4; | 1009 | dsi.current_cinfo.regm_dsi = cinfo->regm_dsi; |
1004 | 1010 | ||
1005 | DSSDBG("DSI Fint %ld\n", cinfo->fint); | 1011 | DSSDBG("DSI Fint %ld\n", cinfo->fint); |
1006 | 1012 | ||
1007 | DSSDBG("clkin (%s) rate %ld, highfreq %d\n", | 1013 | DSSDBG("clkin (%s) rate %ld, highfreq %d\n", |
1008 | cinfo->use_dss2_fck ? "dss2_fck" : "pclkfree", | 1014 | cinfo->use_sys_clk ? "dss_sys_clk" : "pclkfree", |
1009 | cinfo->clkin, | 1015 | cinfo->clkin, |
1010 | cinfo->highfreq); | 1016 | cinfo->highfreq); |
1011 | 1017 | ||
@@ -1022,14 +1028,14 @@ int dsi_pll_set_clock_div(struct dsi_clock_info *cinfo) | |||
1022 | 1028 | ||
1023 | DSSDBG("Clock lane freq %ld Hz\n", cinfo->clkin4ddr / 4); | 1029 | DSSDBG("Clock lane freq %ld Hz\n", cinfo->clkin4ddr / 4); |
1024 | 1030 | ||
1025 | DSSDBG("regm3 = %d, %s (%s) = %lu\n", cinfo->regm3, | 1031 | DSSDBG("regm_dispc = %d, %s (%s) = %lu\n", cinfo->regm_dispc, |
1026 | dss_get_generic_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC), | 1032 | dss_get_generic_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC), |
1027 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC), | 1033 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC), |
1028 | cinfo->dsi1_pll_fclk); | 1034 | cinfo->dsi_pll_hsdiv_dispc_clk); |
1029 | DSSDBG("regm4 = %d, %s (%s) = %lu\n", cinfo->regm4, | 1035 | DSSDBG("regm_dsi = %d, %s (%s) = %lu\n", cinfo->regm_dsi, |
1030 | dss_get_generic_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DSI), | 1036 | dss_get_generic_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DSI), |
1031 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DSI), | 1037 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DSI), |
1032 | cinfo->dsi2_pll_fclk); | 1038 | cinfo->dsi_pll_hsdiv_dsi_clk); |
1033 | 1039 | ||
1034 | REG_FLD_MOD(DSI_PLL_CONTROL, 0, 0, 0); /* DSI_PLL_AUTOMODE = manual */ | 1040 | REG_FLD_MOD(DSI_PLL_CONTROL, 0, 0, 0); /* DSI_PLL_AUTOMODE = manual */ |
1035 | 1041 | ||
@@ -1037,9 +1043,9 @@ int dsi_pll_set_clock_div(struct dsi_clock_info *cinfo) | |||
1037 | l = FLD_MOD(l, 1, 0, 0); /* DSI_PLL_STOPMODE */ | 1043 | l = FLD_MOD(l, 1, 0, 0); /* DSI_PLL_STOPMODE */ |
1038 | l = FLD_MOD(l, cinfo->regn - 1, 7, 1); /* DSI_PLL_REGN */ | 1044 | l = FLD_MOD(l, cinfo->regn - 1, 7, 1); /* DSI_PLL_REGN */ |
1039 | l = FLD_MOD(l, cinfo->regm, 18, 8); /* DSI_PLL_REGM */ | 1045 | l = FLD_MOD(l, cinfo->regm, 18, 8); /* DSI_PLL_REGM */ |
1040 | l = FLD_MOD(l, cinfo->regm3 > 0 ? cinfo->regm3 - 1 : 0, | 1046 | l = FLD_MOD(l, cinfo->regm_dispc > 0 ? cinfo->regm_dispc - 1 : 0, |
1041 | 22, 19); /* DSI_CLOCK_DIV */ | 1047 | 22, 19); /* DSI_CLOCK_DIV */ |
1042 | l = FLD_MOD(l, cinfo->regm4 > 0 ? cinfo->regm4 - 1 : 0, | 1048 | l = FLD_MOD(l, cinfo->regm_dsi > 0 ? cinfo->regm_dsi - 1 : 0, |
1043 | 26, 23); /* DSIPROTO_CLOCK_DIV */ | 1049 | 26, 23); /* DSIPROTO_CLOCK_DIV */ |
1044 | dsi_write_reg(DSI_PLL_CONFIGURATION1, l); | 1050 | dsi_write_reg(DSI_PLL_CONFIGURATION1, l); |
1045 | 1051 | ||
@@ -1057,7 +1063,7 @@ int dsi_pll_set_clock_div(struct dsi_clock_info *cinfo) | |||
1057 | 1063 | ||
1058 | l = dsi_read_reg(DSI_PLL_CONFIGURATION2); | 1064 | l = dsi_read_reg(DSI_PLL_CONFIGURATION2); |
1059 | l = FLD_MOD(l, f, 4, 1); /* DSI_PLL_FREQSEL */ | 1065 | l = FLD_MOD(l, f, 4, 1); /* DSI_PLL_FREQSEL */ |
1060 | l = FLD_MOD(l, cinfo->use_dss2_fck ? 0 : 1, | 1066 | l = FLD_MOD(l, cinfo->use_sys_clk ? 0 : 1, |
1061 | 11, 11); /* DSI_PLL_CLKSEL */ | 1067 | 11, 11); /* DSI_PLL_CLKSEL */ |
1062 | l = FLD_MOD(l, cinfo->highfreq, | 1068 | l = FLD_MOD(l, cinfo->highfreq, |
1063 | 12, 12); /* DSI_PLL_HIGHFREQ */ | 1069 | 12, 12); /* DSI_PLL_HIGHFREQ */ |
@@ -1186,26 +1192,26 @@ void dsi_dump_clocks(struct seq_file *s) | |||
1186 | 1192 | ||
1187 | seq_printf(s, "dsi pll source = %s\n", | 1193 | seq_printf(s, "dsi pll source = %s\n", |
1188 | clksel == 0 ? | 1194 | clksel == 0 ? |
1189 | "dss2_alwon_fclk" : "pclkfree"); | 1195 | "dss_sys_clk" : "pclkfree"); |
1190 | 1196 | ||
1191 | seq_printf(s, "Fint\t\t%-16luregn %u\n", cinfo->fint, cinfo->regn); | 1197 | seq_printf(s, "Fint\t\t%-16luregn %u\n", cinfo->fint, cinfo->regn); |
1192 | 1198 | ||
1193 | seq_printf(s, "CLKIN4DDR\t%-16luregm %u\n", | 1199 | seq_printf(s, "CLKIN4DDR\t%-16luregm %u\n", |
1194 | cinfo->clkin4ddr, cinfo->regm); | 1200 | cinfo->clkin4ddr, cinfo->regm); |
1195 | 1201 | ||
1196 | seq_printf(s, "%s (%s)\t%-16luregm3 %u\t(%s)\n", | 1202 | seq_printf(s, "%s (%s)\t%-16luregm_dispc %u\t(%s)\n", |
1197 | dss_get_generic_clk_source_name(dispc_clk_src), | 1203 | dss_get_generic_clk_source_name(dispc_clk_src), |
1198 | dss_feat_get_clk_source_name(dispc_clk_src), | 1204 | dss_feat_get_clk_source_name(dispc_clk_src), |
1199 | cinfo->dsi1_pll_fclk, | 1205 | cinfo->dsi_pll_hsdiv_dispc_clk, |
1200 | cinfo->regm3, | 1206 | cinfo->regm_dispc, |
1201 | dispc_clk_src == DSS_CLK_SRC_FCK ? | 1207 | dispc_clk_src == DSS_CLK_SRC_FCK ? |
1202 | "off" : "on"); | 1208 | "off" : "on"); |
1203 | 1209 | ||
1204 | seq_printf(s, "%s (%s)\t%-16luregm4 %u\t(%s)\n", | 1210 | seq_printf(s, "%s (%s)\t%-16luregm_dsi %u\t(%s)\n", |
1205 | dss_get_generic_clk_source_name(dsi_clk_src), | 1211 | dss_get_generic_clk_source_name(dsi_clk_src), |
1206 | dss_feat_get_clk_source_name(dsi_clk_src), | 1212 | dss_feat_get_clk_source_name(dsi_clk_src), |
1207 | cinfo->dsi2_pll_fclk, | 1213 | cinfo->dsi_pll_hsdiv_dsi_clk, |
1208 | cinfo->regm4, | 1214 | cinfo->regm_dsi, |
1209 | dsi_clk_src == DSS_CLK_SRC_FCK ? | 1215 | dsi_clk_src == DSS_CLK_SRC_FCK ? |
1210 | "off" : "on"); | 1216 | "off" : "on"); |
1211 | 1217 | ||
@@ -2989,12 +2995,12 @@ static int dsi_configure_dsi_clocks(struct omap_dss_device *dssdev) | |||
2989 | struct dsi_clock_info cinfo; | 2995 | struct dsi_clock_info cinfo; |
2990 | int r; | 2996 | int r; |
2991 | 2997 | ||
2992 | /* we always use DSS2_FCK as input clock */ | 2998 | /* we always use DSS_CLK_SYSCK as input clock */ |
2993 | cinfo.use_dss2_fck = true; | 2999 | cinfo.use_sys_clk = true; |
2994 | cinfo.regn = dssdev->phy.dsi.div.regn; | 3000 | cinfo.regn = dssdev->phy.dsi.div.regn; |
2995 | cinfo.regm = dssdev->phy.dsi.div.regm; | 3001 | cinfo.regm = dssdev->phy.dsi.div.regm; |
2996 | cinfo.regm3 = dssdev->phy.dsi.div.regm3; | 3002 | cinfo.regm_dispc = dssdev->phy.dsi.div.regm_dispc; |
2997 | cinfo.regm4 = dssdev->phy.dsi.div.regm4; | 3003 | cinfo.regm_dsi = dssdev->phy.dsi.div.regm_dsi; |
2998 | r = dsi_calc_clock_rates(dssdev, &cinfo); | 3004 | r = dsi_calc_clock_rates(dssdev, &cinfo); |
2999 | if (r) { | 3005 | if (r) { |
3000 | DSSERR("Failed to calc dsi clocks\n"); | 3006 | DSSERR("Failed to calc dsi clocks\n"); |
@@ -3016,7 +3022,7 @@ static int dsi_configure_dispc_clocks(struct omap_dss_device *dssdev) | |||
3016 | int r; | 3022 | int r; |
3017 | unsigned long long fck; | 3023 | unsigned long long fck; |
3018 | 3024 | ||
3019 | fck = dsi_get_dsi1_pll_rate(); | 3025 | fck = dsi_get_pll_hsdiv_dispc_rate(); |
3020 | 3026 | ||
3021 | dispc_cinfo.lck_div = dssdev->phy.dsi.div.lck_div; | 3027 | dispc_cinfo.lck_div = dssdev->phy.dsi.div.lck_div; |
3022 | dispc_cinfo.pck_div = dssdev->phy.dsi.div.pck_div; | 3028 | dispc_cinfo.pck_div = dssdev->phy.dsi.div.pck_div; |
@@ -3244,7 +3250,7 @@ int dsi_init_display(struct omap_dss_device *dssdev) | |||
3244 | return 0; | 3250 | return 0; |
3245 | } | 3251 | } |
3246 | 3252 | ||
3247 | void dsi_wait_dsi1_pll_active(void) | 3253 | void dsi_wait_pll_hsdiv_dispc_active(void) |
3248 | { | 3254 | { |
3249 | if (wait_for_bit_change(DSI_PLL_STATUS, 7, 1) != 1) | 3255 | if (wait_for_bit_change(DSI_PLL_STATUS, 7, 1) != 1) |
3250 | DSSERR("%s (%s) not active\n", | 3256 | DSSERR("%s (%s) not active\n", |
@@ -3252,7 +3258,7 @@ void dsi_wait_dsi1_pll_active(void) | |||
3252 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC)); | 3258 | dss_feat_get_clk_source_name(DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC)); |
3253 | } | 3259 | } |
3254 | 3260 | ||
3255 | void dsi_wait_dsi2_pll_active(void) | 3261 | void dsi_wait_pll_hsdiv_dsi_active(void) |
3256 | { | 3262 | { |
3257 | if (wait_for_bit_change(DSI_PLL_STATUS, 8, 1) != 1) | 3263 | if (wait_for_bit_change(DSI_PLL_STATUS, 8, 1) != 1) |
3258 | DSSERR("%s (%s) not active\n", | 3264 | DSSERR("%s (%s) not active\n", |