Page MenuHomeFreeBSD

bhnd(4): Add support for querying DMA address translation parameters
ClosedPublic

Authored by landonf on Oct 3 2017, 10:20 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Oct 23, 3:01 AM
Unknown Object (File)
Wed, Oct 22, 8:46 AM
Unknown Object (File)
Wed, Oct 22, 8:46 AM
Unknown Object (File)
Wed, Oct 22, 8:46 AM
Unknown Object (File)
Tue, Oct 21, 8:23 PM
Unknown Object (File)
Mon, Oct 13, 3:31 PM
Unknown Object (File)
Mon, Sep 29, 2:02 AM
Unknown Object (File)
Sun, Sep 28, 2:38 PM
Subscribers
None

Details

Summary

BHND Wi-Fi chipsets and SoCs share a common DMA engine, operating within
backplane address space. To support host DMA on Wi-Fi chipsets, the bridge core
maps host address space onto the backplane; any host addresses must be
translated to their corresponding backplane address.

This diff:

  • Defines a new bhnd_get_dma_translation(9) API to support querying DMA address translation parameters from the bhnd(4) bus.
  • Extends bhndb(4) to provide DMA translation descriptors from a DMA address translation table defined in the host bridge-specific bhndb_hwcfg.
  • Defines bhndb(4) DMA address translation tables for all supported host bridge cores.
  • Extends MIPS/Broadcom to provide a no-op DMA translation; no translation of backplane address space is required.

Depends on D12518

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

lgtm; you don't have to ask for my permission to commit to bhnd stuff btw :)

This revision is now accepted and ready to land.Oct 3 2017, 10:56 PM

lgtm; you don't have to ask for my permission to commit to bhnd stuff btw :)

Thanks! In general I'm just trying to keep the foundation-related work tracked through Phabricator reviews (and a second set of code review eyes is never a bad thing). If you prefer, I can just include you as a 'subscriber' on bhnd-only diffs, and treat your approval as implicit.

This revision was automatically updated to reflect the committed changes.