Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 257c2a02 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge tag 'asoc-3.8-rc4' of...

Merge tag 'asoc-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v3.8-rc4

The usual set of driver updates, nothing too thrilling in here - one
core change for the regulator bypass mode which was just not doing the
right thing at all and a bunch of driver specifics.
parents 0712eea3 a8c136d2
Loading
Loading
Loading
Loading
+24 −18
Original line number Diff line number Diff line
@@ -228,7 +228,7 @@ S: Maintained
F:	drivers/platform/x86/acerhdf.c

ACER WMI LAPTOP EXTRAS
M:	Joey Lee <jlee@novell.com>
M:	"Lee, Chun-Yi" <jlee@suse.com>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/acer-wmi.c
@@ -648,7 +648,7 @@ F: arch/arm/

ARM SUB-ARCHITECTURES
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S:	MAINTAINED
S:	Maintained
F:	arch/arm/mach-*/
F:	arch/arm/plat-*/
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git
@@ -1351,6 +1351,14 @@ W: http://wireless.kernel.org/en/users/Drivers/ath9k
S:	Supported
F:	drivers/net/wireless/ath/ath9k/

WILOCITY WIL6210 WIRELESS DRIVER
M:	Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
L:	linux-wireless@vger.kernel.org
L:	wil6210@qca.qualcomm.com
S:	Supported
W:	http://wireless.kernel.org/en/users/Drivers/wil6210
F:	drivers/net/wireless/ath/wil6210/

CARL9170 LINUX COMMUNITY WIRELESS DRIVER
M:	Christian Lamparter <chunkeey@googlemail.com>
L:	linux-wireless@vger.kernel.org
@@ -1964,9 +1972,9 @@ S: Maintained
F:	drivers/usb/host/ohci-ep93xx.c

CIRRUS LOGIC CS4270 SOUND DRIVER
M:	Timur Tabi <timur@freescale.com>
M:	Timur Tabi <timur@tabi.org>
L:	alsa-devel@alsa-project.org (moderated for non-subscribers)
S:	Supported
S:	Odd Fixes
F:	sound/soc/codecs/cs4270*

CLEANCACHE API
@@ -3183,9 +3191,9 @@ F: include/uapi/video/
F:	include/uapi/linux/fb.h

FREESCALE DIU FRAMEBUFFER DRIVER
M:	Timur Tabi <timur@freescale.com>
M:	Timur Tabi <timur@tabi.org>
L:	linux-fbdev@vger.kernel.org
S:	Supported
S:	Maintained
F:	drivers/video/fsl-diu-fb.*

FREESCALE DMA DRIVER
@@ -3220,9 +3228,8 @@ F: drivers/net/ethernet/freescale/fs_enet/
F:	include/linux/fs_enet_pd.h

FREESCALE QUICC ENGINE LIBRARY
M:	Timur Tabi <timur@freescale.com>
L:	linuxppc-dev@lists.ozlabs.org
S:	Supported
S:	Orphan
F:	arch/powerpc/sysdev/qe_lib/
F:	arch/powerpc/include/asm/*qe.h

@@ -3241,16 +3248,16 @@ S: Maintained
F:	drivers/net/ethernet/freescale/ucc_geth*

FREESCALE QUICC ENGINE UCC UART DRIVER
M:	Timur Tabi <timur@freescale.com>
M:	Timur Tabi <timur@tabi.org>
L:	linuxppc-dev@lists.ozlabs.org
S:	Supported
S:	Maintained
F:	drivers/tty/serial/ucc_uart.c

FREESCALE SOC SOUND DRIVERS
M:	Timur Tabi <timur@freescale.com>
M:	Timur Tabi <timur@tabi.org>
L:	alsa-devel@alsa-project.org (moderated for non-subscribers)
L:	linuxppc-dev@lists.ozlabs.org
S:	Supported
S:	Maintained
F:	sound/soc/fsl/fsl*
F:	sound/soc/fsl/mpc8610_hpcd.c

@@ -5077,7 +5084,7 @@ S: Maintained
F:	drivers/media/radio/radio-mr800.c

MSI LAPTOP SUPPORT
M:	"Lee, Chun-Yi" <jlee@novell.com>
M:	"Lee, Chun-Yi" <jlee@suse.com>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/msi-laptop.c
@@ -5507,8 +5514,7 @@ M: Benoît Cousson <b-cousson@ti.com>
M:	Paul Walmsley <paul@pwsan.com>
L:	linux-omap@vger.kernel.org
S:	Maintained
F:	arch/arm/mach-omap2/omap_hwmod.c
F:	arch/arm/plat-omap/include/plat/omap_hwmod.h
F:	arch/arm/mach-omap2/omap_hwmod.*

OMAP HWMOD DATA FOR OMAP4-BASED DEVICES
M:	Benoît Cousson <b-cousson@ti.com>
@@ -7082,7 +7088,7 @@ F: include/uapi/sound/
F:	sound/

SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEMENT (ASoC)
M:	Liam Girdwood <lrg@ti.com>
M:	Liam Girdwood <lgirdwood@gmail.com>
M:	Mark Brown <broonie@opensource.wolfsonmicro.com>
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
L:	alsa-devel@alsa-project.org (moderated for non-subscribers)
@@ -7334,7 +7340,7 @@ S: Odd Fixes
F:	drivers/staging/speakup/

STAGING - TI DSP BRIDGE DRIVERS
M:	Omar Ramirez Luna <omar.ramirez@ti.com>
M:	Omar Ramirez Luna <omar.ramirez@copitl.com>
S:	Odd Fixes
F:	drivers/staging/tidspbridge/

@@ -8526,7 +8532,7 @@ F: Documentation/x86/
F:	arch/x86/

X86 PLATFORM DRIVERS
M:	Matthew Garrett <mjg@redhat.com>
M:	Matthew Garrett <matthew.garrett@nebula.com>
L:	platform-driver-x86@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86.git
S:	Maintained
+1 −1
Original line number Diff line number Diff line
VERSION = 3
PATCHLEVEL = 8
SUBLEVEL = 0
EXTRAVERSION = -rc3
EXTRAVERSION = -rc4
NAME = Terrified Chipmunk

# *DOCUMENTATION*
+1 −0
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@ dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07.dtb \
dtb-$(CONFIG_ARCH_ZYNQ) += zynq-zc702.dtb

targets += dtbs
targets += $(dtb-y)
endif

# *.dtb used to be generated in the directory above. Clean out the
+1 −0
Original line number Diff line number Diff line
targets += dtbs
targets += $(dtb-y)

dtbs: $(addprefix $(obj)/, $(dtb-y))

+20 −16
Original line number Diff line number Diff line
@@ -24,7 +24,8 @@
/*
 * Software defined PTE bits definition.
 */
#define PTE_VALID		(_AT(pteval_t, 1) << 0)	/* pte_present() check */
#define PTE_VALID		(_AT(pteval_t, 1) << 0)
#define PTE_PROT_NONE		(_AT(pteval_t, 1) << 1)	/* only when !PTE_VALID */
#define PTE_FILE		(_AT(pteval_t, 1) << 2)	/* only when !pte_present() */
#define PTE_DIRTY		(_AT(pteval_t, 1) << 55)
#define PTE_SPECIAL		(_AT(pteval_t, 1) << 56)
@@ -60,9 +61,12 @@ extern void __pgd_error(const char *file, int line, unsigned long val);

extern pgprot_t pgprot_default;

#define _MOD_PROT(p, b)	__pgprot(pgprot_val(p) | (b))
#define __pgprot_modify(prot,mask,bits) \
	__pgprot((pgprot_val(prot) & ~(mask)) | (bits))

#define PAGE_NONE		_MOD_PROT(pgprot_default, PTE_NG | PTE_PXN | PTE_UXN | PTE_RDONLY)
#define _MOD_PROT(p, b)		__pgprot_modify(p, 0, b)

