summaryrefslogtreecommitdiff
path: root/net/caif/caif_config_util.c
diff options
context:
space:
mode:
authorAndré Carvalho de Matos <andre.carvalho.matos@stericsson.com>2010-11-01 11:52:47 (GMT)
committerDavid S. Miller <davem@davemloft.net>2010-11-04 01:50:03 (GMT)
commitf2527ec436fd675f08a8e7434f6e940688cb96d0 (patch)
treef3c723c652b58cd4862d635e598a4ad88eedec64 /net/caif/caif_config_util.c
parent6cc0e949afe757d240fba4ad1839a27f66c3bd72 (diff)
downloadlinux-fsl-qoriq-f2527ec436fd675f08a8e7434f6e940688cb96d0.tar.xz
caif: Bugfix for socket priority, bindtodev and dbg channel.
Changes: o Bugfix: SO_PRIORITY for SOL_SOCKET could not be handled in caif's setsockopt, using the struct sock attribute priority instead. o Bugfix: SO_BINDTODEVICE for SOL_SOCKET could not be handled in caif's setsockopt, using the struct sock attribute ifindex instead. o Wrong assert statement for RFM layer segmentation. o CAIF Debug channels was not working over SPI, caif_payload_info containing padding info must be initialized. o Check on pointer before dereferencing when unregister dev in caif_dev.c Signed-off-by: Sjur Braendeland <sjur.brandeland@stericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/caif/caif_config_util.c')
-rw-r--r--net/caif/caif_config_util.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/net/caif/caif_config_util.c b/net/caif/caif_config_util.c
index 76ae683..d522d8c 100644
--- a/net/caif/caif_config_util.c
+++ b/net/caif/caif_config_util.c
@@ -16,11 +16,18 @@ int connect_req_to_link_param(struct cfcnfg *cnfg,
{
struct dev_info *dev_info;
enum cfcnfg_phy_preference pref;
+ int res;
+
memset(l, 0, sizeof(*l));
- l->priority = s->priority;
+ /* In caif protocol low value is high priority */
+ l->priority = CAIF_PRIO_MAX - s->priority + 1;
- if (s->link_name[0] != '\0')
- l->phyid = cfcnfg_get_named(cnfg, s->link_name);
+ if (s->ifindex != 0){
+ res = cfcnfg_get_id_from_ifi(cnfg, s->ifindex);
+ if (res < 0)
+ return res;
+ l->phyid = res;
+ }
else {
switch (s->link_selector) {
case CAIF_LINK_HIGH_BANDW: