On Tue, Nov 16, 2021 at 7:52 AM Ramon Fried wrote:
>
> On Sat, Nov 13, 2021 at 4:23 AM Marek Vasut wrote:
> >
> > The gpio_request_by_name() returns zero in case of success, however the
> > conditional return value check in gpio_request_by_name() checks only for
> &g
ronment
> variable as well.
>
> Cc: Wolfgang Denk
> Signed-off-by: Michal Simek
> Reviewed-by: Ramon Fried
> [trini: Update Kconfig, handle legacy networking case as well]
> Signed-off-by: Tom Rini
> ---
> Changes in v3:
> - Update Kconfig help text with Wolfga
ture chambers
> > is applied.
> >
> > The current patch performs soft reset on the switch core to ensure proper
> > operation of the L2switch.
> >
> > Signed-off-by: Radu Bulie
> > ---
>
> Reviewed-by: Vladimir Oltean
>
> Thanks!
Reviewed-by: Ramon Fried
Hi, Tom.
this PR includes the following net changes for next:
- Various DSA additions
- bootp: fix for VCI string
- tsec: support for promiscuous mode
- add Aspeed MDIO driver
Changed:
v2: removed netlist patch.
v3: rebased on origin/next
The following changes since commit f9bab982ae9e459b4e64
On Tue, Nov 23, 2021 at 5:27 AM Tom Rini wrote:
>
> On Tue, Nov 23, 2021 at 05:25:27AM +0200, Ramon Fried wrote:
>
> > this PR includes the following net changes for next:
> >
> > - Various DSA additions
> > - bootp: fix for VCI string
> > - tsec: suppor
this PR includes the following net changes for next:
- Various DSA additions
- bootp: fix for VCI string
- tsec: support for promiscuous mode
- add Aspeed MDIO driver
The following changes since commit 2ad8d0cb950da2233a2ec030533f4e54c6d04126:
Merge branch 'efi-2022-01' of
https://source.denx.d
On Wed, Nov 17, 2021 at 4:09 PM Tom Rini wrote:
>
> On Tue, Nov 16, 2021 at 08:08:36AM +0200, Ramon Fried wrote:
> > On Mon, Nov 15, 2021 at 7:37 PM Tom Rini wrote:
> > >
> > > On Wed, Nov 10, 2021 at 07:58:42PM +0200, Ramon Fried wrote:
> > >
> >
On Mon, Nov 22, 2021 at 9:40 AM Michal Simek wrote:
>
>
>
> On 11/21/21 20:11, Ramon Fried wrote:
> > On Thu, Nov 18, 2021 at 2:06 PM Michal Simek
> > wrote:
> >>
> >> There are flying two configurations around.
> > Can you rephrase ? I don
On Mon, Nov 22, 2021 at 9:34 AM Michal Simek wrote:
>
>
>
> On 11/21/21 20:12, Ramon Fried wrote:
> > On Thu, Nov 18, 2021 at 2:08 PM Michal Simek
> > wrote:
> >>
> >> Perform reset before core initialization.
> > Does it fix any apparent issue ?
On Fri, Nov 19, 2021 at 7:01 PM Sean Anderson wrote:
>
>
>
> On 11/18/21 7:09 AM, Michal Simek wrote:> SGMII configuration depends on
> proper GT setting that's why when node has
> > phys property call PSGTR driver to configure it properly.
> >
> > Signed-off-by: Michal Simek
> > ---
> >
> > d
On Fri, Nov 19, 2021 at 3:37 AM Weijie Gao wrote:
>
> This patch adds GMAC support for MediaTek MT7621 SoC.
> MT7621 has the same GMAC/Switch configuration as MT7623.
>
> Signed-off-by: Weijie Gao
> ---
> v2 changes: none
> ---
> drivers/net/mtk_eth.c | 27 +--
> drivers/
On Thu, Nov 18, 2021 at 2:08 PM Michal Simek wrote:
>
> Perform reset before core initialization.
Does it fix any apparent issue ? How did it work before that ?
>
> Signed-off-by: Michal Simek
> ---
>
> drivers/net/zynq_gem.c | 26 ++
> 1 file changed, 26 insertions(+)
>
On Thu, Nov 18, 2021 at 2:06 PM Michal Simek wrote:
>
> There are flying two configurations around.
Can you rephrase ? I don't understand.
> The first (already supported) has phy as subnode of gem node.
> The second has mdio subnode (with mdio name) which has phy subnode.
>
> This patch adds suppo
true, 2, false);
> + true, MDIO_IDLE_TIMEOUT_MS, false);
> if (err)
> return err;
>
> --
> 2.33.1
>
Reviewed-by: Ramon Fried
On Tue, Nov 16, 2021 at 1:02 PM Joakim Zhang wrote:
>
>
> > -Original Message-
> > From: Ramon Fried
> > Sent: 2021年11月16日 18:45
> > To: Joakim Zhang
> > Cc: Joe Hershberger ; U-Boot Mailing List
> > ; Ye Li ; Patrick Delaunay
> > ; D
On Tue, Nov 16, 2021 at 10:04 AM Joakim Zhang wrote:
>
>
> Hi Ramon,
>
> > -Original Message-----
> > From: Ramon Fried
> > Sent: 2021年11月16日 13:57
> > To: Joakim Zhang
> > Cc: Joe Hershberger ; U-Boot Mailing List
> > ; Ye Li ; Patrick
On Mon, Nov 15, 2021 at 6:45 PM Marek Vasut wrote:
>
> On 11/15/21 4:21 PM, Michael Walle wrote:
> > Hi,
> >
> > Am 2021-11-15 16:15, schrieb Wolfgang Denk:
> >
> >> | And if you don't want to use this feature just don't enable it via
> >> | CONFIG_NET_RANDOM_ETHADDR.
> >>
> >> This say all, no pa
On Mon, Nov 15, 2021 at 7:37 PM Tom Rini wrote:
>
> On Wed, Nov 10, 2021 at 07:58:42PM +0200, Ramon Fried wrote:
>
> > his PR includes the following net changes for next:
> >
> > - Various DSA additions
> > - bootp: fix for VCI string
> > - tsec: support f
On Wed, Nov 10, 2021 at 7:42 AM Joakim Zhang wrote:
>
> For EQOS ethernet, it will do phy_connect() and phy_config() when start
> the ethernet (eqos_srart()), users need wait seconds for PHY auto negotiation
> to complete when do tftp boot.
> phy_config()
> -> board_phy_config()
>
ther of which
> works with DWMAC currently due to the disabled clock.
>
> Signed-off-by: Marek Vasut
> Cc: Joe Hershberger
> Cc: Patrice Chotard
> Cc: Patrick Delaunay
> Cc: Ramon Fried
> Cc: Stephen Warren
> ---
> drivers/net/dwc_eth_qos.c | 22 +++---
h assert/deassert times
> set to default, which is 0, instead of the values from DT. This breaks
> PHY reset.
>
> Fix this by checking if return value is non-zero and then for this one
> single allowed non-zero return value, -ENOENT.
>
> Signed-off-by: Marek Vasut
> Cc: Ramo
;,
> + initrd_addr_str, size);
> + if (size >= sizeof(initrd_str))
> + return 1;
> }
>
> if (get_relfile_envaddr(ctx, label->kernel, "kernel_addr_r",
> --
> 2.32.0
>
Reviewed-by: Ramon Fried
his PR includes the following net changes for next:
- Various DSA additions
- bootp: fix for VCI string
- tsec: support for promiscuous mode
- macb: Fix for random MAC address not saved to the environment.
The following changes since commit e8e9c6f48400989c5fc54467576f8d535bd713e6:
Merge https:/
On Thu, Nov 4, 2021 at 3:42 PM Tom Rini wrote:
>
> On Thu, Nov 04, 2021 at 01:40:42PM +, Andre Przywara wrote:
> > On Thu, 4 Nov 2021 09:13:49 -0400
> > Tom Rini wrote:
> >
> > Hi Tom,
> >
> > > On Tue, Oct 12, 2021 at 09:07:32PM -0500, Samuel Holland wrote:
> > >
> > > > Some boards need to
On Tue, Nov 9, 2021 at 4:55 AM Marek Behún wrote:
>
> On Mon, 8 Nov 2021 18:20:43 -0800
> Roman Bacik wrote:
>
> > On Mon, Nov 8, 2021 at 5:12 PM Marek Behún wrote:
> > >
> > > On Mon, 8 Nov 2021 16:48:33 -0800
> > > Roman Bacik wrote:
> > >
> > > > To be honest changing status codes coming fro
if (!do_load(ctx->cmdtp, 0, 5, fs_argv, FS_TYPE_ANY))
> return 1;
> #endif
> return -ENOENT;
> @@ -91,13 +91,13 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag,
> int argc,
> env_set("bootfile", filename);
> }
>
> - pxe_setup_ctx(&ctx, cmdtp);
> + pxe_setup_ctx(&ctx, cmdtp, NULL);
> if (strstr(argv[3], "ext2")) {
> - do_getfile = do_get_ext2;
> + ctx.getfile = do_get_ext2;
> } else if (strstr(argv[3], "fat")) {
> - do_getfile = do_get_fat;
> + ctx.getfile = do_get_fat;
> } else if (strstr(argv[3], "any")) {
> - do_getfile = do_get_any;
> + ctx.getfile = do_get_any;
> } else {
> printf("Invalid filesystem: %s\n", argv[3]);
> return 1;
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
100644
> --- a/cmd/sysboot.c
> +++ b/cmd/sysboot.c
> @@ -91,7 +91,7 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int
> argc,
> env_set("bootfile", filename);
> }
>
> - pxe_setup_ctx(&ctx, cmdtp, NULL);
> + pxe_setup_ctx(&ctx, cmdtp, NULL, NULL);
> if (strstr(argv[3], "ext2")) {
> ctx.getfile = do_get_ext2;
> } else if (strstr(argv[3], "fat")) {
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
> @@ -65,8 +65,6 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int
> argc,
> char *filename;
> int prompt = 0;
>
> - is_pxe = false;
> -
> if (argc > 1 && strstr(argv[1], "-p")) {
> prompt = 1;
> argc--;
> @@ -91,7 +89,7 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int
> argc,
> env_set("bootfile", filename);
> }
>
> - pxe_setup_ctx(&ctx, cmdtp, NULL, NULL);
> + pxe_setup_ctx(&ctx, cmdtp, NULL, NULL, true);
> if (strstr(argv[3], "ext2")) {
> ctx.getfile = do_get_ext2;
> } else if (strstr(argv[3], "fat")) {
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
t; @@ -4,7 +4,7 @@
> #include
> #include
> #include
> -#include "pxe_utils.h"
> +#include
>
> static char *fs_argv[5];
>
> diff --git a/cmd/pxe_utils.h b/include/pxe_utils.h
> similarity index 100%
> rename from cmd/pxe_utils.h
> rename to include/pxe_utils.h
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
ken with a type and value.
> +/**
> + * get_keyword() - Populate a keyword token with a type and value
> + *
> + * Updates the ->type field based on the keyword string in @val
> + * @t: Token to populate
> */
> static void get_keyword(struct token *t)
> {
> @@ -807,11 +886,14 @@ static void get_keyword(struct token *t)
> }
> }
>
> -/*
> - * Get the next token. We have to keep track of which state we're in to know
> - * if we're looking to get a string literal or a keyword.
> +/**
> + * get_token() - Get the next token
> + *
> + * We have to keep track of which state we're in to know if we're looking to
> get
> + * a string literal or a keyword.
> *
> - * *p is updated to point at the first character after the current token.
> + * @p: Points to a pointer to the current position in the input being
> processed.
> + * Updated to point at the first character after the current token
> */
> static void get_token(char **p, struct token *t, enum lex_state state)
> {
> @@ -855,8 +937,13 @@ static void get_token(char **p, struct token *t, enum
> lex_state state)
> *p = c;
> }
>
> -/*
> - * Increment *c until we get to the end of the current line, or EOF.
> +/**
> + * eol_or_eof() - Find end of line
> + *
> + * Increment *c until we get to the end of the current line, or EOF
> + *
> + * @c: Points to a pointer to the current position in the input being
> processed.
> + * Updated to point at the first character after the current token
> */
> static void eol_or_eof(char **c)
> {
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
339,6 @@ struct pxe_menu *parse_pxefile(struct pxe_context *ctx,
> unsigned long menucfg)
> int r;
>
> cfg = malloc(sizeof(struct pxe_menu));
> -
> if (!cfg)
> return NULL;
>
> @@ -1386,7 +1349,6 @@ struct pxe_menu *parse_pxefile(struct pxe_context *ctx,
> unsigned long menucfg)
> buf = map_sysmem(menucfg, 0);
> r = parse_pxefile_top(ctx, buf, menucfg, cfg, 1);
> unmap_sysmem(buf);
> -
> if (r < 0) {
> destroy_pxe_menu(cfg);
> return NULL;
> @@ -1413,7 +1375,6 @@ static struct menu *pxe_menu_to_menu(struct pxe_menu
> *cfg)
> */
> m = menu_create(cfg->title, DIV_ROUND_UP(cfg->timeout, 10),
> cfg->prompt, NULL, label_print, NULL, NULL);
> -
> if (!m)
> return NULL;
>
> @@ -1492,7 +1453,6 @@ void handle_pxe_menu(struct pxe_context *ctx, struct
> pxe_menu *cfg)
> return;
>
> err = menu_get_choice(m, &choice);
> -
> menu_destroy(m);
>
> /*
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
eturn 0;
> }
> diff --git a/include/pxe_utils.h b/include/pxe_utils.h
> index 6681442ea55..0cae0dabec3 100644
> --- a/include/pxe_utils.h
> +++ b/include/pxe_utils.h
> @@ -202,4 +202,13 @@ void pxe_setup_ctx(struct pxe_context *ctx, struct
> cmd_tbl *cmdtp,
> pxe_getfile_func getfile, void *userdata,
>bool allow_abs_path);
>
> +/**
> + * pxe_process() - Process a PXE file through to boot
> + *
> + * @ctx: PXE context created with pxe_setup_ctx()
> + * @pxefile_addr_r: Address to load file
> + * @prompt: Force a prompt for the user
> + */
> +int pxe_process(struct pxe_context *ctx, ulong pxefile_addr_r, bool prompt);
> +
> #endif /* __PXE_UTILS_H */
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
t char *file_path,
> * @getfile: Function called by PXE to read a file
> * @userdata: Data the caller requires for @getfile
> * @allow_abs_path: true to allow absolute paths
> + * @bootdir: Directory that files are loaded from ("" if no directory). This
> is
> + * allocated
> */
> struct pxe_context {
> struct cmd_tbl *cmdtp;
> @@ -102,6 +104,7 @@ struct pxe_context {
>
> void *userdata;
> bool allow_abs_path;
> + char *bootdir;
> };
>
> /**
> @@ -197,10 +200,20 @@ int format_mac_pxe(char *outbuf, size_t outbuf_len);
> * @getfile: Function to call to read a file
> * @userdata: Data the caller requires for @getfile - stored in ctx->userdata
> * @allow_abs_path: true to allow absolute paths
> + * @bootfile: Bootfile whose directory loaded files are relative to, NULL if
> + * none
> + * @return 0 if OK, -ENOMEM if out of memory
> */
> -void pxe_setup_ctx(struct pxe_context *ctx, struct cmd_tbl *cmdtp,
> - pxe_getfile_func getfile, void *userdata,
> - bool allow_abs_path);
> +int pxe_setup_ctx(struct pxe_context *ctx, struct cmd_tbl *cmdtp,
> + pxe_getfile_func getfile, void *userdata,
> + bool allow_abs_path, const char *bootfile);
> +
> +/**
> + * pxe_destroy_ctx() - Destroy a PXE context
> + *
> + * @ctx: Context to destroy
> + */
> +void pxe_destroy_ctx(struct pxe_context *ctx);
>
> /**
> * pxe_process() - Process a PXE file through to boot
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
ude/pxe_utils.h
> +++ b/include/pxe_utils.h
> @@ -202,7 +202,8 @@ int format_mac_pxe(char *outbuf, size_t outbuf_len);
> * @allow_abs_path: true to allow absolute paths
> * @bootfile: Bootfile whose directory loaded files are relative to, NULL if
> * none
> - * @return 0 if OK, -ENOMEM if out of memory
> + * @return 0 if OK, -ENOMEM if out of memory, -E2BIG if bootfile is larger
> than
> + * MAX_TFTP_PATH_LEN bytes
> */
> int pxe_setup_ctx(struct pxe_context *ctx, struct cmd_tbl *cmdtp,
> pxe_getfile_func getfile, void *userdata,
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
r PXE parsing
> @@ -88,6 +88,7 @@ typedef int (*pxe_getfile_func)(struct pxe_context *ctx,
> const char *file_path,
> * @allow_abs_path: true to allow absolute paths
> * @bootdir: Directory that files are loaded from ("" if no directory). This
> is
> * allocated
> + * @pxe_file_size: Size of the PXE file
> */
> struct pxe_context {
> struct cmd_tbl *cmdtp;
> @@ -98,6 +99,7 @@ struct pxe_context {
> * @file_path: Path to the file
> * @file_addr: String containing the hex address to put the file in
> * memory
> +* @filesizep: Returns the file size in bytes
> * Return 0 if OK, -ve on error
> */
> pxe_getfile_func getfile;
> @@ -105,6 +107,7 @@ struct pxe_context {
> void *userdata;
> bool allow_abs_path;
> char *bootdir;
> + ulong pxe_file_size;
> };
>
> /**
> @@ -225,4 +228,12 @@ void pxe_destroy_ctx(struct pxe_context *ctx);
> */
> int pxe_process(struct pxe_context *ctx, ulong pxefile_addr_r, bool prompt);
>
> +/**
> + * pxe_get_file_size() - Read the value of the 'filesize' environment
> variable
> + *
> + * @sizep: Place to put the value
> + * @return 0 if OK, -ENOENT if no such variable, -EINVAL if format is invalid
> + */
> +int pxe_get_file_size(ulong *sizep);
> +
> #endif /* __PXE_UTILS_H */
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
info.fstype = FS_TYPE_ANY;
> } else {
> printf("Invalid filesystem: %s\n", argv[3]);
> return 1;
> }
> - fs_argv[1] = argv[1];
> - fs_argv[2] = argv[2];
> + info.ifname = argv[1];
> + info.dev_part_str = argv[2];
>
> if (strict_strtoul(pxefile_addr_str, 16, &pxefile_addr_r) < 0) {
> printf("Invalid pxefile address: %s\n", pxefile_addr_str);
> return 1;
> }
>
> - if (pxe_setup_ctx(&ctx, cmdtp, getfile, NULL, true, filename)) {
> + if (pxe_setup_ctx(&ctx, cmdtp, sysboot_read_file, &info, true,
> + filename)) {
> printf("Out of memory\n");
> return CMD_RET_FAILURE;
> }
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
t; execute
>network operations, set the value to something innocuous, e.g. setenv
>boot_net_pci_enum true. This would be useful if you know your Ethernet
> @@ -412,10 +385,12 @@ Examples:
> The list of possible targets consists of:
>
> - network targets
> +
>* dhcp
>* pxe
>
> - storage targets (to which a device number must be appended)
> +
>* mmc
>* sata
>* scsi
> @@ -428,3 +403,9 @@ of the boot environment and are not guaranteed to exist
> or work in the same
> way in future u-boot versions. In particular the _boot
> variables (e.g. mmc_boot, usb_boot) are a strictly internal implementation
> detail and must not be used as a public interface.
> +
> +.. _BootLoaderSpec:
> http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec/
> +
> +.. sectionauthor:: (C) Copyright 2014 Red Hat Inc.
> +.. sectionauthor:: Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights
> reserved.
> +.. sectionauthor:: Copyright (C) 2015 K. Merker
> diff --git a/doc/develop/index.rst b/doc/develop/index.rst
> index 5e064a4dac1..b3871b16f35 100644
> --- a/doc/develop/index.rst
> +++ b/doc/develop/index.rst
> @@ -14,6 +14,7 @@ Implementation
> commands
> config_binding
> devicetree/index
> + distro
> driver-model/index
> global_data
> logging
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
ruct populated with the results of parsing the pxe file (and
> any
> * files it includes). The resulting pxe_menu struct can be free()'d by using
> * the destroy_pxe_menu() function.
> */
> -struct pxe_menu *parse_pxefile(struct cmd_tbl *cmdtp, ulong menucfg);
> +struct pxe_menu *parse_pxefile(struct pxe_context *ctx, ulong menucfg);
>
> /**
> * format_mac_pxe() - Convert a MAC address to PXE format
> @@ -159,4 +174,12 @@ struct pxe_menu *parse_pxefile(struct cmd_tbl *cmdtp,
> ulong menucfg);
> */
> int format_mac_pxe(char *outbuf, size_t outbuf_len);
>
> +/**
> + * pxe_setup_ctx() - Setup a new PXE context
> + *
> + * @ctx: Context to set up
> + * @cmdtp: Command table entry which started this action
> + */
> +void pxe_setup_ctx(struct pxe_context *ctx, struct cmd_tbl *cmdtp);
> +
> #endif /* __PXE_UTILS_H */
> diff --git a/cmd/sysboot.c b/cmd/sysboot.c
> index af6a2f1b7f1..9ba713c8aae 100644
> --- a/cmd/sysboot.c
> +++ b/cmd/sysboot.c
> @@ -59,6 +59,7 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int
> argc,
> char *const argv[])
> {
> unsigned long pxefile_addr_r;
> + struct pxe_context ctx;
> struct pxe_menu *cfg;
> char *pxefile_addr_str;
> char *filename;
> @@ -90,6 +91,7 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int
> argc,
> env_set("bootfile", filename);
> }
>
> + pxe_setup_ctx(&ctx, cmdtp);
> if (strstr(argv[3], "ext2")) {
> do_getfile = do_get_ext2;
> } else if (strstr(argv[3], "fat")) {
> @@ -108,12 +110,12 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag,
> int argc,
> return 1;
> }
>
> - if (get_pxe_file(cmdtp, filename, pxefile_addr_r) < 0) {
> + if (get_pxe_file(&ctx, filename, pxefile_addr_r) < 0) {
> printf("Error reading config file\n");
> return 1;
> }
>
> - cfg = parse_pxefile(cmdtp, pxefile_addr_r);
> + cfg = parse_pxefile(&ctx, pxefile_addr_r);
>
> if (!cfg) {
> printf("Error parsing config file\n");
> @@ -123,7 +125,7 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag,
> int argc,
> if (prompt)
> cfg->prompt = 1;
>
> - handle_pxe_menu(cmdtp, cfg);
> + handle_pxe_menu(&ctx, cfg);
>
> destroy_pxe_menu(cfg);
>
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
/include/pxe_utils.h
> @@ -236,4 +236,18 @@ int pxe_process(struct pxe_context *ctx, ulong
> pxefile_addr_r, bool prompt);
> */
> int pxe_get_file_size(ulong *sizep);
>
> +/**
> + * pxe_get() - Get the PXE file from the server
> + *
> + * This tries various filenames to obtain a PXE file
> + *
> + * @pxefile_addr_r: Address to put file
> + * @bootdirp: Returns the boot filename, or NULL if none. This is the
> 'bootfile'
> + * option provided by the DHCP server. If none, returns NULL. For
> example,
> + * "rpi/info", which indicates that all files should be fetched from the
> + * "rpi/" subdirectory
> + * @sizep: Size of the PXE file (not bootfile)
> + */
> +int pxe_get(ulong pxefile_addr_r, char **bootdirp, ulong *sizep);
> +
> #endif /* __PXE_UTILS_H */
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
)'d by using
> + * the destroy_pxe_menu() function.
> + */
> +struct pxe_menu *parse_pxefile(struct cmd_tbl *cmdtp, ulong menucfg);
> +
> +/**
> + * format_mac_pxe() - Convert a MAC address to PXE format
> + *
> + * Convert an ethaddr from the environment to the format used by pxelinux
> + * filenames based on mac addresses. Convert's ':' to '-', and adds "01-" to
> + * the beginning of the ethernet address to indicate a hardware type of
> + * Ethernet. Also converts uppercase hex characters into lowercase, to match
> + * pxelinux's behavior.
> + *
> + * @outbuf: Buffer to hold the output (must hold 22 bytes)
> + * @outbuf_len: Length of buffer
> + * Returns 1 for success, -ENOENT if 'ethaddr' is undefined in the
> + * environment, or some other value < 0 on error.
> + */
> int format_mac_pxe(char *outbuf, size_t outbuf_len);
>
> #endif /* __PXE_UTILS_H */
> --
> 2.33.0.1079.g6e70778dc9-goog
>
Reviewed-by: Ramon Fried
On Mon, Nov 8, 2021 at 6:53 PM Peter Hoyes wrote:
>
> On 28/10/2021 19:55, Ramon Fried wrote:
> > On Sun, Oct 24, 2021 at 10:56 PM Simon Glass wrote:
> >> Hi,
> >>
> >> On Fri, 15 Oct 2021 at 05:21, Andre Przywara
> >> wrote:
> >>>
ass.c
> >>>>>>>> index 0da0e85be031..58c308f33276 100644
> >>>>>>>> --- a/net/eth-uclass.c
> >>>>>>>> +++ b/net/eth-uclass.c
> >>>>>>>> @@ -583,6 +583,8 @@ static int eth_post_probe(struct udevice
> >>>>>>
Hi Tom,
This PR includes the following net changes for next:
- Various DSA additions
- bootp: fix for VCI string
- tsec: support for promiscuous mode
- macb: Fix for random MAC address not saved to the environment.
The following changes since commit aafc378a6caef453a40f2f9f3d6bef69e592c28d:
M
On Mon, Nov 1, 2021 at 12:04 AM Vladimir Oltean wrote:
>
> On Sat, Oct 30, 2021 at 04:31:48PM +0300, Ramon Fried wrote:
> > > > > > Ping for apply?
> > > > > I'll get to the patches today.
> > > > > thanks for waking me up :)
> >
, 0, &reset_ctl);
> + reset_deassert(&reset_ctl);
> +
> + return 0;
> +}
> +
> +static const struct udevice_id aspeed_mdio_ids[] = {
> + { .compatible = "aspeed,ast2600-mdio" },
> + { }
> +};
> +
> +U_BOOT_DRIVER(aspeed_mdio) = {
> + .name = "aspeed_mdio",
> + .id = UCLASS_MDIO,
> + .of_match = aspeed_mdio_ids,
> + .probe = aspeed_mdio_probe,
> + .ops = &aspeed_mdio_ops,
> + .plat_auto = sizeof(struct mdio_perdev_priv),
> + .priv_auto = sizeof(struct aspeed_mdio_priv),
> +};
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
t in a 'defined but not used' warning.
>
> To silence those, mark the function as __maybe_unused.
>
> Fixes: 79ba3435f43d ("net: tsec: add support for promiscuous mode")
> Reported-by: Ramon Fried
> Signed-off-by: Vladimir Oltean
> ---
> drivers/net/
true, 2, false);
> + true, MDIO_IDLE_TIMEOUT_MS, false);
> if (err)
> return err;
>
> --
> 2.33.1
>
Reviewed-by: Ramon Fried
uot;eth", dev_seq(dev),
> + pdata->enetaddr);
> #else
> printf("\nError: %s address not set.\n",
>dev->name);
> --
> 2.33.1
>
Reviewed-by: Ramon Fried
On Sat, Oct 30, 2021 at 4:37 PM Bin Meng wrote:
>
> Hi Ramon,
>
> On Sat, Oct 30, 2021 at 9:31 PM Ramon Fried wrote:
> >
> > On Thu, Oct 28, 2021 at 10:29 PM Vladimir Oltean
> > wrote:
> > >
> > > On Thu, Oct 28, 2021 at 09:41:02PM +0300, Ram
On Thu, Oct 28, 2021 at 10:29 PM Vladimir Oltean
wrote:
>
> On Thu, Oct 28, 2021 at 09:41:02PM +0300, Ramon Fried wrote:
> > Bin, patches don't apply cleanly. can you rebase ?
> >
> > On Thu, Oct 28, 2021 at 7:53 AM Ramon Fried wrote:
> > >
> > >
On Thu, Oct 28, 2021 at 9:45 PM Ramon Fried wrote:
>
> On Sat, Oct 16, 2021 at 9:30 PM Ramon Fried wrote:
> >
> > On Wed, Sep 29, 2021 at 6:05 PM Vladimir Oltean
> > wrote:
> > >
> > > The Freescale TSEC can be a DSA master, and the ports of the attach
On Sun, Oct 24, 2021 at 10:56 PM Simon Glass wrote:
>
> Hi,
>
> On Fri, 15 Oct 2021 at 05:21, Andre Przywara wrote:
> >
> > On Thu, 14 Oct 2021 12:24:45 -0600
> > Simon Glass wrote:
> >
> > Hi Simon,
> >
> > > On Thu, 14 Oct 2021 at 02:40, Peter Hoyes wrote:
> > > >
> > > > From: Peter Hoyes
>
On Sat, Oct 16, 2021 at 9:30 PM Ramon Fried wrote:
>
> On Wed, Oct 13, 2021 at 5:07 AM Samuel Holland wrote:
> >
> > Some boards need to change the tx/rx delay config in order for
> > gigabit Ethernet to work.
> >
> > In Linux commit bbc4d71d6354 ("net: p
On Thu, Oct 14, 2021 at 6:13 PM Simon Glass wrote:
>
> On Tue, 12 Oct 2021 at 05:50, Walter Stoll wrote:
> >
> > The VCI string sent during bootp of U-Boot-SPL is corrupt. This is
> > because the byte counter is not adjusted within the bootp_extended()
> > function when the VCI string is added. W
On Sat, Oct 16, 2021 at 9:30 PM Ramon Fried wrote:
>
> On Wed, Sep 29, 2021 at 6:05 PM Vladimir Oltean
> wrote:
> >
> > The Freescale TSEC can be a DSA master, and the ports of the attached
> > DSA switch can have different MAC addresses compared to the TSEC.
>
Bin, patches don't apply cleanly. can you rebase ?
On Thu, Oct 28, 2021 at 7:53 AM Ramon Fried wrote:
>
> On Wed, Oct 27, 2021 at 5:19 AM Bin Meng wrote:
> >
> > On Sun, Oct 17, 2021 at 2:26 AM Ramon Fried wrote:
> > >
> > > On Wed, Sep 29, 2021
On Tue, Sep 28, 2021 at 4:34 PM Ramon Fried wrote:
>
> On Tue, Sep 28, 2021 at 2:13 AM Vladimir Oltean
> wrote:
> >
> > The VSC8502 is a Microchip (formerly Microsemi, formerly Vitesse)
> > dual port, gigabit Ethernet copper PHY which supports the MII, GMII and
&g
On Wed, Oct 27, 2021 at 5:19 AM Bin Meng wrote:
>
> On Sun, Oct 17, 2021 at 2:26 AM Ramon Fried wrote:
> >
> > On Wed, Sep 29, 2021 at 4:32 PM Vladimir Oltean
> > wrote:
> > >
> > > On Wed, Sep 29, 2021 at 01:50:44PM +0800, Bin Meng wrote:
> > &
at the setting
> we applied in eth_ops :: set_promisc sticks.
>
> Signed-off-by: Vladimir Oltean
> Reviewed-by: Ramon Fried
> Reviewed-by: Bin Meng
> ---
> v1->v2: none
>
> drivers/net/tsec.c | 20
> include/tsec.h | 2 ++
> 2 files chan
te(phydev, MDIO_DEVAD_NONE, MIIM_RTL8211F_PAGE_SELECT, 0);
> +
> +default_delay:
> + genphy_config_aneg(phydev);
> +
> + return 0;
> +}
> +
> static int rtl8211f_config(struct phy_device *phydev)
> {
> u16 reg;
> @@ -410,7 +427,7 @@ static struct phy_driver RTL8211E_driver = {
> .mask = 0xff,
> .features = PHY_GBIT_FEATURES,
> .probe = &rtl8211e_probe,
> - .config = &rtl8211x_config,
> + .config = &rtl8211e_config,
> .startup = &rtl8211e_startup,
> .shutdown = &genphy_shutdown,
> };
> --
> 2.32.0
>
Reviewed-by: Ramon Fried
enabled,
> > otherwise it shouldn't.
> >
> > To be compatible with the OF node bindings of drivers that use phylink
> > in Linux, introduce parsing support for this property in U-Boot too.
> >
> > Signed-off-by: Vladimir Oltean
> > Reviewed-by: Ramon
nitialized.
> */
> -void redundant_init(struct tsec_private *priv)
> +static void redundant_init(struct tsec_private *priv)
> {
> struct tsec __iomem *regs = priv->regs;
> uint t, count = 0;
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
b/drivers/net/fec_mxc.h
> > @@ -272,7 +272,7 @@ struct fec_priv {
> > struct clk clk_ref;
> > struct clk clk_ptp;
> > u32 clk_rate;
> > - char promisc;
> > + bool promisc;
> > };
> >
> > /**
> > --
> > 2.25.1
> >
>
> Reviewed-by: Vladimir Oltean
Reviewed-by: Ramon Fried
th_ops->set_promisc(master, true);
> >
> > return 0;
> > }
> > --
> > 2.25.1
> >
>
> Reviewed-by: Vladimir Oltean
Reviewed-by: Ramon Fried
t; @@ -77,6 +78,7 @@
>
> #define ZYNQ_GEM_NWCFG_INIT(ZYNQ_GEM_DBUS_WIDTH | \
> ZYNQ_GEM_NWCFG_FDEN | \
> + ZYNQ_GEM_NWCFG_NO_BRDC | \
> ZYNQ_GEM_NWCFG_FSREM | \
> ZYNQ_GEM_NWCFG_MDCCLKDIV)
>
> --
> 2.33.1
>
Reviewed-by: Ramon Fried
changes up to 17d7482fd816316bce74db5e93e29430a9b01a3d:
scripts: ensure the cocci script for miiphy_register does not leak
the MDIO bus (2021-09-28 20:10:53 +0300)
Ramon Fried (1):
net: tsec: Mark tsec_get_interface as
On Tue, Sep 28, 2021 at 2:48 AM Vladimir Oltean wrote:
>
> The SJA1105 driver is largely reused from Linux. Its programming model
> is that it is blank out of reset, and it waits for a static
> configuration stream over SPI, which contains all runtime parameters (it
> has no notion of "default val
-ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = uec_miiphy_read;
> mdiodev->write = uec_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
mii_bus->write = felix_mdio_write;
> mii_bus->priv = priv->imdio_base + FELIX_PM_IMDIO_BASE;
> - strncpy(mii_bus->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mii_bus->name, dev->name, MDIO_NAME_LEN);
> mdio_register(mii_bus);
> }
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
> case PHY_INTERFACE_MODE_SGMII:
> case PHY_INTERFACE_MODE_SGMII_2500:
> case PHY_INTERFACE_MODE_QSGMII:
> - felix_init_sgmii(imdio, port, autoneg);
> + felix_init_sgmii(imdio, port, inband_an);
> break;
> case PHY_INTERFACE_MODE_XGMII:
> case PHY_INTERFACE_MODE_XFI:
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
en
> it
> + * has a fixed link (in that case, in-band autoneg should not be used).
> + *
> + * @param eth_node ofnode belonging to the Ethernet controller
> + * @return true if in-band autoneg should be used, false otherwise
> + */
> +bool ofnode_eth_uses_inband_aneg(ofnode eth_node);
> +
> #endif
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
for (device_find_first_child(dev, &pdev);
> +pdev;
> +device_find_next_child(&pdev)) {
> + port_pdata = dev_get_parent_plat(pdev);
> + if (port_pdata->index == port)
> + return dev_ofnode(pdev);
> + }
> +
> + return ofnode_null();
> +}
> +
> /* returns the DSA master Ethernet device */
> struct udevice *dsa_get_master(struct udevice *dev)
> {
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
b/include/tsec.h
> @@ -122,6 +122,8 @@
> #define ECNTRL_REDUCED_MII_MODE0x0004
> #define ECNTRL_SGMII_MODE 0x0002
>
> +#define RCTRL_PROM 0x0008
> +
> #ifndef CONFIG_SYS_TBIPA_VALUE
> # define CONFIG_SYS_TBIPA_VALUE0x1f
> #endif
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
.config = &vsc8502_config,
> + .startup = &mscc_startup,
> + .shutdown = &genphy_shutdown,
> +};
> +
> static struct phy_driver VSC8540_driver = {
> .name = "Microsemi VSC8540",
> .uid = PHY_ID_VSC8540,
> @@ -1577,6 +1632,7 @@ int phy_mscc_init(void)
> {
> phy_register(&VSC8530_driver);
> phy_register(&VSC8531_driver);
> + phy_register(&VSC8502_driver);
> phy_register(&VSC8540_driver);
> phy_register(&VSC8541_driver);
> phy_register(&VSC8574_driver);
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
AME_LENGTH);
> + strlcpy(port_pdata->name, name, DSA_PORT_NAME_LENGTH);
> pdev->name = port_pdata->name;
> }
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
er(mii_bus);
> + err = mdio_register(mii_bus);
> + if (err) {
> + mdio_free(mii_bus);
> + return err;
> + }
> }
>
> dm_pci_clrset_config16(dev, PCI_COMMAND, 0, PCI_COMMAND_MEMORY);
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
bus->name, dev->name, MDIO_NAME_LEN - 1);
> + strlcpy(pdata->mii_bus->name, dev->name, MDIO_NAME_LEN);
>
> return mdio_register(pdata->mii_bus);
> }
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
mdiodev->read = davinci_mii_phy_read;
> mdiodev->write = davinci_mii_phy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
v)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = bb_miiphy_read;
> mdiodev->write = bb_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
return -ENOMEM;
>
> - strncpy(mdiodev->name, priv->dev.name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, priv->dev.name, MDIO_NAME_LEN);
> mdiodev->read = smc911x_miiphy_read;
> mdiodev->write = smc911x_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = smi_reg_read;
> mdiodev->write = smi_reg_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
ev = mdio_alloc();
> if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = fec8xx_miiphy_read;
> mdiodev->write = fec8xx_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
y(macb->bus->name, dev->name, MDIO_NAME_LEN);
> macb->bus->read = macb_miiphy_read;
> macb->bus->write = macb_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = ftmac110_mdio_read;
> mdiodev->write = ftmac110_mdio_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
= mdio_alloc();
> if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = mii_reg_read;
> mdiodev->write = mii_reg_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
loc();
> if (!info->bus)
> return -ENOMEM;
> - strncpy(info->bus->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(info->bus->name, dev->name, MDIO_NAME_LEN);
> info->bus->read = mcffec_miiphy_read;
> info->bus->write = mcffec_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
MDIO_NAME_LEN);
> if (!miiphy_get_dev_by_name(priv->imdio.name))
> mdio_register(&priv->imdio);
> }
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
= mdio_alloc();
> if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, "ep93xx_eth0", MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, "ep93xx_eth0", MDIO_NAME_LEN);
> mdiodev->read = ep93xx_miiphy_read;
> mdiodev->write = ep93xx_miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
> return -ENOMEM;
>
> - strncpy(mdiodev->name, priv->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, priv->name, MDIO_NAME_LEN);
> mdiodev->read = eepro100_miiphy_read;
> mdiodev->write = eepro100_miiphy_write;
> mdiodev->priv = priv;
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
v)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = eth->miiphy_read;
> mdiodev->write = eth->miiphy_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
ruct mii_dev *mdiodev = mdio_alloc();
> if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = at91emac_mii_read;
> mdiodev->write = at91emac_mii_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
t mii_dev *mdiodev = mdio_alloc();
> if (!mdiodev)
> return -ENOMEM;
> - strncpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> + strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN);
> mdiodev->read = smi_reg_read;
> mdiodev->write = smi_reg_write;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
gt; > Signed-off-by: Vladimir Oltean
> > ---
> > drivers/net/tsec.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
>
> Reviewed-by: Bin Meng
> Tested-by: Bin Meng
Reviewed-by: Ramon Fried
> > 1 file changed, 3 insertions(+), 6 deletions(-)
> >
>
> Reviewed-by: Bin Meng
> Tested-by: Bin Meng
Reviewed-by: Ramon Fried
;
> - case PHY_INTERFACE_MODE_XGMII:
> case PHY_INTERFACE_MODE_10GBASER:
> case PHY_INTERFACE_MODE_USXGMII:
> if (felix_init_sxgmii(imdio, port))
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
- case PHY_INTERFACE_MODE_XGMII:
> case PHY_INTERFACE_MODE_USXGMII:
> case PHY_INTERFACE_MODE_10GBASER:
> enetc_init_sxgmii(dev);
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
> + phy->interface == PHY_INTERFACE_MODE_2500BASEX)
> autoneg = false;
>
> switch (phy->interface) {
> case PHY_INTERFACE_MODE_SGMII:
> - case PHY_INTERFACE_MODE_SGMII_2500:
> + case PHY_INTERFACE_MODE_2500BASEX:
> case PHY_INTERFACE_MODE_QSGMII:
> felix_init_sgmii(imdio, port, autoneg);
> break;
> diff --git a/drivers/net/pfe_eth/pfe_mdio.c b/drivers/net/pfe_eth/pfe_mdio.c
> index 3228b8df49d4..ae5b6fc2800a 100644
> --- a/drivers/net/pfe_eth/pfe_mdio.c
> +++ b/drivers/net/pfe_eth/pfe_mdio.c
> @@ -161,7 +161,7 @@ static void pfe_configure_serdes(struct pfe_eth_dev *priv)
> int value, sgmii_2500 = 0;
> struct gemac_s *gem = priv->gem;
>
> - if (gem->phy_mode == PHY_INTERFACE_MODE_SGMII_2500)
> + if (gem->phy_mode == PHY_INTERFACE_MODE_2500BASEX)
> sgmii_2500 = 1;
>
>
> @@ -220,7 +220,7 @@ int pfe_phy_configure(struct pfe_eth_dev *priv, int
> dev_id, int phy_id)
>
> /* Configure SGMII PCS */
> if (gem->phy_mode == PHY_INTERFACE_MODE_SGMII ||
> - gem->phy_mode == PHY_INTERFACE_MODE_SGMII_2500) {
> + gem->phy_mode == PHY_INTERFACE_MODE_2500BASEX) {
> out_be32(&scfg->mdioselcr, 0x);
> pfe_configure_serdes(priv);
> }
> diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
> index 66d1d9856825..83075f78c981 100644
> --- a/drivers/net/phy/aquantia.c
> +++ b/drivers/net/phy/aquantia.c
> @@ -308,7 +308,7 @@ struct {
> } aquantia_syscfg[PHY_INTERFACE_MODE_COUNT] = {
> [PHY_INTERFACE_MODE_SGMII] = {0x04b, AQUANTIA_VND1_GSYSCFG_1G,
>AQUANTIA_VND1_GSTART_RATE_1G},
> - [PHY_INTERFACE_MODE_SGMII_2500] = {0x144, AQUANTIA_VND1_GSYSCFG_2_5G,
> + [PHY_INTERFACE_MODE_2500BASEX] = {0x144, AQUANTIA_VND1_GSYSCFG_2_5G,
>AQUANTIA_VND1_GSTART_RATE_2_5G},
> [PHY_INTERFACE_MODE_10GBASER] = {0x100, AQUANTIA_VND1_GSYSCFG_10G,
>AQUANTIA_VND1_GSTART_RATE_10G},
> @@ -522,7 +522,7 @@ int aquantia_config(struct phy_device *phydev)
> phy_write(phydev, MDIO_MMD_PHYXS,
> AQUANTIA_VENDOR_PROVISIONING_REG, reg_val1);
> break;
> - case PHY_INTERFACE_MODE_SGMII_2500:
> + case PHY_INTERFACE_MODE_2500BASEX:
> /* 2.5GBASE-T mode */
> phydev->advertising = SUPPORTED_1000baseT_Full;
> phydev->supported = phydev->advertising;
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
vers/net/phy/aquantia.c
> @@ -310,7 +310,7 @@ struct {
>AQUANTIA_VND1_GSTART_RATE_1G},
> [PHY_INTERFACE_MODE_SGMII_2500] = {0x144, AQUANTIA_VND1_GSYSCFG_2_5G,
>AQUANTIA_VND1_GSTART_RATE_2_5G},
> - [PHY_INTERFACE_MODE_XFI] ={0x100, AQUANTIA_VND1_GSYSCFG_10G,
> + [PHY_INTERFACE_MODE_10GBASER] = {0x100, AQUANTIA_VND1_GSYSCFG_10G,
>AQUANTIA_VND1_GSTART_RATE_10G},
> [PHY_INTERFACE_MODE_USXGMII] ={0x080, AQUANTIA_VND1_GSYSCFG_10G,
>AQUANTIA_VND1_GSTART_RATE_10G},
> @@ -443,18 +443,18 @@ int aquantia_config(struct phy_device *phydev)
> return ret;
> }
> /*
> -* for backward compatibility convert XGMII into either XFI or USX
> based
> -* on FW config
> +* for backward compatibility convert XGMII into either 10GBase-R or
> +* USXGMII based on FW config
> */
> if (interface == PHY_INTERFACE_MODE_XGMII) {
> - debug("use XFI or USXGMII SI protos, XGMII is not valid\n");
> + debug("use 10GBase-R or USXGMII SI protos, XGMII is not
> valid\n");
>
> reg_val1 = phy_read(phydev, MDIO_MMD_PHYXS,
> AQUANTIA_SYSTEM_INTERFACE_SR);
> if ((reg_val1 & AQUANTIA_SI_IN_USE_MASK) ==
> AQUANTIA_SI_USXGMII)
> interface = PHY_INTERFACE_MODE_USXGMII;
> else
> - interface = PHY_INTERFACE_MODE_XFI;
> + interface = PHY_INTERFACE_MODE_10GBASER;
> }
>
> /*
> @@ -494,7 +494,7 @@ int aquantia_config(struct phy_device *phydev)
> case PHY_INTERFACE_MODE_USXGMII:
> usx_an = 1;
> /* FALLTHROUGH */
> - case PHY_INTERFACE_MODE_XFI:
> + case PHY_INTERFACE_MODE_10GBASER:
> /* 10GBASE-T mode */
> phydev->advertising = SUPPORTED_1baseT_Full;
> phydev->supported = phydev->advertising;
> @@ -515,7 +515,7 @@ int aquantia_config(struct phy_device *phydev)
> phydev->dev->name);
> } else {
> reg_val1 &= ~AQUANTIA_USX_AUTONEG_CONTROL_ENA;
> - debug("%s: system interface XFI\n",
> + debug("%s: system interface 10GBase-R\n",
> phydev->dev->name);
> }
>
> diff --git a/include/phy.h b/include/phy.h
> index 6b928636b6d7..b9d8dc3a61ed 100644
> --- a/include/phy.h
> +++ b/include/phy.h
> @@ -368,7 +368,7 @@ static inline int is_10g_interface(phy_interface_t
> interface)
> {
> return interface == PHY_INTERFACE_MODE_XGMII ||
>interface == PHY_INTERFACE_MODE_USXGMII ||
> - interface == PHY_INTERFACE_MODE_XFI;
> + interface == PHY_INTERFACE_MODE_10GBASER;
> }
>
> #endif
> diff --git a/include/phy_interface.h b/include/phy_interface.h
> index ebb18ecd40c0..f075abe9c9c0 100644
> --- a/include/phy_interface.h
> +++ b/include/phy_interface.h
> @@ -37,7 +37,7 @@ typedef enum {
> PHY_INTERFACE_MODE_CAUI2,
> PHY_INTERFACE_MODE_CAUI4,
> PHY_INTERFACE_MODE_NCSI,
> - PHY_INTERFACE_MODE_XFI,
> + PHY_INTERFACE_MODE_10GBASER,
> PHY_INTERFACE_MODE_USXGMII,
> PHY_INTERFACE_MODE_NONE,/* Must be last */
>
> @@ -69,7 +69,7 @@ static const char * const phy_interface_strings[] = {
> [PHY_INTERFACE_MODE_CAUI2] = "caui2",
> [PHY_INTERFACE_MODE_CAUI4] = "caui4",
> [PHY_INTERFACE_MODE_NCSI] = "NC-SI",
> - [PHY_INTERFACE_MODE_XFI]= "xfi",
> + [PHY_INTERFACE_MODE_10GBASER] = "10gbase-r",
> [PHY_INTERFACE_MODE_USXGMII]= "usxgmii",
> [PHY_INTERFACE_MODE_NONE] = "",
> };
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
this
> > translation module.
> >
> > Signed-off-by: Vladimir Oltean
> > ---
> > drivers/net/phy/phy.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
>
> Reviewed-by: Bin Meng
Reviewed-by: Ramon Fried
struct dsa_priv *dsa_priv;
> -
> - port_pdata = dev_get_parent_plat(pdev);
> - dsa_priv = dev_get_uclass_priv(dev);
> + struct dsa_port_pdata *port_pdata = dev_get_parent_plat(pdev);
>
> port_pdata->phy = NULL;
>
> --
> 2.25.1
>
Reviewed-by: Ramon Fried
401 - 500 of 1152 matches
Mail list logo