diff mbox series

[U-Boot,1/4] ata: mvebu: move mvebu sata driver to drivers/ata directory

Message ID 1526606854-23725-2-git-send-email-make@marvell.com
State Superseded
Delegated to: Stefan Roese
Headers show
Series ahci mvebu driver updates | expand

Commit Message

Ken Ma May 18, 2018, 1:27 a.m. UTC
From: Ken Ma <make@marvell.com>

Currently mvebu sata driver is in arch/arm/mach_mvebu directory, this
patch moves it to drivers/ata directory with renaming "sata.c" to
"ahci_mvebu.c" which is aligned to Linux.
New ahci driver's kconfig option is added as AHCI_MVEBU which selects
DM_SCSI.

Signed-off-by: Ken Ma <make@marvell.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Stefan Roese <sr@denx.de>
---
 arch/arm/mach-mvebu/Makefile |  1 -
 arch/arm/mach-mvebu/sata.c   | 54 --------------------------------------------
 drivers/ata/Kconfig          |  9 ++++++++
 drivers/ata/Makefile         |  1 +
 drivers/ata/ahci_mvebu.c     | 54 ++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 64 insertions(+), 55 deletions(-)
 delete mode 100644 arch/arm/mach-mvebu/sata.c
 create mode 100644 drivers/ata/ahci_mvebu.c

Comments

Simon Glass May 22, 2018, 11:30 p.m. UTC | #1
Hi Ken,

On 17 May 2018 at 19:27,  <make@marvell.com> wrote:
> From: Ken Ma <make@marvell.com>
>
> Currently mvebu sata driver is in arch/arm/mach_mvebu directory, this
> patch moves it to drivers/ata directory with renaming "sata.c" to
> "ahci_mvebu.c" which is aligned to Linux.
> New ahci driver's kconfig option is added as AHCI_MVEBU which selects
> DM_SCSI.
>
> Signed-off-by: Ken Ma <make@marvell.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: Stefan Roese <sr@denx.de>
> ---
>  arch/arm/mach-mvebu/Makefile |  1 -
>  arch/arm/mach-mvebu/sata.c   | 54 --------------------------------------------
>  drivers/ata/Kconfig          |  9 ++++++++
>  drivers/ata/Makefile         |  1 +
>  drivers/ata/ahci_mvebu.c     | 54 ++++++++++++++++++++++++++++++++++++++++++++
>  5 files changed, 64 insertions(+), 55 deletions(-)
>  delete mode 100644 arch/arm/mach-mvebu/sata.c
>  create mode 100644 drivers/ata/ahci_mvebu.c
>

How come this doesn't show up as a file move? Are you using patman to
generate your patches?

Regards,
Simon
Ken Ma May 23, 2018, 7:06 a.m. UTC | #2
Dear Simon

Thanks a lot for your kind help and review.

Previously I did not use patman and generated my patches as below:
1. used "git mv arch/arm/mach-mvebu/sata.c drivers/ata/ahci_mvebu.c" to do the file renaming with makefiles and Kconfig file updating.
2. After the 4 patches are all finished, I used "git format-patch -4 --cover-letter -o outgoing/sata" to generate the patch set with cover letter.
3. I used " git send-email --to u-boot@lists.denx.de outgoing/sata* --force" to send out patches.

