• Status Closed
  • Percent Complete
  • Task Type Bugs
  • Category Drivers
  • Assigned To No-one
  • Operating System iPod 5G
  • Severity Low
  • Priority Very Low
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by sysadmindave - 2013-05-06
Last edited by MikeS - 2013-05-09

FS#12860 - iPod 5g line out silent

I haven't isolated the code change that caused this yet, but in current git builds the dock port line out never has signal, where with the latest stable release (3.13) on the same iPod it works fine. Hardware problems ruled out- works the same on both of my 5G iPods.

I'll add detail if I find the exact problem, but wanted to get it reported just in case someone knows the cause immediately. I did see that there are a number of wm8758 changes recently, so that probably needs a closer look.

Closed by  MikeS
2013-05-09 23:35
Reason for closing:  Fixed
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

Fixed, b210a3a

AndyP commented on 2013-05-08 11:37

git snapshot build fd9e2568908f91b5bcf7378dc28f6ec070d6027a dated 2013-04-14 17:04 works fine for line-out on my 5.5G ipod
git snapshot build e61e9c61d0ba6990576d59efca07afa13fd97566 dated 2013-04-23 01:38 does not. This appears to be the last of the sound changes. I'll also try to find out where it broke.

Looks like the sound changes are definitely what broke it- I did a git bisect on the range you gave, and the last working build for iPod line-out is the commit just prior to the 0c7b7873984e04941c9f21fa272638018fdb9a16 sound changes, so that's fd9e2568908f91b5bcf7378dc28f6ec070d6027a, the working revision that you stated.
Hard to be completely sure with the bisect, as several of the in-between cleanup commits won't build properly, but it certainly points the finger at the sound changes in 0c7b787…

Found it! It looks like in the changes to sound.c and surrounding code, conversion from dB to hardware volume was forgotten for the lineout volume setting, so that when the volume was set to 0 dB in sound.c, it muted the lineout.


diff –git a/firmware/drivers/audio/wm8758.c b/firmware/drivers/audio/wm8758.c
index f7d7a5b..93ea7c2 100644
— a/firmware/drivers/audio/wm8758.c
+++ b/firmware/drivers/audio/wm8758.c
@@ -157,6 +157,10 @@ void audiohw_set_volume(int vol_l, int vol_r)
void audiohw_set_lineout_volume(int vol_l, int vol_r)

   int dac_l, amp_l, dac_r, amp_r;

+ vol_l = vol_tenthdb2hw(vol_l);
+ vol_r = vol_tenthdb2hw(vol_r);

   get_volume_params(vol_l, &dac_l, &amp_l);
   get_volume_params(vol_r, &dac_r, &amp_r);
MikeS commented on 2013-05-09 19:16

Hmmm…another one of those overlooked bits. Argh. It all started as such a mess so not too surprising. I'll give it all another review and probably commit this change.

MikeS commented on 2013-05-09 19:41

Pushed to b210a3a. Please double check so may close. :)

Confirmed, b210a3a works for me.

AndyP commented on 2013-05-09 20:44

Confirmed, also works for me


Available keyboard shortcuts


Task Details

Task Editing