diff options
author | William Wilgus <me.theuser@yahoo.com> | 2017-10-13 06:28:50 +0200 |
---|---|---|
committer | Amaury Pouly <amaury.pouly@gmail.com> | 2017-10-28 14:47:21 +0200 |
commit | b2c470719a79f301ff4e9a6adcc5307ef47cfacf (patch) | |
tree | 0d7c2e631cd8921ab62b22781f7480dcac993061 /firmware/target/arm/imx233/system-target.h | |
parent | 428464774fd2918d40235b7a596698c27ee578a3 (diff) | |
download | rockbox-b2c470719a79f301ff4e9a6adcc5307ef47cfacf.tar.gz rockbox-b2c470719a79f301ff4e9a6adcc5307ef47cfacf.zip |
imx233: Implement mutex for cpu_boost_lock/unlock
Playing AAC-HE files resulted in a race condition between
audio/codec/buffering for set_cpu_frequency
Change-Id: I35e1c1fd18db623e2990c305acdca03f57184d0d
Diffstat (limited to 'firmware/target/arm/imx233/system-target.h')
-rw-r--r-- | firmware/target/arm/imx233/system-target.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/firmware/target/arm/imx233/system-target.h b/firmware/target/arm/imx233/system-target.h index ee2df9a3e9..45dc58698a 100644 --- a/firmware/target/arm/imx233/system-target.h +++ b/firmware/target/arm/imx233/system-target.h | |||
@@ -54,6 +54,23 @@ bool imx233_us_elapsed(uint32_t ref, unsigned us_delay); | |||
54 | void imx233_reset_block(volatile uint32_t *block_reg); | 54 | void imx233_reset_block(volatile uint32_t *block_reg); |
55 | void imx233_enable_usb_controller(bool enable); | 55 | void imx233_enable_usb_controller(bool enable); |
56 | void imx233_enable_usb_phy(bool enable); | 56 | void imx233_enable_usb_phy(bool enable); |
57 | |||
58 | #ifdef HAVE_ADJUSTABLE_CPU_FREQ | ||
59 | #define CPU_BOOST_LOCK_DEFINED | ||
60 | |||
61 | static inline bool cpu_boost_lock(void) | ||
62 | { | ||
63 | bool set_cpu_frequency__lock(void); | ||
64 | return set_cpu_frequency__lock(); | ||
65 | } | ||
66 | |||
67 | static inline void cpu_boost_unlock(void) | ||
68 | { | ||
69 | void set_cpu_frequency__unlock(void); | ||
70 | set_cpu_frequency__unlock(); | ||
71 | } | ||
72 | #endif /* HAVE_ADJUSTABLE_CPU_FREQ */ | ||
73 | |||
57 | // NOTE: this is available even if HAVE_ADJUSTABLE_CPU_FREQ is undef | 74 | // NOTE: this is available even if HAVE_ADJUSTABLE_CPU_FREQ is undef |
58 | void imx233_set_cpu_frequency(long frequency); | 75 | void imx233_set_cpu_frequency(long frequency); |
59 | 76 | ||