86 { pi_minor_call_table_common, 3 },
87 { pi_minor_call_table_non_raw, 6 },
88 { pi_minor_call_table_9_wire, 3 }
117 skb =
self->ctrl_skb;
121 spin_unlock_irqrestore(&self->spinlock, flags);
125 skb_reserve(skb, self->max_header_size);
126 self->ctrl_skb =
skb;
133 skb_tailroom(skb), &ircomm_param_info);
135 IRDA_WARNING(
"%s(), no room for parameter!\n", __func__);
136 spin_unlock_irqrestore(&self->spinlock, flags);
141 spin_unlock_irqrestore(&self->spinlock, flags);
170 param->
pv.
i =
self->settings.service_type;
175 service_type &=
self->service_type;
178 "%s(), No common service type to use!\n", __func__ );
181 IRDA_DEBUG(0,
"%s(), services in common=%02x\n", __func__ ,
196 IRDA_DEBUG(0,
"%s(), resulting service type=0x%02x\n", __func__ ,
197 self->settings.service_type);
210 (self->settings.service_type != IRCOMM_3_WIRE_RAW))
227 static int ircomm_param_port_type(
void *instance,
irda_param_t *param,
int get)
237 self->settings.port_type = (
__u8) param->
pv.
i;
239 IRDA_DEBUG(0,
"%s(), port type=%d\n", __func__ ,
240 self->settings.port_type);
251 static int ircomm_param_port_name(
void *instance,
irda_param_t *param,
int get)
261 IRDA_DEBUG(0,
"%s(), port-name=%s\n", __func__ , param->
pv.
c);
262 strncpy(self->settings.port_name, param->
pv.
c, 32);
274 static int ircomm_param_data_rate(
void *instance,
irda_param_t *param,
int get)
282 param->
pv.
i =
self->settings.data_rate;
284 self->settings.data_rate = param->
pv.
i;
286 IRDA_DEBUG(2,
"%s(), data rate = %d\n", __func__ , param->
pv.
i);
297 static int ircomm_param_data_format(
void *instance,
irda_param_t *param,
306 param->
pv.
i =
self->settings.data_format;
308 self->settings.data_format = (
__u8) param->
pv.
i;
319 static int ircomm_param_flow_control(
void *instance,
irda_param_t *param,
328 param->
pv.
i =
self->settings.flow_control;
330 self->settings.flow_control = (
__u8) param->
pv.
i;
343 static int ircomm_param_xon_xoff(
void *instance,
irda_param_t *param,
int get)
351 param->
pv.
i =
self->settings.xonxoff[0];
352 param->
pv.
i |=
self->settings.xonxoff[1] << 8;
354 self->settings.xonxoff[0] = (
__u16) param->
pv.
i & 0xff;
355 self->settings.xonxoff[1] = (
__u16) param->
pv.
i >> 8;
358 IRDA_DEBUG(0,
"%s(), XON/XOFF = 0x%02x,0x%02x\n", __func__ ,
359 param->
pv.
i & 0xff, param->
pv.
i >> 8);
370 static int ircomm_param_enq_ack(
void *instance,
irda_param_t *param,
int get)
378 param->
pv.
i =
self->settings.enqack[0];
379 param->
pv.
i |=
self->settings.enqack[1] << 8;
381 self->settings.enqack[0] = (
__u16) param->
pv.
i & 0xff;
382 self->settings.enqack[1] = (
__u16) param->
pv.
i >> 8;
385 IRDA_DEBUG(0,
"%s(), ENQ/ACK = 0x%02x,0x%02x\n", __func__ ,
386 param->
pv.
i & 0xff, param->
pv.
i >> 8);
397 static int ircomm_param_line_status(
void *instance,
irda_param_t *param,
400 IRDA_DEBUG(2,
"%s(), not impl.\n", __func__ );
411 static int ircomm_param_dte(
void *instance,
irda_param_t *param,
int get)
420 param->
pv.
i =
self->settings.dte;
424 self->settings.dce = 0;
444 self->settings.null_modem =
TRUE;
456 static int ircomm_param_dce(
void *instance,
irda_param_t *param,
int get)
468 self->settings.dce = dce;
488 static int ircomm_param_poll(
void *instance,
irda_param_t *param,
int get)