[U-Boot] [PATCH V2 3/3] SAMSUNG: SMDKC100: Adds ethernet support.
Minkyu Kang
promsoft at gmail.com
Wed Feb 10 07:56:25 CET 2010
Dear Naveen Krishna Ch,
On 10 February 2010 14:10, Naveen Krishna Ch <ch.naveen at samsung.com> wrote:
> From: Naveen Krishna CH <ch.naveen at samsung.com>
>
> Add setup for ethernet on SMDKC100, allowing kernel/ramdisk to be
> loaded over tftp.
>
> The preinit function will configure GPIO (GPK0CON) & SROMC to look
> for environment in SROM Bank 3.
>
> Changes since v1:
>
> 1. Removed the CONFIG_BOOTP_* and Net config macros from board header file
> as per comments from Ben Warren.
please move this change log under the --- line.
And if you send next version patch, you must send all of your patch series.
>
> Signed-off-by: Naveen Krishna Ch <ch.naveen <at> samsung.com>
> ---
> board/samsung/smdkc100/smdkc100.c | 37 +++++++++++++++++++++++++++++++++++++
> include/configs/smdkc100.h | 13 ++++++++++++-
> 2 files changed, 49 insertions(+), 1 deletions(-)
>
> diff --git a/board/samsung/smdkc100/smdkc100.c b/board/samsung/smdkc100/smdkc100.c
> index 15a1a27..6e50f14 100644
> --- a/board/samsung/smdkc100/smdkc100.c
> +++ b/board/samsung/smdkc100/smdkc100.c
> @@ -23,10 +23,38 @@
> */
>
> #include <common.h>
> +#include <asm/io.h>
> +#include <asm/arch/mem.h>
> +
> +#define GPK0CON_OFFSET 0x2A0
> +#define GPK0CON (S5PC100_GPIO_BASE + GPK0CON_OFFSET)
> +
> DECLARE_GLOBAL_DATA_PTR;
>
> +/*
> + * Miscellaneous platform dependent initialisations
> + */
> +static void smc9115_pre_init(void)
> +{
> + u32 tmp;
> + u32 smc_bw_conf;
> +
> + /* gpio configuration */
> + tmp = __raw_readl(GPK0CON);
> + tmp &= ~(0xf << CONFIG_ENV_SROM_BANK * 4);
> + tmp |= (0x2 << CONFIG_ENV_SROM_BANK * 4);
> + __raw_writel(tmp, GPK0CON);
NAK.
Please use the structure (see gpio.h)
> +
> + /* Ethernet needs bus width of 16 bits */
> + smc_bw_conf = SROM_DATA16_WIDTH(CONFIG_ENV_SROM_BANK);
> +
> + /* Select and configure the SROMC bank */
> + config_sromc(CONFIG_ENV_SROM_BANK, smc_bw_conf, SMC_BC_X_CON);
> +}
> +
> int board_init(void)
> {
> + smc9115_pre_init();
> gd->bd->bi_arch_number = MACH_TYPE_SMDKC100;
> gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100;
>
> @@ -49,3 +77,12 @@ int checkboard(void)
> return 0;
> }
> #endif
> +
> +int board_eth_init(bd_t *bis)
> +{
> + int rc = 0;
> +#ifdef CONFIG_SMC911X
> + rc = smc911x_initialize(0, CONFIG_SMC911X_BASE);
> +#endif
> + return rc;
> +}
> diff --git a/include/configs/smdkc100.h b/include/configs/smdkc100.h
> index a8ba052..eceb93f 100644
> --- a/include/configs/smdkc100.h
> +++ b/include/configs/smdkc100.h
> @@ -83,7 +83,7 @@
> #undef CONFIG_CMD_FLASH
> #undef CONFIG_CMD_IMLS
> #undef CONFIG_CMD_NAND
> -#undef CONFIG_CMD_NET
> +#define CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */
>
> #define CONFIG_CMD_CACHE
> #define CONFIG_CMD_REGINFO
> @@ -235,4 +235,15 @@
>
> #define CONFIG_DOS_PARTITION 1
>
> +/*
> + * Ethernet Contoller driver
> + */
> +#ifdef CONFIG_CMD_NET
> +#define CONFIG_NET_MULTI
> +#define CONFIG_SMC911X 1 /* we have a SMC9115 on-board */
> +#define CONFIG_SMC911X_16_BIT 1 /* SMC911X_16_BIT Mode */
> +#define CONFIG_SMC911X_BASE 0x98800300 /* SMC911X Drive Base */
> +#define CONFIG_ENV_SROM_BANK 3 /* Select SROM Bank-3 for Ethernet*/
> +#endif /* CONFIG_CMD_NET */
> +
> #endif /* __CONFIG_H */
> --
> 1.6.6
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
Thanks
Minkyu Kang
--
from. prom.
www.promsoft.net
More information about the U-Boot
mailing list