code: func (r *Subresource) SaveDevIDs(device types.BaseVirtualDevice, ctlr types.BaseVirtualController) error {
  	r.Set("key", device.GetVirtualDevice().Key)
  	addr, err := computeDevAddr(device, ctlr)
  	if err != nil {
  		return err
  	}
  	r.Set("device_address", addr)
  	return nil
  }
docs: // SaveDevIDs saves the device's current key, and also the device_address. The
  // latter is a computed schema field that contains the controller type, the
  // controller's bus number, and the device's unit number on that controller.
  // This helps locate the device when the key is in flux (such as when devices
  // are just being created).