From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bin Meng Date: Fri, 25 Sep 2015 10:34:06 +0800 Subject: [U-Boot] [PATCH 5/8] cmd: bootvx: Pass netmask and gatewayip to VxWorks bootline In-Reply-To: <1443086484-26942-6-git-send-email-bmeng.cn@gmail.com> References: <1443086484-26942-1-git-send-email-bmeng.cn@gmail.com> <1443086484-26942-6-git-send-email-bmeng.cn@gmail.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Thu, Sep 24, 2015 at 5:21 PM, Bin Meng wrote: > There are fields in VxWorks bootline for netmask and gatewayip. > We can get these from U-Boot environment variables and pass them > to VxWorks, just like ipaddr and serverip. > > Signed-off-by: Bin Meng > --- > > common/cmd_elf.c | 15 +++++++++++++-- > 1 file changed, 13 insertions(+), 2 deletions(-) > > diff --git a/common/cmd_elf.c b/common/cmd_elf.c > index 62863df..5a34bde 100644 > --- a/common/cmd_elf.c > +++ b/common/cmd_elf.c > @@ -287,13 +287,24 @@ int do_bootvx(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) > "%s:file ", CONFIG_SYS_VXWORKS_SERVERNAME); > > tmp = getenv("ipaddr"); > - if (tmp) > - sprintf(&build_buf[strlen(build_buf)], "e=%s ", tmp); > + if (tmp) { > + sprintf(&build_buf[strlen(build_buf)], "e=%s", tmp); > + tmp = getenv("netmask"); > + if (tmp) > + sprintf(&build_buf[strlen(build_buf)], > + ":%04x ", getenv_ip("netmask").s_addr); There is an endian issue here for little endian targets. Also the %04x is wrong, should be %08x. This will be fixed in v2. > + else > + sprintf(&build_buf[strlen(build_buf)], " "); > + } > > tmp = getenv("serverip"); > if (tmp) > sprintf(&build_buf[strlen(build_buf)], "h=%s ", tmp); > > + tmp = getenv("gatewayip"); > + if (tmp) > + sprintf(&build_buf[strlen(build_buf)], "g=%s ", tmp); > + > tmp = getenv("hostname"); > if (tmp) > sprintf(&build_buf[strlen(build_buf)], "tn=%s ", tmp); > -- Regards, Bin