[PATCH 1/8] nvme: Split out PCI support
Mark Kettenis
mark.kettenis at xs4all.nl
Sat Jan 22 13:47:53 CET 2022
> From: Simon Glass <sjg at chromium.org>
> Date: Fri, 21 Jan 2022 18:40:11 -0700
>
> Hi Mark,
>
> On Fri, 14 Jan 2022 at 04:05, Mark Kettenis <kettenis at openbsd.org> wrote:
> >
> > Apple SoCs have an integrated NVMe controller that isn't connected
> > over a PCIe bus. In preparation for adding support for this NVMe
> > controller, split out the PCI support into its own file. This file
> > is selected through a new CONFIG_NVME_PCI Kconfig option, so do
> > a wholesale replacement of CONFIG_NVME with CONFIG_NVME_PCI.
> >
> > Signed-off-by: Mark Kettenis <kettenis at openbsd.org>
> > ---
> > configs/clearfog_gt_8k_defconfig | 2 +-
> > configs/firefly-rk3399_defconfig | 2 +-
> > configs/khadas-vim3_android_ab_defconfig | 2 +-
> > configs/khadas-vim3_android_defconfig | 2 +-
> > configs/khadas-vim3_defconfig | 2 +-
> > configs/khadas-vim3l_android_ab_defconfig | 2 +-
> > configs/khadas-vim3l_android_defconfig | 2 +-
> > configs/khadas-vim3l_defconfig | 2 +-
> > configs/kontron_sl28_defconfig | 2 +-
> > configs/ls1012afrdm_qspi_defconfig | 2 +-
> > configs/ls1012afrdm_tfa_defconfig | 2 +-
> > .../ls1012afrwy_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1012afrwy_qspi_defconfig | 2 +-
> > configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1012afrwy_tfa_defconfig | 2 +-
> > configs/ls1012aqds_qspi_defconfig | 2 +-
> > configs/ls1012aqds_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1012aqds_tfa_defconfig | 2 +-
> > configs/ls1012ardb_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1012ardb_qspi_defconfig | 2 +-
> > configs/ls1012ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1012ardb_tfa_defconfig | 2 +-
> > configs/ls1021aiot_qspi_defconfig | 2 +-
> > configs/ls1021aiot_sdcard_defconfig | 2 +-
> > configs/ls1021aqds_ddr4_nor_defconfig | 2 +-
> > configs/ls1021aqds_ddr4_nor_lpuart_defconfig | 2 +-
> > configs/ls1021aqds_nand_defconfig | 2 +-
> > configs/ls1021aqds_nor_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1021aqds_nor_defconfig | 2 +-
> > configs/ls1021aqds_nor_lpuart_defconfig | 2 +-
> > configs/ls1021aqds_qspi_defconfig | 2 +-
> > configs/ls1021aqds_sdcard_ifc_defconfig | 2 +-
> > configs/ls1021aqds_sdcard_qspi_defconfig | 2 +-
> > configs/ls1021atsn_qspi_defconfig | 2 +-
> > configs/ls1021atsn_sdcard_defconfig | 2 +-
> > configs/ls1021atwr_nor_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1021atwr_nor_defconfig | 2 +-
> > configs/ls1021atwr_nor_lpuart_defconfig | 2 +-
> > configs/ls1021atwr_qspi_defconfig | 2 +-
> > configs/ls1021atwr_sdcard_ifc_defconfig | 2 +-
> > configs/ls1021atwr_sdcard_qspi_defconfig | 2 +-
> > configs/ls1028aqds_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1028aqds_tfa_defconfig | 2 +-
> > configs/ls1028aqds_tfa_lpuart_defconfig | 2 +-
> > configs/ls1028ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1028ardb_tfa_defconfig | 2 +-
> > configs/ls1043aqds_defconfig | 2 +-
> > configs/ls1043aqds_lpuart_defconfig | 2 +-
> > configs/ls1043aqds_nand_defconfig | 2 +-
> > configs/ls1043aqds_nor_ddr3_defconfig | 2 +-
> > configs/ls1043aqds_qspi_defconfig | 2 +-
> > configs/ls1043aqds_sdcard_ifc_defconfig | 2 +-
> > configs/ls1043aqds_sdcard_qspi_defconfig | 2 +-
> > configs/ls1043aqds_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1043aqds_tfa_defconfig | 2 +-
> > configs/ls1043ardb_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1043ardb_defconfig | 2 +-
> > configs/ls1043ardb_nand_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1043ardb_nand_defconfig | 2 +-
> > configs/ls1043ardb_sdcard_defconfig | 2 +-
> > configs/ls1043ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1043ardb_tfa_defconfig | 2 +-
> > configs/ls1046afrwy_tfa_defconfig | 2 +-
> > configs/ls1046aqds_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1046aqds_defconfig | 2 +-
> > configs/ls1046aqds_lpuart_defconfig | 2 +-
> > configs/ls1046aqds_nand_defconfig | 2 +-
> > configs/ls1046aqds_qspi_defconfig | 2 +-
> > configs/ls1046aqds_sdcard_ifc_defconfig | 2 +-
> > configs/ls1046aqds_sdcard_qspi_defconfig | 2 +-
> > configs/ls1046aqds_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1046aqds_tfa_defconfig | 2 +-
> > configs/ls1046ardb_emmc_defconfig | 2 +-
> > configs/ls1046ardb_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1046ardb_qspi_defconfig | 2 +-
> > configs/ls1046ardb_qspi_spl_defconfig | 2 +-
> > configs/ls1046ardb_sdcard_defconfig | 2 +-
> > configs/ls1046ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1046ardb_tfa_defconfig | 2 +-
> > configs/ls1088aqds_defconfig | 2 +-
> > configs/ls1088aqds_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1088aqds_qspi_defconfig | 2 +-
> > configs/ls1088aqds_sdcard_ifc_defconfig | 2 +-
> > configs/ls1088aqds_sdcard_qspi_defconfig | 2 +-
> > configs/ls1088aqds_tfa_defconfig | 2 +-
> > configs/ls1088ardb_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1088ardb_qspi_defconfig | 2 +-
> > configs/ls1088ardb_sdcard_qspi_defconfig | 2 +-
> > configs/ls1088ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls1088ardb_tfa_defconfig | 2 +-
> > configs/ls2080aqds_SECURE_BOOT_defconfig | 2 +-
> > configs/ls2080aqds_defconfig | 2 +-
> > configs/ls2080aqds_nand_defconfig | 2 +-
> > configs/ls2080aqds_qspi_defconfig | 2 +-
> > configs/ls2080aqds_sdcard_defconfig | 2 +-
> > configs/ls2080ardb_SECURE_BOOT_defconfig | 2 +-
> > configs/ls2080ardb_defconfig | 2 +-
> > configs/ls2080ardb_nand_defconfig | 2 +-
> > configs/ls2081ardb_defconfig | 2 +-
> > configs/ls2088aqds_tfa_defconfig | 2 +-
> > configs/ls2088ardb_qspi_SECURE_BOOT_defconfig | 2 +-
> > configs/ls2088ardb_qspi_defconfig | 2 +-
> > configs/ls2088ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/ls2088ardb_tfa_defconfig | 2 +-
> > configs/lx2160aqds_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/lx2160aqds_tfa_defconfig | 2 +-
> > configs/lx2160ardb_tfa_SECURE_BOOT_defconfig | 2 +-
> > configs/lx2160ardb_tfa_defconfig | 2 +-
> > configs/lx2160ardb_tfa_stmm_defconfig | 2 +-
> > configs/mvebu_crb_cn9130_defconfig | 2 +-
> > configs/mvebu_db_armada8k_defconfig | 2 +-
> > configs/mvebu_db_cn9130_defconfig | 2 +-
> > configs/mvebu_espressobin-88f3720_defconfig | 2 +-
> > configs/mvebu_mcbin-88f8040_defconfig | 2 +-
> > configs/mvebu_puzzle-m801-88f8040_defconfig | 2 +-
> > configs/nanopc-t4-rk3399_defconfig | 2 +-
> > configs/octeontx2_96xx_defconfig | 2 +-
> > configs/octeontx_81xx_defconfig | 2 +-
> > configs/octeontx_83xx_defconfig | 2 +-
> > configs/p3450-0000_defconfig | 2 +-
> > configs/pinebook-pro-rk3399_defconfig | 2 +-
> > configs/qemu-x86_64_defconfig | 2 +-
> > configs/qemu-x86_defconfig | 2 +-
> > configs/qemu_arm64_defconfig | 2 +-
> > configs/qemu_arm_defconfig | 2 +-
> > configs/rcar3_salvator-x_defconfig | 2 +-
> > configs/roc-pc-mezzanine-rk3399_defconfig | 2 +-
> > configs/rock-pi-4-rk3399_defconfig | 2 +-
> > configs/rock-pi-4c-rk3399_defconfig | 2 +-
> > configs/rock-pi-n10-rk3399pro_defconfig | 2 +-
> > configs/rock960-rk3399_defconfig | 2 +-
> > configs/rockpro64-rk3399_defconfig | 2 +-
> > configs/sandbox64_defconfig | 2 +-
> > configs/sandbox_defconfig | 2 +-
> > configs/sandbox_flattree_defconfig | 2 +-
> > configs/sandbox_noinst_defconfig | 2 +-
> > configs/sandbox_spl_defconfig | 2 +-
> > configs/sifive_unmatched_defconfig | 2 +-
> > configs/synquacer_developerbox_defconfig | 2 +-
> > configs/turris_mox_defconfig | 2 +-
> > configs/turris_omnia_defconfig | 2 +-
> > doc/develop/driver-model/nvme.rst | 1 +
> > drivers/nvme/Kconfig | 10 +++-
> > drivers/nvme/Makefile | 1 +
> > drivers/nvme/nvme.c | 38 ++------------
> > drivers/nvme/nvme.h | 3 ++
> > drivers/nvme/nvme_pci.c | 49 +++++++++++++++++++
> > 147 files changed, 207 insertions(+), 177 deletions(-)
> > create mode 100644 drivers/nvme/nvme_pci.c
> >
>
> Shouldn't the vendor addition go in another patch?
I don't think that would make a ton of sense. It is intricately
linked to splitting out the PCI support, as the current code grovels
into pci_child_plat struct in a place that needs to be bus-agnostic.
> Otherwise:
> Reviewed-by: Simon Glass <sjg at chromium.org>
> Tested on: Macbook Air M1
> Tested-by: Simon Glass <sjg at chromium.org>
More information about the U-Boot
mailing list