Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert downstream wm8804 changes #2364

Merged
merged 1 commit into from Feb 18, 2018

Conversation

HiassofT
Copy link
Contributor

@HiassofT HiassofT commented Feb 2, 2018

It looks like the changes to the wm8804 codec that we have here in the rpi tree come from a time where the i2s driver didn't support mmap and hacking in 32bit support (which isn't supported by the codec and breaks 24-bit support) was used as a workaround. Not exactly sure why idle_bias_off was changed, but that smells rather suspicously like a workaround, too.

I've successfully tested the Hifiberry Digi Pro, Justboom Digi and Cirrus Logic Audio Card with the local changes reverted.

ping @hifiberry @shawaj could you test with this PR as well?

@shawaj
Copy link

shawaj commented Feb 2, 2018 via email

@francesco-vannini
Copy link

not until I am back I'm afraid but I can mid next week if that's OK

@popcornmix
Copy link
Collaborator

@HiassofT we're certainly keen to drop downstream patches if they are no longer required.
Lets plan to merge this in a week if no objections.

@popcornmix popcornmix force-pushed the rpi-4.14.y branch 3 times, most recently from 7465564 to 47efcbd Compare February 5, 2018 20:13
@HiassofT
Copy link
Contributor Author

HiassofT commented Feb 6, 2018

rebased onto current rpi-4.14.y tree and added Signed-off-by

@francesco-vannini
Copy link

@HiassofT to test this could we do it in the same way as #2365 ?

@HiassofT
Copy link
Contributor Author

HiassofT commented Feb 8, 2018

@francesco-vannini sure, here's a precompiled RPi2 kernel:
http://www.horus.com/~hias/tmp/rpi/rpi2-4.14-revert-wm8804.tar.gz

The format change from S24_LE to S24_3LE effectively disables 24-bit
mode as S24_3LE isn't supported by bcm2835-i2s. This causes issues
with drivers that want to use wm8804 in 24-bit mode.

Adding the S32_LE format is also incorrect, according to the datasheet
only 16-24 bit formats are supported.

Signed-off-by: Matthias Reichl <hias@horus.com>
@pelwell
Copy link
Contributor

pelwell commented Feb 18, 2018

Is there any feedback on this PR?

@HiassofT
Copy link
Contributor Author

@francesco-vannini commented here #2365 (comment) that this PR seems to be fine

Tested a few samples with various samplerate and bitspersample and all seems fine for both #2365 and #2364

@pelwell pelwell merged commit 225b421 into raspberrypi:rpi-4.14.y Feb 18, 2018
@francesco-vannini
Copy link

Sorry @pelwell , in the excitement of having actually been able to do the compilation and all I forgot to update you with a comment here ;)

popcornmix added a commit to raspberrypi/firmware that referenced this pull request Feb 20, 2018
kernel: Add support for SuperAudioBoard sound card (#2386)
See: raspberrypi/linux#2386

kernel: Revert downstream wm8804 changes
See: raspberrypi/linux#2364

kernel: Generic Rotary Encoder overlay for multiple instances (#2388)
See: raspberrypi/linux#2388

kernel: dwc_otg: Fix a regression when dequeueing isochronous transfers
See: raspberrypi/linux#2380

kernel: dwc_otg: add smp_mb() to prevent driver state corruption on boot
See: raspberrypi/linux#2382

kernel: overlays: Allow multiple instances of gpio-ir[-tx]
kernel: overlay: Add missing pinctrl reference to gpio-ir

kernel: properly fix S24_LE mode with pcm512x codec
See: raspberrypi/linux#2365
popcornmix added a commit to Hexxeh/rpi-firmware that referenced this pull request Feb 20, 2018
kernel: Add support for SuperAudioBoard sound card (#2386)
See: raspberrypi/linux#2386

kernel: Revert downstream wm8804 changes
See: raspberrypi/linux#2364

kernel: Generic Rotary Encoder overlay for multiple instances (#2388)
See: raspberrypi/linux#2388

kernel: dwc_otg: Fix a regression when dequeueing isochronous transfers
See: raspberrypi/linux#2380

kernel: dwc_otg: add smp_mb() to prevent driver state corruption on boot
See: raspberrypi/linux#2382

kernel: overlays: Allow multiple instances of gpio-ir[-tx]
kernel: overlay: Add missing pinctrl reference to gpio-ir

kernel: properly fix S24_LE mode with pcm512x codec
See: raspberrypi/linux#2365
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants