Skip to content

Commit 3b9adfb

Browse files
committed
Merge tag 'asoc-fix-v6.5-rc3' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Fixes for v6.5 A collection of device specific fixes, none particularly remarkable. There's a set of repetitive fixes for the RealTek drivers fixing an issue with suspend that was replicated in multiple drivers.
2 parents 8019a4a + f85739c commit 3b9adfb

File tree

321 files changed

+3500
-2050
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

321 files changed

+3500
-2050
lines changed

.mailmap

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ Jisheng Zhang <jszhang@kernel.org> <Jisheng.Zhang@synaptics.com>
241241
Johan Hovold <johan@kernel.org> <jhovold@gmail.com>
242242
Johan Hovold <johan@kernel.org> <johan@hovoldconsulting.com>
243243
John Crispin <john@phrozen.org> <blogic@openwrt.org>
244+
John Fastabend <john.fastabend@gmail.com> <john.r.fastabend@intel.com>
244245
John Keeping <john@keeping.me.uk> <john@metanate.com>
245246
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
246247
John Stultz <johnstul@us.ibm.com>
@@ -454,6 +455,8 @@ Sebastian Reichel <sre@kernel.org> <sre@debian.org>
454455
Sedat Dilek <sedat.dilek@gmail.com> <sedat.dilek@credativ.de>
455456
Seth Forshee <sforshee@kernel.org> <seth.forshee@canonical.com>
456457
Shannon Nelson <shannon.nelson@amd.com> <snelson@pensando.io>
458+
Shannon Nelson <shannon.nelson@amd.com> <shannon.nelson@intel.com>
459+
Shannon Nelson <shannon.nelson@amd.com> <shannon.nelson@oracle.com>
457460
Shiraz Hashim <shiraz.linux.kernel@gmail.com> <shiraz.hashim@st.com>
458461
Shuah Khan <shuah@kernel.org> <shuahkhan@gmail.com>
459462
Shuah Khan <shuah@kernel.org> <shuah.khan@hp.com>

Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ properties:
105105
G coefficient for temperature equation.
106106
Default for series 5 = 60000
107107
Default for series 6 = 57400
108-
multipleOf: 1000
108+
multipleOf: 100
109109
minimum: 1000
110110
$ref: /schemas/types.yaml#/definitions/uint32
111111

@@ -114,7 +114,7 @@ properties:
114114
H coefficient for temperature equation.
115115
Default for series 5 = 200000
116116
Default for series 6 = 249400
117-
multipleOf: 1000
117+
multipleOf: 100
118118
minimum: 1000
119119
$ref: /schemas/types.yaml#/definitions/uint32
120120

@@ -131,7 +131,7 @@ properties:
131131
J coefficient for temperature equation.
132132
Default for series 5 = -100
133133
Default for series 6 = 0
134-
multipleOf: 1000
134+
multipleOf: 100
135135
maximum: 0
136136
$ref: /schemas/types.yaml#/definitions/int32
137137

Documentation/devicetree/bindings/serial/cavium-uart.txt

Lines changed: 0 additions & 19 deletions
This file was deleted.

Documentation/devicetree/bindings/serial/nxp,lpc1850-uart.txt

Lines changed: 0 additions & 28 deletions
This file was deleted.

Makefile

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
VERSION = 6
33
PATCHLEVEL = 5
44
SUBLEVEL = 0
5-
EXTRAVERSION = -rc2
5+
EXTRAVERSION = -rc3
66
NAME = Hurr durr I'ma ninja sloth
77

88
# *DOCUMENTATION*
@@ -555,11 +555,23 @@ LINUXINCLUDE := \
555555
$(USERINCLUDE)
556556

