| * (C) Copyright 2010, Thomas Chou <thomas@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. |
| #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) |
| 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++) |