Lines Matching refs:msg

308 static int ican3_old_recv_msg(struct ican3_dev *mod, struct ican3_msg *msg)  in ican3_old_recv_msg()  argument
333 memcpy_fromio(msg, mod->dpm, sizeof(*msg)); in ican3_old_recv_msg()
353 static int ican3_old_send_msg(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_old_send_msg() argument
375 memcpy_toio(mod->dpm, msg, sizeof(*msg)); in ican3_old_send_msg()
557 static int ican3_new_send_msg(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_new_send_msg() argument
573 memcpy_toio(mod->dpm, msg, sizeof(*msg)); in ican3_new_send_msg()
588 static int ican3_new_recv_msg(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_new_recv_msg() argument
604 memcpy_fromio(msg, mod->dpm, sizeof(*msg)); in ican3_new_recv_msg()
620 static int ican3_send_msg(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_send_msg() argument
628 ret = ican3_old_send_msg(mod, msg); in ican3_send_msg()
630 ret = ican3_new_send_msg(mod, msg); in ican3_send_msg()
636 static int ican3_recv_msg(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_recv_msg() argument
644 ret = ican3_old_recv_msg(mod, msg); in ican3_recv_msg()
646 ret = ican3_new_recv_msg(mod, msg); in ican3_recv_msg()
658 struct ican3_msg msg; in ican3_msg_connect() local
660 memset(&msg, 0, sizeof(msg)); in ican3_msg_connect()
661 msg.spec = MSG_CONNECTI; in ican3_msg_connect()
662 msg.len = cpu_to_le16(0); in ican3_msg_connect()
664 return ican3_send_msg(mod, &msg); in ican3_msg_connect()
669 struct ican3_msg msg; in ican3_msg_disconnect() local
671 memset(&msg, 0, sizeof(msg)); in ican3_msg_disconnect()
672 msg.spec = MSG_DISCONNECT; in ican3_msg_disconnect()
673 msg.len = cpu_to_le16(0); in ican3_msg_disconnect()
675 return ican3_send_msg(mod, &msg); in ican3_msg_disconnect()
680 struct ican3_msg msg; in ican3_msg_newhostif() local
683 memset(&msg, 0, sizeof(msg)); in ican3_msg_newhostif()
684 msg.spec = MSG_NEWHOSTIF; in ican3_msg_newhostif()
685 msg.len = cpu_to_le16(0); in ican3_msg_newhostif()
690 ret = ican3_send_msg(mod, &msg); in ican3_msg_newhostif()
701 struct ican3_msg msg; in ican3_msg_fasthostif() local
704 memset(&msg, 0, sizeof(msg)); in ican3_msg_fasthostif()
705 msg.spec = MSG_INITFDPMQUEUE; in ican3_msg_fasthostif()
706 msg.len = cpu_to_le16(8); in ican3_msg_fasthostif()
710 msg.data[0] = addr & 0xff; in ican3_msg_fasthostif()
711 msg.data[1] = (addr >> 8) & 0xff; in ican3_msg_fasthostif()
712 msg.data[2] = (addr >> 16) & 0xff; in ican3_msg_fasthostif()
713 msg.data[3] = (addr >> 24) & 0xff; in ican3_msg_fasthostif()
717 msg.data[4] = addr & 0xff; in ican3_msg_fasthostif()
718 msg.data[5] = (addr >> 8) & 0xff; in ican3_msg_fasthostif()
719 msg.data[6] = (addr >> 16) & 0xff; in ican3_msg_fasthostif()
720 msg.data[7] = (addr >> 24) & 0xff; in ican3_msg_fasthostif()
725 return ican3_send_msg(mod, &msg); in ican3_msg_fasthostif()
734 struct ican3_msg msg; in ican3_set_id_filter() local
738 memset(&msg, 0, sizeof(msg)); in ican3_set_id_filter()
739 msg.spec = MSG_SETAFILMASK; in ican3_set_id_filter()
740 msg.len = cpu_to_le16(5); in ican3_set_id_filter()
741 msg.data[0] = 0x00; /* IDLo LSB */ in ican3_set_id_filter()
742 msg.data[1] = 0x00; /* IDLo MSB */ in ican3_set_id_filter()
743 msg.data[2] = 0xff; /* IDHi LSB */ in ican3_set_id_filter()
744 msg.data[3] = 0x07; /* IDHi MSB */ in ican3_set_id_filter()
747 msg.data[4] = accept ? SETAFILMASK_FASTIF : SETAFILMASK_REJECT; in ican3_set_id_filter()
749 ret = ican3_send_msg(mod, &msg); in ican3_set_id_filter()
754 memset(&msg, 0, sizeof(msg)); in ican3_set_id_filter()
755 msg.spec = MSG_SETAFILMASK; in ican3_set_id_filter()
756 msg.len = cpu_to_le16(13); in ican3_set_id_filter()
757 msg.data[0] = 0; /* MUX = 0 */ in ican3_set_id_filter()
758 msg.data[1] = 0x00; /* IDLo LSB */ in ican3_set_id_filter()
759 msg.data[2] = 0x00; in ican3_set_id_filter()
760 msg.data[3] = 0x00; in ican3_set_id_filter()
761 msg.data[4] = 0x20; /* IDLo MSB */ in ican3_set_id_filter()
762 msg.data[5] = 0xff; /* IDHi LSB */ in ican3_set_id_filter()
763 msg.data[6] = 0xff; in ican3_set_id_filter()
764 msg.data[7] = 0xff; in ican3_set_id_filter()
765 msg.data[8] = 0x3f; /* IDHi MSB */ in ican3_set_id_filter()
768 msg.data[9] = accept ? SETAFILMASK_FASTIF : SETAFILMASK_REJECT; in ican3_set_id_filter()
770 return ican3_send_msg(mod, &msg); in ican3_set_id_filter()
779 struct ican3_msg msg; in ican3_set_bus_state() local
795 memset(&msg, 0, sizeof(msg)); in ican3_set_bus_state()
796 msg.spec = MSG_CBTRREQ; in ican3_set_bus_state()
797 msg.len = cpu_to_le16(4); in ican3_set_bus_state()
798 msg.data[0] = 0x00; in ican3_set_bus_state()
799 msg.data[1] = 0x00; in ican3_set_bus_state()
800 msg.data[2] = btr0; in ican3_set_bus_state()
801 msg.data[3] = btr1; in ican3_set_bus_state()
803 res = ican3_send_msg(mod, &msg); in ican3_set_bus_state()
809 memset(&msg, 0, sizeof(msg)); in ican3_set_bus_state()
810 msg.spec = on ? MSG_CONREQ : MSG_COFFREQ; in ican3_set_bus_state()
811 msg.len = cpu_to_le16(0); in ican3_set_bus_state()
813 return ican3_send_msg(mod, &msg); in ican3_set_bus_state()
817 memset(&msg, 0, sizeof(msg)); in ican3_set_bus_state()
818 msg.spec = MSG_LMTS; in ican3_set_bus_state()
820 msg.len = cpu_to_le16(4); in ican3_set_bus_state()
821 msg.data[0] = LMTS_BUSON_REQ; in ican3_set_bus_state()
822 msg.data[1] = 0; in ican3_set_bus_state()
823 msg.data[2] = btr0; in ican3_set_bus_state()
824 msg.data[3] = btr1; in ican3_set_bus_state()
826 msg.len = cpu_to_le16(2); in ican3_set_bus_state()
827 msg.data[0] = LMTS_BUSOFF_REQ; in ican3_set_bus_state()
828 msg.data[1] = 0; in ican3_set_bus_state()
830 res = ican3_send_msg(mod, &msg); in ican3_set_bus_state()
840 memset(&msg, 0, sizeof(msg)); in ican3_set_bus_state()
841 msg.spec = MSG_NMTS; in ican3_set_bus_state()
842 msg.len = cpu_to_le16(11); in ican3_set_bus_state()
843 msg.data[0] = NMTS_CREATE_NODE_REQ; in ican3_set_bus_state()
844 msg.data[1] = 0; in ican3_set_bus_state()
845 msg.data[2] = 2; /* node class */ in ican3_set_bus_state()
846 msg.data[3] = 1; /* node id */ in ican3_set_bus_state()
847 strcpy(msg.data + 4, "locnod1"); /* node name */ in ican3_set_bus_state()
848 return ican3_send_msg(mod, &msg); in ican3_set_bus_state()
857 struct ican3_msg msg; in ican3_set_termination() local
859 memset(&msg, 0, sizeof(msg)); in ican3_set_termination()
860 msg.spec = MSG_HWCONF; in ican3_set_termination()
861 msg.len = cpu_to_le16(2); in ican3_set_termination()
862 msg.data[0] = 0x00; in ican3_set_termination()
863 msg.data[1] = on ? HWCONF_TERMINATE_ON : HWCONF_TERMINATE_OFF; in ican3_set_termination()
865 return ican3_send_msg(mod, &msg); in ican3_set_termination()
870 struct ican3_msg msg; in ican3_send_inquiry() local
872 memset(&msg, 0, sizeof(msg)); in ican3_send_inquiry()
873 msg.spec = MSG_INQUIRY; in ican3_send_inquiry()
874 msg.len = cpu_to_le16(2); in ican3_send_inquiry()
875 msg.data[0] = subspec; in ican3_send_inquiry()
876 msg.data[1] = 0x00; in ican3_send_inquiry()
878 return ican3_send_msg(mod, &msg); in ican3_send_inquiry()
883 struct ican3_msg msg; in ican3_set_buserror() local
886 memset(&msg, 0, sizeof(msg)); in ican3_set_buserror()
887 msg.spec = MSG_CCONFREQ; in ican3_set_buserror()
888 msg.len = cpu_to_le16(2); in ican3_set_buserror()
889 msg.data[0] = 0x00; in ican3_set_buserror()
890 msg.data[1] = quota; in ican3_set_buserror()
892 memset(&msg, 0, sizeof(msg)); in ican3_set_buserror()
893 msg.spec = MSG_LMTS; in ican3_set_buserror()
894 msg.len = cpu_to_le16(4); in ican3_set_buserror()
895 msg.data[0] = LMTS_CAN_CONF_REQ; in ican3_set_buserror()
896 msg.data[1] = 0x00; in ican3_set_buserror()
897 msg.data[2] = 0x00; in ican3_set_buserror()
898 msg.data[3] = quota; in ican3_set_buserror()
902 return ican3_send_msg(mod, &msg); in ican3_set_buserror()
985 static void ican3_handle_idvers(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_idvers() argument
987 netdev_dbg(mod->ndev, "IDVERS response: %s\n", msg->data); in ican3_handle_idvers()
990 static void ican3_handle_msglost(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_msglost() argument
1002 if (msg->spec == MSG_MSGLOST) { in ican3_handle_msglost()
1003 netdev_err(mod->ndev, "lost %d control messages\n", msg->data[0]); in ican3_handle_msglost()
1032 static int ican3_handle_cevtind(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_cevtind() argument
1042 if (msg->data[1] != CEVTIND_CHIP_SJA1000) { in ican3_handle_cevtind()
1048 if (le16_to_cpu(msg->len) < 6) { in ican3_handle_cevtind()
1053 isrc = msg->data[0]; in ican3_handle_cevtind()
1054 ecc = msg->data[2]; in ican3_handle_cevtind()
1055 status = msg->data[3]; in ican3_handle_cevtind()
1056 rxerr = msg->data[4]; in ican3_handle_cevtind()
1057 txerr = msg->data[5]; in ican3_handle_cevtind()
1178 static void ican3_handle_inquiry(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_inquiry() argument
1180 switch (msg->data[0]) { in ican3_handle_inquiry()
1183 mod->bec.rxerr = msg->data[5]; in ican3_handle_inquiry()
1184 mod->bec.txerr = msg->data[6]; in ican3_handle_inquiry()
1188 mod->termination_enabled = msg->data[6] & HWCONF_TERMINATE_ON; in ican3_handle_inquiry()
1198 static void ican3_handle_nmtsind(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_nmtsind() argument
1202 subspec = msg->data[0] + msg->data[1] * 0x100; in ican3_handle_nmtsind()
1204 switch (msg->data[2]) { in ican3_handle_nmtsind()
1210 le16_add_cpu(&msg->len, -3); in ican3_handle_nmtsind()
1211 memmove(msg->data, msg->data + 3, le16_to_cpu(msg->len)); in ican3_handle_nmtsind()
1212 ican3_handle_cevtind(mod, msg); in ican3_handle_nmtsind()
1220 msg->data[2]); in ican3_handle_nmtsind()
1233 struct ican3_msg *msg) in ican3_handle_unknown_message() argument
1236 msg->spec, le16_to_cpu(msg->len)); in ican3_handle_unknown_message()
1242 static void ican3_handle_message(struct ican3_dev *mod, struct ican3_msg *msg) in ican3_handle_message() argument
1245 mod->num, msg->spec, le16_to_cpu(msg->len)); in ican3_handle_message()
1247 switch (msg->spec) { in ican3_handle_message()
1249 ican3_handle_idvers(mod, msg); in ican3_handle_message()
1253 ican3_handle_msglost(mod, msg); in ican3_handle_message()
1256 ican3_handle_cevtind(mod, msg); in ican3_handle_message()
1259 ican3_handle_inquiry(mod, msg); in ican3_handle_message()
1262 ican3_handle_nmtsind(mod, msg); in ican3_handle_message()
1265 ican3_handle_unknown_message(mod, msg); in ican3_handle_message()
1454 struct ican3_msg uninitialized_var(msg); in ican3_napi()
1455 ret = ican3_recv_msg(mod, &msg); in ican3_napi()
1459 ican3_handle_message(mod, &msg); in ican3_napi()