Hi,
Please find enclosed a little patch to support i2o controllers on alpha.
This patch is against 2.4.19-pre9 and works correctly with my i2o
controller used with the i2o_block driver.
Best regards,
Pierrick.
PS: Please, cc me to reply.
On Mon, 2002-06-03 at 10:23, Pierrick Hascoet wrote:
> msg[0] = (FIVE_WORD_MSG_SIZE|SGL_OFFSET_0);
> msg[1] = I2O_CMD_BLOCK_CFLUSH<<24|HOST_TID<<12|dev->tid;
> msg[2] = i2ob_context|0x40000000;
> - msg[3] = (u32)query_done;
> + msg[3] = (unsigned long)query_done;
query_done is a 64bit value, msg[3] is 32bit. On your box it happens
that the query_done value fits into 32 bits. Really the pointer needs
replacing with something saner. I have some ideas. One would be to add
val = i2o_query_alloc(address);
i2o_query_done(val);
i2o_query_free(val);
functionality that tracked the pointers in a seperate array
Similar problems in the fp->private_data casting too. That wants pushing
into an array of some sort. I'll apply the header changes and other
fixes and think about the harder ones