[Deepin-Kernel-SIG] [linux 6.6.y] [Upstream] Sync some docs and code clean from mainline#1634
Conversation
mainline inclusion from mainline-v6.7-rc1 category: docs Let's introduce the basic documentation about CCS. While doing that, also removed the legacy execution flag name. That flag simply doesn't exist for CCS and it is not needed on current context submission. Those flag names are only needed on legacy context, while on new ones we only need to pass the engine ID. It is worth mention that this documentation should probably live with the engine definitions rather than in the i915.rst file directly and that more updates are likely need in this section. But this should come later. v2: Overall improvements from Matt and Tvrtko. Fixes: 944823c ("drm/i915/xehp: Define compute class and engine") Cc: Matt Roper <matthew.d.roper@intel.com> Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Acked-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230926165107.23440-1-rodrigo.vivi@intel.com (cherry picked from commit d38d753) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.7-rc1 category: docs Introduce the basic documentation about GSC CS. This "GPU Basics" section is focused on explaining the hardware rather than the driver/uapi, so let's make sure GSC is also properly documented here. v2: Fixes from Matt: typos and acronym. Fixes: 5fd974d ("drm/i915/mtl: add initial definitions for GSC CS") Suggested-by: Matt Roper <matthew.d.roper@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230926175554.25968-1-rodrigo.vivi@intel.com (cherry picked from commit 587e80d) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.7-rc1 category: other It is not necessary to include thermal_core.h into thermal_acpi.c, because none of the code in there depends on anything in the former, except for the linux/thermal.h, but it is better to include that one directly instead of including the entire thermal_core.h, so make that change. No functional impact. Fixes: 7a0e397 ("thermal: ACPI: Add ACPI trip point routines") Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> (cherry picked from commit c27d08f) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclsuion from mainline-v6.7-rc1 category: other When support for various old platforms was removed in commit 1ea35b3 ("ARM: s3c: remove s3c24xx specific hacks"), s3c24xx_serial_ops also became unused here because nothing sets port type TYPE_S3C24XX anymore. Remove s3c24xx_serial_ops and all the code that's unreachable now. Fixes: 1ea35b3 ("ARM: s3c: remove s3c24xx specific hacks") Signed-off-by: André Draszik <andre.draszik@linaro.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> Link: https://lore.kernel.org/r/20231019100901.4026680-1-andre.draszik@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit a6149f7) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.7-rc1 category: other Since commit b2a4df2 ("KEYS: Expand the capacity of a keyring") iterate_over_keyring() is never used, so can be removed. And commit b5f545c ("[PATCH] keys: Permit running process to instantiate keys") left behind keyring_search_instkey(). Fixes: b2a4df2 ("KEYS: Expand the capacity of a keyring") Fixes: b5f545c ("[PATCH] keys: Permit running process to instantiate keys") Signed-off-by: YueHaibing <yuehaibing@huawei.com> Reviewed-by: Paul Moore <paul@paul-moore.com> Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org> (cherry picked from commit 03acb9c) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.8-rc1 category: other May reduce confusion for users of MPI2_CONFIG_PAGE_IO_UNIT_3::GPIOVal[]. Fixes: a1c4d77 ("scsi: mpt3sas: Replace unnecessary dynamic allocation with a static one") Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: James Seo <james@equiv.tech> Link: https://lore.kernel.org/r/20230806170604.16143-10-james@equiv.tech Tested-by: Borislav Petkov (AMD) <bp@alien8.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> (cherry picked from commit 8a3db51) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.7-rc1 category: bugfix OMAP2_VRFB is a bool, so the vrfb driver can never be compiled as a module. With that __exit_p(vrfb_remove) always evaluates to NULL and vrfb_remove() is unused. If the driver was compilable as a module, it would fail to build because the type of vrfb_remove() isn't compatible with struct platform_driver::remove(). (The former returns void, the latter int.) Fixes: aa1e49a ("OMAPDSS: VRFB: add omap_vrfb_supported()") Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Helge Deller <deller@gmx.de> (cherry picked from commit fc6699d) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainlein-v6.7-rc1 category: other The presence of duplicate import lines appears to be a typo. Removing them. Link: https://lore.kernel.org/r/20230906155703.3917918-1-alessandro.carminati@gmail.com Fixes: 24bce20 ("tools/rv: Add dot2k") Signed-off-by: Alessandro Carminati (Red Hat) <alessandro.carminati@gmail.com> Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org> (cherry picked from commit a0c04a3) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclsion from mainline-v6.7-rc1 category: docs The comment for seq_buf_has_overflowed() says that an overflow condition is marked by len == size, but that's not what the code is testing. Make the comment match reality. Link: https://lkml.kernel.org/r/87pm19kp0m.fsf@meer.lwn.net Fixes: 8cd709a ("tracing: Have seq_buf use full buffer") Signed-off-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org> (cherry picked from commit 845e31e) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
mainline inclusion from mainline-v6.7-rc1 category: docs Fix a typo in the path of this reference. Fixes: 094f391 ("docs: usb: Add documentation for the UVC Gadget") Cc: Daniel Scally <dan.scally@ideasonboard.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Vegard Nossum <vegard.nossum@oracle.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Message-ID: <20231022185311.919325-1-vegard.nossum@oracle.com> (cherry picked from commit 16794ed) Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThis PR syncs several small cleanups and documentation updates from mainline: removes the unused legacy S3C24XX UART implementation paths, simplifies the OMAP VRFB platform driver registration, drops unused keyring helper declarations, switches a thermal ACPI include to the public thermal header, and adjusts a few comments/docs for accuracy and consistency. Class diagram for updated Samsung serial UART structures and opsclassDiagram
class uart_port {
+unsigned long iobase
+void __iomem *membase
+unsigned int irq
+unsigned int uartclk
+unsigned int fifosize
+unsigned int line
+unsigned int iotype
+unsigned long flags
+struct uart_ops *ops
}
class s3c24xx_uart_info {
+enum s3c24xx_port_type type
}
class s3c24xx_uart_dma {
+dma_addr_t tx_dma_addr
+dma_addr_t rx_dma_addr
+struct dma_chan *tx_chan
+struct dma_chan *rx_chan
}
class s3c24xx_uart_port {
+unsigned char rx_enabled
+unsigned char tx_enabled
+unsigned int pm_level
+unsigned int tx_in_progress
+int rx_irq
+int tx_irq
+struct s3c24xx_uart_dma *dma
+struct s3c24xx_uart_info *info
+struct uart_port port
+int tx_mode
}
class uart_ops {
<<interface>>
+void pm(uart_port *port, unsigned int state, unsigned int oldstate)
+unsigned int tx_empty(uart_port *port)
+unsigned int get_mctrl(uart_port *port)
+void set_mctrl(uart_port *port, unsigned int mctrl)
+void stop_tx(uart_port *port)
+void start_tx(uart_port *port)
+void stop_rx(uart_port *port)
+void break_ctl(uart_port *port, int break_state)
+int startup(uart_port *port)
+void shutdown(uart_port *port)
+void set_termios(uart_port *port, struct ktermios *termios, struct ktermios *old)
+const char *type(uart_port *port)
+void config_port(uart_port *port, int flags)
+int verify_port(uart_port *port, struct serial_struct *ser)
}
class s3c64xx_serial_ops {
<<uart_ops implementation>>
}
class apple_s5l_serial_ops {
<<uart_ops implementation>>
}
class s3c24xx_port_type {
<<enum>>
+TYPE_S3C6400
+TYPE_APPLE_S5L
}
s3c24xx_uart_port --> uart_port : composition
s3c24xx_uart_port --> s3c24xx_uart_dma : aggregation
s3c24xx_uart_port --> s3c24xx_uart_info : aggregation
s3c24xx_uart_info --> s3c24xx_port_type
uart_ops <|.. s3c64xx_serial_ops
uart_ops <|.. apple_s5l_serial_ops
uart_port --> uart_ops : uses
note for s3c24xx_uart_port "Fields rx_claimed and tx_claimed were removed"
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Hey - I've found 2 issues
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location path="Documentation/gpu/i915.rst" line_range="282-285" />
<code_context>
+ Also sometimes called 'VEBOX' in hardware documentation.
+- Compute Command Streamer (CCS). An engine that has access to the media and
+ GPGPU pipelines, but not the 3D pipeline.
+- Graphics Security Controller (GSCCS). A dedicated engine for internal
+ communication with GSC controller on security related tasks like
+ High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP),
+ and HuC firmware authentication.
</code_context>
<issue_to_address>
**suggestion (typo):** The GSCCS expansion and the phrase "GSC controller" are potentially inconsistent/redundant.
Using "Graphics Security Controller (GSCCS)" is misleading, since GSCCS usually means "GSC Command Streamer," and "GSC controller" then expands to "Graphics Security Controller controller." Prefer something like "GSC Command Streamer (GSCCS)" here and then refer to it as "the GSC" later in the sentence.
```suggestion
- GSC Command Streamer (GSCCS). A dedicated engine for internal
- communication with the GSC on security related tasks like
- High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP),
- and HuC firmware authentication.
```
</issue_to_address>
### Comment 2
<location path="Documentation/gpu/i915.rst" line_range="283" />
<code_context>
+- Compute Command Streamer (CCS). An engine that has access to the media and
+ GPGPU pipelines, but not the 3D pipeline.
+- Graphics Security Controller (GSCCS). A dedicated engine for internal
+ communication with GSC controller on security related tasks like
+ High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP),
+ and HuC firmware authentication.
</code_context>
<issue_to_address>
**nitpick (typo):** Hyphenate "security-related" for correct grammar.
Here it functions as a compound adjective before a noun, so it should be written as “security-related tasks.”
```suggestion
communication with GSC controller on security-related tasks like
```
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
| - Graphics Security Controller (GSCCS). A dedicated engine for internal | ||
| communication with GSC controller on security related tasks like | ||
| High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP), | ||
| and HuC firmware authentication. |
There was a problem hiding this comment.
suggestion (typo): The GSCCS expansion and the phrase "GSC controller" are potentially inconsistent/redundant.
Using "Graphics Security Controller (GSCCS)" is misleading, since GSCCS usually means "GSC Command Streamer," and "GSC controller" then expands to "Graphics Security Controller controller." Prefer something like "GSC Command Streamer (GSCCS)" here and then refer to it as "the GSC" later in the sentence.
| - Graphics Security Controller (GSCCS). A dedicated engine for internal | |
| communication with GSC controller on security related tasks like | |
| High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP), | |
| and HuC firmware authentication. | |
| - GSC Command Streamer (GSCCS). A dedicated engine for internal | |
| - communication with the GSC on security related tasks like | |
| - High-bandwidth Digital Content Protection (HDCP), Protected Xe Path (PXP), | |
| - and HuC firmware authentication. |
| - Compute Command Streamer (CCS). An engine that has access to the media and | ||
| GPGPU pipelines, but not the 3D pipeline. | ||
| - Graphics Security Controller (GSCCS). A dedicated engine for internal | ||
| communication with GSC controller on security related tasks like |
There was a problem hiding this comment.
nitpick (typo): Hyphenate "security-related" for correct grammar.
Here it functions as a compound adjective before a noun, so it should be written as “security-related tasks.”
| communication with GSC controller on security related tasks like | |
| communication with GSC controller on security-related tasks like |
|
/approve |
There was a problem hiding this comment.
Pull request overview
Syncs a Deepin 6.6.y kernel tree with upstream/mainline by removing obsolete code paths and aligning comments/docs and driver wiring across several subsystems.
Changes:
- Simplifies/cleans drivers by removing unused legacy Samsung UART pieces and adjusting OMAP VRFB driver registration to match mainline.
- Aligns headers and internal interfaces (thermal ACPI uses public thermal header; drops unused keyring helper declarations).
- Updates documentation/comments for correctness (seq_buf overflow semantics, mpt3sas GPIO guidance, i915 engine descriptions, UVC gadget doc link) and updates the dot2 verification tool script.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tools/verification/dot2/dot2k | Cleans up imports in the dot2k helper script to match upstream. |
| security/keys/internal.h | Removes unused internal keyring helper declarations. |
| include/linux/seq_buf.h | Clarifies overflow semantics for seq_buf in comments. |
| drivers/video/fbdev/omap2/omapfb/vrfb.c | Switches to builtin_platform_driver_probe() and drops unnecessary remove path. |
| drivers/tty/serial/samsung_tty.c | Removes S3C24XX-only UART ops/fields and keeps supported variants wired up. |
| drivers/thermal/thermal_acpi.c | Uses public thermal API header (<linux/thermal.h>) instead of internal core header. |
| drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | Updates GPIO count guidance comment to reflect correct max value. |
| Documentation/usb/gadget_uvc.rst | Fixes/updates the referenced pixel format documentation path. |
| Documentation/gpu/i915.rst | Updates and expands Intel GPU engine type descriptions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary by Sourcery
Remove obsolete code and sync comments and driver wiring with mainline for serial, thermal, SCSI and VRFB components.
Enhancements:
Documentation:
Chores: