Решил поковырять запылившуюся K-MAT91SAM9XE512 с новыми ядрами и натолкнулся на стенку в
виде неработающего MCI с SD или MMC картами. Сам драйвер работает, но определить ни одну карту не может.
начал ковырять в эту сторону и что только не менял и предопределение массива частот в /drivers/mmc/core/core.c
и вычисление делителя от мастер клока (смущала последняя частота в 195313 Hz), все безуспешно.
Все, что гуглилось так или иначе было связано с частотой опроса при инициилизации карты (SD/MMC), но ничего
конкретного так и не нашлось.
Конфиг по части MMC/SD оригинальностью не отличается:
не поможет, то смотрите настройку для mmc в файле борды - там есть отличие от оригинальной -EK..
и карточку, если в стандарте sdhc, то лучше попроще поискать и поставить..
Опцию CONFIG_MMC_ATMELMCI не убрать, т.к. в 3.10 ветке она заменяет CONFIG_MMC_AT91 и все прочие, но проблема, как выяснилось, не в ней. Вы задали верное направление для
поиска.
В итоге, чуть подправил файл борды:
- вырезал инициализацию кнопок и диодов, которых нет, но которые занимают нужные для MCI ноги
- и самое главное, поправил в arch/arm/mach-at91/board-sam9260ek.c .slot[1] на .slot[0]
до этого там был слот 1, который распинован по схеме на датафлэш (по описанию в at91sam9260_devices.c).
По этому при инициализации MCI тупил и не мог ничего найти, т.к. пытался дергать не то, что нужно. Теперь все заработало.