Dear Wolfgang Denk, Wolfgang Denk wrote: > Dear Daniel Gorsulowski, > > In message <4aa90821.1060...@esd.eu> you wrote: >>>> - /* arch number of MEESC-Board */ >>>> - gd->bd->bi_arch_number = MACH_TYPE_MEESC; >>>> + /* initialize ET1100 Controller */ >>>> + meesc_ethercat_hw_init(); >>> I thought we had agreed not to initialize the Ethernet hardware if it >>> not used by U-Boot? >>> >> We had, but this does not initialize unused hardware. This is needed for >> detecting hw_type and setting correct arch_number. > > meesc_ethercat_hw_init() "is needed for ... setting correct > arch_number" ?? > > Best regards, > > Wolfgang Denk > Please take a look at function checkboard(). There is a call "hw_type = readb(CONFIG_ET1100_BASE);" to read the ET1100 type register. The read value is used to determine the correct arch_number. valid value (ET1100 present) --> arch_number = MACH_TYPE_MEESC invalid value (no ET1100 present) --> arch_number = MACH_TYPE_ETHERCAN2
For accessing the ET1100 type register, it is mandatory to initialize the memory controller. Thus, meesc_ethercat_hw_init() is needed and does not initialize unused hardware! Btw. the function meesc_ethercat_hw_init() is not new in this patch. I entirely moved the function call. Best regards, Daniel Gorsulowski _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot