Mark Brown 59f5c92140 ASoC: Intel: avs: Refactor machine-board registration
Merge series from Cezary Rojewski <cezary.rojewski@intel.com>:

Set of patches all connected to the machine-board registration process
and the board_selection.c file. Apart from LOC reduction, allows for
multiple cards of the same 'type' e.g.: avs_rt5640, to be present
simultanetously without any workarounds or tricks. The last patch
improves debugability - helps us (the devs) deal with basic I2S-boards
issues out there without forcing the user to constantly switch between
debug-friendly and non-debug options.

--

Initially I wanted to have the first two patches (new implementation and
the follow up cleanup) to be just one patch. However, the git diff, even
with --patience does not look good, at least in my opinion. Decided to
split the changes into two separate patches to make it easy to review
and comment.

As the first two patches carry heaviest load, the summary:
- provide a unified avs_register_board() wrapper for
  platform_device_register_data(PLATFORM_DEVID_AUTO). The _AUTO is what
  makes every device name unique and prevents any naming conflicts to
  occur when matching components <-> cards in runtime

- provide avs_register_board_pdata(), a wrapper one-level above
  avs_register_board() that takes all custom parameters in its argument
  list so that the initialization of 'struct avs_mach_pdata' does not
  need to be repeated in every function like its done today

- make use of the two above to write simpler registration functions:
  1. init any interface-type-specific values e.g.: SSP port for I2S
     board
  2. call avs_register_board_pdata()
  3. register the ASoC component with avs_register_xxx_component()

In regard to the last three patches - two are simplifications, no
functional changes just LOC reduction and readability.
The last one is to improve debug-ability, especially when working in the
open field - often we, the devs, find it useful when debugging
production systems to run i2s_test (the debug board) without impacting
the 'real' board e.g.: avs_rt5640. By default i2s_test is empty so a
typical user and their scenarios are not impacted.
2025-08-28 21:45:09 +02:00
…
2025-02-19 14:53:27 -07:00
2025-08-24 12:04:12 -04:00
2024-03-18 03:36:32 -06:00

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the reStructuredText markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.
S
Description
No description provided
Readme
5.7 GiB
Languages
C 96.9%
Assembly 0.9%
Rust 0.6%
Shell 0.6%
Python 0.5%
Other 0.3%