557557
KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
558-
KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \
559-
-fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \
560-
-Werror=implicit-function-declaration -Werror=implicit-int \
561-
-Werror=return-type -Wno-format-security -funsigned-char \
562-
-std=gnu11
558+
559+
KBUILD_CFLAGS :=
560+
KBUILD_CFLAGS += -std=gnu11
561+
KBUILD_CFLAGS += -fshort-wchar
562+
KBUILD_CFLAGS += -funsigned-char
563+
KBUILD_CFLAGS += -fno-common
564+
KBUILD_CFLAGS += -fno-PIE
565+
KBUILD_CFLAGS += -fno-strict-aliasing
566+
KBUILD_CFLAGS += -Wall
567+
KBUILD_CFLAGS += -Wundef
568+
KBUILD_CFLAGS += -Werror=implicit-function-declaration
569+
KBUILD_CFLAGS += -Werror=implicit-int
570+
KBUILD_CFLAGS += -Werror=return-type
571+
KBUILD_CFLAGS += -Werror=strict-prototypes
572+
KBUILD_CFLAGS += -Wno-format-security
573+
KBUILD_CFLAGS += -Wno-trigraphs
574+
563575
KBUILD_CPPFLAGS := -D__KERNEL__
564576
KBUILD_RUSTFLAGS := $(rust_common_flags) \
565577
--target=$(objtree)/scripts/target.json \

