mm/cma: Move dma contiguous changes into a seperate config

We want to use CMA for allocating hash page table and real mode area for
PPC64. Hence move DMA contiguous related changes into a seperate config
so that ppc64 can enable CMA without requiring DMA contiguous.

Acked-by: Michal Nazarewicz <mina86@mina86.com>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
[removed defconfig changes]
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
ALSA: hda - Add GPIO control to AD1884 HP fixup

The AD1884 HP laptop/mobile quirks control GPIO1 bit as the primary
mute as well.  Add the similar control to ad1884 fixup for auto
parser, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Add fixup for Lenovo Thinkpad with AD1984 codec

Ported from the static quirk (model=thinkpad).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Add fixup for HP TouchSmart with AD1984A codec

Ported from the static quirk.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Remove static quirks for AD1882

Now the generic parser can work stably enough, we can get rid of the
static quirks.  Let's start from AD1882.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Remove static quirks for AD1884/1984 & variants

Since the necessary device-specific fixups for Thinkpad and HP devices
have been already ported, we can remove all static quirks for AD1884,
AD1984, AD1884A and AD1984A codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Remove static quirks for AD1981 and AD1983 codecs

These are relatively easy ones, as we already converted all static
quirks to the generic parser.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Remove static quirks for AD1988 codecs

For removing static quirks for AD1988 variants, a new fixup defining
the 6stack pinconfig has been added for the buggy BIOS.  Other than
that, we can cut off straightforwardly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Convert the static quirk for Samsung Q1 Ultra

... to a fixup entry.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Convert static quirks for AD1986A Samsung laptops

Just need to override some pin-configurations.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Drop static quirks for other AD1986A Samsung machines

BIOS on Samsung R55, M55 and M50 provide the proper pin-configs,
so we can remove the corresponding static quirk entries gracefully.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Drop static quirk for Toshiba Satellite L40-10Q

The BIOS provides good pin-configurations, so we can drop the static
quirk now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Drop a few other static quirks for AD1986A

Most of ASUS laptops and Lenovo N100 provide proper BIOS pin-configs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hda - Remove static quirks for AD1986A codec

Finally all the static quirks in patch_analog.c are reduced by this
patch.  As machines with AD1986A codec are all old and often their
BIOS are buggy, we need to keep at least a few static pin conifgs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Add missing defines for RME AIO and RayDAT

The driver did not support all possible configurations. These defines
will be used by later commits to add the missing functionality.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Introduce hdspm_is_raydat_or_aio()

RME RayDAT and AIO cards are new designs with different register
settings. Since we need to distinguish them from older cards multiple
times in the driver, refactor the code into a separate helper function.

No functional change intended.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Augment HDSPM_TOGGLE_SETTING for AIO/RayDAT

The HDSPM_TOGGLE_SETTING functions alter the control_register on older
cards. On newer cards (AIO/RayDAT), they have to operate on the
settings_register instead.

This patch augments the existing functions to work with AIO/RayDAT, too.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Drop duplicate code in hdspm_set_system_clock_mode()

hdspm_set_system_clock_mode() is almost a one-by-one copy of
hdspm_set_toggle_setting(). To improve code quality, remove the
duplication.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Add S/PDIF and WCK48 controls for RME RayDAT

This commit adds new ALSA controls to send single-speed WordClock and
S/PDIF-Professional on RME RayDAT cards.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: hdspm - Add S/PDIF, XLR, WCK48 and ADAT-in controls for RME AIO cards

This commit adds the following ALSA controls:

   - S/PDIF Out Optical to switch S/PDIF Out from coaxial to optical
   - S/PDIF Out Professional to send the Pro bit in the output stream
   - ADAT-Internal to enable ADAT/TDIF Expansion Board (AEB/TEB)
   - XLR Breakout Cable if analogue I/O uses the XLR breakout cable
   - WCK48 to force WordClock to the 32-48kHz range (single speed) if
     the card is operating at higher frequencies

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>