[PATCH] accel/qaic: Add AIC080 support

Jacek Lawrynowicz jacek.lawrynowicz at linux.intel.com
Fri Oct 11 07:24:18 UTC 2024


Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz at linux.intel.com>

On 10/4/2024 9:52 PM, Jeffrey Hugo wrote:
> Add basic support for the new AIC080 product. The PCIe Device ID is
> 0xa080. AIC080 is a lower cost, lower performance SKU variant of AIC100.
> From the qaic perspective, it is the same as AIC100.
> 
> Reviewed-by: Troy Hanson <quic_thanson at quicinc.com>
> Signed-off-by: Jeffrey Hugo <quic_jhugo at quicinc.com>
> ---
>  Documentation/accel/qaic/aic080.rst | 14 ++++++++++++++
>  Documentation/accel/qaic/index.rst  |  1 +
>  drivers/accel/qaic/qaic_drv.c       |  4 +++-
>  3 files changed, 18 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/accel/qaic/aic080.rst
> 
> diff --git a/Documentation/accel/qaic/aic080.rst b/Documentation/accel/qaic/aic080.rst
> new file mode 100644
> index 000000000000..d563771ea6ce
> --- /dev/null
> +++ b/Documentation/accel/qaic/aic080.rst
> @@ -0,0 +1,14 @@
> +.. SPDX-License-Identifier: GPL-2.0-only
> +
> +===============================
> + Qualcomm Cloud AI 80 (AIC080)
> +===============================
> +
> +Overview
> +========
> +
> +The Qualcomm Cloud AI 80/AIC080 family of products are a derivative of AIC100.
> +The number of NSPs and clock rates are reduced to fit within resource
> +constrained solutions. The PCIe Product ID is 0xa080.
> +
> +As a derivative product, all AIC100 documentation applies.
> diff --git a/Documentation/accel/qaic/index.rst b/Documentation/accel/qaic/index.rst
> index ad19b88d1a66..967b9dd8bace 100644
> --- a/Documentation/accel/qaic/index.rst
> +++ b/Documentation/accel/qaic/index.rst
> @@ -10,4 +10,5 @@ accelerator cards.
>  .. toctree::
>  
>     qaic
> +   aic080
>     aic100
> diff --git a/drivers/accel/qaic/qaic_drv.c b/drivers/accel/qaic/qaic_drv.c
> index bf10156c334e..f139c564eadf 100644
> --- a/drivers/accel/qaic/qaic_drv.c
> +++ b/drivers/accel/qaic/qaic_drv.c
> @@ -34,6 +34,7 @@
>  
>  MODULE_IMPORT_NS(DMA_BUF);
>  
> +#define PCI_DEV_AIC080			0xa080
>  #define PCI_DEV_AIC100			0xa100
>  #define QAIC_NAME			"qaic"
>  #define QAIC_DESC			"Qualcomm Cloud AI Accelerators"
> @@ -365,7 +366,7 @@ static struct qaic_device *create_qdev(struct pci_dev *pdev, const struct pci_de
>  		return NULL;
>  
>  	qdev->dev_state = QAIC_OFFLINE;
> -	if (id->device == PCI_DEV_AIC100) {
> +	if (id->device == PCI_DEV_AIC080 || id->device == PCI_DEV_AIC100) {
>  		qdev->num_dbc = 16;
>  		qdev->dbc = devm_kcalloc(dev, qdev->num_dbc, sizeof(*qdev->dbc), GFP_KERNEL);
>  		if (!qdev->dbc)
> @@ -607,6 +608,7 @@ static struct mhi_driver qaic_mhi_driver = {
>  };
>  
>  static const struct pci_device_id qaic_ids[] = {
> +	{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, PCI_DEV_AIC080), },
>  	{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, PCI_DEV_AIC100), },
>  	{ }
>  };



More information about the dri-devel mailing list