On Sun, May 12, 2019 at 3:25 AM Alex Elder wrote:
> +static int gsi_ring_alloc(struct gsi *gsi, struct gsi_ring *ring, u32 count)
> +{
> + size_t size = roundup_pow_of_two(count * sizeof(struct gsi_tre));
> + dma_addr_t addr;
> +
> + /* Hardware requires a power-of-2 ring size (
On 5/15/19 5:47 AM, Arnd Bergmann wrote:
> On Sun, May 12, 2019 at 3:25 AM Alex Elder wrote:
>
> The per-event interrupt handling seems to be more complex than
> necessary:
I just noticed this message. I'll take another look at this
whole interrupt control mechanism and will try to streamline
i
On Wed, May 15, 2019 at 2:13 PM Alex Elder wrote:
> On 5/15/19 2:21 AM, Arnd Bergmann wrote:
> >> +/* Wait for all transaction activity on a channel to complete */
> >> +void gsi_channel_trans_quiesce(struct gsi *gsi, u32 channel_id)
> >> +{
> >> + struct gsi_channel *channel = &gsi->chann
On 5/15/19 2:21 AM, Arnd Bergmann wrote:
> On Sun, May 12, 2019 at 3:25 AM Alex Elder wrote:
>
>> +/** gsi_gpi_channel_scratch - GPI protocol scratch register
>> + *
>> + * @max_outstanding_tre:
>> + * Defines the maximum number of TREs allowed in a single transaction
>> + * on a channel
On Sun, May 12, 2019 at 3:25 AM Alex Elder wrote:
The per-event interrupt handling seems to be more complex than
necessary:
> +/* Enable or disable an event interrupt */
> +static void
> +_gsi_irq_control_event(struct gsi *gsi, u32 evt_ring_id, bool enable)
> +{
> + u32 mask = BIT(evt_ring
On Sun, May 12, 2019 at 3:25 AM Alex Elder wrote:
> +/** gsi_gpi_channel_scratch - GPI protocol scratch register
> + *
> + * @max_outstanding_tre:
> + * Defines the maximum number of TREs allowed in a single transaction
> + * on a channel (in Bytes). This determines the amount of prefetc
This patch includes "gsi.c", which implements the generic software
interface (GSI) for IPA. The generic software interface abstracts
channels, which provide a means of transferring data either from the
AP to the IPA, or from the IPA to the AP. A ring buffer of "transfer
elements" (TREs) is used t
7 matches
Mail list logo