ALSA: emu10k1: remove reserved_page
authorMaciej S. Szmigiero <mail@maciej.szmigiero.name>
Tue, 13 Feb 2018 23:04:58 +0000 (00:04 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 14 Feb 2018 06:46:50 +0000 (07:46 +0100)
commita4463c92db0805581f4dfb700f72533cf25ebd48
tree20e678073eb4543ae0512ee19361abbd7ae916e8
parentbafeca673f04ecd54cbb6b87faf8d525a886d481
ALSA: emu10k1: remove reserved_page

The emu10k1-family chips need the first page (index 0) reserved in their
page tables for some reason (every emu10k1 driver I've checked does this
without much of an explanation).
Using the first page for normal samples results in a broken playback.

However, we already have a dummy page allocated - so called "silent page"
and, in fact, had always been setting it as the first page in the chip page
table because an initialization of every entry of the page table to point
to a silent page happens after and overwrites the reserved_page allocation.

So the only thing remaining to remove the reserved_page allocation is a
trivial change to the page allocation logic to ignore the first page entry
and start its allocations from the second entry (index 1).

Signed-off-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/sound/emu10k1.h
sound/pci/emu10k1/emu10k1_main.c
sound/pci/emu10k1/memory.c