diff options
author | Alex Elder <elder@linaro.org> | 2014-04-21 17:11:38 -0400 |
---|---|---|
committer | Mike Turquette <mturquette@linaro.org> | 2014-04-30 14:51:30 -0400 |
commit | e756325206ebf284d00410077ea43eb53de8e9bf (patch) | |
tree | 83a457f304e8f2ec9b3e5f998ff10545bb28c8fc | |
parent | 4bac65ca7d86b7e219138706e9f687753ccbfee9 (diff) |
clk: bcm281xx: use init_data.name for clock name
Use the init_data.name field to hold the name of a Kona clock rather
than duplicating it.
Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
-rw-r--r-- | drivers/clk/bcm/clk-kona-setup.c | 6 | ||||
-rw-r--r-- | drivers/clk/bcm/clk-kona.c | 17 | ||||
-rw-r--r-- | drivers/clk/bcm/clk-kona.h | 3 |
3 files changed, 14 insertions, 12 deletions
diff --git a/drivers/clk/bcm/clk-kona-setup.c b/drivers/clk/bcm/clk-kona-setup.c index 54a06526f64f..9e7a9c11c951 100644 --- a/drivers/clk/bcm/clk-kona-setup.c +++ b/drivers/clk/bcm/clk-kona-setup.c | |||
@@ -64,7 +64,7 @@ static bool peri_clk_data_offsets_valid(struct kona_clk *bcm_clk) | |||
64 | 64 | ||
65 | BUG_ON(bcm_clk->type != bcm_clk_peri); | 65 | BUG_ON(bcm_clk->type != bcm_clk_peri); |
66 | peri = bcm_clk->u.peri; | 66 | peri = bcm_clk->u.peri; |
67 | name = bcm_clk->name; | 67 | name = bcm_clk->init_data.name; |
68 | range = bcm_clk->ccu->range; | 68 | range = bcm_clk->ccu->range; |
69 | 69 | ||
70 | limit = range - sizeof(u32); | 70 | limit = range - sizeof(u32); |
@@ -330,7 +330,7 @@ peri_clk_data_valid(struct kona_clk *bcm_clk) | |||
330 | return false; | 330 | return false; |
331 | 331 | ||
332 | peri = bcm_clk->u.peri; | 332 | peri = bcm_clk->u.peri; |
333 | name = bcm_clk->name; | 333 | name = bcm_clk->init_data.name; |
334 | gate = &peri->gate; | 334 | gate = &peri->gate; |
335 | if (gate_exists(gate) && !gate_valid(gate, "gate", name)) | 335 | if (gate_exists(gate) && !gate_valid(gate, "gate", name)) |
336 | return false; | 336 | return false; |
@@ -631,7 +631,7 @@ struct clk *kona_clk_setup(struct ccu_data *ccu, const char *name, | |||
631 | return NULL; | 631 | return NULL; |
632 | } | 632 | } |
633 | bcm_clk->ccu = ccu; | 633 | bcm_clk->ccu = ccu; |
634 | bcm_clk->name = name; | 634 | bcm_clk->init_data.name = name; |
635 | 635 | ||
636 | init_data = &bcm_clk->init_data; | 636 | init_data = &bcm_clk->init_data; |
637 | init_data->name = name; | 637 | init_data->name = name; |
diff --git a/drivers/clk/bcm/clk-kona.c b/drivers/clk/bcm/clk-kona.c index 4b4e35aeb778..bf0b70e87014 100644 --- a/drivers/clk/bcm/clk-kona.c +++ b/drivers/clk/bcm/clk-kona.c | |||
@@ -809,7 +809,7 @@ static int kona_peri_clk_enable(struct clk_hw *hw) | |||
809 | struct kona_clk *bcm_clk = to_kona_clk(hw); | 809 | struct kona_clk *bcm_clk = to_kona_clk(hw); |
810 | struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; | 810 | struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; |
811 | 811 | ||
812 | return clk_gate(bcm_clk->ccu, bcm_clk->name, gate, true); | 812 | return clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, true); |
813 | } | 813 | } |
814 | 814 | ||
815 | static void kona_peri_clk_disable(struct clk_hw *hw) | 815 | static void kona_peri_clk_disable(struct clk_hw *hw) |
@@ -817,7 +817,7 @@ static void kona_peri_clk_disable(struct clk_hw *hw) | |||
817 | struct kona_clk *bcm_clk = to_kona_clk(hw); | 817 | struct kona_clk *bcm_clk = to_kona_clk(hw); |
818 | struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; | 818 | struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; |
819 | 819 | ||
820 | (void)clk_gate(bcm_clk->ccu, bcm_clk->name, gate, false); | 820 | (void)clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, false); |
821 | } | 821 | } |
822 | 822 | ||
823 | static int kona_peri_clk_is_enabled(struct clk_hw *hw) | 823 | static int kona_peri_clk_is_enabled(struct clk_hw *hw) |
@@ -875,12 +875,13 @@ static int kona_peri_clk_set_parent(struct clk_hw *hw, u8 index) | |||
875 | 875 | ||
876 | ret = selector_write(bcm_clk->ccu, &data->gate, sel, trig, index); | 876 | ret = selector_write(bcm_clk->ccu, &data->gate, sel, trig, index); |
877 | if (ret == -ENXIO) { | 877 | if (ret == -ENXIO) { |
878 | pr_err("%s: gating failure for %s\n", __func__, bcm_clk->name); | 878 | pr_err("%s: gating failure for %s\n", __func__, |
879 | bcm_clk->init_data.name); | ||
879 | ret = -EIO; /* Don't proliferate weird errors */ | 880 | ret = -EIO; /* Don't proliferate weird errors */ |
880 | } else if (ret == -EIO) { | 881 | } else if (ret == -EIO) { |
881 | pr_err("%s: %strigger failed for %s\n", __func__, | 882 | pr_err("%s: %strigger failed for %s\n", __func__, |
882 | trig == &data->pre_trig ? "pre-" : "", | 883 | trig == &data->pre_trig ? "pre-" : "", |
883 | bcm_clk->name); | 884 | bcm_clk->init_data.name); |
884 | } | 885 | } |
885 | 886 | ||
886 | return ret; | 887 | return ret; |
@@ -939,10 +940,12 @@ static int kona_peri_clk_set_rate(struct clk_hw *hw, unsigned long rate, | |||
939 | ret = divider_write(bcm_clk->ccu, &data->gate, &data->div, | 940 | ret = divider_write(bcm_clk->ccu, &data->gate, &data->div, |
940 | &data->trig, scaled_div); | 941 | &data->trig, scaled_div); |
941 | if (ret == -ENXIO) { | 942 | if (ret == -ENXIO) { |
942 | pr_err("%s: gating failure for %s\n", __func__, bcm_clk->name); | 943 | pr_err("%s: gating failure for %s\n", __func__, |
944 | bcm_clk->init_data.name); | ||
943 | ret = -EIO; /* Don't proliferate weird errors */ | 945 | ret = -EIO; /* Don't proliferate weird errors */ |
944 | } else if (ret == -EIO) { | 946 | } else if (ret == -EIO) { |
945 | pr_err("%s: trigger failed for %s\n", __func__, bcm_clk->name); | 947 | pr_err("%s: trigger failed for %s\n", __func__, |
948 | bcm_clk->init_data.name); | ||
946 | } | 949 | } |
947 | 950 | ||
948 | return ret; | 951 | return ret; |
@@ -964,7 +967,7 @@ static bool __peri_clk_init(struct kona_clk *bcm_clk) | |||
964 | { | 967 | { |
965 | struct ccu_data *ccu = bcm_clk->ccu; | 968 | struct ccu_data *ccu = bcm_clk->ccu; |
966 | struct peri_clk_data *peri = bcm_clk->u.peri; | 969 | struct peri_clk_data *peri = bcm_clk->u.peri; |
967 | const char *name = bcm_clk->name; | 970 | const char *name = bcm_clk->init_data.name; |
968 | struct bcm_clk_trig *trig; | 971 | struct bcm_clk_trig *trig; |
969 | 972 | ||
970 | BUG_ON(bcm_clk->type != bcm_clk_peri); | 973 | BUG_ON(bcm_clk->type != bcm_clk_peri); |
diff --git a/drivers/clk/bcm/clk-kona.h b/drivers/clk/bcm/clk-kona.h index dee690951bb6..1a7eba4ac33a 100644 --- a/drivers/clk/bcm/clk-kona.h +++ b/drivers/clk/bcm/clk-kona.h | |||
@@ -373,8 +373,7 @@ struct peri_clk_data { | |||
373 | 373 | ||
374 | struct kona_clk { | 374 | struct kona_clk { |
375 | struct clk_hw hw; | 375 | struct clk_hw hw; |
376 | struct clk_init_data init_data; | 376 | struct clk_init_data init_data; /* includes name of this clock */ |
377 | const char *name; /* name of this clock */ | ||
378 | struct ccu_data *ccu; /* ccu this clock is associated with */ | 377 | struct ccu_data *ccu; /* ccu this clock is associated with */ |
379 | enum bcm_clk_type type; | 378 | enum bcm_clk_type type; |
380 | union { | 379 | union { |