Auto-configuration

Auto-configuration is the automatic configuration of devices without manual intervention, without any need for software configuration programs or jumpers. Ideally, auto-configuring devices should just "plug and play". Auto-configuration has been made common because of the low cost of microprocessors and other embedded controller devices. 
Configurations may be stored in NVRAM, loaded by a host processor, or negotiated at system initialization time. In some cases, hot pluggable devices may be able to renegotiate their configuration. 
Example of auto-configuring devices:
Example of auto-configuring devices and protocols: