[U-Boot] [PATCH 0/8] nvme: Add NVM Express driver support

Tom Rini trini at konsulko.com
Thu Aug 10 01:56:30 UTC 2017


On Thu, Aug 10, 2017 at 09:49:42AM +0800, Bin Meng wrote:
> Hi Tom,
> 
> On Thu, Aug 10, 2017 at 9:31 AM, Tom Rini <trini at konsulko.com> wrote:
> > On Thu, Aug 10, 2017 at 06:40:57AM +0800, Bin Meng wrote:
> >> Hi Tom,
> >>
> >> On Thu, Aug 3, 2017 at 5:30 PM, Bin Meng <bmeng.cn at gmail.com> wrote:
> >> > This series adds NVM Express driver support to U-Boot.
> >> >
> >> > This series is based on previous RFC v2 patchset [1][2] done by
> >> > Zhikang Zhang and Wenbin Song, as well as Jon Nettleton's fixes
> >> > [3] on top of the RFC v1.
> >> >
> >> > The patches are organized in a way that meets the requirement
> >> > of upstream. Jon's fixes were squashed/integrated with a proper
> >> > order in this series.
> >> >
> >> > The original RFC driver was cleaned up a lot, to remove the
> >> > compilation limitation on non-ARMv8 architecture (including a
> >> > header file from armv8), drop the board_r.c modification, drop
> >> > unnecessary PCI configuration space initialization, add 32-bit
> >> > architecture support of readq/writeq operations, eliminate
> >> > compiler warnings, as well as coding convention clean up, plus
> >> > a fix to a bug that is exposed by QEMU platform.
> >> >
> >> > Tested with an Intel SSD 750 series NVMe 400GB card, a Plextor
> >> > NVMe SSD M8Pe Series 256GB card, on Intel Crown Bay board, as
> >> > well as QEMU x86 emulation platform.
> >> >
> >> > This series is available at u-boot-x86/nvme-working for testing.
> >> >
> >> > [1] http://patchwork.ozlabs.org/patch/753088/
> >> > [2] http://patchwork.ozlabs.org/patch/753089/
> >> > [3] http://patchwork.ozlabs.org/patch/794909/
> >> >
> >> >
> >> > Bin Meng (2):
> >> >   nvme: Handle zero Maximum Data Transfer Size (MDTS)
> >> >   x86: qemu: Enable NVMe driver
> >> >
> >> > Jon Nettleton (2):
> >> >   nvme: Detect devices that are class Storage Express
> >> >   nvme: Fix number of blocks detection
> >> >
> >> > Zhikang Zhang (4):
> >> >   dm: blk: part: Add UCLASS_NVME and IF_TYPE_NVME
> >> >   nvme: Add NVM Express driver support
> >> >   nvme: Add show routine to print detailed information
> >> >   nvme: Add nvme commands
> >> >
> >> >  cmd/Kconfig                |   7 +
> >> >  cmd/Makefile               |   1 +
> >> >  cmd/nvme.c                 | 197 +++++++++++
> >> >  configs/qemu-x86_defconfig |   1 +
> >> >  disk/part.c                |   6 +-
> >> >  doc/README.nvme            |  86 +++++
> >> >  drivers/Kconfig            |   2 +
> >> >  drivers/Makefile           |   1 +
> >> >  drivers/block/blk-uclass.c |   2 +
> >> >  drivers/nvme/Kconfig       |  12 +
> >> >  drivers/nvme/Makefile      |   7 +
> >> >  drivers/nvme/nvme-uclass.c |  62 ++++
> >> >  drivers/nvme/nvme.c        | 860 +++++++++++++++++++++++++++++++++++++++++++++
> >> >  drivers/nvme/nvme.h        | 717 +++++++++++++++++++++++++++++++++++++
> >> >  drivers/nvme/nvme_show.c   | 127 +++++++
> >> >  include/blk.h              |   1 +
> >> >  include/dm/uclass-id.h     |   1 +
> >> >  include/nvme.h             |  82 +++++
> >> >  include/pci_ids.h          |   1 +
> >> >  19 files changed, 2172 insertions(+), 1 deletion(-)
> >> >  create mode 100644 cmd/nvme.c
> >> >  create mode 100644 doc/README.nvme
> >> >  create mode 100644 drivers/nvme/Kconfig
> >> >  create mode 100644 drivers/nvme/Makefile
> >> >  create mode 100644 drivers/nvme/nvme-uclass.c
> >> >  create mode 100644 drivers/nvme/nvme.c
> >> >  create mode 100644 drivers/nvme/nvme.h
> >> >  create mode 100644 drivers/nvme/nvme_show.c
> >> >  create mode 100644 include/nvme.h
> >>
> >> Do you think this NVMe support can be included in 2017.09? If yes (and
> >> no other review comments from the list), I can apply and for you to
> >> pull via the x86 tree.
> >
> > I've reviewed it, and things look good.  I'll pick it up in a day or
> > two.  My question now is, can this also be enabled for sandbox, given
> > that we have PCI there?  Thanks!
> 
> Thanks for the review! I've reassigned the patches to you in the patchwork.
> 
> For the sandbox, I believe you want this driver to be included for
> build testing? I think it can be enabled on sandbox, but I have not
> tried that yet.

Build testing and coverity coverage to start with.  A follow up (that
would require some work in places) would be adding test.py tests of some
sort.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170809/6b6a4643/attachment.sig>


More information about the U-Boot mailing list