Skip to content

Commit 292284f

Browse files
committed
ASoC: fsl: Support MQS on i.MX943
Merge series from Shengjiu Wang <[email protected]>: There are two MQS instances on the i.MX943 platform. The definition of bit positions in the control register are different. In order to support these MQS modules, define two compatible strings to distinguish them.
2 parents 8eb27b5 + a1a771e commit 292284f

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

Documentation/devicetree/bindings/sound/fsl,mqs.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ properties:
2323
- fsl,imx8qm-mqs
2424
- fsl,imx8qxp-mqs
2525
- fsl,imx93-mqs
26+
- fsl,imx943-aonmix-mqs
27+
- fsl,imx943-wakeupmix-mqs
2628
- fsl,imx95-aonmix-mqs
2729
- fsl,imx95-netcmix-mqs
2830

sound/soc/fsl/fsl_mqs.c

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,12 +410,40 @@ static const struct fsl_mqs_soc_data fsl_mqs_imx95_netc_data = {
410410
.div_shift = 9,
411411
};
412412

413+
static const struct fsl_mqs_soc_data fsl_mqs_imx943_aon_data = {
414+
.type = TYPE_REG_SM,
415+
.ctrl_off = 0x88,
416+
.en_mask = BIT(1),
417+
.en_shift = 1,
418+
.rst_mask = BIT(2),
419+
.rst_shift = 2,
420+
.osr_mask = BIT(3),
421+
.osr_shift = 3,
422+
.div_mask = GENMASK(15, 8),
423+
.div_shift = 8,
424+
};
425+
426+
static const struct fsl_mqs_soc_data fsl_mqs_imx943_wakeup_data = {
427+
.type = TYPE_REG_GPR,
428+
.ctrl_off = 0x10,
429+
.en_mask = BIT(1),
430+
.en_shift = 1,
431+
.rst_mask = BIT(2),
432+
.rst_shift = 2,
433+
.osr_mask = BIT(3),
434+
.osr_shift = 3,
435+
.div_mask = GENMASK(15, 8),
436+
.div_shift = 8,
437+
};
438+
413439
static const struct of_device_id fsl_mqs_dt_ids[] = {
414440
{ .compatible = "fsl,imx8qm-mqs", .data = &fsl_mqs_imx8qm_data },
415441
{ .compatible = "fsl,imx6sx-mqs", .data = &fsl_mqs_imx6sx_data },
416442
{ .compatible = "fsl,imx93-mqs", .data = &fsl_mqs_imx93_data },
417443
{ .compatible = "fsl,imx95-aonmix-mqs", .data = &fsl_mqs_imx95_aon_data },
418444
{ .compatible = "fsl,imx95-netcmix-mqs", .data = &fsl_mqs_imx95_netc_data },
445+
{ .compatible = "fsl,imx943-aonmix-mqs", .data = &fsl_mqs_imx943_aon_data },
446+
{ .compatible = "fsl,imx943-wakeupmix-mqs", .data = &fsl_mqs_imx943_wakeup_data },
419447
{}
420448
};
421449
MODULE_DEVICE_TABLE(of, fsl_mqs_dt_ids);

0 commit comments

Comments
 (0)