Name

struct w1_master — one per bus master

Synopsis

struct w1_master {
  struct list_head w1_master_entry;
  struct module * owner;
  unsigned char name[W1_MAXNAMELEN];
  struct mutex list_mutex;
  struct list_head slist;
  struct list_head async_list;
  int max_slave_count;
  int slave_count;
  unsigned long attempts;
  int slave_ttl;
  int initialized;
  u32 id;
  int search_count;
  u64 search_id;
  atomic_t refcnt;
  void * priv;
  int enable_pullup;
  int pullup_duration;
  long flags;
  struct task_struct * thread;
  struct mutex mutex;
  struct mutex bus_mutex;
  struct device_driver * driver;
  struct device dev;
  struct w1_bus_master * bus_master;
  u32 seq;
};  

Members

w1_master_entry

master linked list

owner

module owner

name[W1_MAXNAMELEN]

dynamically allocate bus name

list_mutex

protect slist and async_list

slist

linked list of slaves

async_list

linked list of netlink commands to execute

max_slave_count

maximum number of slaves to search for at a time

slave_count

current number of slaves known

attempts

number of searches ran

slave_ttl

number of searches before a slave is timed out

initialized

prevent init/removal race conditions

id

w1 bus number

search_count

number of automatic searches to run, -1 unlimited

search_id

allows continuing a search

refcnt

reference count

priv

private data storage

enable_pullup

allows a strong pullup

pullup_duration

time for the next strong pullup

flags

one of w1_master_flags

thread

thread for bus search and netlink commands

mutex

protect most of w1_master

bus_mutex

pretect concurrent bus access

driver

sysfs driver

dev

sysfs device

bus_master

io operations available

seq

sequence number used for netlink broadcasts