/* * linux/sound/arm/ep93xx-pcm.c - EP93xx ALSA PCM interface * * Copyright (C) 2006 Lennert Buytenhek * Copyright (C) 2006 Applied Data Systems * * Rewritten for the SoC audio subsystem (Based on PXA2xx code): * Copyright (c) 2008 Ryan Mallon * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #include #include #include #include #include #include #include #include #include "ep93xx-pcm.h" static const struct snd_pcm_hardware ep93xx_pcm_hardware = { .info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_BLOCK_TRANSFER), .buffer_bytes_max = 131072, .period_bytes_min = 32, .period_bytes_max = 32768, .periods_min = 1, .periods_max = 32, .fifo_size = 32, }; static bool ep93xx_pcm_dma_filter(struct dma_chan *chan, void *filter_param) { struct ep93xx_dma_data *data = filter_param; if (data->direction == ep93xx_dma_chan_direction(chan)) { chan->private = data; return true; } return false; } static const struct snd_dmaengine_pcm_config ep93xx_dmaengine_pcm_config = { .pcm_hardware = &ep93xx_pcm_hardware, .compat_filter_fn = ep93xx_pcm_dma_filter, .prealloc_buffer_size = 131072, }; int devm_ep93xx_pcm_platform_register(struct device *dev) { return devm_snd_dmaengine_pcm_register(dev, &ep93xx_dmaengine_pcm_config, SND_DMAENGINE_PCM_FLAG_NO_DT | SND_DMAENGINE_PCM_FLAG_COMPAT); } EXPORT_SYMBOL_GPL(devm_ep93xx_pcm_platform_register); MODULE_AUTHOR("Ryan Mallon"); MODULE_DESCRIPTION("EP93xx ALSA PCM interface"); MODULE_LICENSE("GPL"); /ucsi.c?h=nds-private-remove&id=3b4f18843e511193e7eb616710e838f5852e661d'>treecommitdiff
diff options
context:
space:
mode:
authorJan Beulich <JBeulich@suse.com>2017-01-23 08:11:37 -0700
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2017-01-23 13:27:42 -0500
commit3b4f18843e511193e7eb616710e838f5852e661d (patch)
treeabf5739ec8edad0a94594aa2148d132ab2f20867 /drivers/usb/misc/ucsi.c
parentb32728ffef7f233dbdabb3f11814bdf692aaf501 (diff)
xen-blkfront: correct maximum segment accounting
Making use of "max_indirect_segments=" has issues: - blkfront_setup_indirect() may end up with zero psegs when PAGE_SIZE is sufficiently much larger than XEN_PAGE_SIZE - the variable driven by the command line option (xen_blkif_max_segments) has a somewhat different purpose, and hence should namely never end up being zero - as long as the specified value is lower than the legacy default, we better don't use indirect segments at all (or we'd in fact lower throughput) Signed-off-by: Jan Beulich <jbeulich@suse.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/usb/misc/ucsi.c')