Skip to content

Commit fd98145

Browse files
committed
Support reading Subsystem ID from Device Tree
Merge series from Stefan Binding <sbinding@opensource.cirrus.com>: In PC systems using ACPI, the driver is able to read back an SSID from the _SUB property. This SSID uniquely identifies the system, which enables the driver to read the correct firmware and tuning for that system from linux-firmware. Currently there is no way of reading this property from device tree. Add an equivalent property in device tree to perform the same role.
2 parents 63b4c34 + 46c8b4d commit fd98145

254 files changed

Lines changed: 2338 additions & 1019 deletions

File tree

Some content is hidden

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

Documentation/devicetree/bindings/sound/cirrus,cs35l41.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,12 @@ properties:
151151
minimum: 0
152152
maximum: 5
153153

154+
cirrus,subsystem-id:
155+
$ref: /schemas/types.yaml#/definitions/string
156+
description:
157+
Subsystem ID. If this property is present, it sets the system name,
158+
used to identify the firmware and tuning to load.
159+
154160
required:
155161
- compatible
156162
- reg

Documentation/netlink/specs/conntrack.yaml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -575,8 +575,8 @@ operations:
575575
- nat-dst
576576
- timeout
577577
- mark
578-
- counter-orig
579-
- counter-reply
578+
- counters-orig
579+
- counters-reply
580580
- use
581581
- id
582582
- nat-dst
@@ -591,7 +591,6 @@ operations:
591591
request:
592592
value: 0x101
593593
attributes:
594-
- nfgen-family
595594
- mark
596595
- filter
597596
- status
@@ -608,8 +607,8 @@ operations:
608607
- nat-dst
609608
- timeout
610609
- mark
611-
- counter-orig
612-
- counter-reply
610+
- counters-orig
611+
- counters-reply
613612
- use
614613
- id
615614
- nat-dst

Documentation/netlink/specs/mptcp_pm.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ definitions:
2828
traffic-patterns it can take a long time until the
2929
MPTCP_EVENT_ESTABLISHED is sent.
3030
Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, sport,
31-
dport, server-side.
31+
dport, server-side, [flags].
3232
-
3333
name: established
3434
doc: >-
3535
A MPTCP connection is established (can start new subflows).
3636
Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, sport,
37-
dport, server-side.
37+
dport, server-side, [flags].
3838
-
3939
name: closed
4040
doc: >-

Documentation/sound/alsa-configuration.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2293,7 +2293,7 @@ delayed_register
22932293
notice the need.
22942294
skip_validation
22952295
Skip unit descriptor validation (default: no).
2296-
The option is used to ignores the validation errors with the hexdump
2296+
The option is used to ignore the validation errors with the hexdump
22972297
of the unit descriptor instead of a driver probe error, so that we
22982298
can check its details.
22992299
quirk_flags

