Re: [PATCH] Add eSPI device driver (flash channel)

From: Krzysztof Kozlowski
Date: Wed Feb 14 2024 - 04:53:43 EST


On 13/02/2024 15:36, Manojkiran Eda wrote:
> This patch adds the driver support for the eSPI controller of
> Aspeed 5/6th generation SoCs. This controller is a slave device
> communicating with a master over Enhanced Serial Peripheral
> Interface (eSPI).
>
> eSPI supports 4 channels, namely peripheral, virtual wire,
> out-of-band, and flash, and operates at max frequency of 66MHz.
>
> But at the moment, this patch set only supports the flash channel.
>
> Signed-off-by: Manojkiran Eda <manojkiran.eda@xxxxxxxxx>
> ---
> Hello everyone,
>
> I'm presenting a revised version of the eSPI device driver patch series found at the following link:
>
> https://lore.kernel.org/openbmc/20220516005412.4844-1-chiawei_wang@xxxxxxxxxxxxxx/

What changed? Please provide changelog and continue with versioning.


>
> This update addresses the issues identified during the review process.
>
> While the previous patch series attempted to incorporate support for all four different channels of eSPI,
> this new series focuses on upstreaming the flash channel initially, ensuring that all review comments are
> duly addressed, before progressing further.
>
> Results:
>
> Successfully conducted a flash update via eSPI.
>
> Note:
>
> This marks my inaugural endeavor in contributing code to the kernel subsystem. I kindly request reviewers
> to incorporate as many details as possible in the review comments.
> ---
> .../devicetree/bindings/soc/aspeed/espi.yaml | 125 ++++++
> arch/arm/boot/dts/aspeed/aspeed-g6.dtsi | 16 +-

These are all separatge patches.

Please run scripts/checkpatch.pl and fix reported warnings. Some
warnings can be ignored, but the code here looks like it needs a fix.
Feel free to get in touch if the warning is not clear.

> drivers/mtd/mtdcore.c | 2 +-
> drivers/soc/aspeed/Kconfig | 10 +
> drivers/soc/aspeed/Makefile | 3 +
> drivers/soc/aspeed/aspeed-espi-ctrl.c | 197 +++++++++
> drivers/soc/aspeed/aspeed-espi-ctrl.h | 169 ++++++++
> drivers/soc/aspeed/aspeed-espi-flash.c | 466 +++++++++++++++++++++
> drivers/soc/aspeed/aspeed-espi-flash.h | 45 ++
> include/uapi/linux/espi/aspeed-espi-ioc.h | 103 +++++
> 10 files changed, 1134 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/soc/aspeed/espi.yaml b/Documentation/devicetree/bindings/soc/aspeed/espi.yaml
> new file mode 100644
> index 000000000000..6521a351d18d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/aspeed/espi.yaml
> @@ -0,0 +1,125 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +# # Copyright (c) 2021 Aspeed Technology Inc.
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/soc/aspeed/espi.yaml#";
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#";

It does not look like you tested the bindings, at least after quick
look. Please run `make dt_binding_check` (see
Documentation/devicetree/bindings/writing-schema.rst for instructions).
Maybe you need to update your dtschema and yamllint.

Not reviewing further. Test your code....

Best regards,
Krzysztof