Supongo que nunca has escrito bootloader hasta ahora, así que trato de resaltar cómo funciona.
El cargador de arranque es un programa regular que se ejecuta como un primer programa; eso significa que luego del reinicio del procesador, el procesador salta a una dirección indicada por el vector de reinicio, que generalmente es la dirección 0x00. Ahí es donde colocas tu gestor de arranque.
Luego el gestor de arranque realiza toda la configuración que necesita para realizar sus tareas. En su caso será la configuración del puerto Ethernet.
Después de la configuración, el bootloder comprueba si hay algún nuevo firmware para actualizar. Si es así, lo descargó de Ethernet y programó la memoria flash de la MCU, desde el punto en la memoria donde termina el cargador de arranque (para que no se sobrescriba).
Y luego el cargador de arranque realiza el salto hacia donde comienza el programa real.
Si no hay necesidad de actualizar el firmware, el cargador de arranque simplemente realiza el salto al programa real.
Por lo tanto, si el controlador de Ethernet se usa solo para bootloder o no, no importa. El cargador de arranque y el programa real son un poco como programas separados.