- 17 12月, 2013 2 次提交
-
-
由 Ashwini Ghuge 提交于
NVIDIA Tegra124 supports has the new GPIO port as GPIO_FF. Add the macro for this port name. Signed-off-by: NAshwini Ghuge <aghuge@nvidia.com> Signed-off-by: NLaxman Dewangan <ldewangan@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Signed-off-by: NStephen Warren <swarren@nvidia.com>
-
由 Dan Carpenter 提交于
dma_request_slave_channel() returns NULL on error and not ERR_PTRs. I've fixed this by using dma_request_slave_channel_reason() which does return ERR_PTRs. Fixes: a915d150 ('spi: tegra: convert to standard DMA DT bindings') Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NStephen Warren <swarren@nvidia.com>
-
- 13 12月, 2013 1 次提交
-
-
由 Stephen Warren 提交于
Tegra124 adds a number of extra modules into the configlink bus, which must be taken out of reset before the bus is used. Update the AHUB driver to know about these extra modules (the AHUB HW module hosts the configlink bus). Based-on-work-by: NArun Shamanna Lakshmi <aruns@nvidia.com> Based-on-work-by: NSonghee Baek <sbaek@nvidia.com> Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org> --- This patch depends on "ASoC: tegra: use reset framework" to compile, which is ack'd and slated to go through a (large) topic branch in the Tegra tree. So, we can either: a) Merge that Tegra topic branch into the ASoC tree, then apply this. Note that I haven't created the topic branch yet, since I'm still waiting for DMA dependencies to be applied. b) Apply this change to the Tegra tree too. This change isn't directly related to the changes in the Tegra tree; it just makes use of the new reset controller feature that's introduced there.
-
- 12 12月, 2013 33 次提交
-
-
由 Stephen Warren 提交于
The "pcie_xclk" clock is not actually a clock at all, but rather a reset domain. Now that the custom Tegra module reset API has been removed, we can remove the definition of any "clocks" that existed solely to support it. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-By: NPeter De Schrijver <pdeschrijver@nvidia.com>
-
由 Stephen Warren 提交于
Now that no code uses the custom Tegra module reset API, we can remove its implementation. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-By: NPeter De Schrijver <pdeschrijver@nvidia.com>
-
由 Stephen Warren 提交于
Now that all Tegra drivers have been converted to use DMA APIs which retrieve DMA channel information from standard DMA DT properties, we can remove all the legacy DT DMA-related properties. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Now that all Tegra drivers have been converted to use the common reset framework, we can remove all the legacy DT clocks/clock-names entries for "clocks" that were only used with the old custom Tegra module reset API. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NAlan Stern <stern@rowland.harvard.edu> Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
By using dma_request_slave_channel_or_err(), the DMA slave ID can be looked up from standard DT properties, and squirrelled away during channel allocation. Hence, there's no need to use a custom DT property to store the slave ID. Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
By using dma_request_slave_channel_or_err(), the DMA slave ID can be looked up from standard DT properties, and squirrelled away during channel allocation. Hence, there's no need to use a custom DT property to store the slave ID. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMarc Dietrich <marvin24@gmx.de> Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NWolfram Sang <wsa@the-dreams.de> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
By passing no flags when calling snd_dmaengine_pcm_register() from tegra_pcm.c, we end up using dma_request_slave_channel() rather than dmaengine_pcm_compat_request_channel(), and hence rely on the standard DMA DT bindings and stashing the DMA slave ID away during channel allocation. This means there's no need to use a custom DT property to store the slave ID. So, remove all the code that parsed it. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org>
-
由 Stephen Warren 提交于
The Tegra30 I2S driver currently allocates DMA FIFOs from the AHUB only when an audio stream starts playback. This is theoretically nice for resource sharing, but makes no practical difference for any configuration the drivers currently support. However, this deferral prevents conversion to the standard DMA DT bindings, since conversion requires knowledge of the specific DMA channel to be allocated, which in turn depends on which specific FIFO was allocated. For this reason, move the FIFO allocation into probe() to allow later conversion to the standard DMA DT bindings. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org>
-
由 Stephen Warren 提交于
Call pm_runtime_get_sync() before all register accesses; the HW requires clocks to be running when accessing registers. This hasn't been needed to date, since all register IO was performed while playback was active, and hence the ASoC core had already called pm_runtime_get(). However, an imminent future commit will allocate and set up the FIFOs and routing during probe(), when that "protection" won't be in place. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. This change also renames "clock"/"clk" to "modules"/"mod" in symbols related to entries in configlink_clocks[], since: - We don't care about clock handles any more, but rather reset handles, so the old name isn't applicable. - It really is a list of modules on the bus, about which we currently only care about reset handles. If we start caring about any other aspect of the modules in the future, we won't have to rename all these symbols again. Note: The addition of "depends COMMON_CLOCK" is something that was missing before, not a new requirement. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NMark Brown <broonie@linaro.org> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Call of_dma_controller_register() so that DMA clients can look up the Tegra DMA controller using standard APIs. This requires the of_xlate() function to save off the DMA slave ID, and for tegra_dma_slave_config() not to over-write this information; once DMA client drivers are converted to dma_request_slave_channel() and DT-based lookups, they won't set this field of struct dma_slave_config anymore. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NArnd Bergmann <arnd@arndb.de> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-by: NDan Williams <dan.j.williams@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NBjorn Helgaas <bhelgaas@google.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. The old Tegra-specific API used a struct clock to represent the module to reset. Some of the clocks retrieved during probe() were only used for reset purposes, and indeed aren't even true clocks. So, there's no need to get() them any more. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NBjorn Helgaas <bhelgaas@google.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
The Tegra CAR module implements both a clock and reset controller. So far, the driver exposes the clock feature via the common clock API and the reset feature using a custom API. This patch adds an implementation of the common reset framework API (include/linux/reset*.h). The legacy reset implementation will be removed once all drivers have been converted. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-By: NPeter De Schrijver <pdeschrijver@nvidia.com>
-
由 Stephen Warren 提交于
The Tegra clock driver is built unconditionally when Tegra support is enabled. In order to avoid having to ifdef the forthcoming reset driver implementation, have ARCH_TEGRA select RESET_CONTROLLER. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
This patch switches the Tegra DT files to use the standard DMA DT bindings rather than custom properties. Note that the legacy properties are not yet removed; the drivers must be updated to use the new properties first. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
An earlier patch updated the Tegra DT bindings to require resets and reset-names properties to be filled in. This patch updates the DT files to include those properties. Note that any legacy clocks and clock-names entries that are replaced by reset properties are not yet removed; the drivers must be updated to use the new resets and reset-names properties first. Signed-off-by: NStephen Warren <swarren@nvidia.com>
-
由 Stephen Warren 提交于
Update all the Tegra DT bindings to require the standard dmas/dma-names properties rather than non-standard nvidia,dma-request-selector property. This is a DT-ABI-incompatible change. It is the second of two changes required for me to consider the Tegra DT bindings as stable, the other being the previous conversion to the common reset bindings. Signed-off-by: NStephen Warren <swarren@nvidia.com>
-
由 Stephen Warren 提交于
Update all the Tegra DT bindings to require resets/reset-names properties where the HW module has reset inputs. Remove any entries from clocks or clock-names that were only required to identify reset inputs, rather than referring to real clocks. This is a DT-ABI-incompatible change. It is the first of two changes required for me to consider the Tegra DT bindings as stable, the other being conversion to the common DMA DT bindings. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com>
-
由 Stephen Warren 提交于
Many of the Tegra DT binding documents say nothing about the clocks or clock-names properties, yet those are present and required in DT files. This patch simply updates the documentation file to match the implicit definition of the binding, based on real-world DT content. All Tegra bindings that mention clocks are updated to have consistent wording and formatting of the clock-related properties. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com>
-
由 Stephen Warren 提交于
Tegra clk branch for 3.14
-
由 Stephen Warren 提交于
ASoC: dma: Generic ASoC dmaengine driver enhancements This is the work so far on dmaengine for v3.14, it is being cross merged into the Tegra tree to support a large DMA overhaul there. The main additions are a change in the DMA request API which allows better interaction at system startup using deferred probes and methods for overriding the default device and channel names used to request DMA.
-
由 Stephen Warren 提交于
This merges git://git.infradead.org/users/vkoul/slave-dma.git topic/of
-
由 Stephen Warren 提交于
This merges git://git.infradead.org/users/vkoul/slave-dma.git topic/defer_probe
-
由 Stephen Warren 提交于
Check the return value of dma_request_slave_channel_reason() to see if deferred probe happens, not the variable the return value will be assigned to later. Reported-by: Nkbuild test robot <fengguang.wu@intel.com> Fixes: 5eda87b8 ("ASoC: dmaengine: support deferred probe for DMA channels") Signed-off-by: NStephen Warren <swarren@nvidia.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 11 12月, 2013 2 次提交
-
-
由 Stephen Warren 提交于
Enhance dmaengine_pcm_request_chan_of() to support deferred probe for DMA channels, by using the new dma_request_slave_channel_or_err() API. This prevents snd_dmaengine_pcm_register() from succeeding without acquiring DMA channels due to the relevant DMA controller not yet being registered. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@linaro.org>
-
git://git.infradead.org/users/vkoul/slave-dma由 Mark Brown 提交于
The following branch/patch is a dependency for my "ASoC: dmaengine: support deferred probe for DMA channels". If you could pull the branch below into your topic/dma, then merge my ASoC patch, that would be great. I would then like to merge your topic/dma into the Tegra tree as a baseline for the Tegra conversion to the standard DMA DT bindings. Vinod has confirmed this his topic/defer_probe branch is stable, and won't be rebased: https://lkml.org/lkml/2013/12/10/463
-
- 10 12月, 2013 2 次提交
-
-
由 Stephen Warren 提交于
mmp_pdma.c implements a custom of_xlate() function that is 95% identical to what Tegra will need. Create a function to implement the common part, so everyone doesn't just cut/paste the implementation. Cc: Dan Williams <dan.j.williams@intel.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: Lars-Peter Clausen <lars@metafoo.de> Cc: dmaengine@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: NStephen Warren <swarren@nvidia.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com>
-
由 Stephen Warren 提交于
dma_request_slave_channel() simply returns NULL whenever DMA channel lookup fails. Lookup could fail for two distinct reasons: a) No DMA specification exists for the channel name. This includes situations where no DMA specifications exist at all, or other general lookup problems. b) A DMA specification does exist, yet the driver for that channel is not yet registered. Case (b) should trigger deferred probe in client drivers. However, since they have no way to differentiate the two situations, it cannot. Implement new function dma_request_slave_channel_reason(), which performs identically to dma_request_slave_channel(), except that it returns an error-pointer rather than NULL, which allows callers to detect when deferred probe should occur. Eventually, all drivers should be converted to this new API, the old API removed, and the new API renamed to the more desirable name. This patch doesn't convert the existing API and all drivers in one go, since some drivers call dma_request_slave_channel() then dma_request_channel() if that fails. That would require either modifying dma_request_channel() in the same way, or adding extra error-handling code to all affected drivers, and there are close to 100 drivers using the other API, rather than just the 15-20 or so that use dma_request_slave_channel(), which might be tenable in a single patch. acpi_dma_request_slave_chan_by_name() doesn't currently implement deferred probe. It should, but this will be addressed later. Acked-by: NDan Williams <dan.j.williams@intel.com> Signed-off-by: NStephen Warren <swarren@nvidia.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com>
-