And I try to use patman as your advice, I find that the patch generated by "patman" can indicate the file "rename" relationship while the patch generated by "git format-patch" can not.
	arch/arm/mach-mvebu/Makefile                           | 1 -
	drivers/ata/Kconfig                                    | 9 +++++++++
	drivers/ata/Makefile                                   | 1 +
	arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c | 6 +++---
	4 files changed, 13 insertions(+), 4 deletions(-)
	rename arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c (89%)
	…
	diff --git a/arch/arm/mach-mvebu/sata.c b/drivers/ata/ahci_mvebu.c
	similarity index 89%
	rename from arch/arm/mach-mvebu/sata.c
	rename to drivers/ata/ahci_mvebu.c
	index 5d8032b..5c1b293 100644
	--- a/arch/arm/mach-mvebu/sata.c
	+++ b/drivers/ata/ahci_mvebu.c
	@@ -1,15 +1,15 @@
	 /*
	+ * Copyright (C) 2018 Marvell International Ltd.
	  * Copyright (C) 2016 Stefan Roese <sr@denx.de>
	  *
	- * SPDX-License-Identifier:    GPL-2.0+
	+ * SPDX-License-Identifier:     GPL-2.0+
	+ * https://spdx.org/licenses
	  */
	
	 #include <common.h>
	 #include <ahci.h>
	 #include <dm.h>

	-DECLARE_GLOBAL_DATA_PTR;
	-
	 /*
	  * Dummy implementation that can be overwritten by a board
	  * specific function

But I failed to send out patches by patman as below, it says " Alias 'ata' not found ".
	ken@mshsrv05:~/git_ken/u-boot/u-boot$ tools/patman/patman -c4
	Cleaned 4 patches
	0 errors, 1 warnings, 0 checks for 0001-ata-mvebu-move-mvebu-sata-driver-to-drivers-ata-dire.patch:
	<unknown>:0: warning: added, moved or deleted file(s), does MAINTAINERS need updating?

	checkpatch.pl found 0 error(s), 1 warning(s), 0 checks(s)
	Traceback (most recent call last):
	  File "tools/patman/patman", line 161, in <module>
	    options.add_maintainers)
	  File "/home/ken/git_ken/u-boot/u-boot/tools/patman/series.py", line 231, in MakeCcFile
	    raise_on_error=raise_on_error)
	  File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 326, in BuildEmailList
	    raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
	  File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 503, in LookupEmail
	    raise ValueError(msg)
	ValueError: Alias 'ata' not found


Thanks a lot for your kind help!

Yours,
Ken


-----Original Message-----
From: sjg@google.com [mailto:sjg@google.com] On Behalf Of Simon Glass
Sent: 2018年5月23日 7:30
To: Ken Ma
Cc: U-Boot Mailing List; Stefan Roese
Subject: [EXT] Re: [PATCH 1/4] ata: mvebu: move mvebu sata driver to drivers/ata directory

External Email

----------------------------------------------------------------------
Hi Ken,

On 17 May 2018 at 19:27,  <make@marvell.com> wrote:
> From: Ken Ma <make@marvell.com>
>
> Currently mvebu sata driver is in arch/arm/mach_mvebu directory, this
> patch moves it to drivers/ata directory with renaming "sata.c" to
> "ahci_mvebu.c" which is aligned to Linux.
> New ahci driver's kconfig option is added as AHCI_MVEBU which selects
> DM_SCSI.
>
> Signed-off-by: Ken Ma <make@marvell.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: Stefan Roese <sr@denx.de>
> ---
>  arch/arm/mach-mvebu/Makefile |  1 -
>  arch/arm/mach-mvebu/sata.c   | 54 --------------------------------------------
>  drivers/ata/Kconfig          |  9 ++++++++
>  drivers/ata/Makefile         |  1 +
>  drivers/ata/ahci_mvebu.c     | 54 ++++++++++++++++++++++++++++++++++++++++++++
>  5 files changed, 64 insertions(+), 55 deletions(-)
>  delete mode 100644 arch/arm/mach-mvebu/sata.c
>  create mode 100644 drivers/ata/ahci_mvebu.c
>

How come this doesn't show up as a file move? Are you using patman to
generate your patches?

Regards,
Simon
Simon Glass May 23, 2018, 4:22 p.m. UTC | #3
Hi Ken,

On 23 May 2018 at 01:06, Ken Ma <make@marvell.com> wrote:
> Dear Simon
>
> Thanks a lot for your kind help and review.
>
> Previously I did not use patman and generated my patches as below:
> 1. used "git mv arch/arm/mach-mvebu/sata.c drivers/ata/ahci_mvebu.c" to do the file renaming with makefiles and Kconfig file updating.
> 2. After the 4 patches are all finished, I used "git format-patch -4 --cover-letter -o outgoing/sata" to generate the patch set with cover letter.
> 3. I used " git send-email --to u-boot@lists.denx.de outgoing/sata* --force" to send out patches.
>
> And I try to use patman as your advice, I find that the patch generated by "patman" can indicate the file "rename" relationship while the patch generated by "git format-patch" can not.
>         arch/arm/mach-mvebu/Makefile                           | 1 -
>         drivers/ata/Kconfig                                    | 9 +++++++++
>         drivers/ata/Makefile                                   | 1 +
>         arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c | 6 +++---
>         4 files changed, 13 insertions(+), 4 deletions(-)
>         rename arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c (89%)
>         …
>         diff --git a/arch/arm/mach-mvebu/sata.c b/drivers/ata/ahci_mvebu.c
>         similarity index 89%
>         rename from arch/arm/mach-mvebu/sata.c
>         rename to drivers/ata/ahci_mvebu.c
>         index 5d8032b..5c1b293 100644
>         --- a/arch/arm/mach-mvebu/sata.c
>         +++ b/drivers/ata/ahci_mvebu.c
>         @@ -1,15 +1,15 @@
>          /*
>         + * Copyright (C) 2018 Marvell International Ltd.
>           * Copyright (C) 2016 Stefan Roese <sr@denx.de>
>           *
>         - * SPDX-License-Identifier:    GPL-2.0+
>         + * SPDX-License-Identifier:     GPL-2.0+
>         + * https://spdx.org/licenses
>           */
>
>          #include <common.h>
>          #include <ahci.h>
>          #include <dm.h>
>
>         -DECLARE_GLOBAL_DATA_PTR;
>         -
>          /*
>           * Dummy implementation that can be overwritten by a board
>           * specific function
>
> But I failed to send out patches by patman as below, it says " Alias 'ata' not found ".
>         ken@mshsrv05:~/git_ken/u-boot/u-boot$ tools/patman/patman -c4
>         Cleaned 4 patches
>         0 errors, 1 warnings, 0 checks for 0001-ata-mvebu-move-mvebu-sata-driver-to-drivers-ata-dire.patch:
>         <unknown>:0: warning: added, moved or deleted file(s), does MAINTAINERS need updating?
>
>         checkpatch.pl found 0 error(s), 1 warning(s), 0 checks(s)
>         Traceback (most recent call last):
>           File "tools/patman/patman", line 161, in <module>
>             options.add_maintainers)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/series.py", line 231, in MakeCcFile
>             raise_on_error=raise_on_error)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 326, in BuildEmailList
>             raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 503, in LookupEmail
>             raise ValueError(msg)
>         ValueError: Alias 'ata' not found
>
>
> Thanks a lot for your kind help!

You can use the -t flag to ignore the missing alias.

Regards,
Simon

>
> Yours,
> Ken
>
>
> -----Original Message-----
> From: sjg@google.com [mailto:sjg@google.com] On Behalf Of Simon Glass
> Sent: 2018年5月23日 7:30
> To: Ken Ma
> Cc: U-Boot Mailing List; Stefan Roese
> Subject: [EXT] Re: [PATCH 1/4] ata: mvebu: move mvebu sata driver to drivers/ata directory
>
> External Email
>
> ----------------------------------------------------------------------
> Hi Ken,
>
> On 17 May 2018 at 19:27,  <make@marvell.com> wrote:
>> From: Ken Ma <make@marvell.com>
>>
>> Currently mvebu sata driver is in arch/arm/mach_mvebu directory, this
>> patch moves it to drivers/ata directory with renaming "sata.c" to
>> "ahci_mvebu.c" which is aligned to Linux.
>> New ahci driver's kconfig option is added as AHCI_MVEBU which selects
>> DM_SCSI.
>>
>> Signed-off-by: Ken Ma <make@marvell.com>
>> Cc: Simon Glass <sjg@chromium.org>
>> Cc: Stefan Roese <sr@denx.de>
>> ---
>>  arch/arm/mach-mvebu/Makefile |  1 -
>>  arch/arm/mach-mvebu/sata.c   | 54 --------------------------------------------
>>  drivers/ata/Kconfig          |  9 ++++++++
>>  drivers/ata/Makefile         |  1 +
>>  drivers/ata/ahci_mvebu.c     | 54 ++++++++++++++++++++++++++++++++++++++++++++
>>  5 files changed, 64 insertions(+), 55 deletions(-)
>>  delete mode 100644 arch/arm/mach-mvebu/sata.c
>>  create mode 100644 drivers/ata/ahci_mvebu.c
>>
>
> How come this doesn't show up as a file move? Are you using patman to
> generate your patches?
>
> Regards,
> Simon
Ken Ma May 24, 2018, 2:24 a.m. UTC | #4
Hi Simon

Patman is very helpful and useful!
I have sent my patches v2 with patman.

Thanks a lot for your kind help!

Yours,
Ken

-----Original Message-----
From: sjg@google.com [mailto:sjg@google.com] On Behalf Of Simon Glass
Sent: 2018年5月24日 0:22
To: Ken Ma
Cc: U-Boot Mailing List; Stefan Roese; Wilson Ding; Nadav Haklai; Hua Jing
Subject: Re: [EXT] Re: [PATCH 1/4] ata: mvebu: move mvebu sata driver to drivers/ata directory

Hi Ken,

On 23 May 2018 at 01:06, Ken Ma <make@marvell.com> wrote:
> Dear Simon
>
> Thanks a lot for your kind help and review.
>
> Previously I did not use patman and generated my patches as below:
> 1. used "git mv arch/arm/mach-mvebu/sata.c drivers/ata/ahci_mvebu.c" to do the file renaming with makefiles and Kconfig file updating.
> 2. After the 4 patches are all finished, I used "git format-patch -4 --cover-letter -o outgoing/sata" to generate the patch set with cover letter.
> 3. I used " git send-email --to u-boot@lists.denx.de outgoing/sata* --force" to send out patches.
>
> And I try to use patman as your advice, I find that the patch generated by "patman" can indicate the file "rename" relationship while the patch generated by "git format-patch" can not.
>         arch/arm/mach-mvebu/Makefile                           | 1 -
>         drivers/ata/Kconfig                                    | 9 +++++++++
>         drivers/ata/Makefile                                   | 1 +
>         arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c | 6 +++---
>         4 files changed, 13 insertions(+), 4 deletions(-)
>         rename arch/arm/mach-mvebu/sata.c => drivers/ata/ahci_mvebu.c (89%)
>         …
>         diff --git a/arch/arm/mach-mvebu/sata.c b/drivers/ata/ahci_mvebu.c
>         similarity index 89%
>         rename from arch/arm/mach-mvebu/sata.c
>         rename to drivers/ata/ahci_mvebu.c
>         index 5d8032b..5c1b293 100644
>         --- a/arch/arm/mach-mvebu/sata.c
>         +++ b/drivers/ata/ahci_mvebu.c
>         @@ -1,15 +1,15 @@
>          /*
>         + * Copyright (C) 2018 Marvell International Ltd.
>           * Copyright (C) 2016 Stefan Roese <sr@denx.de>
>           *
>         - * SPDX-License-Identifier:    GPL-2.0+
>         + * SPDX-License-Identifier:     GPL-2.0+
>         + * https://spdx.org/licenses
>           */
>
>          #include <common.h>
>          #include <ahci.h>
>          #include <dm.h>
>
>         -DECLARE_GLOBAL_DATA_PTR;
>         -
>          /*
>           * Dummy implementation that can be overwritten by a board
>           * specific function
>
> But I failed to send out patches by patman as below, it says " Alias 'ata' not found ".
>         ken@mshsrv05:~/git_ken/u-boot/u-boot$ tools/patman/patman -c4
>         Cleaned 4 patches
>         0 errors, 1 warnings, 0 checks for 0001-ata-mvebu-move-mvebu-sata-driver-to-drivers-ata-dire.patch:
>         <unknown>:0: warning: added, moved or deleted file(s), does MAINTAINERS need updating?
>
>         checkpatch.pl found 0 error(s), 1 warning(s), 0 checks(s)
>         Traceback (most recent call last):
>           File "tools/patman/patman", line 161, in <module>
>             options.add_maintainers)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/series.py", line 231, in MakeCcFile
>             raise_on_error=raise_on_error)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 326, in BuildEmailList
>             raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
>           File "/home/ken/git_ken/u-boot/u-boot/tools/patman/gitutil.py", line 503, in LookupEmail
>             raise ValueError(msg)
>         ValueError: Alias 'ata' not found
>
>
> Thanks a lot for your kind help!

You can use the -t flag to ignore the missing alias.

Regards,
Simon

>
> Yours,
> Ken
>
>
> -----Original Message-----
> From: sjg@google.com [mailto:sjg@google.com] On Behalf Of Simon Glass
> Sent: 2018年5月23日 7:30
> To: Ken Ma
> Cc: U-Boot Mailing List; Stefan Roese
> Subject: [EXT] Re: [PATCH 1/4] ata: mvebu: move mvebu sata driver to drivers/ata directory
>
> External Email
>
> ----------------------------------------------------------------------
> Hi Ken,
>
> On 17 May 2018 at 19:27,  <make@marvell.com> wrote:
>> From: Ken Ma <make@marvell.com>
>>
>> Currently mvebu sata driver is in arch/arm/mach_mvebu directory, this
>> patch moves it to drivers/ata directory with renaming "sata.c" to
>> "ahci_mvebu.c" which is aligned to Linux.
>> New ahci driver's kconfig option is added as AHCI_MVEBU which selects
>> DM_SCSI.
>>
>> Signed-off-by: Ken Ma <make@marvell.com>
>> Cc: Simon Glass <sjg@chromium.org>
>> Cc: Stefan Roese <sr@denx.de>
>> ---
>>  arch/arm/mach-mvebu/Makefile |  1 -
>>  arch/arm/mach-mvebu/sata.c   | 54 --------------------------------------------
>>  drivers/ata/Kconfig          |  9 ++++++++
>>  drivers/ata/Makefile         |  1 +
>>  drivers/ata/ahci_mvebu.c     | 54 ++++++++++++++++++++++++++++++++++++++++++++
>>  5 files changed, 64 insertions(+), 55 deletions(-)
>>  delete mode 100644 arch/arm/mach-mvebu/sata.c
>>  create mode 100644 drivers/ata/ahci_mvebu.c
>>
>
> How come this doesn't show up as a file move? Are you using patman to
> generate your patches?
>
> Regards,
> Simon
Simon Glass May 25, 2018, 2:41 a.m. UTC | #5
Hi Ken,

On 23 May 2018 at 20:24, Ken Ma <make@marvell.com> wrote:
> Hi Simon
>
> Patman is very helpful and useful!
> I have sent my patches v2 with patman.
>
> Thanks a lot for your kind help!

OK good! I find patman particularly helpful for collecting changing
logs once you get to v2, v3, etc.

Regards,
Simon
diff mbox series

Patch

diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile
index d4210af..7f0d692 100644
--- a/arch/arm/mach-mvebu/Makefile
+++ b/arch/arm/mach-mvebu/Makefile
@@ -9,7 +9,6 @@  ifdef CONFIG_ARM64
 obj-$(CONFIG_ARMADA_3700) += armada3700/
 obj-$(CONFIG_ARMADA_8K) += armada8k/
 obj-y += arm64-common.o
-obj-y += sata.o
 
 else # CONFIG_ARM64
 
diff --git a/arch/arm/mach-mvebu/sata.c b/arch/arm/mach-mvebu/sata.c
deleted file mode 100644
index 5d8032b..0000000
--- a/arch/arm/mach-mvebu/sata.c
+++ /dev/null
@@ -1,54 +0,0 @@ 
-/*
- * Copyright (C) 2016 Stefan Roese <sr@denx.de>
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-
-#include <common.h>
-#include <ahci.h>
-#include <dm.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-/*
- * Dummy implementation that can be overwritten by a board
- * specific function
- */
-__weak int board_ahci_enable(void)
-{
-	return 0;
-}
-
-#ifdef CONFIG_ARMADA_8K
-/* CP110 has different AHCI port addresses */
-void __iomem *ahci_port_base(void __iomem *base, u32 port)
-{
-	return base + 0x10000 + (port * 0x10000);
-}
-#endif
-
-static int mvebu_ahci_probe(struct udevice *dev)
-{
-	/*
-	 * Board specific SATA / AHCI enable code, e.g. enable the
-	 * AHCI power or deassert reset
-	 */
-	board_ahci_enable();
-
-	ahci_init(devfdt_get_addr_ptr(dev));
-
-	return 0;
-}
-
-static const struct udevice_id mvebu_ahci_ids[] = {
-	{ .compatible = "marvell,armada-3700-ahci" },
-	{ .compatible = "marvell,armada-8k-ahci" },
-	{ }
-};
-
-U_BOOT_DRIVER(ahci_mvebu_drv) = {
-	.name		= "ahci_mvebu",
-	.id		= UCLASS_AHCI,
-	.of_match	= mvebu_ahci_ids,
-	.probe		= mvebu_ahci_probe,
-};
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 86ec628..9ef4589 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -99,4 +99,13 @@  config SATA_SIL3114
 	help
 	  Enable this driver to support the SIL3114 SATA controllers.
 
