I am designing a board for the compute module 3+ for an application at work and I have a few questions:
For those that have commercially produced designs, do you program the modules from your board (and hence need the supporting circuitry such as USBMUX) or do you program the boards externally and insert them into the board? My first revision has the USBMUX and headers, but I'm thinking to drop this to reduce BOM (and cost) and reduce board size. My design incorporates a LAN9514. All of the USB devices are onboard and powered straight form the 3.3V bus. Can I safely leave the PRTCTL pins unconnected, or will this cause issues? Do people generally lean towards clocking the LAN9514 from the compute module or from an external oscillator? Again I am aiming to reduce BOM. Is using more than one LAN9514, is it appropriate to connect the LAN_RUN pins to the same GPIO on the CM3? When using dual LAN9514, is the generally accepted solution to purchase a block of MAC addresses and write these to external EEPROM connected to the compute module, then force the CM3 to use these addresses instead of the internally generated ones? Can I purchase pre programmed EEPROMs?