zephyr/drivers/disk
Tomasz Bursztyka 95b8493857 drivers/nvme: Return an error in case of non dword-aligned data buffer
This is a specific case for NVMe where given data buffer pointers must
be dword (4 bytes) aligned.

There is no virtual memory management between the user thread and NVMe
driver (which one could detect such wrong alignement on physical memory
and thus reallocate the memory properly, so it would be fully
transparent for the user thread), thus the need to push that check to
the user.

This has been going under the radar so far as Qemu does not seem to
follow NVMe specifications where PRP1 (in DPTR) must always be
dword-aligned. It really does not follow the rule: specifications
details that if bits 1:0 of PRP1 are set, the controller may generate
an error or treat the address as if these bits were unset. Seems like
a bug in Qemu, I did not check the code there however.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2023-09-22 09:23:18 +02:00
..
nvme drivers/nvme: Return an error in case of non dword-aligned data buffer 2023-09-22 09:23:18 +02:00
CMakeLists.txt drivers/disk: Add NVMe controller support 2023-04-07 13:28:47 +02:00
flashdisk.c init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
Kconfig drivers/disk: Add NVMe controller support 2023-04-07 13:28:47 +02:00
Kconfig.flash drivers: flashdisk: check partition constraints 2022-11-14 16:37:04 +01:00
Kconfig.mmc drivers: disk: Decouple SDMMC and MMC Kconfigs 2023-02-08 10:18:13 +01:00
Kconfig.ram drivers: ramdisk: use devicetree to instantiate RAM disk 2023-09-18 17:36:50 +02:00
Kconfig.sdmmc drivers: disk: Decouple SDMMC and MMC Kconfigs 2023-02-08 10:18:13 +01:00
mmc_subsys.c drivers: sdhc: allow bandwidth selection 2023-09-13 16:20:59 +02:00
ramdisk.c drivers: ramdisk: use devicetree to instantiate RAM disk 2023-09-18 17:36:50 +02:00
sdmmc_sdhc.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
sdmmc_stm32.c drivers: gpio: use gpio_is_ready_dt helper function 2023-08-28 08:48:35 -05:00
sdmmc_subsys.c drivers: disk: Framework for eMMC 2023-01-14 09:22:22 +01:00