SEQ_OR_ERROR w1_list_masters( void ) { struct w1_netlink_msg w1m; memset(&w1m, 0, W1_W1M_LENGTH); w1m.type = W1_LIST_MASTERS; w1m.len = 0; w1m.id.mst.id = 0; LEVEL_DEBUG("Sending w1 bus master list message"); return W1_send_msg( NULL, &w1m, NULL, NULL ); }
/* Send blindly, no response expected */ static SEQ_OR_ERROR w1_send_reset( const struct parsedname *pn ) { struct w1_netlink_msg w1m; struct w1_netlink_cmd w1c; memset(&w1m, 0, W1_W1M_LENGTH); w1m.type = W1_MASTER_CMD; w1m.id.mst.id = pn->selected_connection->master.w1.id ; memset(&w1c, 0, W1_W1C_LENGTH); w1c.cmd = W1_CMD_RESET ; w1c.len = 0 ; LEVEL_DEBUG("Sending w1 reset message"); return W1_send_msg( pn->selected_connection, &w1m, &w1c, NULL ); }
static SEQ_OR_ERROR w1_send_selecttouch( const BYTE * data, size_t size, const struct parsedname *pn ) { struct w1_netlink_msg w1m; struct w1_netlink_cmd w1c; memset(&w1m, 0, W1_W1M_LENGTH); w1m.type = W1_SLAVE_CMD; memcpy( w1m.id.id, pn->sn, 8) ; memset(&w1c, 0, W1_W1C_LENGTH); w1c.cmd = W1_CMD_TOUCH ; w1c.len = size ; LEVEL_DEBUG("Sending w1 select message for "SNformat,SNvar(pn->sn)); return W1_send_msg( pn->selected_connection, &w1m, &w1c, data ); }
static SEQ_OR_ERROR w1_send_touch( const BYTE * data, size_t size, const struct parsedname *pn ) { struct w1_netlink_msg w1m; struct w1_netlink_cmd w1c; memset(&w1m, 0, W1_W1M_LENGTH); w1m.type = W1_MASTER_CMD; w1m.id.mst.id = pn->selected_connection->master.w1.id ; memset(&w1c, 0, W1_W1C_LENGTH); w1c.cmd = W1_CMD_TOUCH ; w1c.len = size ; LEVEL_DEBUG("Sending w1 send/receive data message for "SNformat,SNvar(pn->sn)); return W1_send_msg( pn->selected_connection, &w1m, &w1c, data ); }
static SEQ_OR_ERROR w1_send_search( struct device_search *ds, const struct parsedname *pn ) { struct w1_netlink_msg w1m; struct w1_netlink_cmd w1c; memset(&w1m, 0, W1_W1M_LENGTH); w1m.type = W1_MASTER_CMD; w1m.id.mst.id = pn->selected_connection->master.w1.id ; memset(&w1c, 0, W1_W1C_LENGTH); w1c.cmd = (ds->search==_1W_CONDITIONAL_SEARCH_ROM) ? W1_CMD_ALARM_SEARCH : W1_CMD_SEARCH ; w1c.len = 0 ; LEVEL_DEBUG("Sending w1 search (list devices) message"); return W1_send_msg( pn->selected_connection, &w1m, &w1c, NULL ); }