#define PAGE_NONE		__pgprot_modify(pgprot_default, PTE_TYPE_MASK, PTE_PROT_NONE)
#define PAGE_SHARED		_MOD_PROT(pgprot_default, PTE_USER | PTE_NG | PTE_PXN | PTE_UXN)
#define PAGE_SHARED_EXEC	_MOD_PROT(pgprot_default, PTE_USER | PTE_NG | PTE_PXN)
#define PAGE_COPY		_MOD_PROT(pgprot_default, PTE_USER | PTE_NG | PTE_PXN | PTE_UXN | PTE_RDONLY)
@@ -72,7 +76,7 @@ extern pgprot_t pgprot_default;
#define PAGE_KERNEL		_MOD_PROT(pgprot_default, PTE_PXN | PTE_UXN | PTE_DIRTY)
#define PAGE_KERNEL_EXEC	_MOD_PROT(pgprot_default, PTE_UXN | PTE_DIRTY)

#define __PAGE_NONE		__pgprot(_PAGE_DEFAULT | PTE_NG | PTE_PXN | PTE_UXN | PTE_RDONLY)
#define __PAGE_NONE		__pgprot(((_PAGE_DEFAULT) & ~PTE_TYPE_MASK) | PTE_PROT_NONE)
#define __PAGE_SHARED		__pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN)
#define __PAGE_SHARED_EXEC	__pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN)
#define __PAGE_COPY		__pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN | PTE_RDONLY)
@@ -125,16 +129,15 @@ extern struct page *empty_zero_page;
/*
 * The following only work if pte_present(). Undefined behaviour otherwise.
 */
#define pte_present(pte)	(pte_val(pte) & PTE_VALID)
#define pte_present(pte)	(pte_val(pte) & (PTE_VALID | PTE_PROT_NONE))
#define pte_dirty(pte)		(pte_val(pte) & PTE_DIRTY)
#define pte_young(pte)		(pte_val(pte) & PTE_AF)
#define pte_special(pte)	(pte_val(pte) & PTE_SPECIAL)
#define pte_write(pte)		(!(pte_val(pte) & PTE_RDONLY))
#define pte_exec(pte)		(!(pte_val(pte) & PTE_UXN))

#define pte_present_exec_user(pte) \
	((pte_val(pte) & (PTE_VALID | PTE_USER | PTE_UXN)) == \
	 (PTE_VALID | PTE_USER))
#define pte_valid_user(pte) \
	((pte_val(pte) & (PTE_VALID | PTE_USER)) == (PTE_VALID | PTE_USER))

#define PTE_BIT_FUNC(fn,op) \
static inline pte_t pte_##fn(pte_t pte) { pte_val(pte) op; return pte; }
@@ -157,10 +160,13 @@ extern void __sync_icache_dcache(pte_t pteval, unsigned long addr);
static inline void set_pte_at(struct mm_struct *mm, unsigned long addr,
			      pte_t *ptep, pte_t pte)
{
	if (pte_present_exec_user(pte))
	if (pte_valid_user(pte)) {
		if (pte_exec(pte))
			__sync_icache_dcache(pte, addr);
		if (!pte_dirty(pte))
			pte = pte_wrprotect(pte);
	}

	set_pte(ptep, pte);
}

@@ -170,9 +176,6 @@ static inline void set_pte_at(struct mm_struct *mm, unsigned long addr,
#define pte_huge(pte)		((pte_val(pte) & PTE_TYPE_MASK) == PTE_TYPE_HUGEPAGE)
#define pte_mkhuge(pte)		(__pte((pte_val(pte) & ~PTE_TYPE_MASK) | PTE_TYPE_HUGEPAGE))

#define __pgprot_modify(prot,mask,bits)		\
	__pgprot((pgprot_val(prot) & ~(mask)) | (bits))

#define __HAVE_ARCH_PTE_SPECIAL

/*
@@ -264,7 +267,8 @@ static inline pmd_t *pmd_offset(pud_t *pud, unsigned long addr)

static inline pte_t pte_modify(pte_t pte, pgprot_t newprot)
{
	const pteval_t mask = PTE_USER | PTE_PXN | PTE_UXN | PTE_RDONLY;
	const pteval_t mask = PTE_USER | PTE_PXN | PTE_UXN | PTE_RDONLY |
			      PTE_PROT_NONE | PTE_VALID;
	pte_val(pte) = (pte_val(pte) & ~mask) | (pgprot_val(newprot) & mask);
	return pte;
}
Loading