All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/27] Revised full patchset for PCM in-kernel copy support
@ 2017-06-01 20:58 ` Takashi Iwai
  0 siblings, 0 replies; 55+ messages in thread
From: Takashi Iwai @ 2017-06-01 20:58 UTC (permalink / raw)
  To: alsa-devel
  Cc: Takashi Sakamoto, Mark Brown, Hans Verkuil, linux-media,
	Felipe Balbi, Greg Kroah-Hartman, linux-usb

Hi,

this is a full patchset of what I sent previously, containing the all
changes instead of the snippet.  The main purpose of this patchset is
to eliminate the remaining usages of set_fs().  They are basically
used for in-kernel PCM data transfer, and this patch provides the new
API functions and replaces the hackish set_fs() calls with them.

Unlike the first patchset with the unified copy_silence ops, this adds
a new copy_kernel ops instead.  At the same time, copy/silence are
changed to receive the position and size in bytes instead of frames.
This allows us to simplify the PCM core code.  As a result, a good
amount of code could be removed from pcm_lib.c.

The difference from the previous patchset is that this is a full
patchset, i.e. all relevant drivers have been covered, and also some
small issues have been addressed, in addition, the documentation
update is provided, too.

I'm Cc'ing the media and the USB people since it touches solo6x10 and
usb-gadget drivers.

The previous ACK was dropped as each patch was rewritten again.  Sorry
for the doubly patch-review labours.


thanks,

Takashi

===

Takashi Iwai (26):
  ALSA: pcm: Introduce copy_user, copy_kernel and fill_silence ops
  ALSA: dummy: Convert to new PCM copy ops
  ALSA: es1938: Convert to the new PCM copy ops
  ALSA: nm256: Convert to new PCM copy ops
  ALSA: korg1212: Convert to the new PCM ops
  ALSA: rme32: Convert to the new PCM copy ops
  ALSA: rme96: Convert to the new PCM ops
  ALSA: rme9652: Convert to the new PCM ops
  ALSA: hdsp: Convert to the new PCM ops
  ALSA: gus: Convert to the new PCM ops
  ALSA: sb: Convert to the new PCM ops
  ALSA: sh: Convert to the new PCM ops
  ASoC: blackfin: Convert to the new PCM ops
  [media] solo6x10: Convert to the new PCM ops
  ALSA: pcm: Drop the old copy and silence ops
  ALSA: pcm: Check PCM state by a common helper function
  ALSA: pcm: Shuffle codes
  ALSA: pcm: Call directly the common read/write helpers
  ALSA: pcm: More unification of PCM transfer codes
  ALSA: pcm: Unify read/write loop
  ALSA: pcm: Simplify snd_pcm_playback_silence()
  ALSA: pcm: Direct in-kernel read/write support
  usb: gadget: u_uac1: Kill set_fs() usage
  ALSA: pcm: Kill set_fs() in PCM OSS layer
  ALSA: pcm: Build OSS writev/readv helpers conditionally
  ALSA: doc: Update copy_user, copy_kernel and fill_silence PCM ops

 .../sound/kernel-api/writing-an-alsa-driver.rst    | 111 ++--
 drivers/media/pci/solo6x10/solo6x10-g723.c         |  32 +-
 drivers/usb/gadget/function/u_uac1.c               |   7 +-
 include/sound/pcm.h                                |  80 ++-
 sound/core/oss/io.c                                |   4 +-
 sound/core/oss/pcm_oss.c                           |  81 +--
 sound/core/oss/pcm_plugin.h                        |   6 +-
 sound/core/pcm_lib.c                               | 564 ++++++++-------------
 sound/drivers/dummy.c                              |  20 +-
 sound/isa/gus/gus_pcm.c                            |  97 ++--
 sound/isa/sb/emu8000_pcm.c                         | 190 ++++---
 sound/pci/es1938.c                                 |  33 +-
 sound/pci/korg1212/korg1212.c                      | 112 ++--
 sound/pci/nm256/nm256.c                            |  57 ++-
 sound/pci/rme32.c                                  |  65 ++-
 sound/pci/rme96.c                                  |  70 ++-
 sound/pci/rme9652/hdsp.c                           |  67 ++-
 sound/pci/rme9652/rme9652.c                        |  71 ++-
 sound/sh/sh_dac_audio.c                            |  54 +-
 sound/soc/blackfin/bf5xx-ac97-pcm.c                |  27 +-
 sound/soc/blackfin/bf5xx-i2s-pcm.c                 |  36 +-
 sound/soc/soc-pcm.c                                |   5 +-
 22 files changed, 977 insertions(+), 812 deletions(-)

-- 
2.13.0

^ permalink raw reply	[flat|nested] 55+ messages in thread
* [PATCH] ALSA: hda - Fix applying MSI dual-codec mobo quirk
@ 2017-06-01  7:47 Takashi Iwai
  0 siblings, 0 replies; 55+ messages in thread
From: Takashi Iwai @ 2017-06-01  7:47 UTC (permalink / raw)
  To: alsa-devel

The previous commit [63691587f7b0: ALSA: hda - Apply dual-codec quirk
for MSI Z270-Gaming mobo] attempted to apply the existing dual-codec
quirk for a MSI mobo.  But it turned out that this isn't applied
properly due to the MSI-vendor quirk before this entry.  I overlooked
such two MSI entries just because they were put in the wrong position,
although we have a list ordered by PCI SSID numbers.

This patch fixes it by rearranging the unordered entries.

Fixes: 63691587f7b0 ("ALSA: hda - Apply dual-codec quirk for MSI Z270-Gaming mobo")
Reported-by: Rudolf Schmidt <info@rudolfschmidt.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/pci/hda/patch_realtek.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 918e45268915..a57988d617e9 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -2324,11 +2324,11 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x106b, 0x4a00, "Macbook 5,2", ALC889_FIXUP_MBA11_VREF),
 
 	SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC882_FIXUP_EAPD),
-	SND_PCI_QUIRK(0x1462, 0x7350, "MSI-7350", ALC889_FIXUP_CD),
-	SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
 	SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte EP45-DS3/Z87X-UD3H", ALC889_FIXUP_FRONT_HP_NO_PRESENCE),
 	SND_PCI_QUIRK(0x1458, 0xa0b8, "Gigabyte AZ370-Gaming", ALC1220_FIXUP_GB_DUAL_CODECS),
+	SND_PCI_QUIRK(0x1462, 0x7350, "MSI-7350", ALC889_FIXUP_CD),
 	SND_PCI_QUIRK(0x1462, 0xda57, "MSI Z270-Gaming", ALC1220_FIXUP_GB_DUAL_CODECS),
+	SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
 	SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX),
 	SND_PCI_QUIRK_VENDOR(0x1558, "Clevo laptop", ALC882_FIXUP_EAPD),
 	SND_PCI_QUIRK(0x161f, 0x2054, "Medion laptop", ALC883_FIXUP_EAPD),
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 55+ messages in thread

end of thread, other threads:[~2017-06-02 17:15 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-01 20:58 [PATCH v2 00/27] Revised full patchset for PCM in-kernel copy support Takashi Iwai
2017-06-01 20:58 ` Takashi Iwai
2017-06-01 20:58 ` [PATCH] ALSA: hda - Fix applying MSI dual-codec mobo quirk Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-02  5:36   ` [alsa-devel] " Takashi Iwai
2017-06-02  9:12   ` Sergei Shtylyov
2017-06-02  9:12     ` Sergei Shtylyov
2017-06-01 20:58 ` [PATCH v2 02/27] ALSA: pcm: Introduce copy_user, copy_kernel and fill_silence ops Takashi Iwai
2017-06-02 17:14   ` Mark Brown
2017-06-02 17:14     ` Mark Brown
2017-06-01 20:58 ` [PATCH v2 03/27] ALSA: dummy: Convert to new PCM copy ops Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 04/27] ALSA: es1938: Convert to the " Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 05/27] ALSA: nm256: Convert to " Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 06/27] ALSA: korg1212: Convert to the new PCM ops Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 07/27] ALSA: rme32: Convert to the new PCM copy ops Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 08/27] ALSA: rme96: Convert to the new PCM ops Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 09/27] ALSA: rme9652: " Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 10/27] ALSA: hdsp: " Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 11/27] ALSA: gus: " Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 12/27] ALSA: sb: " Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 13/27] ALSA: sh: " Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 14/27] ASoC: blackfin: " Takashi Iwai
2017-06-02 17:14   ` Mark Brown
2017-06-01 20:58 ` [PATCH v2 15/27] [media] solo6x10: " Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 21:30   ` Hans Verkuil
2017-06-01 20:58 ` [PATCH v2 16/27] ALSA: pcm: Drop the old copy and silence ops Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 17/27] ALSA: pcm: Check PCM state by a common helper function Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 18/27] ALSA: pcm: Shuffle codes Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 19/27] ALSA: pcm: Call directly the common read/write helpers Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 20/27] ALSA: pcm: More unification of PCM transfer codes Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 21/27] ALSA: pcm: Unify read/write loop Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 22/27] ALSA: pcm: Simplify snd_pcm_playback_silence() Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 23/27] ALSA: pcm: Direct in-kernel read/write support Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 24/27] usb: gadget: u_uac1: Kill set_fs() usage Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-01 23:48   ` Greg Kroah-Hartman
2017-06-01 23:48     ` Greg Kroah-Hartman
2017-06-01 20:58 ` [PATCH v2 25/27] ALSA: pcm: Kill set_fs() in PCM OSS layer Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 26/27] ALSA: pcm: Build OSS writev/readv helpers conditionally Takashi Iwai
2017-06-01 20:58 ` [PATCH v2 27/27] ALSA: doc: Update copy_user, copy_kernel and fill_silence PCM ops Takashi Iwai
2017-06-01 20:58   ` Takashi Iwai
2017-06-02  7:13 ` [PATCH v2 00/27] Revised full patchset for PCM in-kernel copy support Takashi Sakamoto
2017-06-02  7:13   ` Takashi Sakamoto
  -- strict thread matches above, loose matches on Subject: below --
2017-06-01  7:47 [PATCH] ALSA: hda - Fix applying MSI dual-codec mobo quirk Takashi Iwai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.