freebsd-skq/sys/arm
Hans Petter Selasky 65b017b420 Avoid use of contiguous memory allocations in busdma when possible.
This patch improves the boundary checks in busdma to allow more cases
using the regular page based kernel memory allocator. Especially in
the case of having a non-zero boundary in the parent DMA tag. For
example AMD64 based platforms set the PCI DMA tag boundary to
PCI_DMA_BOUNDARY, 4GB, which before this patch caused contiguous
memory allocations to be preferred when allocating more than PAGE_SIZE
bytes. Even if the required alignment was less than PAGE_SIZE bytes.

This patch also fixes the nsegments check for using kmem_alloc_attr()
when the maximum segment size is less than PAGE_SIZE bytes.

Updated some comments describing the code in question.

Differential Revision:	https://reviews.freebsd.org/D10645
Reviewed by:		kib, jhb, gallatin, scottl
MFC after:		1 week
Sponsored by:		Mellanox Technologies
2017-05-16 14:21:37 +00:00
..
allwinner Use hwreset_get_by_ofw_idx() function instead, since there is 2017-04-19 05:59:00 +00:00
altera/socfpga Add FPGA manager driver for Intel Arria 10. 2017-03-03 14:19:37 +00:00
amlogic/aml8726 Add and use a MMC_DECLARE_BRIDGE macro for declaring mmc(4) bridges 2017-03-07 22:42:44 +00:00
annapurna/alpine
arm Avoid use of contiguous memory allocations in busdma when possible. 2017-05-16 14:21:37 +00:00
at91 Split overbloated machep.c to multiple files and do basic cleanup 2017-03-11 07:07:41 +00:00
broadcom/bcm2835 Fix spelling mistake, BCM2835_PASWORD -> BCM2835_PASSWORD 2017-04-03 22:36:45 +00:00
cavium/cns11xx
cloudabi32 Stop providing the compat_3_brand. 2017-03-23 14:12:21 +00:00
conf Add the Marvell SDHCI controller to the list of supported devices in 2017-05-16 05:10:15 +00:00
freescale Convert probing to use an ofw_compat_data array, and add imx6ul to the list. 2017-04-16 17:53:44 +00:00
include Introduce pmap_remap_vm_attr(), 2017-05-09 11:05:32 +00:00
lpc Add and use a MMC_DECLARE_BRIDGE macro for declaring mmc(4) bridges 2017-03-07 22:42:44 +00:00
mv Add the Marvell SDHCI controller to the list of supported devices in 2017-05-16 05:10:15 +00:00
nvidia Restore original (pre r315760) naming for Tegra SDHCI device. 2017-03-23 08:16:53 +00:00
qemu Make the default FDT implementation of platform_mp_setmaxid use the cpu 2017-03-17 12:45:53 +00:00
ralink [arm] [rt1310] add initial RT1310 SoC code. 2017-05-06 06:14:46 +00:00
rockchip
samsung/exynos
ti [am335x] Fix HDMI suport for Beaglebone Black 2017-03-30 21:54:57 +00:00
versatile [versatilepb] Fix keyboard driver after switching to upstream DTS 2017-04-01 20:38:12 +00:00
xilinx
xscale