[U-Boot] [PATCH v5] nios2: add altera cf reset
Scott McNutt
smcnutt at psyent.com
Fri Apr 23 02:00:42 CEST 2010
Applied. Thanks.
--Scott
Thomas Chou wrote:
> This patch toggles power to reset the cf card.
>
> Signed-off-by: Thomas Chou <thomas at wytron.com.tw>
> ---
> more checkpatch.pl fixes
>
> board/altera/common/cfide.c | 33 +++++++++++++++++++++++++++++++++
> 1 files changed, 33 insertions(+), 0 deletions(-)
> create mode 100644 board/altera/common/cfide.c
>
> diff --git a/board/altera/common/cfide.c b/board/altera/common/cfide.c
> new file mode 100644
> index 0000000..40d6a12
> --- /dev/null
> +++ b/board/altera/common/cfide.c
> @@ -0,0 +1,33 @@
> +/*
> + * Altera CF drvier
> + *
> + * (C) Copyright 2010, Thomas Chou <thomas at wytron.com.tw>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +#include <common.h>
> +#include <asm/io.h>
> +
> +#if defined(CONFIG_IDE_RESET) && defined(CONFIG_SYS_CF_CTL_BASE)
> +/* ide_set_reset for Altera CF interface */
> +#define ALTERA_CF_CTL_STATUS 0
> +#define ALTERA_CF_IDE_CTL 4
> +#define ALTERA_CF_CTL_STATUS_PRESENT_MSK (0x1)
> +#define ALTERA_CF_CTL_STATUS_POWER_MSK (0x2)
> +#define ALTERA_CF_CTL_STATUS_RESET_MSK (0x4)
> +#define ALTERA_CF_CTL_STATUS_IRQ_EN_MSK (0x8)
> +#define ALTERA_CF_IDE_CTL_IRQ_EN_MSK (0x1)
> +
> +void ide_set_reset(int idereset)
> +{
> + int i;
> + writel(idereset ? ALTERA_CF_CTL_STATUS_RESET_MSK :
> + ALTERA_CF_CTL_STATUS_POWER_MSK,
> + CONFIG_SYS_CF_CTL_BASE + ALTERA_CF_CTL_STATUS);
> + /* wait 500 ms for power to stabilize */
> + for (i = 0; i < 500; i++)
> + udelay(1000);
> +}
> +#endif
More information about the U-Boot
mailing list