Scroll to navigation

STRUCT W1_MASTER(9) W1 API internal to the kernel STRUCT W1_MASTER(9)

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

struct list_head w1_master_entry

master linked list

struct module * owner

module owner

unsigned char name[W1_MAXNAMELEN]

dynamically allocate bus name

struct mutex list_mutex

protect slist and async_list

struct list_head slist

linked list of slaves

struct list_head async_list

linked list of netlink commands to execute

int max_slave_count

maximum number of slaves to search for at a time

int slave_count

current number of slaves known

unsigned long attempts

number of searches ran

int slave_ttl

number of searches before a slave is timed out

int initialized

prevent init/removal race conditions

u32 id

w1 bus number

int search_count

number of automatic searches to run, -1 unlimited

u64 search_id

allows continuing a search

atomic_t refcnt

reference count

void * priv

private data storage

int enable_pullup

allows a strong pullup

int pullup_duration

time for the next strong pullup

long flags

one of w1_master_flags

struct task_struct * thread

thread for bus search and netlink commands

struct mutex mutex

protect most of w1_master

struct mutex bus_mutex

pretect concurrent bus access

struct device_driver * driver

sysfs driver

struct device dev

sysfs device

struct w1_bus_master * bus_master

io operations available

u32 seq

sequence number used for netlink broadcasts

AUTHOR

David Fries <David@Fries.net>

Author.

COPYRIGHT

June 2017 Kernel Hackers Manual 4.11