+config AHCI_MVEBU
+	bool "Marvell EBU AHCI SATA support"
+	depends on ARCH_MVEBU
+	select DM_SCSI
+	help
+	  This option enables support for the Marvell EBU SoC's
+	  onboard AHCI SATA.
+
+	  If unsure, say N.
 endmenu
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index a94c804..0254640 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -19,3 +19,4 @@  obj-$(CONFIG_SATA_MV) += sata_mv.o
 obj-$(CONFIG_SATA_SIL3114) += sata_sil3114.o
 obj-$(CONFIG_SATA_SIL) += sata_sil.o
 obj-$(CONFIG_SANDBOX) += sata_sandbox.o
+obj-$(CONFIG_AHCI_MVEBU) += ahci_mvebu.o
diff --git a/drivers/ata/ahci_mvebu.c b/drivers/ata/ahci_mvebu.c
new file mode 100644
index 0000000..5c1b293
--- /dev/null
+++ b/drivers/ata/ahci_mvebu.c
@@ -0,0 +1,54 @@ 
+/*
+ * Copyright (C) 2018 Marvell International Ltd.
+ * Copyright (C) 2016 Stefan Roese <sr@denx.de>
+ *
+ * SPDX-License-Identifier:	 GPL-2.0+
+ * https://spdx.org/licenses
+ */
+
+#include <common.h>
+#include <ahci.h>
+#include <dm.h>
+
+/*
+ * Dummy implementation that can be overwritten by a board
+ * specific function
+ */
+__weak int board_ahci_enable(void)
+{
+	return 0;
+}
+
+#ifdef CONFIG_ARMADA_8K
+/* CP110 has different AHCI port addresses */
+void __iomem *ahci_port_base(void __iomem *base, u32 port)
+{
+	return base + 0x10000 + (port * 0x10000);
+}
+#endif
+
+static int mvebu_ahci_probe(struct udevice *dev)
+{
+	/*
+	 * Board specific SATA / AHCI enable code, e.g. enable the
+	 * AHCI power or deassert reset
+	 */
+	board_ahci_enable();
+
+	ahci_init(devfdt_get_addr_ptr(dev));
+
+	return 0;
+}
+
+static const struct udevice_id mvebu_ahci_ids[] = {
+	{ .compatible = "marvell,armada-3700-ahci" },
+	{ .compatible = "marvell,armada-8k-ahci" },
+	{ }
+};
+
+U_BOOT_DRIVER(ahci_mvebu_drv) = {
+	.name		= "ahci_mvebu",
+	.id		= UCLASS_AHCI,
+	.of_match	= mvebu_ahci_ids,
+	.probe		= mvebu_ahci_probe,
+};