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 |
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
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
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
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
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 --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, +};