Alexandre Bounine wrote:
+ /* Attempt to acquire device lock */
+ rio_mport_write_config_32(port, destid,
+ hopcount,
+ RIO_HOST_DID_LOCK_CSR,
+ port->host_deviceid);
+ rio_mport_read_config_32(port, destid, hopcount,
+ RIO_HOST_DID_LOCK_CSR, &result);
+ while (result != port->host_deviceid) {
It's better to abstract the locking of a device into a new function,
rio_lock_device / rio_unlock_device.
Then you can use those in rio_get_route_entry and rio_add_route_entry.
@@ -1027,6 +1090,13 @@ int __devinit rio_disc_mport(struct rio_
+
+ /* Read DestID assigned by enumerator */
+ rio_local_read_config_32(mport, RIO_DID_CSR,
+ &mport->host_deviceid);
+ mport->host_deviceid = RIO_GET_DID(mport->sys_size,
+ mport->host_deviceid);
+
This fixes something else, should be a separate patch.
Regards, Micha
_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://lists.ozlabs.org/listinfo/linuxppc-dev