Message ID | 1359400440-12916-4-git-send-email-otavio@ossystems.com.br |
---|---|
State | Not Applicable |
Headers | show |
On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador <otavio@ossystems.com.br> wrote: > + "ip_dyn=yes\0" \ > + "usbethaddr=00:11:22:33:44:55\0" \ You should not hardcode a MAC address.
On Mon, Jan 28, 2013 at 5:12 PM, Fabio Estevam <festevam@gmail.com> wrote: > On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador > <otavio@ossystems.com.br> wrote: > >> + "ip_dyn=yes\0" \ >> + "usbethaddr=00:11:22:33:44:55\0" \ > > You should not hardcode a MAC address. It does not provide one. -- Otavio Salvador O.S. Systems E-mail: otavio@ossystems.com.br http://www.ossystems.com.br Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br
Dear Otavio Salvador, And again ... NAK Anyway, will the hub function properly if you toggle the GPIO in board_eth_init? I dont think so. [..] Best regards, Marek Vasut
Dear Otavio Salvador, > On Mon, Jan 28, 2013 at 5:12 PM, Fabio Estevam <festevam@gmail.com> wrote: > > On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador > > > > <otavio@ossystems.com.br> wrote: > >> + "ip_dyn=yes\0" \ > >> + "usbethaddr=00:11:22:33:44:55\0" \ > > > > You should not hardcode a MAC address. > > It does not provide one. Your dongle? Then leave that up to user. Besides, there's a tool in tools/ for generating a random MAC. Best regards, Marek Vasut
On Mon, Jan 28, 2013 at 5:13 PM, Otavio Salvador <otavio@ossystems.com.br> wrote: >> You should not hardcode a MAC address. > > It does not provide one. Right, but you can not force all olinuxino boards to have the same MAC address, so just remove the MAC setting and each one can set its own. Also, please read: http://www.denx.de/wiki/view/DULG/WhereCanIGetAValidMACAddresshttp://www.denx.de/wiki/view/DULG/WhereCanIGetAValidMACAddress
On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador <otavio@ossystems.com.br> wrote: > +#ifdef CONFIG_CMD_NET > +int board_eth_init(bd_t *bis) > +{ > + /* Power-on Ethernet */ > + gpio_direction_output(MX23_PAD_GPMI_ALE__GPIO_0_17, 1); > +} > +#endif This function expects to return an integer, and there is no return value here. Also, maybe you could set the GPIO inside board_early_init_f() like we do on mx28.
Dear Fabio Estevam, > On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador > > <otavio@ossystems.com.br> wrote: > > +#ifdef CONFIG_CMD_NET > > +int board_eth_init(bd_t *bis) > > +{ > > + /* Power-on Ethernet */ > > + gpio_direction_output(MX23_PAD_GPMI_ALE__GPIO_0_17, 1); > > +} > > +#endif > > This function expects to return an integer, and there is no return value > here. > > Also, maybe you could set the GPIO inside board_early_init_f() like we > do on mx28. How come it didn't emit an error? Best regards, Marek Vasut
On Mon, Jan 28, 2013 at 5:56 PM, Marek Vasut <marex@denx.de> wrote: > Dear Fabio Estevam, > >> On Mon, Jan 28, 2013 at 5:14 PM, Otavio Salvador >> >> <otavio@ossystems.com.br> wrote: >> > +#ifdef CONFIG_CMD_NET >> > +int board_eth_init(bd_t *bis) >> > +{ >> > + /* Power-on Ethernet */ >> > + gpio_direction_output(MX23_PAD_GPMI_ALE__GPIO_0_17, 1); >> > +} >> > +#endif >> >> This function expects to return an integer, and there is no return value >> here. >> >> Also, maybe you could set the GPIO inside board_early_init_f() like we >> do on mx28. > > How come it didn't emit an error? It works; I tested it and sent the new patch version with it. -- Otavio Salvador O.S. Systems E-mail: otavio@ossystems.com.br http://www.ossystems.com.br Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br
diff --git a/board/olimex/mx23_olinuxino/mx23_olinuxino.c b/board/olimex/mx23_olinuxino/mx23_olinuxino.c index 2501417..6077d70 100644 --- a/board/olimex/mx23_olinuxino/mx23_olinuxino.c +++ b/board/olimex/mx23_olinuxino/mx23_olinuxino.c @@ -53,6 +53,14 @@ int dram_init(void) return mxs_dram_init(); } +#ifdef CONFIG_CMD_NET +int board_eth_init(bd_t *bis) +{ + /* Power-on Ethernet */ + gpio_direction_output(MX23_PAD_GPMI_ALE__GPIO_0_17, 1); +} +#endif + #ifdef CONFIG_CMD_MMC static int mx23_olx_mmc_cd(int id) { diff --git a/board/olimex/mx23_olinuxino/spl_boot.c b/board/olimex/mx23_olinuxino/spl_boot.c index 3bbf5ad..8f7ba0b 100644 --- a/board/olimex/mx23_olinuxino/spl_boot.c +++ b/board/olimex/mx23_olinuxino/spl_boot.c @@ -95,6 +95,10 @@ const iomux_cfg_t iomux_setup[] = { MX23_PAD_SSP1_DATA2__SSP1_DATA2 | MUX_CONFIG_SSP, MX23_PAD_SSP1_DATA3__SSP1_DATA3 | MUX_CONFIG_SSP, MX23_PAD_SSP1_SCK__SSP1_SCK | MUX_CONFIG_SSP, + + /* Ethernet */ + MX23_PAD_GPMI_ALE__GPIO_0_17 | + (MXS_PAD_12MA | MXS_PAD_3V3), }; void board_init_ll(void) diff --git a/include/configs/mx23_olinuxino.h b/include/configs/mx23_olinuxino.h index e081c49..9adbb9c 100644 --- a/include/configs/mx23_olinuxino.h +++ b/include/configs/mx23_olinuxino.h @@ -55,11 +55,13 @@ #define CONFIG_DOS_PARTITION #define CONFIG_CMD_CACHE +#define CONFIG_CMD_DHCP #define CONFIG_CMD_EXT2 #define CONFIG_CMD_FAT #define CONFIG_CMD_GPIO #define CONFIG_CMD_LED #define CONFIG_CMD_MMC +#define CONFIG_CMD_NET #define CONFIG_CMD_USB /* @@ -150,6 +152,12 @@ #define CONFIG_USB_STORAGE #endif +/* Ethernet */ +#ifdef CONFIG_CMD_NET +#define CONFIG_USB_HOST_ETHER +#define CONFIG_USB_ETHER_SMSC95XX +#endif + /* * Boot Linux */ @@ -175,6 +183,7 @@ /* * Extra Environments */ + #define CONFIG_EXTRA_ENV_SETTINGS \ "update_sd_firmware_filename=u-boot.sd\0" \ "update_sd_firmware=" /* Update the SD firmware partition */ \ @@ -191,6 +200,8 @@ "fdt_file=imx23-olinuxino.dtb\0" \ "fdt_addr=0x41000000\0" \ "boot_fdt=try\0" \ + "ip_dyn=yes\0" \ + "usbethaddr=00:11:22:33:44:55\0" \ "mmcdev=0\0" \ "mmcpart=2\0" \ "mmcroot=/dev/mmcblk0p3 rw rootwait\0" \ @@ -216,6 +227,31 @@ "fi; " \ "else " \ "bootm; " \ + "fi;\0" \ + "netargs=setenv bootargs console=${console_mainline},${baudrate} " \ + "root=/dev/nfs " \ + "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ + "netboot=echo Booting from net ...; " \ + "usb start; " \ + "run netargs; " \ + "if test ${ip_dyn} = yes; then " \ + "setenv get_cmd dhcp; " \ + "else " \ + "setenv get_cmd tftp; " \ + "fi; " \ + "${get_cmd} ${uimage}; " \ + "if test ${boot_fdt} = yes; then " \ + "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ + "bootm ${loadaddr} - ${fdt_addr}; " \ + "else " \ + "if test ${boot_fdt} = try; then " \ + "bootm; " \ + "else " \ + "echo WARN: Cannot load the DT; " \ + "fi;" \ + "fi; " \ + "else " \ + "bootm; " \ "fi;\0" #define CONFIG_BOOTCOMMAND \ @@ -225,10 +261,9 @@ "else " \ "if run loaduimage; then " \ "run mmcboot; " \ - "else " \ - "echo ERR: Fail to boot from MMC; " \ + "else run netboot; " \ "fi; " \ "fi; " \ - "else exit; fi" + "else run netboot; fi" #endif /* __MX23_OLINUXINO_CONFIG_H__ */
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> --- board/olimex/mx23_olinuxino/mx23_olinuxino.c | 8 ++++++ board/olimex/mx23_olinuxino/spl_boot.c | 4 +++ include/configs/mx23_olinuxino.h | 41 ++++++++++++++++++++++++++-- 3 files changed, 50 insertions(+), 3 deletions(-)