[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZIuNXQIB3j6YjYa7@surfacebook>
Date:   Fri, 16 Jun 2023 01:14:53 +0300
From:   andy.shevchenko@...il.com
To:     Charles Keepax <ckeepax@...nsource.cirrus.com>
Cc:     broonie@...nel.org, lee@...nel.org,
        krzysztof.kozlowski+dt@...aro.org, linus.walleij@...aro.org,
        vkoul@...nel.org, robh+dt@...nel.org, conor+dt@...nel.org,
        lgirdwood@...il.com, yung-chuan.liao@...ux.intel.com,
        sanyog.r.kale@...el.com, pierre-louis.bossart@...ux.intel.com,
        alsa-devel@...a-project.org, patches@...nsource.cirrus.com,
        devicetree@...r.kernel.org, linux-gpio@...r.kernel.org,
        linux-spi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 1/6] soundwire: bus: Allow SoundWire peripherals to
 register IRQ handlers
Mon, Jun 05, 2023 at 01:54:59PM +0100, Charles Keepax kirjoitti:
> From: Lucas Tanure <tanureal@...nsource.cirrus.com>
> 
> Currently the in-band alerts for SoundWire peripherals can only
> be communicated to the driver through the interrupt_callback
> function. This however is slightly inconvient for devices that wish to
> share IRQ handling code between SoundWire and I2C/SPI, the later would
> normally register an IRQ handler with the IRQ subsystem. However there
> is no reason the SoundWire in-band IRQs can not also be communicated
> as an actual IRQ to the driver.
> 
> Add support for SoundWire peripherals to register a normal IRQ handler
> to receive SoundWire in-band alerts, allowing code to be shared across
> control buses. Note that we allow users to use both the
> interrupt_callback and the IRQ handler, this is useful for devices which
> must clear additional chip specific SoundWire registers that are not a
> part of the normal IRQ flow, or the SoundWire specification.
...
> +	bus->irq_chip.name = dev_name(bus->dev);
> +	bus->domain = irq_domain_add_linear(NULL, SDW_MAX_DEVICES, &sdw_domain_ops, bus);
I'm wondering why you are not using existing fwnode, if any
(e.g. from parent device).
> +	if (!bus->domain) {
> +		dev_err(bus->dev, "Failed to add IRQ domain\n");
> +		return -EINVAL;
> +	}
-- 
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists
 
