Наверно, короче все можно.
Обнулять XMCRА/В, а потом в них писать через "|=" не надо.
Просто загоняйте константы простым присваиванием "=".
void External_RAM_Init()
{
PORTA = 0x00;
DDRA = 0xFF; // Да и это особо не надо, раз XMBK ставим...
XMCRB = ((1 << XMM1) | (1 << XMM2) | (1 << XMM0) | (1 << XMBK));
XMCRA = ((1 << SRE) | (1 << SRW11) | (1 << SRW10));
}