[U-Boot] net/fm: Update FMan Compatibels
Liberman Igal
Igal.Liberman at freescale.com
Wed Aug 12 09:23:55 CEST 2015
> -----Original Message-----
> From: Joe Hershberger [mailto:joe.hershberger at gmail.com]
> Sent: Tuesday, August 11, 2015 9:02 PM
> To: Wood Scott-B07421 <scottwood at freescale.com>
> Cc: Liberman Igal-B31950 <Igal.Liberman at freescale.com>; u-boot <u-
> boot at lists.denx.de>; Bucur Madalin-Cristian-B32716
> <madalin.bucur at freescale.com>
> Subject: Re: [U-Boot] net/fm: Update FMan Compatibels
>
> Hi Igal,
>
> On Thu, May 28, 2015 at 10:47 AM, Scott Wood <scottwood at freescale.com>
> wrote:
> > On Mon, May 18, 2015 at 02:46:30PM +0300, Igal.Liberman wrote:
> >> From: Igal Liberman <igal.liberman at freescale.com>
> >>
> >> During FMan upstreaming, the FMan Port and MAC compatibles changed.
> >> This patch aligns the FMan Port and MAC compatibles to the FMan
> >> device tree binding document.
> >>
> >> The FMan device tree binding document can be found in the Linux kernel:
> >> ./Documentation/devicetree/bindings/powerpc/fsl/fman.txt
> >>
> >> Signed-off-by: Igal Liberman <igal.liberman at freescale.com>
> >> ---
> >> arch/powerpc/include/asm/fsl_liodn.h | 20 ++++++++++++++++----
> >> drivers/net/fm/init.c | 4 ++--
> >> 2 files changed, 18 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/arch/powerpc/include/asm/fsl_liodn.h
> >> b/arch/powerpc/include/asm/fsl_liodn.h
> >> index 811f034..d493f8c 100644
> >> --- a/arch/powerpc/include/asm/fsl_liodn.h
> >> +++ b/arch/powerpc/include/asm/fsl_liodn.h
> >> @@ -133,15 +133,27 @@ extern void fdt_fixup_liodn(void *blob);
> >> CONFIG_SYS_FSL_FM##fmNum##_OFFSET + \
> >> offsetof(struct ccsr_fman, fm_bmi_common.fmbm_ppid[portID - 1])
> >>
> >> -/* enetNum is 0, 1, 2... so we + 8 for 1g to get to HW Port ID */
> >> +#ifdef CONFIG_SYS_FMAN_V3
> >> +#define SET_FMAN_RX_1G_LIODN(fmNum, enetNum, liodn) \
> >> + _SET_FMAN_RX_1G_LIODN("fsl,fman-v3-port-rx", fmNum,
> enetNum,
> >> +liodn) #define SET_FMAN_RX_10G_LIODN(fmNum, enetNum, liodn) \
> >> + _SET_FMAN_RX_10G_LION("fsl,fman-v3-port-rx", fmNum, enetNum,
> >> +liodn) #else
> >> #define SET_FMAN_RX_1G_LIODN(fmNum, enetNum, liodn) \
> >> - SET_LIODN_ENTRY_1("fsl,fman-port-1g-rx", liodn, \
> >> + _SET_FMAN_RX_1G_LIODN("fsl,fman-v2-port-rx", fmNum,
> enetNum,
> >> +liodn) #define SET_FMAN_RX_10G_LIODN(fmNum, enetNum, liodn) \
> >> + _SET_FMAN_RX_10G_LIODN("fsl,fman-v2-port-rx", fmNum,
> enetNum,
> >> +liodn) #endif
> >> +
> >> +/* enetNum is 0, 1, 2... so we + 8 for 1g to get to HW Port ID */
> >> +#define _SET_FMAN_RX_1G_LIODN(compatible, fmNum, enetNum,
> liodn) \
> >> + SET_LIODN_ENTRY_1(compatible, liodn, \
> >> FM_PPID_RX_PORT_OFFSET(fmNum, enetNum + 8), \
> >>
> CONFIG_SYS_FSL_FM##fmNum##_RX##enetNum##_1G_OFFSET) \
> >>
> >> /* enetNum is 0, 1, 2... so we + 16 for 10g to get to HW Port ID */
> >> -#define SET_FMAN_RX_10G_LIODN(fmNum, enetNum, liodn) \
> >> - SET_LIODN_ENTRY_1("fsl,fman-port-10g-rx", liodn, \
> >> +#define _SET_FMAN_RX_10G_LIODN(compatible, fmNum, enetNum,
> liodn) \
> >> + SET_LIODN_ENTRY_1(compatible, liodn, \
> >> FM_PPID_RX_PORT_OFFSET(fmNum, enetNum + 16), \
> >>
> CONFIG_SYS_FSL_FM##fmNum##_RX##enetNum##_10G_OFFSET) \
> >>
> >> diff --git a/drivers/net/fm/init.c b/drivers/net/fm/init.c index
> >> 9a8a007..4e43cca 100644
> >> --- a/drivers/net/fm/init.c
> >> +++ b/drivers/net/fm/init.c
> >> @@ -306,9 +306,9 @@ void fdt_fixup_fman_ethernet(void *blob) #else
> >> for (i = 0; i < ARRAY_SIZE(fm_info); i++) {
> >> if (fm_info[i].type == FM_ETH_1G_E)
> >> - ft_fixup_port(blob, &fm_info[i], "fsl,fman-1g-mac");
> >> + ft_fixup_port(blob, &fm_info[i],
> >> + "fsl,fman-dtsec");
> >> else
> >> - ft_fixup_port(blob, &fm_info[i], "fsl,fman-10g-mac");
> >> + ft_fixup_port(blob, &fm_info[i],
> >> + "fsl,fman-xgec");
> >
> > Please make this accept either compatible so that we don't break using
> > upstream U-Boot with SDK kernels which is a scenario that currently
> > works.
>
> What became of this patch? Also, please fix the misspelling of "compatibles"
> in the subject.
>
Hi Joe,
I've prepared a new patch which support both compatibles (As Scott requested).
I'll send it upstream after testing it on all available platforms.
Thanks for the comment regarding the typo!
> Thanks,
> -Joe
Igal.
More information about the U-Boot
mailing list