Noralf Trønnes
b6bc202494
tinydrm/mipi-dbi: Use dma-safe buffers for all SPI transfers
[ Upstream commit a89bfc5d9a ]
Buffers passed to spi_sync() must be dma-safe even for tiny buffers since
some SPI controllers use DMA for all transfers.
Example splat with CONFIG_DMA_API_DEBUG enabled:
[ 23.750467] DMA-API: dw_dmac_pci 0000:00:15.0: device driver maps memory from stack [probable addr=000000001e49185d]
[ 23.750529] WARNING: CPU: 1 PID: 1296 at kernel/dma/debug.c:1161 check_for_stack+0xb7/0x190
[ 23.750533] Modules linked in: mmc_block(+) spi_pxa2xx_platform(+) pwm_lpss_pci pwm_lpss spi_pxa2xx_pci sdhci_pci cqhci intel_mrfld_pwrbtn extcon_intel_mrfld sdhci intel_mrfld_adc led_class mmc_core ili9341 mipi_dbi tinydrm backlight ti_ads7950 industrialio_triggered_buffer kfifo_buf intel_soc_pmic_mrfld hci_uart btbcm
[ 23.750599] CPU: 1 PID: 1296 Comm: modprobe Not tainted 5.0.0-rc7+ #236
[ 23.750605] Hardware name: Intel Corporation Merrifield/BODEGA BAY, BIOS 542 2015.01.21:18.19.48
[ 23.750620] RIP: 0010:check_for_stack+0xb7/0x190
[ 23.750630] Code: 8b 6d 50 4d 85 ed 75 04 4c 8b 6d 10 48 89 ef e8 2f 8b 44 00 48 89 c6 4a 8d 0c 23 4c 89 ea 48 c7 c7 88 d0 82 b4 e8 40 7c f9 ff <0f> 0b 8b 05 79 00 4b 01 85 c0 74 07 5b 5d 41 5c 41 5d c3 8b 05 54
[ 23.750637] RSP: 0000:ffff97bbc0292fa0 EFLAGS: 00010286
[ 23.750646] RAX: 0000000000000000 RBX: ffff97bbc0290000 RCX: 0000000000000006
[ 23.750652] RDX: 0000000000000007 RSI: 0000000000000002 RDI: ffff94b33e115450
[ 23.750658] RBP: ffff94b33c8578b0 R08: 0000000000000002 R09: 00000000000201c0
[ 23.750664] R10: 00000006ecb0ccc6 R11: 0000000000034f38 R12: 000000000000316c
[ 23.750670] R13: ffff94b33c84b250 R14: ffff94b33dedd5a0 R15: 0000000000000001
[ 23.750679] FS: 0000000000000000(0000) GS:ffff94b33e100000(0063) knlGS:00000000f7faf690
[ 23.750686] CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033
[ 23.750691] CR2: 00000000f7f54faf CR3: 000000000722c000 CR4: 00000000001006e0
[ 23.750696] Call Trace:
[ 23.750713] debug_dma_map_sg+0x100/0x340
[ 23.750727] ? dma_direct_map_sg+0x3b/0xb0
[ 23.750739] spi_map_buf+0x25a/0x300
[ 23.750751] __spi_pump_messages+0x2a4/0x680
[ 23.750762] __spi_sync+0x1dd/0x1f0
[ 23.750773] spi_sync+0x26/0x40
[ 23.750790] mipi_dbi_typec3_command_read+0x14d/0x240 [mipi_dbi]
[ 23.750802] ? spi_finalize_current_transfer+0x10/0x10
[ 23.750821] mipi_dbi_typec3_command+0x1bc/0x1d0 [mipi_dbi]
Reported-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Tested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190222124329.23046-1-noralf@tronnes.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-05-31 06:46:32 -07:00
..
2019-05-31 06:46:21 -07:00
2019-05-02 09:58:56 +02:00
2019-05-04 09:20:21 +02:00
2019-02-27 10:08:57 +01:00
2019-04-20 09:15:55 +02:00
2019-05-31 06:46:23 -07:00
2019-05-25 18:23:24 +02:00
2019-05-31 06:46:16 -07:00
2018-08-28 09:58:03 -07:00
2019-04-05 22:33:10 +02:00
2019-05-31 06:46:31 -07:00
2019-05-31 06:46:23 -07:00
2019-05-16 19:41:21 +02:00
2019-03-19 13:12:38 +01:00
2019-05-31 06:46:24 -07:00
2019-02-12 19:47:08 +01:00
2019-05-31 06:46:15 -07:00
2019-05-22 07:37:40 +02:00
2018-08-18 11:04:51 -07:00
2019-05-31 06:46:31 -07:00
2019-05-14 19:17:53 +02:00
2019-05-31 06:46:23 -07:00
2018-08-17 16:20:27 -07:00
2019-05-08 07:21:44 +02:00
2019-02-12 19:46:59 +01:00
2018-12-17 09:24:35 +01:00
2019-03-10 07:17:21 +01:00
2019-05-08 07:21:53 +02:00
2019-05-31 06:46:32 -07:00
2019-05-31 06:46:28 -07:00
2019-05-10 17:54:04 +02:00
2019-05-31 06:46:22 -07:00
2018-07-30 20:54:51 -07:00
2019-05-25 18:23:26 +02:00
2019-05-08 07:21:55 +02:00
2019-01-31 08:14:42 +01:00
2019-05-14 19:17:53 +02:00
2019-05-31 06:46:25 -07:00
2019-05-31 06:46:28 -07:00
2019-05-16 19:41:25 +02:00
2019-05-25 18:23:30 +02:00
2019-05-16 19:41:24 +02:00
2019-05-16 19:41:31 +02:00
2019-05-04 09:20:22 +02:00
2019-02-12 19:47:08 +01:00
2018-08-24 14:42:42 +02:00
2019-03-23 20:09:49 +01:00
2019-05-31 06:46:15 -07:00
2019-05-31 06:46:29 -07:00
2019-05-25 18:23:32 +02:00
2019-02-12 19:47:10 +01:00
2018-07-30 23:17:53 -04:00
2019-05-08 07:21:48 +02:00
2019-04-20 09:16:04 +02:00
2019-05-31 06:46:23 -07:00
2019-05-22 07:37:41 +02:00
2018-10-12 17:36:39 +02:00
2019-05-31 06:46:31 -07:00
2019-05-16 19:41:25 +02:00
2018-07-23 15:07:12 +02:00
2019-05-31 06:46:01 -07:00
2019-05-31 06:46:15 -07:00
2018-11-13 11:08:35 -08:00
2019-02-06 17:30:16 +01:00
2019-02-12 19:47:08 +01:00
2019-05-25 18:23:23 +02:00
2019-03-23 20:10:05 +01:00
2019-05-25 18:23:43 +02:00
2018-11-13 11:08:17 -08:00
2019-05-31 06:46:17 -07:00
2019-05-31 06:46:20 -07:00
2019-05-31 06:46:17 -07:00
2019-05-16 19:41:18 +02:00
2019-05-25 18:23:44 +02:00
2019-05-14 19:17:53 +02:00
2019-02-12 19:47:01 +01:00
2018-08-20 11:36:07 +02:00
2018-08-22 10:52:51 -07:00
2019-04-05 22:33:15 +02:00
2018-11-13 11:08:52 -08:00
2019-05-08 07:21:47 +02:00
2018-11-13 11:08:55 -08:00
2019-05-31 06:46:26 -07:00
2019-05-31 06:46:24 -07:00
2018-12-21 14:15:17 +01:00
2019-05-31 06:46:30 -07:00
2018-08-02 13:54:06 +02:00
2019-05-31 06:46:14 -07:00
2019-05-10 17:54:10 +02:00
2018-08-27 09:49:48 +05:30
2019-05-31 06:46:28 -07:00
2019-05-31 06:46:04 -07:00
2019-05-31 06:46:19 -07:00
2019-03-23 20:09:59 +01:00
2018-11-13 11:08:51 -08:00
2019-02-12 19:47:08 +01:00
2019-05-14 19:17:53 +02:00
2019-05-31 06:46:31 -07:00
2019-05-31 06:46:30 -07:00
2018-11-27 16:13:09 +01:00
2019-05-31 06:46:30 -07:00
2019-05-08 07:21:49 +02:00
2019-04-27 09:36:31 +02:00
2019-05-31 06:46:29 -07:00
2019-05-16 19:41:31 +02:00
2019-05-10 17:54:08 +02:00
2019-05-31 06:46:14 -07:00
2019-02-27 10:08:52 +01:00
2019-05-08 07:21:51 +02:00
2018-08-18 11:04:51 -07:00