#include <linux/slab.h>
#include <linux/skbuff.h>
#include <linux/netlink.h>
#include <linux/connector.h>
#include "w1_internal.h"
#include "w1_netlink.h"
#if defined(CONFIG_W1_CON) && (defined(CONFIG_CONNECTOR) || (defined(CONFIG_CONNECTOR_MODULE) && defined(CONFIG_W1_MODULE)))
struct w1_cb_block { … };
struct w1_cb_node { … };
static u16 w1_reply_len(struct w1_cb_block *block)
{ … }
static void w1_unref_block(struct w1_cb_block *block)
{ … }
static void w1_reply_make_space(struct w1_cb_block *block, u16 space)
{ … }
static void w1_netlink_check_send(struct w1_cb_block *block)
{ … }
static void w1_netlink_setup_msg(struct w1_cb_block *block, u32 ack)
{ … }
static void w1_netlink_queue_cmd(struct w1_cb_block *block,
struct w1_netlink_cmd *cmd)
{ … }
static void w1_netlink_queue_status(struct w1_cb_block *block,
struct w1_netlink_msg *req_msg, struct w1_netlink_cmd *req_cmd,
int error)
{ … }
static void w1_netlink_send_error(struct cn_msg *cn, struct w1_netlink_msg *msg,
int portid, int error)
{ … }
void w1_netlink_send(struct w1_master *dev, struct w1_netlink_msg *msg)
{ … }
static void w1_send_slave(struct w1_master *dev, u64 rn)
{ … }
static void w1_found_send_slave(struct w1_master *dev, u64 rn)
{ … }
static int w1_get_slaves(struct w1_master *dev, struct w1_netlink_cmd *req_cmd)
{ … }
static int w1_process_command_io(struct w1_master *dev,
struct w1_netlink_cmd *cmd)
{ … }
static int w1_process_command_addremove(struct w1_master *dev,
struct w1_netlink_cmd *cmd)
{ … }
static int w1_process_command_master(struct w1_master *dev,
struct w1_netlink_cmd *req_cmd)
{ … }
static int w1_process_command_slave(struct w1_slave *sl,
struct w1_netlink_cmd *cmd)
{ … }
static int w1_process_command_root(struct cn_msg *req_cn, u32 portid)
{ … }
static void w1_process_cb(struct w1_master *dev, struct w1_async_cmd *async_cmd)
{ … }
static void w1_list_count_cmds(struct w1_netlink_msg *msg, int *cmd_count,
u16 *slave_len)
{ … }
static void w1_cn_callback(struct cn_msg *cn, struct netlink_skb_parms *nsp)
{ … }
int w1_init_netlink(void)
{ … }
void w1_fini_netlink(void)
{ … }
#else
void w1_netlink_send(struct w1_master *dev, struct w1_netlink_msg *cn)
{
}
int w1_init_netlink(void)
{
return 0;
}
void w1_fini_netlink(void)
{
}
#endif