Commit Graph

1047 Commits

Author SHA1 Message Date
Kate Hsuan a0a251db41 media: Documentation: mc: Replace deprecated graph walk API
JIRA: https://issues.redhat.com/browse/RHEL-77308

commit 6c573f259ab35ccd078467b125287d2d72068f0b
Author: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Date: Fri, 23 Aug 2024 00:24:43 +0300

  The graph walk API has been deprecated in commit eac564de0915 ("media:
  mc: entity: Add entity iterator for media_pipeline") in favour of
  pipelien iterators, but the MC documentation hasn't been updated
  accordingly. It still documents the deprecated API as the only option.
  Fix it by dropping the deprecated function, and documenting the new API.

  Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
  Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Link: https://lore.kernel.org/r/20240822212445.2037-5-laurent.pinchart+renesas@ideasonboard.com
  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2025-04-09 17:39:12 +08:00
David Arcari 7156627ccd thermal: core: Drop unused bind/unbind functions and callbacks
JIRA: https://issues.redhat.com/browse/RHEL-61357

commit c579286a514d88a3f0d3bdabfd4d88737b33cb17
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Mon Aug 19 18:31:33 2024 +0200

    thermal: core: Drop unused bind/unbind functions and callbacks

    There are no more callers of thermal_zone_bind_cooling_device() and
    thermal_zone_unbind_cooling_device(), so drop them along with all of
    the corresponding headers, code and documentation.

    Moreover, because the .bind() and .unbind() thermal zone callbacks would
    only be used when the above functions, respectively, were called, drop
    them as well along with all of the code related to them.

    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Reviewed-by: Zhang Rui <rui.zhang@intel.com>
    Acked-by: Huisong Li <lihuisong@huawei.com>
    Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
    Link: https://patch.msgid.link/4251116.1IzOArtZ34@rjwysocki.net

Signed-off-by: David Arcari <darcari@redhat.com>
2025-02-17 15:14:57 -05:00
David Arcari a6db53fa75 thermal: helpers: Drop get_thermal_instance()
JIRA: https://issues.redhat.com/browse/RHEL-61357

commit 96d819908de094d7169915b993c9ecccf326049e
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Fri Aug 2 13:56:04 2024 +0200

    thermal: helpers: Drop get_thermal_instance()

    There are no more users of get_thermal_instance(), so drop it.

    While at it, replace get_instance() returning a pointer to struct
    thermal_instance with thermal_instance_present() returning a bool
    which is more straightforward.

    No functional impact.

    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
    Link: https://patch.msgid.link/2014591.usQuhbGJ8B@rjwysocki.net
    [ rjw: Dropped get_thermal_instance() documentation ]
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Signed-off-by: David Arcari <darcari@redhat.com>
2025-02-17 15:14:56 -05:00
Rado Vrbovsky 0169582b4e Merge: crypto: iaa - Fix a soft-lockup
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/5787

```
JIRA: https://issues.redhat.com/browse/RHEL-49539

Fix potential infinite loop in check_completion()
in the IAA driver code. Update IAA code to v6.12.
All the commits apply cleanly, no conflicts, no
changes vs the upstream.

Signed-off-by: Vladis Dronov <vdronov@redhat.com>
```

Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Herbert Xu <zxu@redhat.com>
Approved-by: Phil Auld <pauld@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Rado Vrbovsky <rvrbovsk@redhat.com>
2025-01-23 13:14:35 +00:00
Kate Hsuan dda41376dd media: mc: entity: Fix minor issues in comments and documentation
JIRA: https://issues.redhat.com/browse/RHEL-67885

commit b516354542b71632438d33920f6ce7478ecab0ce
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Mon, 12 Dec 2022 14:25:05 +0100

  Commit ae219872834a ("media: mc: entity: Rewrite
  media_pipeline_start()") incorrectly referred to entity instead of pad
  in a comment, and forgot to update a second comment accordingly when
  moving the pipe from entity to pad. Furthermore, it didn't properly
  reflow the documentation text it updated.

  Fix those small issues.

  Fixes: ae219872834a ("media: mc: entity: Rewrite media_pipeline_start()")
  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
  Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:35 +08:00
Kate Hsuan 4ee7581614 media: mc: entity: Rewrite media_pipeline_start()
JIRA: https://issues.redhat.com/browse/RHEL-67885

commit ae219872834a32da88408a92a4b4745c11f5a7ce
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Wed, 31 Aug 2022 16:13:37 +0200

  [Note: the code is mostly from Laurent but the patch description is from Tomi]

  The media_pipeline_start() and media_pipeline_stop() functions use the
  media graph walk API to traverse the graph and validate the pipeline.
  The graph walk traverses the media graph following links between the
  entities.

  Also, while the pipeline can't change between the start and stop calls,
  the graph is walked again from scratch at stop time, or any time a
  driver needs to inspect the pipeline.

  With the upcoming multiplexed streams support we will need a bit more
  intelligent pipeline construction, as e.g. two independent streams may
  be passing through a single entity via separate pads in which case
  those pads should not be part of the same pipeline.

  This patch essentially rewrites the media_pipeline_start/stop so that
  a pipeline is defined as a set of pads instead of entities and the media
  graph traversal considers the pad interdependencies when choosing which
  links to follow.

  Currently all the entity's pads are considered as interdependent. This
  means that the behavior with all the current drivers stays the same, but
  in the future we can define a more fine-grained pipeline construction.

  Additionally the media pipeline's pads are cached at
  media_pipeline_start() time, and re-used at media_pipeline_stop() which
  avoid the need to re-walk the whole graph as the previous implementation
  did.

  Also, caching pads in the pipeline can serve in the future as the
  foundation to provide a better API than the media graph walk to drivers
  to iterate over pads and entities in the pipeline.

  Note that the old media_pipeline_start/stop used the media graph walk
  API. The new version does not use the media graph walk API, but instead
  a new implementation.

  There are two reasons for not changing the graph walk: it proved to be
  rather difficult to change the graph walk to have the features
  implemented in this patch, and second, this keeps the backward
  compatibility of the graph walk as there are users of the graph walk API

  The long term plan is that all the existing code would be converted to
  use the new cached pipeline, thus allowing us to remove the graph walk.

  Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
  Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
  Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:29 +08:00
Kate Hsuan 047afedff8 media: Documentation: mc-core: Fix typo
JIRA: https://issues.redhat.com/browse/RHEL-67885

commit bb85604b9a05135e2c821e0506a59cfbee404aa9
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Mon, 18 Jul 2022 14:24:02 +0200

  Fix a typo in the mc-core.rst media driver API documentation. Due to its
  nature, the typo unfortunately caused a warning during documentation
  build.

  Fixes: 03b282861ca7 ("media: mc-entity: Add a new helper function to get a remote pad for a pad")
  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:27 +08:00
Kate Hsuan 666367f440 media: mc-entity: Add a new helper function to get a remote pad for a pad
JIRA: https://issues.redhat.com/browse/RHEL-67885

commit 03b282861ca737b7e2dfb9a1e4a2a4a7e3594688
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Tue, 14 Jun 2022 20:11:10 +0100

  The newly added media_entity_remote_source_pad_unique() helper function
  handles use cases where the entity has a link enabled uniqueness
  constraint covering all pads. There are use cases where the constraint
  covers a specific pad only. Add a new media_pad_remote_pad_unique()
  function to handle this. It operates as
  media_entity_remote_source_pad_unique(), but on a given pad instead of
  on the entity.

  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:26 +08:00
Kate Hsuan 2b12178ccc media: mc-entity: Add a new helper function to get a remote pad
JIRA: https://issues.redhat.com/browse/RHEL-67885

commit 5680fe45d66bbef32a902c04889a523fa4fc33ba
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Tue, 14 Jun 2022 20:11:09 +0100

  The media_entity_remote_pad_first() helper function returns the first
  remote pad it finds connected to a given pad. Beside being possibly
  non-deterministic (as it stops at the first enabled link), the fact that
  it returns the first match makes it unsuitable for drivers that need to
  guarantee that a single link is enabled, for instance when an entity can
  process data from one of multiple sources at a time.

  For those use cases, add a new helper function,
  media_entity_remote_pad_unique(), that operates on an entity and returns
  a remote pad, with a guarantee that only one link is enabled. To ease
  its use in drivers, also add an inline wrapper that locates source pads
  specifically. A wrapper that locates sink pads can easily be added when
  needed.

  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:26 +08:00
Kate Hsuan f32fb036d3 media: mc-entity: Rename media_entity_remote_pad() to media_pad_remote_pad_first()
JIRA: https://issues.redhat.com/browse/RHEL-67885

Conflicts: skip fixing unsupported drivers
drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
drivers/media/platform/rcar-vin/rcar-core.c
drivers/media/platform/rcar-vin/rcar-csi2.c
drivers/media/platform/ti-vpe/cal-camerarx.c
drivers/media/platform/ti-vpe/cal-video.c
drivers/staging/media/imx/imx7-media-csi.c

commit b2e44430b6348f68f56e78e932e6312f12128778
Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Sat, 25 Jun 2022 18:02:24 +0100

  The media_entity_remote_pad() is misnamed, as it operates on a pad and
  not an entity. Rename it to media_pad_remote_pad_first() to clarify its
  behaviour.

  Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-11-27 09:40:26 +08:00
Rado Vrbovsky 05df4237af Merge: USB/TBT code rebase of supported drivers to upstream v6.11
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/5592

JIRA: https://issues.redhat.com/browse/RHEL-59051

CVE: CVE-2024-44960
CVE JIRA: https://issues.redhat.com/browse/RHEL-57138

CVE: CVE-2024-46675
CVE JIRA: https://issues.redhat.com/browse/RHEL-64322

This MR rebases supported USB/TBT drivers to upstream kernel v6.11. By
design, changes on this rebase are limited to supported USB/Thunderbolt
drivers and infrastructure. Changes which happen to touch the drivers but
are tree-wide are selectively or partially pulled in, whenever relevant.

Notes:

I) Omits:

Omitted-fix: aefa036be8c2 ("phy: freescale: imx8qm-hsio: Include bitfield.h for FIELD_PREP")
Omitted-fix: 2d6213bd592b ("crypto: spacc - Add ifndef around MIN")
Omitted-fix: b8fc70ab7b5f ("Revert "crypto: spacc - Add SPAcc Skcipher support")
Omitted-fix: bf791751162a ("thunderbolt: Add only on-board retimers when !CONFIG_USB4_DEBUGFS_MARGINING")

II) This MR drops `rtsx_pci_ms` driver because it became dead code with
commit <c0e5f4e73a71> ("misc: rtsx: Add support for RTS5261"), which as
consequence was latter dropped on commit <d0f459259c13> ("memstick:
rtsx_pci_ms: Remove Realtek PCI memstick driver"). The latter is being
merged here.

III) This MR also includes minmax updates to fix these build and test errors:

1 - Signedness error:

```
drivers/usb/typec/ucsi/ucsi.c: In function 'ucsi_get_pd_message':
./include/linux/build_bug.h:78:41: error: static assertion failed: "min(bytes, (((con->ucsi)->version < 0x0200) ? 0x10 : 0xff)) signedness error, fix types or consider umin() before min_t()"
   78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
```

2 - ISO C90 error:

```
drivers/scsi/Makefile:196: FORCE prerequisite is missing
lib/vsprintf.c: In function 'resource_string':
lib/vsprintf.c:1068:9: error: ISO C90 forbids variable length array 'sym' [-Werror=vla]
 1068 |         char sym[max(2*RSRC_BUF_SIZE + DECODED_BUF_SIZE,
      |         ^~~~
```

3 - Oops on drm_gem_shmem CKI testing:

```
Unable to handle kernel paging request at virtual address ffffffff80000000
...
Internal error: Oops: 0000000096000146 [#1] SMP
...
drm_gem_shmem_test_obj_create_private+0x1cc/0x41c [drm_gem_shmem_test]
...
# drm_gem_shmem_test_obj_create_private: try faulted: last line seen drivers/gpu/drm/tests/drm_gem_shmem_test.c:120
# drm_gem_shmem_test_obj_create_private: internal error occurred preventing test case from running: -4
```

Signed-off-by: Desnes Nunes <desnesn@redhat.com>

Approved-by: José Ignacio Tornos Martínez <jtornosm@redhat.com>
Approved-by: Bastien Nocera <bnocera@redhat.com>
Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Rafael Aquini <raquini@redhat.com>
Approved-by: Chris von Recklinghausen <crecklin@redhat.com>
Approved-by: Ivan Vecera <ivecera@redhat.com>
Approved-by: David Arcari <darcari@redhat.com>
Approved-by: Eric Chanudet <echanude@redhat.com>
Approved-by: Adam Jackson <ajax@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Rado Vrbovsky <rvrbovsk@redhat.com>
2024-11-25 13:17:44 +00:00
Rado Vrbovsky 423fadbe1e Merge: CNB96: dpll: rebase DPLL to upstream v6.12
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/5352

JIRA: https://issues.redhat.com/browse/RHEL-57743

 * ad506586cb6929 dpll: fix return value check for kmemdup  
 * cda1fba15cb228 dpll: add Embedded SYNC feature for a pin  

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>

---

<small>Created 2024-10-02 15:13 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://gitlab.com/cki-project/kernel-workflow/-/issues/new?issue%5Btitle%5D=backporter%20webhook%20issue)</small>

Approved-by: Ivan Vecera <ivecera@redhat.com>
Approved-by: Michal Schmidt <mschmidt@redhat.com>
Approved-by: Petr Oros <poros@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Rado Vrbovsky <rvrbovsk@redhat.com>
2024-11-22 09:14:21 +00:00
Rado Vrbovsky c6f27291f7 Merge: VFIO update to v6.12
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/5384

JIRA: https://issues.redhat.com/browse/RHEL-61687

Update vfio to v6.12

Testing: GPU, vGPU, PF NIC, VF NIC, USB, NVMe assignment

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>

Approved-by: Cédric Le Goater <clg@redhat.com>
Approved-by: Eric Auger <eric.auger@redhat.com>
Approved-by: Kamal Heib <kheib@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Rado Vrbovsky <rvrbovsk@redhat.com>
2024-11-15 13:26:52 +00:00
Vladis Dronov 781b56e8b2 crypto: iaa - Fix some errors in IAA documentation
JIRA: https://issues.redhat.com/browse/RHEL-49539
Upstream Status: merged into the linux.git

commit 616ce45c150fa65683c8c1b1f2e2ac930462868d
Author: Jerry Snitselaar <jsnitsel@redhat.com>
Date:   Thu Mar 21 16:08:46 2024 -0500

    crypto: iaa - Fix some errors in IAA documentation

    This cleans up the following issues I ran into when trying to use the
    scripts and commands in the iaa-crypto.rst document.

    - Fix incorrect arguments being passed to accel-config
      config-wq.
        - Replace --device_name with --driver-name.
        - Replace --driver_name with --driver-name.
        - Replace --size with --wq-size.
        - Add missing --priority argument.
    - Add missing accel-config config-engine command after the
      config-wq commands.
    - Fix wq name passed to accel-config config-wq.
    - Add rmmod/modprobe of iaa_crypto to script that disables,
      then enables all devices and workqueues to avoid enable-wq
      failing with -EEXIST when trying to register to compression
      algorithm.
    - Fix device name in cases where iaa was used instead of iax.

    Cc: Jonathan Corbet <corbet@lwn.net>
    Cc: linux-crypto@vger.kernel.org
    Cc: linux-doc@vger.kernel.org
    Signed-off-by: Jerry Snitselaar <jsnitsel@redhat.com>
    Reviewed-by: Tom Zanussi <tom.zanussi@linux.intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Signed-off-by: Vladis Dronov <vdronov@redhat.com>
2024-11-15 04:38:29 +01:00
Vladis Dronov 8f4bac28fb crypto: iaa - Add global_stats file and remove individual stat files
JIRA: https://issues.redhat.com/browse/RHEL-49539
Upstream Status: merged into the linux.git

commit c21fb22df63d51bb26d34023b0d9651a15442eb6
Author: Tom Zanussi <tom.zanussi@linux.intel.com>
Date:   Mon Mar 4 15:20:10 2024 -0600

    crypto: iaa - Add global_stats file and remove individual stat files

    Currently, the wq_stats output also includes the global stats, while
    the individual global stats are also available as separate debugfs
    files.  Since these are all read-only, there's really no reason to
    have them as separate files, especially since we already display them
    as global stats in the wq_stats.  It makes more sense to just add a
    separate global_stats file to display those, and remove them from the
    wq_stats, as well as removing the individual stats files.

    Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Signed-off-by: Vladis Dronov <vdronov@redhat.com>
2024-11-15 04:38:29 +01:00
Desnes Nunes 86d8896d68 writing_musb_glue_layer.rst: Fix broken URL
JIRA: https://issues.redhat.com/browse/RHEL-59051

commit 7f60f33d46b3e119201c48c008fa0bd89798fa83
Author: Richard Genoud <richard.genoud@bootlin.com>
Date: Tue, 18 Jun 2024 17:19:38 +0200

  The http://processors.wiki.ti.com EOL in january 2021

  The old documentation is still available through the wayback machine.

  Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
  Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  Link: https://lore.kernel.org/r/20240618151938.1827064-1-richard.genoud@bootlin.com

Signed-off-by: Desnes Nunes <desnesn@redhat.com>
2024-11-07 23:01:41 -03:00
John W. Linville d80eace45e cxl: documentation: add missing files to cxl driver-api
JIRA: https://issues.redhat.com/browse/RHEL-54609

Add the missing files into cxl driver api and fix the compile warning.

Suggested-by: Dan Williams <dan.j.williams@intel.com>
Suggested-by: Alison Schofield <alison.schofield@intel.com>
Signed-off-by: Yao Xingtao <yaoxt.fnst@fujitsu.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://patch.msgid.link/20240614084755.59503-3-yaoxt.fnst@fujitsu.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
(cherry picked from commit a0f39d51dbf72c28283bd201b97559ed82bc0fe5)
Signed-off-by: John W. Linville <linville@redhat.com>
2024-10-07 14:03:30 -04:00
Alex Williamson ea4625cfc5 vfio: remove an extra semicolon
JIRA: https://issues.redhat.com/browse/RHEL-61687

commit dda057ad8c9c5f1dcd6cc33ada0fa5fceb5acacc
Author: foryun.ma <foryun.ma@jaguarmicro.com>
Date:   Fri May 10 14:37:35 2024 +1400

    vfio: remove an extra semicolon

    remove an extra semicolon from the example code

    Signed-off-by: foryun.ma <foryun.ma@jaguarmicro.com>
    Link: https://lore.kernel.org/r/20240510003735.2766-1-foryun.ma@jaguarmicro.com
    Signed-off-by: Alex Williamson <alex.williamson@redhat.com>

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2024-10-04 08:56:20 -06:00
CKI Backport Bot aaa6737876 dpll: add Embedded SYNC feature for a pin
JIRA: https://issues.redhat.com/browse/RHEL-57743

commit cda1fba15cb2282b3c364805c9767698f11c3b0e
Author: Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
Date:   Fri Aug 23 00:25:12 2024 +0200

    dpll: add Embedded SYNC feature for a pin

    Implement and document new pin attributes for providing Embedded SYNC
    capabilities to the DPLL subsystem users through a netlink pin-get
    do/dump messages. Allow the user to set Embedded SYNC frequency with
    pin-set do netlink message.

    Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>
    Signed-off-by: Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Link: https://patch.msgid.link/20240822222513.255179-2-arkadiusz.kubalewski@intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
2024-10-02 15:13:50 +00:00
Thomas Huth ba994843de docs: move s390 under arch
JIRA: https://issues.redhat.com/browse/RHEL-54248

commit 37002bc6b6039e1491140869c6801e0a2deee43e
Author: Costa Shulyupin <costa.shul@redhat.com>
Date:   Tue Jul 18 07:55:02 2023 +0300

    docs: move s390 under arch

    and fix all in-tree references.

    Architecture-specific documentation is being moved into Documentation/arch/
    as a way of cleaning up the top-level documentation directory and making
    the docs hierarchy more closely match the source hierarchy.

    Signed-off-by: Costa Shulyupin <costa.shul@redhat.com>
    Reviewed-by: Tony Krowiak <akrowiak@linux.ibm.com>
    Acked-by: Jonathan Corbet <corbet@lwn.net>
    Acked-by: Heiko Carstens <hca@linux.ibm.com>
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
    Link: https://lore.kernel.org/r/20230718045550.495428-1-costa.shul@redhat.com
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>

Conflicts:
    Documentation/admin-guide/kernel-parameters.txt
    Documentation/arch/index.rst
    MAINTAINERS
    (contextual conflicts due to missing other patches in downstream)
Signed-off-by: Thomas Huth <thuth@redhat.com>
2024-09-06 17:33:51 +02:00
Lucas Zampieri 57385cfb1d Merge: CVE-2024-23848: media: cec: use-after-free in cec_queue_msg_fh
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4644

JIRA: https://issues.redhat.com/browse/RHEL-22561  
CVE: CVE-2024-23848

buildinfo: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=62330527  

These four patches fixed the use-after-free issue for media cec. The patches include:  
9fe2816816a3c765dff3b88af5b5c3d9bbb911ce  
42bcaacae924bf18ae387c3f78c202df0b739292  
47c82aac10a6954d68f29f10d9758d016e8e5af1  
cbe499977bc36fedae89f0a0d7deb4ccde9798fe  

Moreover, to backport these fix patches, a certain backport for cec was required and the patches were as follows:

cbe499977bc36fedae89f0a0d7deb4ccde9798fe media: cec: core: avoid confusing "transmit timed out" message  
47c82aac10a6954d68f29f10d9758d016e8e5af1 media: cec: core: avoid recursive cec_claim_log_addrs  
9fe2816816a3c765dff3b88af5b5c3d9bbb911ce media: cec: cec-adap: always cancel work in cec_transmit_msg_fh  
ce5d241c3ad4568c12842168288993234345c0eb media: cec: core: remove length check of Timer Status  
632b8b044a940e415c6d9bd5235778b0db28add1 media: cec: core: count low-drive, error and arb-lost conditions  
f208f4a49a46cc04f51b0c335d4b6390fbfcd1b8 media: cec: core: add note about *_from_edid() function usage in drm  
948a77aaecf202f722cf2264025f9987e5bd5c26 media: cec: core: add adap_unconfigured() callback  
da53c36ddd3f118a525a04faa8c47ca471e6c467 media: cec: core: add adap_nb_transmit_canceled() callback  
73af6c7511038249cad3d5f3b44bf8d78ac0f499 media: cec: core: don't set last_initiator if tx in progress  
fe4526d99e2e06b08bb80316c3a596ea6a807b75 media: cec: core: disable adapter in cec_devnode_unregister  
6bade236f14033fa457a9e22ceb8a114a14d90e3 media: cec: core: not all messages were passed on when monitoring  
479747caa5bfa94b856bf47249006e6c8aa8be37 media: cec: add support for Absolute Volume Control  
691c3db0dc7616b3cc4ff0f52f956c9afa71b1cd media: cec-adap.c: log when claiming LA fails unexpectedly  
f9222f8ca18bcb1d55dd749b493b29fd8092fb82 media: cec-adap.c: drop activate_cnt, use state info instead  
e3891b36364e85914fcb7a535656695a67e876a7 media: cec-adap.c: reconfigure if the PA changes during configuration  
59267fc34f4900dcd2ec3295f6be04b79aee2186 media: cec-adap.c: fix is_configuring state  
184c387db057c135eeab1a163f863838edb02483 media: cec-adap.c: stop trying LAs on CEC_TX_STATUS_TIMEOUT  
498946cf6b85b5eafb142132a11351814f578535 media: cec-adap.c: don't unconfigure if already unconfigured  
f1b57164305d6342b9f77a4f4482cde492b56983 media: cec: add optional adap_configured callback  
dad272bd03d541dc7c0ff8331756eccf659f6f02 media: cec: add xfer_timeout_ms field  
e2ed5024ac2bc27d4bfc99fd58f5ab54de8fa965 media: cec: use call_op and check for !unregistered  
f9d0ecbf56f4b90745a6adc5b59281ad8f70ab54 media: cec: correctly pass on reply results  
590a8e564c6eff7e77a84e728612f1269e3c0685 media: cec: abort if the current transmit was canceled  
3813c932ed970dd4f413498ccecb03c73c4f1784 media: cec: call enable_adap on s_log_addrs  
a9e6107616bb8108aa4fc22584a05e69761a91f7 media: cec: fix a deadlock situation  
2ddd03309433d39852945c2f85d36e796c558793 media: cec: safely unhook lists in cec_data  
13cbaa4c2b7bf9f8285e1164d005dbf08244ecd5 media: cec: copy sequence field for the reply  

713bdfa10b5957053811470d298def9537d9ff13 media: cec-pin: fix interrupt en/disable handling  
3a2e4b193690ff2e44e95856d90bdeaf337211f6 media: cec-pin: drop unused 'enabled' field from struct cec_pin  
7e360fa0c0f3e7dd1aa8f2b574d7b461d0caf5e2 media: cec-pin: fix off-by-one SFT check  
c8b263937c489ec536193bbe48d810118a387e12 media: cec-pin: rename timer overrun variables  

Signed-off-by: Kate Hsuan <hpa@redhat.com>

Approved-by: Chris von Recklinghausen <crecklin@redhat.com>
Approved-by: Andrew Halaney <ahalaney@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Lucas Zampieri <lzampier@redhat.com>
2024-07-17 17:21:27 +00:00
Jaroslav Kysela c90601bf60 soundwire: stream: add missing const to Documentation
JIRA: https://issues.redhat.com/browse/RHEL-27515

commit 0707496ff4e416ea08c90053fd5fde5811b11b22
Author: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Date: Wed Jan 17 17:06:39 2024 +0100

    soundwire: stream: add missing const to Documentation

    Commit 21f4c443731f ("soundwire: stream: constify sdw_port_config when
    adding devices") added const to sdw_port_config argument, but forgot
    documentation.

    Fixes: 21f4c443731f ("soundwire: stream: constify sdw_port_config when adding devices")
    Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
    Link: https://lore.kernel.org/r/20240117160639.1327266-1-krzysztof.kozlowski@linaro.org
    Signed-off-by: Vinod Koul <vkoul@kernel.org>

Signed-off-by: Jaroslav Kysela <jkysela@redhat.com>
2024-07-08 20:54:34 +02:00
Kate Hsuan 5c260b74f7 media: cec: add optional adap_configured callback
JIRA: https://issues.redhat.com/browse/RHEL-22561
CVE: CVE-2024-23848

commit f1b57164305d6342b9f77a4f4482cde492b56983
Author: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Date:   Thu Feb 3 12:11:15 2022 +0000

  media: cec: add optional adap_configured callback

  This new optional callback is called when the adapter is fully configured
  or fully unconfigured. Some drivers may have to take action when this
  happens.

  Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Signed-off-by: Kate Hsuan <hpa@redhat.com>
2024-07-03 16:27:26 +08:00
Desnes Nunes 8b3fe40a50 USB: document some API requirements on disconnection
JIRA: https://issues.redhat.com/browse/RHEL-37673

commit 9f2a3933beeaeead53829d3a7be53770e41e7869
Author: Michal Pecio <michal.pecio@gmail.com>
Date: Sun, 18 Feb 2024 09:25:15 +0100

  A call to usb_set_interface() crashes if the device is deallocated
  concurrently, such as due to physical removal or a serious IO error.
  It could also interfere with other drivers using the device if the
  current driver is unbound before the call is finished.

  Document the need to delay driver unbinding until this call returns,
  which solves both issues.

  Document the same regarding usb_clear_halt(), which is equally known
  to be routinely called by drivers.

  Explicitly mention finishing pending operations in the documentation
  of the driver disconnect callback.

  Signed-off-by: Michal Pecio <michal.pecio@gmail.com>
  Link: https://lore.kernel.org/r/20240218092515.7635ff8c@foxbook
  Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Desnes Nunes <desnesn@redhat.com>
2024-06-18 17:26:52 -03:00
Lucas Zampieri 95ec32f109 Merge: USB/TB code rebase of supported drivers to upstream v6.8
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4268


JIRA: https://issues.redhat.com/browse/RHEL-34114

This rebases supported USB and Thunderbolt drivers to upstream kernel v6.8
By design, changes on this rebase are limited to supported usb/thunderbolt
 drivers. Changes which happen to touch the drivers but are tree-wide are 
selectively or partially pulled in, when relevant.

Omitted-fix: 9dc292413c56 ("usb: gadget: ncm: Fix endianness of wMaxSegmentSize variable in ecm_desc")
Omitted-fix: f90ce1e04cbc ("usb: gadget: ncm: Fix handling of zero block length packets")
Omitted-fix: 5b9e00a6004c ("powerpc/4xx: Fix warp_gpio_leds build failure")
Omitted-fix: 6f98e44984d5 ("spi: ppc4xx: Fix fallout from include cleanup")
Omitted-fix: 70e6163d17dd ("arm64: dts: qcom: qrb5165-rb5: use u16 for DP altmode svid")

Signed-off-by: Desnes Nunes <desnesn@redhat.com>

Approved-by: José Ignacio Tornos Martínez <jtornosm@redhat.com>
Approved-by: Eric Chanudet <echanude@redhat.com>
Approved-by: David Arcari <darcari@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Lucas Zampieri <lzampier@redhat.com>
2024-06-03 19:41:30 +00:00
Scott Weaver ac5015e1aa Merge: CNB95: dpll: rebase DPLL to upstream v6.8
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4102

JIRA: https://issues.redhat.com/browse/RHEL-32098
Depends: !4000

The series updates dpll to upstream version v6.8.

Signed-off-by: Petr Oros <poros@redhat.com>

Approved-by: Ivan Vecera <ivecera@redhat.com>
Approved-by: Michal Schmidt <mschmidt@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Scott Weaver <scweaver@redhat.com>
2024-05-30 09:32:38 -04:00
Lucas Zampieri 810c24e55b Merge: Update kernel's PCI subsystem to v6.9
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4229

```
This series updates RHEL9's PCI subsystem with content from upstream v6.9 -
  Merge tag 'pci-v6.9-fixes-2' of git://git.kernel.org/pub/scm/../pci/pci
  https://lkml.org/lkml/2024/5/7or8
  commit 1ab1a19db13cdd05f9df4760e42a1f2f52f13439
  Merge: dccb07f2914c f3d049b35b01
  2 files changed, 5 insertions(+), 4 deletions(-)

  Merge tag 'pci-v6.9-fixes-1' of git://git.kernel.org/pub/scm/../pci/pci
  https://lkml.org/lkml/2024/4/11
  commit b3812ff0cd3a61e8070acb09079a0eb52d2f8e0b
  Merge: d7ad05815679 302b84e84d10
  3 files changed, 4 insertions(+), 9 deletions(-)


  Merge tag 'pci-v6.9-changes' of git://git.kernel.org/pub/scm/../pci/pci
  https://lkml.org/lkml/2024/3/13/638
  commit 705c1da8fa4816fb0159b5602fef1df5946a3ee2
  Merge: 66fd6d0bd757 aabf7173cdfe
  73 files changed, 3796 insertions(+), 1774 deletions(-)

The vast majority of patches within the series back-ported cleanly.
However, there were five back-ports where some changes were made to the
originating upstream patch due to it either not being quite up to date with
more recent changes, or subsequent changes were made during its merge
commit.  All such occurances are noted in the back-port's commit message
with the same changes that occurred upstream being made in the back-port to
keep things in sync.


JIRA: https://issues.redhat.com/browse/RHEL-33544
Depends: N/A

Signed-off-by: Myron Stowe <mstowe@redhat.com>
```

Approved-by: Steve Best <sbest@redhat.com>
Approved-by: John W. Linville <linville@redhat.com>
Approved-by: Lenny Szubowicz <lszubowi@redhat.com>
Approved-by: Mark Langsdorf <mlangsdo@redhat.com>
Approved-by: Andrew Halaney <ahalaney@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Lucas Zampieri <lzampier@redhat.com>
2024-05-21 13:14:57 +00:00
Desnes Nunes 6bf13ce8ae phy: Add devm_of_phy_optional_get() helper
JIRA: https://issues.redhat.com/browse/RHEL-34114

commit d02aa181ee595c81738b6bd7ebad6025fbee035a
Author: Geert Uytterhoeven <geert+renesas@glider.be>
Date: Tue, 24 Jan 2023 19:37:22 +0100

  Add an optional variant of devm_of_phy_get() that also takes care of
  printing real errors, so drivers no longer have to open-code this
  operation.

  Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
  Link: https://lore.kernel.org/r/4cd0069bcff424ffc5c3a102397c02370b91985b.1674584626.git.geert+renesas@glider.be
  Signed-off-by: Vinod Koul <vkoul@kernel.org>

Signed-off-by: Desnes Nunes <desnesn@redhat.com>
2024-05-20 13:28:41 -03:00
Desnes Nunes 3c06dded83 doc: phy: Document devm_of_phy_get()
JIRA: https://issues.redhat.com/browse/RHEL-34114

commit 59c3d3d00d60b6d75ef3faf3b24e6aac037c1085
Author: Geert Uytterhoeven <geert+renesas@glider.be>
Date: Tue, 24 Jan 2023 19:37:21 +0100

  Add the missing documentation for devm_of_phy_get(), which was forgotten
  when the function was introduced.

  Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
  Link: https://lore.kernel.org/r/768d5845668f081620098a0b4479d1481e212bac.1674584626.git.geert+renesas@glider.be
  Signed-off-by: Vinod Koul <vkoul@kernel.org>

Signed-off-by: Desnes Nunes <desnesn@redhat.com>
2024-05-20 13:28:41 -03:00
Desnes Nunes 0088d75bba phy: Remove unused phy_optional_get()
JIRA: https://issues.redhat.com/browse/RHEL-34114

commit 1bd9a7b4afd5e0b938868a90b16d514c19808e6c
Author: Geert Uytterhoeven <geert+renesas@glider.be>
Date: Tue, 24 Jan 2023 19:37:20 +0100

  There were never any upstream users of this function since its
  introduction almost 10 years ago.

  Besides, the dummy for phy_optional_get() should have returned NULL
  instead of an error code.

  Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
  Link: https://lore.kernel.org/r/df61992b1d66bccf4e6e1eafae94a7f7d7629f34.1674584626.git.geert+renesas@glider.be
  Signed-off-by: Vinod Koul <vkoul@kernel.org>

Signed-off-by: Desnes Nunes <desnesn@redhat.com>
2024-05-20 13:28:41 -03:00
Petr Oros 149ecfe407 dpll: move all dpll<>netdev helpers to dpll code
JIRA: https://issues.redhat.com/browse/RHEL-32098

Conflicts:
- drivers/net/ethernet/mellanox/mlx5/core/dpll.c: chunk omitted due
  to missing 496fd0a26bbf73 ("mlx5: Implement SyncE support using DPLL
  infrastructure")

Upstream commit(s):
commit 289e922582af5b4721ba02e86bde4d9ba918158a
Author: Jakub Kicinski <kuba@kernel.org>
Date:   Mon Mar 4 17:35:32 2024 -0800

    dpll: move all dpll<>netdev helpers to dpll code

    Older versions of GCC really want to know the full definition
    of the type involved in rcu_assign_pointer().

    struct dpll_pin is defined in a local header, net/core can't
    reach it. Move all the netdev <> dpll code into dpll, where
    the type is known. Otherwise we'd need multiple function calls
    to jump between the compilation units.

    This is the same problem the commit under fixes was trying to address,
    but with rcu_assign_pointer() not rcu_dereference().

    Some of the exports are not needed, networking core can't
    be a module, we only need exports for the helpers used by
    drivers.

    Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Link: https://lore.kernel.org/all/35a869c8-52e8-177-1d4d-e57578b99b6@linux-m68k.org/
    Fixes: 640f41ed33b5 ("dpll: fix build failure due to rcu_dereference_check() on unknown type")
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Link: https://lore.kernel.org/r/20240305013532.694866-1-kuba@kernel.org
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: Petr Oros <poros@redhat.com>
2024-05-16 20:47:06 +02:00
Petr Oros 420841ead4 Documentation: dpll: wrap DPLL_CMD_PIN_GET output in a code block
JIRA: https://issues.redhat.com/browse/RHEL-32098

Upstream commit(s):
commit c8afdc01832943fab030103bd027ce021d26ddcf
Author: Bagas Sanjaya <bagasdotme@gmail.com>
Date:   Thu Sep 28 12:27:08 2023 +0700

    Documentation: dpll: wrap DPLL_CMD_PIN_GET output in a code block

    DPLL_CMD_PIN_GET netlink command output for mux-type pins looks ugly
    with normal paragraph formatting. Format it as a code block instead.

    Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Acked-by: Randy Dunlap <rdunlap@infradead.org>
    Tested-by: Randy Dunlap <rdunlap@infradead.org>
    Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
    Link: https://lore.kernel.org/r/20230928052708.44820-3-bagasdotme@gmail.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: Petr Oros <poros@redhat.com>
2024-05-16 20:47:06 +02:00
Petr Oros c33808a5ce Documentation: dpll: Fix code blocks
JIRA: https://issues.redhat.com/browse/RHEL-32098

Upstream commit(s):
commit 92425d08a60814b4a2e91626f1e24e4fd5fd5c7e
Author: Bagas Sanjaya <bagasdotme@gmail.com>
Date:   Thu Sep 28 12:27:07 2023 +0700

    Documentation: dpll: Fix code blocks

    kernel test robot and Stephen Rothwell report htmldocs warnings:

    Documentation/driver-api/dpll.rst:427: WARNING: Error in "code-block" directive:
    maximum 1 argument(s) allowed, 18 supplied.

    .. code-block:: c
            <snipped>...
    Documentation/driver-api/dpll.rst:444: WARNING: Error in "code-block" directive:
    maximum 1 argument(s) allowed, 21 supplied.

    .. code-block:: c
            <snipped>...
    Documentation/driver-api/dpll.rst:474: WARNING: Error in "code-block" directive:
    maximum 1 argument(s) allowed, 12 supplied.

    .. code-block:: c
            <snipped>...

    Fix these above by adding missing blank line separator after code-block
    directive.

    Reported-by: kernel test robot <lkp@intel.com>
    Closes: https://lore.kernel.org/oe-kbuild-all/202309180456.lOhxy9gS-lkp@intel.com/
    Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Closes: https://lore.kernel.org/linux-next/20230918131521.155e9e63@canb.auug.org.au/
    Fixes: dbb291f19393b6 ("dpll: documentation on DPLL subsystem interface")
    Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Acked-by: Randy Dunlap <rdunlap@infradead.org>
    Tested-by: Randy Dunlap <rdunlap@infradead.org>
    Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
    Link: https://lore.kernel.org/r/20230928052708.44820-2-bagasdotme@gmail.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: Petr Oros <poros@redhat.com>
2024-05-16 20:47:06 +02:00
Lucas Zampieri f85a883cf8 Merge: USB/TB code rebase of supported drivers to upstream v6.7
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4117



JIRA: https://issues.redhat.com/browse/RHEL-28810


This rebases supported USB and Thunderbolt drivers to upstream kernel v6.7.

By design, changes on this rebase are limited to supported usb and thunderbolt drivers.

Changes which happen to touch the drivers but are tree-wide are selectively or partially pulled in, when relevant.


Signed-off-by: Desnes Nunes <desnesn@redhat.com>

Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Jocelyn Falempe <jfalempe@redhat.com>
Approved-by: Bastien Nocera <bnocera@redhat.com>
Approved-by: Andrew Halaney <ahalaney@redhat.com>

Merged-by: Lucas Zampieri <lzampier@redhat.com>
2024-05-16 13:29:28 +00:00
Myron Stowe 80a8fe4fd2 PCI: Move PCI-specific devres code to drivers/pci/
JIRA: https://issues.redhat.com/browse/RHEL-33544
Upstream Status: acc2364fe661069637c60ed5bbd32ea2a2c5ef61

commit acc2364fe661069637c60ed5bbd32ea2a2c5ef61
Author: Philipp Stanner <pstanner@redhat.com>
Date:   Wed Jan 31 10:00:22 2024 +0100

    PCI: Move PCI-specific devres code to drivers/pci/

    The pcim_*() functions in lib/devres.c are guarded by an #ifdef CONFIG_PCI
    and, thus, don't belong to this file. They are only ever used for PCI and
    are not generic infrastructure.

    Move all pcim_*() functions in lib/devres.c to drivers/pci/devres.c.
    Adjust the Makefile.

    Add drivers/pci/devres.c to Documentation.

    Link: https://lore.kernel.org/r/20240131090023.12331-4-pstanner@redhat.com
    Suggested-by: Danilo Krummrich <dakr@redhat.com>
    Signed-off-by: Philipp Stanner <pstanner@redhat.com>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>

Signed-off-by: Myron Stowe <mstowe@redhat.com>
2024-05-13 15:52:32 -06:00
Myron Stowe 69fbc16db5 PCI: Move pci_iomap.c to drivers/pci/
JIRA: https://issues.redhat.com/browse/RHEL-33544
Upstream Status: ae874027524c537a15e8d6f14ff69b855bc13ca8

commit ae874027524c537a15e8d6f14ff69b855bc13ca8
Author: Philipp Stanner <pstanner@redhat.com>
Date:   Wed Jan 31 10:00:21 2024 +0100

    PCI: Move pci_iomap.c to drivers/pci/

    The entirety of pci_iomap.c is guarded by an #ifdef CONFIG_PCI. It,
    consequently, does not belong to lib/ because it is not generic
    infrastructure.

    Move pci_iomap.c to drivers/pci/ and implement the necessary changes to
    Makefiles and Kconfigs.

    Update MAINTAINERS file.

    Update Documentation.

    Link: https://lore.kernel.org/r/20240131090023.12331-3-pstanner@redhat.com
    [bhelgaas: squash in https://lore.kernel.org/r/20240212150934.24559-1-pstanner@redhat.com]
    Suggested-by: Danilo Krummrich <dakr@redhat.com>
    Signed-off-by: Philipp Stanner <pstanner@redhat.com>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    Reviewed-by: Arnd Bergmann <arnd@arndb.de>

Signed-off-by: Myron Stowe <mstowe@redhat.com>
2024-05-13 15:52:32 -06:00
Myron Stowe 0da3c0f2bb devres: remove devm_ioremap_np
JIRA: https://issues.redhat.com/browse/RHEL-33544
Upstream Status: 3954cf4338becb1f140bb6fa4f5e9a42f2529b86

commit 3954cf4338becb1f140bb6fa4f5e9a42f2529b86
Author: Christoph Hellwig <hch@lst.de>
Date:   Mon Aug 22 08:14:24 2022 +0200

    devres: remove devm_ioremap_np

    devm_ioremap_np has never been used anywhere since it was added in early
    2021, so remove it.

    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Link: https://lore.kernel.org/r/20220822061424.151819-1-hch@lst.de
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Myron Stowe <mstowe@redhat.com>
2024-05-13 09:31:36 -06:00
Andrew Halaney ef78f21ae0 Documentation: Make formatting consistent for rs485 docs
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 7b1c56e08a45693ce6f708a4ee499e44c4fb9ca5
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Wed Oct 19 12:33:43 2022 +0300

    Documentation: Make formatting consistent for rs485 docs

    Tweak styling of names that come directly from the code.

    Suggested-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20221019093343.9546-6-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:15 -04:00
Andrew Halaney fed7585a06 Documentation: rs485: Fix struct referencing
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 891e999394f56b52ed81b9ebcb7fe0bf050a3157
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Wed Oct 19 12:33:42 2022 +0300

    Documentation: rs485: Fix struct referencing

    Use "struct serial_rs485" to get the references properly recognized.

    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20221019093343.9546-5-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:15 -04:00
Andrew Halaney 93a998e1f6 Documentation: rs485: Mention uart_get_rs485_mode()
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 0f4648a1a6d36487e4134a4fd75d8cdae0cd6bf4
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Wed Oct 19 12:33:41 2022 +0300

    Documentation: rs485: Mention uart_get_rs485_mode()

    Add to rs485 documentation that serial core prepares the struct
    serial_rs485 when uart_get_rs485_mode() is called. Remove the wrong
    claim that the driver must fill it by itself.

    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20221019093343.9546-4-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:15 -04:00
Andrew Halaney 610966dad8 Documentation: rs485: Link reference properly
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 851453abc8e9cfe92bbf8fdf07ee024ec372f09d
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Wed Oct 19 12:33:40 2022 +0300

    Documentation: rs485: Link reference properly

    Link DT bindings reference properly.

    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20221019093343.9546-3-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:15 -04:00
Andrew Halaney 8623c4a610 serial: Convert serial_rs485 to kernel doc
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 6dd07781b4cdd38103c81ddcc88fa4e8a31ebf71
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Wed Oct 19 12:33:39 2022 +0300

    serial: Convert serial_rs485 to kernel doc

    Convert struct serial_rs485 comments to kernel doc format and include
    it into documentation.

    Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20221019093343.9546-2-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:15 -04:00
Andrew Halaney 3af8df3b8a tty: serial: introduce transmit helpers
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 8275b48b278096edc1e3ea5aa9cf946a10022f79
Author: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Date:   Tue Oct 4 12:49:25 2022 +0200

    tty: serial: introduce transmit helpers

    Many serial drivers do the same thing:
    * send x_char if set
    * keep sending from the xmit circular buffer until either
      - the loop reaches the end of the xmit buffer
      - TX is stopped
      - HW fifo is full
    * check for pending characters and:
      - wake up tty writers to fill for more data into xmit buffer
      - stop TX if there is nothing in the xmit buffer

    The only differences are:
    * how to write the character to the HW fifo
    * the check of the end condition:
      - is the HW fifo full?
      - is limit of the written characters reached?

    So unify the above into two helpers:
    * uart_port_tx_limited() -- it performs the above taking the written
      characters limit into account, and
    * uart_port_tx() -- the same as above, except it only checks the HW
      readiness, not the characters limit.

    The HW specific operations (as stated as "differences" above) are passed
    as arguments to the macros. They are:
    * tx_ready -- returns true if HW can accept more data.
    * put_char -- write a character to the device.
    * tx_done -- when the write loop is done, perform arbitrary action
      before potential invocation of ops->stop_tx() happens.

    Note that the above are macros. This means the code is generated in
    place and the above 3 arguments are "inlined". I.e. no added penalty by
    generating call instructions for every single character. Nor any
    indirect calls. (As in some previous versions of this patchset.)

    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
    Link: https://lore.kernel.org/r/20221004104927.14361-2-jirislaby@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:11 -04:00
Andrew Halaney a1baa21947 tty: serial: document uart_get_console()
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 9e5f399f5c9f62e537735f2f8e42bd2f7c255c1f
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:56 2022 +0200

    tty: serial: document uart_get_console()

    This was the only function mentioned in the text, but was neither linked
    nor documented. So document and link it, so that hyperlinking works in
    the text.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-6-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 47bb78b6d7 tty: serial: serial_core, reformat kernel-doc for functions
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 987233b342b950653d21c5e3e5b78689c995c869
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:55 2022 +0200

    tty: serial: serial_core, reformat kernel-doc for functions

    There are many annotated functions in serial_core.c, but they do not
    completely conform to the kernel-doc style. So reformat them and link
    them from the Documentation.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-5-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 64dc2ff3af Documentation: serial: link uart_ops properly
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit d34d7c4b774dac1d4be440207ab9e347f599dd30
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:54 2022 +0200

    Documentation: serial: link uart_ops properly

    The syntax to reference a struct in text is "struct XY". So reference
    uart_ops properly, so that hyperlinks work.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-4-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 9f3be6282a Documentation: serial: move GPIO kernel-doc to the functions
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 27940abd555228fdda39a40081ae02450c500f35
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:53 2022 +0200

    Documentation: serial: move GPIO kernel-doc to the functions

    The GPIO uart functions are documented in Documentation. Move and
    transform this documentation into kernel-doc directly in the code and
    reference it in Documentation using kernel-doc:.

    This makes it easier to update, maintain and check by the build.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-3-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 78dbd15ec5 Documentation: serial: dedup kernel-doc for uart functions
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit c4bd17a6ddf3b92bf9d7939ae251570ace14bb52
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:52 2022 +0200

    Documentation: serial: dedup kernel-doc for uart functions

    Some of the serial (uart_*) functions are documented twice. Once as
    kernel-doc along their sources and once in Documentation. So deduplicate
    these texts, merge them into kernel-doc in the sources, and link them
    using kernel-doc: from the Documentation.

    To be properly linked and rendered, tabulators had to be removed from
    the comments.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-2-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 878281e71d Documentation: serial: move uart_ops documentation to the struct
JIRA: https://issues.redhat.com/browse/RHEL-24205
Conflicts: Minor context diff in documentation

commit e60a7233684aa8bbe9090537720fe6a1e901d823
Author: Jiri Slaby <jirislaby@kernel.org>
Date:   Thu Jul 28 08:10:51 2022 +0200

    Documentation: serial: move uart_ops documentation to the struct

    While it's a lot of text, it always helps to keep it up to date when
    it's by the source. (And not in a separate file.)

    The documentation tooling also makes sure that all members of the
    structure are documented. (If not, it complains loudly.)

    Finally, there needs to be no comments inlined in the structure, so they
    are dropped as they are superfluous now.

    The compilation time of this header (tested with serial_core.c) didn't
    change in my testing at all.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Link: https://lore.kernel.org/r/20220728061056.20799-1-jslaby@suse.cz
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:25:03 -04:00
Andrew Halaney 9629921204 serial: Support for RS-485 multipoint addresses
JIRA: https://issues.redhat.com/browse/RHEL-24205

commit 4f768e94774c58c9f7f54ebd38dadf172970046a
Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Date:   Fri Jun 24 23:42:09 2022 +0300

    serial: Support for RS-485 multipoint addresses

    Add support for RS-485 multipoint addressing using 9th bit [*]. The
    addressing mode is configured through ->rs485_config().

    ADDRB in termios indicates 9th bit addressing mode is enabled. In this
    mode, 9th bit is used to indicate an address (byte) within the
    communication line. ADDRB can only be enabled/disabled through
    ->rs485_config() that is also responsible for setting the destination and
    receiver (filter) addresses.

    Add traps to detect unwanted changes to struct serial_rs485 layout using
    static_assert().

    [*] Technically, RS485 is just an electronic spec and does not itself
    specify the 9th bit addressing mode but 9th bit seems at least
    "semi-standard" way to do addressing with RS485.

    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://lore.kernel.org/r/20220624204210.11112-6-ilpo.jarvinen@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
2024-05-09 11:24:59 -04:00