Support dynamically update BMC slave address

On multi-node platform, the BMC slave address is determined by node ID,
so the BMC slave address needs to be updated after node ID detection.
This patch makes slave-mqueue configurable at run time using 'new_device'
and 'delete-device' sysfs interfaces.
The sample to change BMC slave addr:
(Assume original slave addr is 0x20, but it should be 0x22)
echo "0x1010" > /sys/bus/i2c/devices/i2c-0/delete_device
echo "slave-mqueue 0x1011" > /sys/bus/i2c/devices/i2c-0/new_device

Dependency:
[DTS] remove ipmb0 node to support dynamically update BMC slave address

Tested:
1. The I2C slave message can be received correctly after CMC sends signal
of "updateBmcSlaveAddr" (BNP)
2. Check sys file of slave device exists by command like
"ls -l /sys/bus/i2c/devices/0-1011/slave-mqueue" (BNP)
3. IPMI command injected to bus0 via IPMB header can return correct value (WFP)

Change-Id: Ie55715cf940f19e10d265ae7efec4d4bf55744a2
Signed-off-by: Qiang XU <qiang.xu@linux.intel.com>
2 files changed