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

From: Rob Herring
Date: Tue Feb 13 2024 - 10:40:24 EST



On Tue, 13 Feb 2024 20:06:08 +0530, 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/
>
> 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 +-
> 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(-)
>

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:
/Documentation/devicetree/bindings/soc/aspeed/espi.yaml:5:6: [error] string value is redundantly quoted with any quotes (quoted-strings)
/Documentation/devicetree/bindings/soc/aspeed/espi.yaml:6:10: [error] string value is redundantly quoted with any quotes (quoted-strings)

dtschema/dtc warnings/errors:

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240213-espi_driver-v1-1-92741c812843@xxxxxxxxx

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.