arch/arm64/include/asm/kvm_host.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -727,6 +727,8 @@ struct kvm_vcpu_arch {
727727
#define DBG_SS_ACTIVE_PENDING __vcpu_single_flag(sflags, BIT(5))
728728
/* PMUSERENR for the guest EL0 is on physical CPU */
729729
#define PMUSERENR_ON_CPU __vcpu_single_flag(sflags, BIT(6))
730+
/* WFI instruction trapped */
731+
#define IN_WFI __vcpu_single_flag(sflags, BIT(7))
730732

731733

732734
/* Pointer to the vcpu's SVE FFR for sve_{save,load}_state() */

arch/arm64/include/asm/kvm_pgtable.h

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -608,22 +608,26 @@ int kvm_pgtable_stage2_wrprotect(struct kvm_pgtable *pgt, u64 addr, u64 size);
608608
kvm_pte_t kvm_pgtable_stage2_mkyoung(struct kvm_pgtable *pgt, u64 addr);
609609

610610
/**
611-
* kvm_pgtable_stage2_mkold() - Clear the access flag in a page-table entry.
611+
* kvm_pgtable_stage2_test_clear_young() - Test and optionally clear the access
612+
* flag in a page-table entry.
612613
* @pgt: Page-table structure initialised by kvm_pgtable_stage2_init*().
613614
* @addr: Intermediate physical address to identify the page-table entry.
615+
* @size: Size of the address range to visit.
616+
* @mkold: True if the access flag should be cleared.
614617
*
615618
* The offset of @addr within a page is ignored.
616619
*
617-
* If there is a valid, leaf page-table entry used to translate @addr, then
618-
* clear the access flag in that entry.
620+
* Tests and conditionally clears the access flag for every valid, leaf
621+
* page-table entry used to translate the range [@addr, @addr + @size).
619622
*
620623
* Note that it is the caller's responsibility to invalidate the TLB after
621624
* calling this function to ensure that the updated permissions are visible
622625
* to the CPUs.
623626
*
624-
* Return: The old page-table entry prior to clearing the flag, 0 on failure.
627+
* Return: True if any of the visited PTEs had the access flag set.
625628
*/
626-
kvm_pte_t kvm_pgtable_stage2_mkold(struct kvm_pgtable *pgt, u64 addr);
629+
bool kvm_pgtable_stage2_test_clear_young(struct kvm_pgtable *pgt, u64 addr,
630+
u64 size, bool mkold);
627631

628632
/**
629633
* kvm_pgtable_stage2_relax_perms() - Relax the permissions enforced by a
@@ -645,18 +649,6 @@ kvm_pte_t kvm_pgtable_stage2_mkold(struct kvm_pgtable *pgt, u64 addr);
645649
int kvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr,
646650
enum kvm_pgtable_prot prot);
647651

648-
/**
649-
* kvm_pgtable_stage2_is_young() - Test whether a page-table entry has the
650-
* access flag set.
651-
* @pgt: Page-table structure initialised by kvm_pgtable_stage2_init*().
652-
* @addr: Intermediate physical address to identify the page-table entry.
653-
*
654-
* The offset of @addr within a page is ignored.
655-
*
656-
* Return: True if the page-table entry has the access flag set, false otherwise.
657-
*/
658-
bool kvm_pgtable_stage2_is_young(struct kvm_pgtable *pgt, u64 addr);
659-
660652
/**
661653
* kvm_pgtable_stage2_flush_range() - Clean and invalidate data cache to Point
662654
* of Coherency for guest stage-2 address

arch/arm64/include/asm/virt.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ extern u32 __boot_cpu_mode[2];
7878

7979
void __hyp_set_vectors(phys_addr_t phys_vector_base);
8080
void __hyp_reset_vectors(void);
81+
bool is_kvm_arm_initialised(void);
8182

8283
DECLARE_STATIC_KEY_FALSE(kvm_protected_mode_initialized);
8384

arch/arm64/kernel/fpsimd.c

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -847,6 +847,8 @@ void sve_sync_from_fpsimd_zeropad(struct task_struct *task)
847847
int vec_set_vector_length(struct task_struct *task, enum vec_type type,
848848
unsigned long vl, unsigned long flags)
849849
{
850+
bool free_sme = false;
851+
850852
if (flags & ~(unsigned long)(PR_SVE_VL_INHERIT |
851853
PR_SVE_SET_VL_ONEXEC))
852854
return -EINVAL;
@@ -897,21 +899,36 @@ int vec_set_vector_length(struct task_struct *task, enum vec_type type,
897899
task->thread.fp_type = FP_STATE_FPSIMD;
898900
}
899901

900-
if (system_supports_sme() && type == ARM64_VEC_SME) {
901-
task->thread.svcr &= ~(SVCR_SM_MASK |
902-
SVCR_ZA_MASK);
903-
clear_thread_flag(TIF_SME);
902+
if (system_supports_sme()) {
903+
if (type == ARM64_VEC_SME ||
904+
!(task->thread.svcr & (SVCR_SM_MASK | SVCR_ZA_MASK))) {
905+
/*
906+
* We are changing the SME VL or weren't using
907+
* SME anyway, discard the state and force a
908+
* reallocation.
909+
*/
910+
task->thread.svcr &= ~(SVCR_SM_MASK |
911+
SVCR_ZA_MASK);
912+
clear_thread_flag(TIF_SME);
913+
free_sme = true;
914+
}
904915
}
905916

906917
if (task == current)
907918
put_cpu_fpsimd_context();
908919

909920
/*
910-
* Force reallocation of task SVE and SME state to the correct
911-
* size on next use:
921+
* Free the changed states if they are not in use, SME will be
922+
* reallocated to the correct size on next use and we just
923+
* allocate SVE now in case it is needed for use in streaming
924+
* mode.
912925
*/
913-
sve_free(task);
914-
if (system_supports_sme() && type == ARM64_VEC_SME)
926+
if (system_supports_sve()) {
927+
sve_free(task);
928+
sve_alloc(task, true);
929+
}
930+
931+
if (free_sme)
915932
sme_free(task);
916933

917934
task_set_vl(task, type, vl);

arch/arm64/kernel/vdso/vgettimeofday.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66
*
77
*/
88

9+
int __kernel_clock_gettime(clockid_t clock, struct __kernel_timespec *ts);
10+
int __kernel_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz);
11+
int __kernel_clock_getres(clockid_t clock_id, struct __kernel_timespec *res);
12+
913
int __kernel_clock_gettime(clockid_t clock,
1014
struct __kernel_timespec *ts)
1115
{

0 commit comments

Comments
 (0)