static struct ds_device *ds_dev;
static struct w1_bus_master *ds_bus_master;
-static u8 ds9490r_touch_bit(unsigned long data, u8 bit)
+static u8 ds9490r_touch_bit(void *data, u8 bit)
{
u8 ret;
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
if (ds_touch_bit(dev, bit, &ret))
return 0;
return ret;
}
-static void ds9490r_write_bit(unsigned long data, u8 bit)
+static void ds9490r_write_bit(void *data, u8 bit)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
ds_write_bit(dev, bit);
}
-static void ds9490r_write_byte(unsigned long data, u8 byte)
+static void ds9490r_write_byte(void *data, u8 byte)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
ds_write_byte(dev, byte);
}
-static u8 ds9490r_read_bit(unsigned long data)
+static u8 ds9490r_read_bit(void *data)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
int err;
u8 bit = 0;
return bit & 1;
}
-static u8 ds9490r_read_byte(unsigned long data)
+static u8 ds9490r_read_byte(void *data)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
int err;
u8 byte = 0;
return byte;
}
-static void ds9490r_write_block(unsigned long data, const u8 *buf, int len)
+static void ds9490r_write_block(void *data, const u8 *buf, int len)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
ds_write_block(dev, (u8 *)buf, len);
}
-static u8 ds9490r_read_block(unsigned long data, u8 *buf, int len)
+static u8 ds9490r_read_block(void *data, u8 *buf, int len)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
int err;
err = ds_read_block(dev, buf, len);
return len;
}
-static u8 ds9490r_reset(unsigned long data)
+static u8 ds9490r_reset(void *data)
{
- struct ds_device *dev = (struct ds_device *)data;
+ struct ds_device *dev = data;
struct ds_status st;
int err;
memset(ds_bus_master, 0, sizeof(*ds_bus_master));
- ds_bus_master->data = (unsigned long)ds_dev;
+ ds_bus_master->data = ds_dev;
ds_bus_master->touch_bit = &ds9490r_touch_bit;
ds_bus_master->read_bit = &ds9490r_read_bit;
ds_bus_master->write_bit = &ds9490r_write_bit;
struct w1_bus_master *bus_master;
};
-static u8 matrox_w1_read_ddc_bit(unsigned long);
-static void matrox_w1_write_ddc_bit(unsigned long, u8);
+static u8 matrox_w1_read_ddc_bit(void *);
+static void matrox_w1_write_ddc_bit(void *, u8);
/*
* These functions read and write DDC Data bit.
wmb();
}
-static void matrox_w1_write_ddc_bit(unsigned long data, u8 bit)
+static void matrox_w1_write_ddc_bit(void *data, u8 bit)
{
u8 ret;
- struct matrox_device *dev = (struct matrox_device *) data;
+ struct matrox_device *dev = data;
if (bit)
bit = 0;
matrox_w1_write_reg(dev, MATROX_GET_DATA, 0x00);
}
-static u8 matrox_w1_read_ddc_bit(unsigned long data)
+static u8 matrox_w1_read_ddc_bit(void *data)
{
u8 ret;
- struct matrox_device *dev = (struct matrox_device *) data;
+ struct matrox_device *dev = data;
ret = matrox_w1_read_reg(dev, MATROX_GET_DATA);
matrox_w1_hw_init(dev);
- dev->bus_master->data = (unsigned long) dev;
+ dev->bus_master->data = dev;
dev->bus_master->read_bit = &matrox_w1_read_ddc_bit;
dev->bus_master->write_bit = &matrox_w1_write_ddc_bit;
kfree(sl);
}
-static struct w1_master *w1_search_master(unsigned long data)
+static struct w1_master *w1_search_master(void *data)
{
struct w1_master *dev;
int found = 0;
spin_unlock_bh(&w1_mlock);
}
-static void w1_slave_found(unsigned long data, u64 rn)
+static void w1_slave_found(void *data, u64 rn)
{
int slave_count;
struct w1_slave *sl;
dev = w1_search_master(data);
if (!dev) {
- printk(KERN_ERR "Failed to find w1 master device for data %08lx, it is impossible.\n",
- data);
+ printk(KERN_ERR "Failed to find w1 master device for data %p, "
+ "it is impossible.\n", data);
return;
}
struct completion released;
};
-typedef void (* w1_slave_found_callback)(unsigned long, u64);
+typedef void (* w1_slave_found_callback)(void *, u64);
/**
struct w1_bus_master
{
/** the first parameter in all the functions below */
- unsigned long data;
+ void *data;
/**
* Sample the line level
* @return the level read (0 or 1)
*/
- u8 (*read_bit)(unsigned long);
+ u8 (*read_bit)(void *);
/** Sets the line level */
- void (*write_bit)(unsigned long, u8);
+ void (*write_bit)(void *, u8);
/**
* touch_bit is the lowest-level function for devices that really
* touch_bit(1) = write-1 / read cycle
* @return the bit read (0 or 1)
*/
- u8 (*touch_bit)(unsigned long, u8);
+ u8 (*touch_bit)(void *, u8);
/**
* Reads a bytes. Same as 8 touch_bit(1) calls.
* @return the byte read
*/
- u8 (*read_byte)(unsigned long);
+ u8 (*read_byte)(void *);
/**
* Writes a byte. Same as 8 touch_bit(x) calls.
*/
- void (*write_byte)(unsigned long, u8);
+ void (*write_byte)(void *, u8);
/**
* Same as a series of read_byte() calls
* @return the number of bytes read
*/
- u8 (*read_block)(unsigned long, u8 *, int);
+ u8 (*read_block)(void *, u8 *, int);
/** Same as a series of write_byte() calls */
- void (*write_block)(unsigned long, const u8 *, int);
+ void (*write_block)(void *, const u8 *, int);
/**
* Combines two reads and a smart write for ROM searches
* @return bit0=Id bit1=comp_id bit2=dir_taken
*/
- u8 (*triplet)(unsigned long, u8);
+ u8 (*triplet)(void *, u8);
/**
* long write-0 with a read for the presence pulse detection
* @return -1=Error, 0=Device present, 1=No device present
*/
- u8 (*reset_bus)(unsigned long);
+ u8 (*reset_bus)(void *);
/** Really nice hardware can handles the ROM searches */
- void (*search)(unsigned long, w1_slave_found_callback);
+ void (*search)(void *, w1_slave_found_callback);
};
#define W1_MASTER_NEED_EXIT 0