summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2012-08-29 16:30:49 +0200
committerAmaury Pouly <amaury.pouly@gmail.com>2012-08-30 01:10:36 +0200
commit51f63f0b2a54742a5e1deb4289befb28c7d69b6d (patch)
tree492e79a9f399c7903f0a964e73f0ff9675abaa91
parentdbe9436ff2143e032bce80b2bb2074ec7b438768 (diff)
downloadrockbox-51f63f0b2a54742a5e1deb4289befb28c7d69b6d.tar.gz
rockbox-51f63f0b2a54742a5e1deb4289befb28c7d69b6d.zip
imx233: fix header, add emi function
Change-Id: I1030e94f0dad4b66646cafa20b61df8a5c7f9278
-rw-r--r--firmware/target/arm/imx233/clkctrl-imx233.c7
-rw-r--r--firmware/target/arm/imx233/clkctrl-imx233.h4
2 files changed, 9 insertions, 2 deletions
diff --git a/firmware/target/arm/imx233/clkctrl-imx233.c b/firmware/target/arm/imx233/clkctrl-imx233.c
index a5fc706350..6a96f218be 100644
--- a/firmware/target/arm/imx233/clkctrl-imx233.c
+++ b/firmware/target/arm/imx233/clkctrl-imx233.c
@@ -150,7 +150,7 @@ void imx233_clkctrl_set_fractional_divisor(enum imx233_clock_t clk, int fracdiv)
150 if(fracdiv != 0) 150 if(fracdiv != 0)
151 *REG = fracdiv; 151 *REG = fracdiv;
152 else 152 else
153 *REG = HW_CLKCTRL_FRAC_XX__CLKGATEXX;; 153 *REG = HW_CLKCTRL_FRAC_XX__CLKGATEXX;
154} 154}
155 155
156int imx233_clkctrl_get_fractional_divisor(enum imx233_clock_t clk) 156int imx233_clkctrl_get_fractional_divisor(enum imx233_clock_t clk)
@@ -260,6 +260,11 @@ bool imx233_clkctrl_is_auto_slow_monitor_enabled(enum imx233_as_monitor_t monito
260 return HW_CLKCTRL_HBUS & monitor; 260 return HW_CLKCTRL_HBUS & monitor;
261} 261}
262 262
263bool imx233_clkctrl_is_emi_sync_enabled(void)
264{
265 return !!(HW_CLKCTRL_EMI & HW_CLKCTRL_EMI__SYNC_MODE_EN);
266}
267
263unsigned imx233_clkctrl_get_clock_freq(enum imx233_clock_t clk) 268unsigned imx233_clkctrl_get_clock_freq(enum imx233_clock_t clk)
264{ 269{
265 switch(clk) 270 switch(clk)
diff --git a/firmware/target/arm/imx233/clkctrl-imx233.h b/firmware/target/arm/imx233/clkctrl-imx233.h
index c887391602..ec3412d0f3 100644
--- a/firmware/target/arm/imx233/clkctrl-imx233.h
+++ b/firmware/target/arm/imx233/clkctrl-imx233.h
@@ -124,7 +124,7 @@ enum imx233_clock_t
124 CLK_HBUS, /* freq, div, frac */ 124 CLK_HBUS, /* freq, div, frac */
125 CLK_PLL, /* freq, enable */ 125 CLK_PLL, /* freq, enable */
126 CLK_XTAL, /* freq */ 126 CLK_XTAL, /* freq */
127 CLK_EMI, /* freq */ 127 CLK_EMI, /* freq, div, frac, bypass (NOTE: don't modify directly EMI) */
128 CLK_XBUS, /* freq, div */ 128 CLK_XBUS, /* freq, div */
129}; 129};
130 130
@@ -177,6 +177,8 @@ void imx233_clkctrl_enable_usb_pll(bool enable);
177bool imx233_clkctrl_is_usb_pll_enabled(void); 177bool imx233_clkctrl_is_usb_pll_enabled(void);
178unsigned imx233_clkctrl_get_clock_freq(enum imx233_clock_t clk); 178unsigned imx233_clkctrl_get_clock_freq(enum imx233_clock_t clk);
179 179
180bool imx233_clkctrl_is_emi_sync_enabled(void);
181
180void imx233_clkctrl_set_auto_slow_divisor(enum imx233_as_div_t div); 182void imx233_clkctrl_set_auto_slow_divisor(enum imx233_as_div_t div);
181enum imx233_as_div_t imx233_clkctrl_get_auto_slow_divisor(void); 183enum imx233_as_div_t imx233_clkctrl_get_auto_slow_divisor(void);
182void imx233_clkctrl_enable_auto_slow(bool enable); 184void imx233_clkctrl_enable_auto_slow(bool enable);