[PATCH 7/9] irqchip/google-cpm: Add CPM IRQ driver

Thomas Gleixner tglx at kernel.org
Wed Oct 28 13:23:11 PDT 2026


On Mon, Oct 26 2026 at 14:43, Brian Norris wrote:
> +
> +static void cpm_irq_process_irq_status(struct cpm_irq_info *info, u32 irq_number)
> +{
> +	int ret;
> +
> +	ret = generic_handle_domain_irq_safe(info->domain, irq_number);

  int ret = generic...();

> +	if (ret)
> +		dev_err(info->dev, "Error handling IRQ %u, error code %d\n", irq_number, ret);
> +}
> +

> +static const struct irq_domain_ops cpm_irq_domain_ops = {
> +	.map = cpm_irq_domain_map,
> +	.xlate = irq_domain_xlate_onecell,

Tabular layout please

> +};
> +
> +static int cpm_irq_probe(struct auxiliary_device *adev, const struct auxiliary_device_id *id)
> +{
> +	struct device *dev = &adev->dev;
> +	struct cpm_client *client;
> +	struct cpm_irq_info *info;
> +	int ret;
> +
> +	info = devm_kzalloc(dev, sizeof(*info), GFP_KERNEL);
> +	if (!info)
> +		return -ENOMEM;
> +
> +	info->dev = dev;
> +	auxiliary_set_drvdata(adev, info);
> +
> +	info->domain = irq_domain_create_tree(dev_fwnode(dev), &cpm_irq_domain_ops, info);
> +	if (!info->domain) {
> +		dev_err(dev, "Unable to add irq domain\n");
> +		return -ENODEV;
> +	}
> +
> +	ret = devm_add_action_or_reset(dev, cpm_irq_domain_remove_action, info->domain);
> +	if (ret) {
> +		dev_err(dev, "Failed to add irq domain removal action\n");
> +		return ret;
> +	}
> +
> +	client = devm_cpm_request_client(dev, CPM_AP_NS_IRQ_SERVICE,
> +					 cpm_irq_rx_callback, info);
> +	if (IS_ERR(client))
> +		return dev_err_probe(dev, PTR_ERR(client),
> +				     "Failed to request cpm client\n");

No line break required. You have 100 characters.

> +static struct auxiliary_driver cpm_irq_driver = {
> +	.probe = cpm_irq_probe,
> +	.name = "cpm-irq-chip",
> +	.id_table = cpm_irq_id_table,

Tabular layout

> +};
> +

Pointless new line.

> +module_auxiliary_driver(cpm_irq_driver);

Other than those nitpicks this looks reasonable.

> +
> +MODULE_LICENSE("GPL");
> +MODULE_DESCRIPTION("Google CPM IRQ chip driver");
> +MODULE_AUTHOR("Jim Wylder <jwylder at google.com>");

This does not add up: I can't find Jim in the From/SOB tags of the mail.

Thanks,

        tglx



More information about the linux-arm-kernel mailing list