diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2007-07-14 11:20:31 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2007-07-14 11:20:31 +0000 |
commit | 7d759f6b9ca96a4a64c71ac301eb59cb9702e74c (patch) | |
tree | fbaf5104716ccfed888c7d8506dbee15a881d4a2 /firmware/target/arm | |
parent | b51a20fb9b1cc57b813d1c0b90ad8c010b9eab84 (diff) | |
download | rockbox-7d759f6b9ca96a4a64c71ac301eb59cb9702e74c.tar.gz rockbox-7d759f6b9ca96a4a64c71ac301eb59cb9702e74c.zip |
Do some planned radio interface cleanup since adding in the LV24020LP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13880 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm')
4 files changed, 64 insertions, 6 deletions
diff --git a/firmware/target/arm/archos/av300/power-av300.c b/firmware/target/arm/archos/av300/power-av300.c index cfdce69b13..6cc8b4f7c7 100644 --- a/firmware/target/arm/archos/av300/power-av300.c +++ b/firmware/target/arm/archos/av300/power-av300.c | |||
@@ -84,12 +84,12 @@ void ide_power_enable(bool on) | |||
84 | 84 | ||
85 | static bool powered = false; | 85 | static bool powered = false; |
86 | 86 | ||
87 | bool radio_powered() | 87 | bool tuner_powered() |
88 | { | 88 | { |
89 | return powered; | 89 | return powered; |
90 | } | 90 | } |
91 | 91 | ||
92 | bool radio_power(bool status) | 92 | bool tuner_power(bool status) |
93 | { | 93 | { |
94 | bool old_status = powered; | 94 | bool old_status = powered; |
95 | powered = status; | 95 | powered = status; |
diff --git a/firmware/target/arm/iriver/h10/power-h10.c b/firmware/target/arm/iriver/h10/power-h10.c index 63eb2dc189..d0d3ce59d1 100644 --- a/firmware/target/arm/iriver/h10/power-h10.c +++ b/firmware/target/arm/iriver/h10/power-h10.c | |||
@@ -40,12 +40,12 @@ bool charger_enabled; | |||
40 | 40 | ||
41 | static bool powered = false; | 41 | static bool powered = false; |
42 | 42 | ||
43 | bool radio_powered() | 43 | bool tuner_powered() |
44 | { | 44 | { |
45 | return powered; | 45 | return powered; |
46 | } | 46 | } |
47 | 47 | ||
48 | bool radio_power(bool status) | 48 | bool tuner_power(bool status) |
49 | { | 49 | { |
50 | bool old_status = powered; | 50 | bool old_status = powered; |
51 | powered = status; | 51 | powered = status; |
diff --git a/firmware/target/arm/pnx0101/iriver-ifp7xx/power-ifp7xx.c b/firmware/target/arm/pnx0101/iriver-ifp7xx/power-ifp7xx.c index 4e4f585298..dfdcb1d27a 100644 --- a/firmware/target/arm/pnx0101/iriver-ifp7xx/power-ifp7xx.c +++ b/firmware/target/arm/pnx0101/iriver-ifp7xx/power-ifp7xx.c | |||
@@ -30,12 +30,12 @@ | |||
30 | 30 | ||
31 | static bool powered = false; | 31 | static bool powered = false; |
32 | 32 | ||
33 | bool radio_powered(void) | 33 | bool tuner_powered(void) |
34 | { | 34 | { |
35 | return powered; | 35 | return powered; |
36 | } | 36 | } |
37 | 37 | ||
38 | bool radio_power(bool status) | 38 | bool tuner_power(bool status) |
39 | { | 39 | { |
40 | bool old_status = powered; | 40 | bool old_status = powered; |
41 | powered = status; | 41 | powered = status; |
diff --git a/firmware/target/arm/sandisk/sansa-e200/power-e200.c b/firmware/target/arm/sandisk/sansa-e200/power-e200.c index dfa4211a91..002dcb8407 100644 --- a/firmware/target/arm/sandisk/sansa-e200/power-e200.c +++ b/firmware/target/arm/sandisk/sansa-e200/power-e200.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include "system.h" | 21 | #include "system.h" |
22 | #include "cpu.h" | 22 | #include "cpu.h" |
23 | #include "i2c-pp.h" | 23 | #include "i2c-pp.h" |
24 | #include "tuner.h" | ||
24 | 25 | ||
25 | void power_init(void) | 26 | void power_init(void) |
26 | { | 27 | { |
@@ -61,3 +62,60 @@ void ide_power_enable(bool on) | |||
61 | { | 62 | { |
62 | (void)on; | 63 | (void)on; |
63 | } | 64 | } |
65 | |||
66 | /** Tuner **/ | ||
67 | static bool powered = false; | ||
68 | |||
69 | bool tuner_power(bool status) | ||
70 | { | ||
71 | bool old_status = powered; | ||
72 | |||
73 | if (status != old_status) | ||
74 | { | ||
75 | if (status) | ||
76 | { | ||
77 | /* init mystery amplification device */ | ||
78 | outl(inl(0x70000084) | 0x1, 0x70000084); | ||
79 | udelay(5); | ||
80 | |||
81 | /* When power up, host should initialize the 3-wire bus | ||
82 | in host read mode: */ | ||
83 | |||
84 | /* 1. Set direction of the DATA-line to input-mode. */ | ||
85 | GPIOH_OUTPUT_EN &= ~(1 << 5); | ||
86 | GPIOH_ENABLE |= (1 << 5); | ||
87 | |||
88 | /* 2. Drive NR_W low */ | ||
89 | GPIOH_OUTPUT_VAL &= ~(1 << 3); | ||
90 | GPIOH_OUTPUT_EN |= (1 << 3); | ||
91 | GPIOH_ENABLE |= (1 << 3); | ||
92 | |||
93 | /* 3. Drive CLOCK high */ | ||
94 | GPIOH_OUTPUT_VAL |= (1 << 4); | ||
95 | GPIOH_OUTPUT_EN |= (1 << 4); | ||
96 | GPIOH_ENABLE |= (1 << 4); | ||
97 | |||
98 | lv24020lp_power(true); | ||
99 | } | ||
100 | else | ||
101 | { | ||
102 | lv24020lp_power(false); | ||
103 | |||
104 | /* set all as inputs */ | ||
105 | GPIOH_OUTPUT_EN &= ~((1 << 5) | (1 << 3) | (1 << 4)); | ||
106 | GPIOH_ENABLE &= ~((1 << 5) | (1 << 3) | (1 << 4)); | ||
107 | |||
108 | /* turn off mystery amplification device */ | ||
109 | outl(inl(0x70000084) & ~0x1, 0x70000084); | ||
110 | } | ||
111 | |||
112 | powered = status; | ||
113 | } | ||
114 | |||
115 | return old_status; | ||
116 | } | ||
117 | |||
118 | bool tuner_powered(void) | ||
119 | { | ||
120 | return powered; | ||
121 | } | ||