Move HAL sources to generic