MAINTAINERS

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7430,7 +7430,7 @@ S: Supported
74307430
F: Documentation/devicetree/bindings/dpll/dpll-device.yaml
74317431
F: Documentation/devicetree/bindings/dpll/dpll-pin.yaml
74327432
F: Documentation/driver-api/dpll.rst
7433-
F: drivers/dpll/*
7433+
F: drivers/dpll/
74347434
F: include/linux/dpll.h
74357435
F: include/uapi/linux/dpll.h
74367436

@@ -16204,6 +16204,7 @@ R: Rik van Riel <riel@surriel.com>
1620416204
R: Liam R. Howlett <Liam.Howlett@oracle.com>
1620516205
R: Vlastimil Babka <vbabka@suse.cz>
1620616206
R: Harry Yoo <harry.yoo@oracle.com>
16207+
R: Jann Horn <jannh@google.com>
1620716208
L: linux-mm@kvack.org
1620816209
S: Maintained
1620916210
F: include/linux/rmap.h
@@ -16248,6 +16249,7 @@ R: Nico Pache <npache@redhat.com>
1624816249
R: Ryan Roberts <ryan.roberts@arm.com>
1624916250
R: Dev Jain <dev.jain@arm.com>
1625016251
R: Barry Song <baohua@kernel.org>
16252+
R: Lance Yang <lance.yang@linux.dev>
1625116253
L: linux-mm@kvack.org
1625216254
S: Maintained
1625316255
W: http://www.linux-mm.org
@@ -22060,6 +22062,7 @@ F: drivers/infiniband/ulp/rtrs/
2206022062

2206122063
RUNTIME VERIFICATION (RV)
2206222064
M: Steven Rostedt <rostedt@goodmis.org>
22065+
M: Gabriele Monaco <gmonaco@redhat.com>
2206322066
L: linux-trace-kernel@vger.kernel.org
2206422067
S: Maintained
2206522068
F: Documentation/trace/rv/
@@ -24267,7 +24270,7 @@ F: Documentation/devicetree/bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
2426724270
F: drivers/input/keyboard/sun4i-lradc-keys.c
2426824271

2426924272
SUNDANCE NETWORK DRIVER
24270-
M: Denis Kirjanov <dkirjanov@suse.de>
24273+
M: Denis Kirjanov <kirjanov@gmail.com>
2427124274
L: netdev@vger.kernel.org
2427224275
S: Maintained
2427324276
F: drivers/net/ethernet/dlink/sundance.c

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
VERSION = 6
33
PATCHLEVEL = 17
44
SUBLEVEL = 0
5-
EXTRAVERSION = -rc6
5+
EXTRAVERSION = -rc7
66
NAME = Baby Opossum Posse
77

88
# *DOCUMENTATION*

arch/arm64/include/asm/kvm_host.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1369,6 +1369,7 @@ static inline bool kvm_system_needs_idmapped_vectors(void)
13691369
}
13701370

13711371
void kvm_init_host_debug_data(void);
1372+
void kvm_debug_init_vhe(void);
13721373
void kvm_vcpu_load_debug(struct kvm_vcpu *vcpu);
13731374
void kvm_vcpu_put_debug(struct kvm_vcpu *vcpu);
13741375
void kvm_debug_set_guest_ownership(struct kvm_vcpu *vcpu);

arch/arm64/include/asm/kvm_pgtable.h

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -355,11 +355,6 @@ static inline kvm_pte_t *kvm_dereference_pteref(struct kvm_pgtable_walker *walke
355355
return pteref;
356356
}
357357

358-
static inline kvm_pte_t *kvm_dereference_pteref_raw(kvm_pteref_t pteref)
359-
{
360-
return pteref;
361-
}
362-
363358
static inline int kvm_pgtable_walk_begin(struct kvm_pgtable_walker *walker)
364359
{
365360
/*
@@ -389,11 +384,6 @@ static inline kvm_pte_t *kvm_dereference_pteref(struct kvm_pgtable_walker *walke
389384
return rcu_dereference_check(pteref, !(walker->flags & KVM_PGTABLE_WALK_SHARED));
390385
}
391386

392-
static inline kvm_pte_t *kvm_dereference_pteref_raw(kvm_pteref_t pteref)
393-
{
394-
return rcu_dereference_raw(pteref);
395-
}
396-
397387
static inline int kvm_pgtable_walk_begin(struct kvm_pgtable_walker *walker)
398388
{
399389
if (walker->flags & KVM_PGTABLE_WALK_SHARED)
@@ -561,26 +551,6 @@ static inline int kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2
561551
*/
562552
void kvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt);
563553

564-
/**
565-
* kvm_pgtable_stage2_destroy_range() - Destroy the unlinked range of addresses.
566-
* @pgt: Page-table structure initialised by kvm_pgtable_stage2_init*().
567-
* @addr: Intermediate physical address at which to place the mapping.
568-
* @size: Size of the mapping.
569-
*
570-
* The page-table is assumed to be unreachable by any hardware walkers prior
571-
* to freeing and therefore no TLB invalidation is performed.
572-
*/
573-
void kvm_pgtable_stage2_destroy_range(struct kvm_pgtable *pgt,
574-
u64 addr, u64 size);
575-
576-
/**
577-
* kvm_pgtable_stage2_destroy_pgd() - Destroy the PGD of guest stage-2 page-table.
578-
* @pgt: Page-table structure initialised by kvm_pgtable_stage2_init*().
579-
*
580-
* It is assumed that the rest of the page-table is freed before this operation.
581-
*/
582-
void kvm_pgtable_stage2_destroy_pgd(struct kvm_pgtable *pgt);
583-
584554
/**
585555
* kvm_pgtable_stage2_free_unlinked() - Free an unlinked stage-2 paging structure.
586556
* @mm_ops: Memory management callbacks.

arch/arm64/include/asm/kvm_pkvm.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,9 +179,7 @@ struct pkvm_mapping {
179179

180180
int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu,
181181
struct kvm_pgtable_mm_ops *mm_ops);
182-
void pkvm_pgtable_stage2_destroy_range(struct kvm_pgtable *pgt,
183-
u64 addr, u64 size);
184-
void pkvm_pgtable_stage2_destroy_pgd(struct kvm_pgtable *pgt);
182+
void pkvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt);
185183
int pkvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, u64 phys,
186184
enum kvm_pgtable_prot prot, void *mc,
187185
enum kvm_pgtable_walk_flags flags);

arch/arm64/kvm/arm.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2113,8 +2113,10 @@ static void cpu_hyp_init_features(void)
21132113
{
21142114
cpu_set_hyp_vector();
21152115

2116-
if (is_kernel_in_hyp_mode())
2116+
if (is_kernel_in_hyp_mode()) {
21172117
kvm_timer_init_vhe();
2118+
kvm_debug_init_vhe();
2119+
}
21182120

21192121
if (vgic_present)
21202122
kvm_vgic_init_cpu_hardware();

0 commit comments

Comments
 (0)