diff options
author | Warner Losh <imp@FreeBSD.org> | 2019-12-11 22:51:02 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2019-12-11 22:51:02 +0000 |
commit | 66e5985084a03bab06e5451d3fc606f955dfdfc8 (patch) | |
tree | 3460332fe4a07fecf6d75175d11a4eb718cef654 /sys/dev/nvme/nvme.c | |
parent | 1760167c2b217ed6b87ac6e08e12da28340958d4 (diff) | |
download | src-66e5985084a03bab06e5451d3fc606f955dfdfc8.tar.gz src-66e5985084a03bab06e5451d3fc606f955dfdfc8.zip |
Move reset to the interrutp processing stage
This trims the boot time a bit more for AWS and other platforms that have nvme
drives. There's no reason too do this inline. This has been in my tree a while,
but IIRC I talked to Jim Harris about this at one of our face to face meetings.
MFC After: 2 weeks
Notes
Notes:
svn path=/head/; revision=355631
Diffstat (limited to 'sys/dev/nvme/nvme.c')
-rw-r--r-- | sys/dev/nvme/nvme.c | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/sys/dev/nvme/nvme.c b/sys/dev/nvme/nvme.c index ddae85a75448..d8f99cf7b411 100644 --- a/sys/dev/nvme/nvme.c +++ b/sys/dev/nvme/nvme.c @@ -130,25 +130,6 @@ nvme_attach(device_t dev) int status; status = nvme_ctrlr_construct(ctrlr, dev); - - if (status != 0) { - nvme_ctrlr_destruct(ctrlr, dev); - return (status); - } - - /* - * Reset controller twice to ensure we do a transition from cc.en==1 to - * cc.en==0. This is because we don't really know what status the - * controller was left in when boot handed off to OS. Linux doesn't do - * this, however. If we adopt that policy, see also nvme_ctrlr_resume(). - */ - status = nvme_ctrlr_hw_reset(ctrlr); - if (status != 0) { - nvme_ctrlr_destruct(ctrlr, dev); - return (status); - } - - status = nvme_ctrlr_hw_reset(ctrlr); if (status != 0) { nvme_ctrlr_destruct(ctrlr, dev); return (status); |