candev/CVS/Repository:ts-7200/dist/ocera_comm_can/candev
candev/cpickle/CVS/Repository:ts-7200/dist/ocera_comm_can/candev/cpickle
candev/cpickle/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
candev/cpickle/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
candev/cpickle/candtgmsg_impl.c:    o->flags = 0;
candev/cpickle/candtgmsg_impl.c:    o->id = 0;
candev/cpickle/candtgmsg_impl.c:    o->length = 0;
candev/cpickle/candtgmsg_impl.c:        o->data[i] = 0;}
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/candtgmsg_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->flags); len += sizeof(int32_t);
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/candtgmsg_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->id); len += sizeof(int32_t);
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int16_t) > (size_t)buff_len) return -5;
candev/cpickle/candtgmsg_impl.c:    *(/*packed*/ int16_t*)(buffer + len) = h2ns(o->length); len += sizeof(int16_t);
candev/cpickle/candtgmsg_impl.c:            if(!o) return -1;
candev/cpickle/candtgmsg_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/candtgmsg_impl.c:            *(/*packed*/ int8_t*)(buffer + len) = (o->data[i]); len += sizeof(int8_t);
candev/cpickle/candtgmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/candtgmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/candtgmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/candtgmsg_impl.c:    i = CANDtgMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/candtgmsg_impl.c:    o->flags = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/candtgmsg_impl.c:    o->id = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/candtgmsg_impl.c:    if(len + sizeof(int16_t) > (size_t)buff_len) return -4;
candev/cpickle/candtgmsg_impl.c:    o->length = n2hs(*(/*packed*/ int16_t*)(buffer + len)); len += sizeof(int16_t);
candev/cpickle/candtgmsg_impl.c:            if(!o) return -1;
candev/cpickle/candtgmsg_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/candtgmsg_impl.c:            o->data[i] = (*(/*packed*/ int8_t*)(buffer + len)); len += sizeof(int8_t);
candev/cpickle/candtgmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/candtgmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/candtgmsg_impl.c:    i = CANDtgMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:    o->className = "";
candev/cpickle/cpickleclassdef_impl.c:    size += strlen(o->className);
candev/cpickle/cpickleclassdef_impl.c:        arraylen = strlen(o->className);
candev/cpickle/cpickleclassdef_impl.c:        if(len + arraylen + 3 > (size_t)buff_len) return -4;
candev/cpickle/cpickleclassdef_impl.c:        memcpy(buffer + len, o->className, ++arraylen);
candev/cpickle/cpickleclassdef_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleClassDef_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:        if(!o) return -1;
candev/cpickle/cpickleclassdef_impl.c:        if(len + arraylen + 1 > (size_t)buff_len) return -2;
candev/cpickle/cpickleclassdef_impl.c:        o->className = buffer+len;
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/cpickleclassdef_impl.c:    i = CPickleClassDef_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:        o->headMagic[i] = 0;}
candev/cpickle/cpicklehead_impl.c:    o->termZero = 0;
candev/cpickle/cpicklehead_impl.c:    o->packetSize = 0;
candev/cpickle/cpicklehead_impl.c:            if(!o) return -1;
candev/cpickle/cpicklehead_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/cpicklehead_impl.c:            *(/*packed*/ int8_t*)(buffer + len) = (o->headMagic[i]); len += sizeof(int8_t);
candev/cpickle/cpicklehead_impl.c:    if(len + sizeof(int8_t) > (size_t)buff_len) return -5;
candev/cpickle/cpicklehead_impl.c:    *(/*packed*/ int8_t*)(buffer + len) = (o->termZero); len += sizeof(int8_t);
candev/cpickle/cpicklehead_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/cpicklehead_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->packetSize); len += sizeof(int32_t);
candev/cpickle/cpicklehead_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/cpicklehead_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:    i = CPickleHead_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:            if(!o) return -1;
candev/cpickle/cpicklehead_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/cpicklehead_impl.c:            o->headMagic[i] = (*(/*packed*/ int8_t*)(buffer + len)); len += sizeof(int8_t);
candev/cpickle/cpicklehead_impl.c:    if(len + sizeof(int8_t) > (size_t)buff_len) return -4;
candev/cpickle/cpicklehead_impl.c:    o->termZero = (*(/*packed*/ int8_t*)(buffer + len)); len += sizeof(int8_t);
candev/cpickle/cpicklehead_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/cpicklehead_impl.c:    o->packetSize = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/cpicklehead_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/cpicklehead_impl.c:    i = CPickleHead_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    SDOMsgBase_init(&(o->super));
candev/cpickle/sdoconfirmmsg_impl.c:    o->type = 0;
candev/cpickle/sdoconfirmmsg_impl.c:    o->code = 0;
candev/cpickle/sdoconfirmmsg_impl.c:    o->errmsg = "";
candev/cpickle/sdoconfirmmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdoconfirmmsg_impl.c:    size += SDOMsgBase_getObjectBufferSize(&(o->super));
candev/cpickle/sdoconfirmmsg_impl.c:    size += strlen(o->errmsg);
candev/cpickle/sdoconfirmmsg_impl.c:        i = SDOMsgBase_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdoconfirmmsg_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->type); len += sizeof(int32_t);
candev/cpickle/sdoconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdoconfirmmsg_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->code); len += sizeof(int32_t);
candev/cpickle/sdoconfirmmsg_impl.c:        arraylen = strlen(o->errmsg);
candev/cpickle/sdoconfirmmsg_impl.c:        if(len + arraylen + 3 > (size_t)buff_len) return -4;
candev/cpickle/sdoconfirmmsg_impl.c:        memcpy(buffer + len, o->errmsg, ++arraylen);
candev/cpickle/sdoconfirmmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdoconfirmmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    i = SDOConfirmMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:        i = SDOMsgBase_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdoconfirmmsg_impl.c:    o->type = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdoconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdoconfirmmsg_impl.c:    o->code = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdoconfirmmsg_impl.c:        if(!o) return -1;
candev/cpickle/sdoconfirmmsg_impl.c:        if(len + arraylen + 1 > (size_t)buff_len) return -2;
candev/cpickle/sdoconfirmmsg_impl.c:        o->errmsg = buffer+len;
candev/cpickle/sdoconfirmmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdoconfirmmsg_impl.c:    i = SDOConfirmMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    SDOConfirmMsg_init(&(o->super));
candev/cpickle/sdodownloadconfirmmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdodownloadconfirmmsg_impl.c:    size += SDOConfirmMsg_getObjectBufferSize(&(o->super));
candev/cpickle/sdodownloadconfirmmsg_impl.c:        i = SDOConfirmMsg_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = SDODownloadConfirmMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:        i = SDOConfirmMsg_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdodownloadconfirmmsg_impl.c:    i = SDODownloadConfirmMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:    SDOMsgBase_init(&(o->super));
candev/cpickle/sdodownloadrequestmsg_impl.c:    o->data = NULL;
candev/cpickle/sdodownloadrequestmsg_impl.c:    o->data_arraylen = 0;
candev/cpickle/sdodownloadrequestmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdodownloadrequestmsg_impl.c:    size += SDOMsgBase_getObjectBufferSize(&(o->super));
candev/cpickle/sdodownloadrequestmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdodownloadrequestmsg_impl.c:    size += o->data_arraylen * sizeof(int8_t);
candev/cpickle/sdodownloadrequestmsg_impl.c:        i = SDOMsgBase_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:        if(!o) return -1;
candev/cpickle/sdodownloadrequestmsg_impl.c:        arraylen = o->data_arraylen;
candev/cpickle/sdodownloadrequestmsg_impl.c:        if(len + sizeof(arraylen) > (size_t)buff_len) return -2;
candev/cpickle/sdodownloadrequestmsg_impl.c:            if(!o) return -1;
candev/cpickle/sdodownloadrequestmsg_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/sdodownloadrequestmsg_impl.c:            *(/*packed*/ int8_t*)(buffer + len) = (o->data[i]); len += sizeof(int8_t);
candev/cpickle/sdodownloadrequestmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = SDODownloadRequestMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:        i = SDOMsgBase_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:        o->data_arraylen = arraylen;
candev/cpickle/sdodownloadrequestmsg_impl.c:        o->data = (/*packed*/ int8_t*)(buffer + len); len += arraylen * sizeof(int8_t);
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdodownloadrequestmsg_impl.c:    i = SDODownloadRequestMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    o->srvcliCobId = 0;
candev/cpickle/sdomsgbase_impl.c:    o->clisrvCobId = 0;
candev/cpickle/sdomsgbase_impl.c:    o->node = 0;
candev/cpickle/sdomsgbase_impl.c:    o->index = 0;
candev/cpickle/sdomsgbase_impl.c:    o->subindex = 0;
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdomsgbase_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->srvcliCobId); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdomsgbase_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->clisrvCobId); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdomsgbase_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->node); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdomsgbase_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->index); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/sdomsgbase_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->subindex); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdomsgbase_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    i = SDOMsgBase_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdomsgbase_impl.c:    o->srvcliCobId = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdomsgbase_impl.c:    o->clisrvCobId = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdomsgbase_impl.c:    o->node = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdomsgbase_impl.c:    o->index = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/sdomsgbase_impl.c:    o->subindex = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/sdomsgbase_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdomsgbase_impl.c:    i = SDOMsgBase_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:    SDOConfirmMsg_init(&(o->super));
candev/cpickle/sdouploadconfirmmsg_impl.c:    o->data = NULL;
candev/cpickle/sdouploadconfirmmsg_impl.c:    o->data_arraylen = 0;
candev/cpickle/sdouploadconfirmmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdouploadconfirmmsg_impl.c:    size += SDOConfirmMsg_getObjectBufferSize(&(o->super));
candev/cpickle/sdouploadconfirmmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdouploadconfirmmsg_impl.c:    size += o->data_arraylen * sizeof(int8_t);
candev/cpickle/sdouploadconfirmmsg_impl.c:        i = SDOConfirmMsg_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:        if(!o) return -1;
candev/cpickle/sdouploadconfirmmsg_impl.c:        arraylen = o->data_arraylen;
candev/cpickle/sdouploadconfirmmsg_impl.c:        if(len + sizeof(arraylen) > (size_t)buff_len) return -2;
candev/cpickle/sdouploadconfirmmsg_impl.c:            if(!o) return -1;
candev/cpickle/sdouploadconfirmmsg_impl.c:            if(len + sizeof(int8_t) > (size_t)buff_len) return -3;
candev/cpickle/sdouploadconfirmmsg_impl.c:            *(/*packed*/ int8_t*)(buffer + len) = (o->data[i]); len += sizeof(int8_t);
candev/cpickle/sdouploadconfirmmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = SDOUploadConfirmMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:        i = SDOConfirmMsg_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:        o->data_arraylen = arraylen;
candev/cpickle/sdouploadconfirmmsg_impl.c:        o->data = (/*packed*/ int8_t*)(buffer + len); len += arraylen * sizeof(int8_t);
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdouploadconfirmmsg_impl.c:    i = SDOUploadConfirmMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    SDOMsgBase_init(&(o->super));
candev/cpickle/sdouploadrequestmsg_impl.c:    if(!o) return -1;
candev/cpickle/sdouploadrequestmsg_impl.c:    size += SDOMsgBase_getObjectBufferSize(&(o->super));
candev/cpickle/sdouploadrequestmsg_impl.c:        i = SDOMsgBase_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/sdouploadrequestmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    i = SDOUploadRequestMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:        i = SDOMsgBase_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/sdouploadrequestmsg_impl.c:    i = SDOUploadRequestMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    ServiceMsgBase_init(&(o->super));
candev/cpickle/serviceconfirmmsg_impl.c:    o->code = 0;
candev/cpickle/serviceconfirmmsg_impl.c:    o->errmsg = "";
candev/cpickle/serviceconfirmmsg_impl.c:    if(!o) return -1;
candev/cpickle/serviceconfirmmsg_impl.c:    size += ServiceMsgBase_getObjectBufferSize(&(o->super));
candev/cpickle/serviceconfirmmsg_impl.c:    size += strlen(o->errmsg);
candev/cpickle/serviceconfirmmsg_impl.c:        i = ServiceMsgBase_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/serviceconfirmmsg_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->code); len += sizeof(int32_t);
candev/cpickle/serviceconfirmmsg_impl.c:        arraylen = strlen(o->errmsg);
candev/cpickle/serviceconfirmmsg_impl.c:        if(len + arraylen + 3 > (size_t)buff_len) return -4;
candev/cpickle/serviceconfirmmsg_impl.c:        memcpy(buffer + len, o->errmsg, ++arraylen);
candev/cpickle/serviceconfirmmsg_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/serviceconfirmmsg_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    i = ServiceConfirmMsg_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:        i = ServiceMsgBase_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/serviceconfirmmsg_impl.c:    o->code = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/serviceconfirmmsg_impl.c:        if(!o) return -1;
candev/cpickle/serviceconfirmmsg_impl.c:        if(len + arraylen + 1 > (size_t)buff_len) return -2;
candev/cpickle/serviceconfirmmsg_impl.c:        o->errmsg = buffer+len;
candev/cpickle/serviceconfirmmsg_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/serviceconfirmmsg_impl.c:    i = ServiceConfirmMsg_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/servicemsgbase_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    i = ServiceMsgBase_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicemsgbase_impl.c:    i = ServiceMsgBase_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    ServiceConfirmMsg_init(&(o->super));
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    if(!o) return -1;
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    size += ServiceConfirmMsg_getObjectBufferSize(&(o->super));
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:        i = ServiceConfirmMsg_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = ServiceSetRawMsgParamsConfirm_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:        i = ServiceConfirmMsg_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsconfirm_impl.c:    i = ServiceSetRawMsgParamsConfirm_unpickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    ServiceMsgBase_init(&(o->super));
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->command = 0;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->id = 0;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->mask = 0;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(!o) return -1;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    size += ServiceMsgBase_getObjectBufferSize(&(o->super));
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:        i = ServiceMsgBase_pickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->command); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->id); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -5;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    *(/*packed*/ int32_t*)(buffer + len) = h2nl(o->mask); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len > (size_t)buff_len) return -1;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = CPickleHead_pickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = CPickleClassDef_pickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = ServiceSetRawMsgParamsRequest_pickleObject(o, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:        i = ServiceMsgBase_unpickleObject(&(o->super), buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->command = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->id = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    if(len + sizeof(int32_t) > (size_t)buff_len) return -4;
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    o->mask = n2hl(*(/*packed*/ int32_t*)(buffer + len)); len += sizeof(int32_t);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = CPickleHead_unpickleObject(&head, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = CPickleClassDef_unpickleObject(&class_def, buffer+len, buff_len-len);
candev/cpickle/servicesetrawmsgparamsrequest_impl.c:    i = ServiceSetRawMsgParamsRequest_unpickleObject(o, buffer+len, buff_len-len);
candev/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
candev/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
candev/Makefile.omk:LDFLAGS += -Wl,--export-dynamic
candev/canblaster.c:			"\t-h\n"
candev/canblaster.c:            "\t--help\tthis help screen\n"
candev/canblaster.c:            "\t-d\n"
candev/canblaster.c:            "\t--candev\tCAN device name (default /dev/can0)\n"
candev/canblaster.c:            "\t-p\n"
candev/canblaster.c:            "\t--port\tIP port number on which server will listen to. Default is "mkstr(CANBLASTER_DEFAULT_PORT)"\n"
candev/canblaster.c:			"\t-g\n"
candev/canblaster.c:            "\t--terminate-from-tty\taccept terminate request from standard input.\n"
candev/canblaster.c:            "\t--daemon\tdaemonize\n"
candev/canblaster.c:            "\t--log_level [n]\tsets how many log messages you will see.\n"
candev/canblaster.c:            "\t\t0 - fatal errors only\n"
candev/canblaster.c:            "\t\t1 - level 0 + errors\n"
candev/canblaster.c:            "\t\t2 - level 1 + messages\n"
candev/canblaster.c:            "\t\t3 - level 2 + info messages\n"
candev/canblaster.c:            "\t\t4 - level 3 + debug messages\n"
candev/canblaster.c:			"\t-v --verbose same as --log_level 3\n";
candev/canblaster.c://--------------------------------------------------------------------
candev/canblaster.c:        delete_client(item->fd);
candev/canblaster.c://----------------------------------------------------
candev/canblaster.c:    *(ttynd->terminate_ptr) = 1;
candev/canblaster.c:    vcaFdNode_init(&(ttynd->fdnode), fd, VCAFD_RD);
candev/canblaster.c:    ttynd->terminate_ptr = terminate_ptr;
candev/canblaster.c:    ttynd->fdnode.ready = cmdttyFdReady;
candev/canblaster.c://----------------------------------------------------
candev/canblaster.c:        return -1;
candev/canblaster.c://----------------------------------------------------
candev/canblaster.c:	printf("CANBLASTER - CANopen simple master\n");
candev/canblaster.c:		{"terminate-from-tty", no_argument, 0, 't'},
candev/canblaster.c:            if (c == -1) break;
candev/canblaster.c:                    clog(LOG_DEB, "option -p with value `%s'\n", optarg);
candev/canblaster.c:                    clog(LOG_DEB, "option -g with value `%s'\n", optarg);
candev/canblaster.c:                    clog(LOG_DEB, "option -h\n");
candev/canblaster.c:            clog(LOG_INF, "non-option ARGV-elements: ");
candev/canblaster.c:        vcaFdPoll_insert(&fdpoll, &(can_net.canfdnode->fdnode));
candev/canblaster.c:        if(setsockopt(server_node.fdnode.fd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(yes)) == -1) {
candev/canblaster.c:            ms_sleep = -1;
candev/canblaster.c:            ms_sleep = ms_next - ms_last;
candev/canmaster.c://static int candevice_state = -1;
candev/canmaster.c:static int in_pipe = -1; 
candev/canmaster.c:static int out_pipe = -1; 
candev/canmaster.c:// -------------- log levels ------------------
candev/canmaster.c:    exit(-1);
candev/canmaster.c://--------------------------------------------------------------------
candev/canmaster.c:    if(fsm->is_uploader) {
candev/canmaster.c:    cmsg->super.srvcliCobId = fsm->srvcli_cob_id;
candev/canmaster.c:    cmsg->super.clisrvCobId = fsm->clisrv_cob_id;
candev/canmaster.c:    cmsg->super.node = fsm->node;
candev/canmaster.c:    cmsg->super.index = fsm->index;
candev/canmaster.c:    cmsg->super.subindex = fsm->subindex;
candev/canmaster.c:    if(fsm->state == sdofsmAbort) {
candev/canmaster.c:        byte *data = fsm->out_msg.data;
candev/canmaster.c:        for(i=0; i<4; i++) code = (code << 8) + data[7 - i];
candev/canmaster.c:        cmsg->code = code;
candev/canmaster.c:        cmsg->type = 2;
candev/canmaster.c:        cmsg->errmsg = vcasdo_abort_msg(code);
candev/canmaster.c:    else if(fsm->state == sdofsmError) {
candev/canmaster.c:        cmsg->type = 1;
candev/canmaster.c:        cmsg->code = fsm->err_no;
candev/canmaster.c:        cmsg->errmsg = vcasdo_abort_msg(cmsg->code);
candev/canmaster.c:        cmsg->type = 0;
candev/canmaster.c:    if(fsm->is_uploader) {
candev/canmaster.c:        umsg.data = fsm->data.data;
candev/canmaster.c:        umsg.data_arraylen = fsm->data.len;
candev/canmaster.c:        ret = SDOUploadConfirmMsg_toNet(&umsg, dbuff->data, dbuff->len);
candev/canmaster.c:        ret = SDODownloadConfirmMsg_toNet(&dmsg, dbuff->data, dbuff->len);
candev/canmaster.c:    return dbuff->len > 0;
candev/canmaster.c://--------------------------------------------------------------------
candev/canmaster.c:			"\t-h\n"
candev/canmaster.c:            "\t--help\tthis help screen\n"
candev/canmaster.c:            "\t-d\n"
candev/canmaster.c:            "\t--candev\tCAN device name (default /dev/can0)\n"
candev/canmaster.c:            "\t-i named pipe\t--in_pipe named pipe\n"
candev/canmaster.c:            "\t-o named pipe\t--out_pipe named pipe\n"
candev/canmaster.c:            "\t\tdefault names are /tmp/canmond/candev-in and /tmp/canmond/candev-out\n"
candev/canmaster.c:			"\t-g\n"
candev/canmaster.c:            "\t--log_level [n]\tsets how many log messages you will see.\n"
candev/canmaster.c:            "\t\t0 - fatal errors only\n"
candev/canmaster.c:            "\t\t1 - level 0 + errors\n"
candev/canmaster.c:            "\t\t2 - level 1 + messages\n"
candev/canmaster.c:            "\t\t3 - level 2 + info messages\n"
candev/canmaster.c:            "\t\t4 - level 3 + debug messages\n"
candev/canmaster.c:			"\t-v --verbose same as --log_level 3\n";
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:    for(i=0; i<buf->len; i++) {
candev/canmaster.c:        char c = buf->data[i];
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:    write(out_pipe, msg->data, msg->len);
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c://-------------------- gavlfsm list ------------------
candev/canmaster.c:  if (*a<*b) return -1;
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:        mylog(LOG_DEB, "removing fsm %p from fsm tree, status [%i]\n", gavlfsm->fsm, ret);
candev/canmaster.c:    mylog(LOG_DEB, "destroying fsm %p\n", gavlfsm->fsm);
candev/canmaster.c:    vcasdo_destroy_fsm(&gavlfsm->fsm);
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:    const char *class_name = fcpickle_getClassName(packet->data, packet->len);
candev/canmaster.c:        ret = SDOUploadRequestMsg_fromNet(&umsg, packet->data, packet->len);
candev/canmaster.c:        ret = SDODownloadRequestMsg_fromNet(&dmsg, packet->data, packet->len);
candev/canmaster.c:    fsm = &(gavlfsm->fsm);
candev/canmaster.c:    vcasdo_init_fsm(fsm, msg->srvcliCobId, msg->clisrvCobId, msg->node);
candev/canmaster.c:    fsm->index = msg->index;
candev/canmaster.c:    fsm->subindex = msg->subindex;
candev/canmaster.c:    fsm->is_uploader = is_uploader;
candev/canmaster.c:    srv_port = fsm->srvcli_cob_id;
candev/canmaster.c:    cli_port = fsm->clisrv_cob_id;
candev/canmaster.c:    gavlfsm->cobid = (word)(srv_port | msg->node);
candev/canmaster.c:                        cli_port, msg->node);
candev/canmaster.c:        fsm->state = sdofsmError;
candev/canmaster.c:        fsm->err_no = sdofsmErrFsmExists;
candev/canmaster.c:        // load data to the gavlfsm.fsm->data
candev/canmaster.c:        ul_dbuff_t *db = &fsm->data;
candev/canmaster.c:                        fsm, fsm->srvcli_cob_id, fsm->clisrv_cob_id, fsm->node);
candev/canmaster.c: * init_device - This is the first sub-state the device enters after power-on or hardware reset.
candev/canmaster.c: * After finishing the basic node initialisation the device executes the write boot-up
candev/canmaster.c: * object service and enters the state PRE-OPERATIONAL autonomously.
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:// returns t1-t2 in usec
candev/canmaster.c:    int sec = t1->tv_sec - t2->tv_sec;
candev/canmaster.c:    int usec = t1->tv_usec - t2->tv_usec;
candev/canmaster.c://----------------------------------------------------
candev/canmaster.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
candev/canmaster.c:	printf("CANMASTER - CANopen master\n");
candev/canmaster.c:            if (c == -1) break;
candev/canmaster.c:                    mylog(LOG_DEB, "option -g with value `%s'\n", optarg);
candev/canmaster.c:                    mylog(LOG_DEB, "option -h\n");
candev/canmaster.c:            mylog(LOG_INF, "non-option ARGV-elements: ");
candev/canmaster.c:    /*------- register handler on SIGINT signal -------*/
candev/canmaster.c:	/*---------------------------------------*/	
candev/canmaster.c:                vcasdo_fsm_t *fsm = &gavlfsm->fsm;
candev/canmaster.c:                int d = subtimeval(&t, &(fsm->last_activity));
candev/canmaster.c:                    fsm->state = sdofsmError;
candev/canmaster.c:                    fsm->err_no = 0x05040000; //SDO ErrTimeout see vcasdo_msg.c
candev/canmaster.c:                            for(j=0; j<FCPICKLE_PACKET_HEAD_SIZE-1; j++) msgdb.data[j] = msgdb.data[j+1];
candev/canmaster.c:                            msgdb.len--;
candev/canmaster.c:                            vcasdo_fsm_t *fsm = &gavlfsm->fsm;
candev/canmaster.c:                            if(fsm->is_uploader) vcasdo_fsm_upload1(fsm);
candev/canmaster.c:                            else                 vcasdo_fsm_download1(fsm, &fsm->data);
candev/canmaster.c:                            send_to_can(NULL,&(fsm->out_msg));
candev/canmaster.c:                fsm = &gavlfsm->fsm;
candev/canmaster.c:                    if(fsm->state == sdofsmRun) {
candev/canmaster.c:                        if(fsm->out_msg.length) send_to_can(NULL,&fsm->out_msg);
candev/canmaster.c:                        if(fsm->state == sdofsmDone) {
candev/canmaster.c:                        else if(fsm->state == sdofsmAbort) {
candev/canmaster.c:                        else if(fsm->state == sdofsmError) {
candev/canmaster.c:                            mylog(LOG_ERR, "SDO FSM unexpected state: %i\n", fsm->state);
candev/canmaster.c:                        //mylog(LOG_MSG, "sending confirmation SDO to fd %i: %s\n", c->fd, dbuff.data);
candev/canslave.c:static int candevice_state = -1;
candev/canslave.c:    // -------------- log levels ------------------
candev/canslave.c:    //-------------------------------------------
candev/canslave.c://--------------------------------------------------------------------
candev/canslave.c:			"\t-h\n"
candev/canslave.c:            "\t--help\tthis help screen\n"
candev/canslave.c:			"\t-p\n"
candev/canslave.c:            "\t--dump\tdumps loaded EDS back to log (debugging purposes)\n"
candev/canslave.c:            "\t-n\n"
candev/canslave.c:            "\t--node\tset node ID to n\n"
candev/canslave.c:            "\t-e\n"
candev/canslave.c:            "\t--eds\tEDS file name to load\n"
candev/canslave.c:            "\t-s\n"
candev/canslave.c:            "\t--hds\tHDS file name to load\n"
candev/canslave.c:            "\t-L\tsearch path for HW DLLs (default is ../lib)\n"
candev/canslave.c:            "\t-d\n"
candev/canslave.c:            "\t--candev\tCAN device name (default /dev/can0)\n"
candev/canslave.c:			"\t-g\n"
candev/canslave.c:            "\t--log_level [n]\tsets how many log messages you will see.\n"
candev/canslave.c:            "\t\t0 - fatal errors only\n"
candev/canslave.c:            "\t\t1 - level 0 + errors\n"
candev/canslave.c:            "\t\t2 - level 1 + messages\n"
candev/canslave.c:            "\t\t3 - level 2 + info messages\n"
candev/canslave.c:            "\t\t4 - level 3 + debug messages\n"
candev/canslave.c:			"\t-v --verbose same as --log_level 3\n";
candev/canslave.c://-------------------- sdoiface list ------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c:    //ul_dbuff_init(&iface->data, 0);
candev/canslave.c:    vcasdo_init_fsm(&(iface->fsm), srvcli_cobid, clisrv_cobid, node);
candev/canslave.c:    iface->cobid = iface->fsm.clisrv_cob_id;
candev/canslave.c:    mylog(LOG_DEB, "sdoiface_init(): init port 0x%x to listen\n", iface->cobid);
candev/canslave.c://----------------------------------------------------
candev/canslave.c:    mylog(LOG_DEB, "destroy_sdoiface(): destroying fsm %p\n", iface->fsm);
candev/canslave.c:    //ul_dbuff_destroy(&iface->data);
candev/canslave.c:    vcasdo_destroy_fsm(&iface->fsm);
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c:    if(vca_h2fd(canhandle) <= 0) return -1;
candev/canslave.c:    if(vca_h2fd(canhandle) <= 0) return -1;
candev/canslave.c:    mylog(LOG_INF, "sent SDO: %s\n", sdo_confirmation_names[VCA_SDO_GET_COMMAND(msg->data[0])]);
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c:// see CANopen draft 301, page 9-54
candev/canslave.c: * reset_application - In this state the parameters of the manufacturer
candev/canslave.c: * set to their power-on values. After setting of the power-on values 
candev/canslave.c://----------------------------------------------------
candev/canslave.c: * reset_communication - In this state the parameters of 
candev/canslave.c: * the communication profile area are set to their power-on values. 
candev/canslave.c://----------------------------------------------------
candev/canslave.c: * init_device - This is the first sub-state the device enters after power-on or hardware reset.
candev/canslave.c: * After finishing the basic node initialisation the device executes the write boot-up
candev/canslave.c: * object service and enters the state PRE-OPERATIONAL autonomously.
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c:    mylog(LOG_INF, "entering state PRE-OPERATIONAL\n");
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c://----------------------------------------------------
candev/canslave.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
candev/canslave.c:        if (c == -1) break;
candev/canslave.c:    printf("CANSLAVE - CAN slave\n");
candev/canslave.c:        mylog(LOG_INF, "non-option ARGV-elements: ");
candev/canslave.c:    /*------- register handler on SIGINT signal -------*/
candev/canslave.c:	/*---------------------------------------*/
candev/canslave.c:                    vcasdo_fsm_t *fsm = &ifc->fsm;
candev/canslave.c:                    if(fsm->state == sdofsmIdle) {
candev/canslave.c:                            vcasdo_read_multiplexor(readmsg.data + 1, &fsm->index, &fsm->subindex);
candev/canslave.c:                                ul_dbuff_t *db = &fsm->data;
candev/canslave.c:                                mylog(LOG_INF, "--------------------------------------------------------\n");
candev/canslave.c:                                mylog(LOG_DEB, "Trying to load value [%04x:%02x] from OD\n", fsm->index, fsm->subindex);
candev/canslave.c:                                odo = vcaod_find_object(&od_root, fsm->index, fsm->subindex, &abort_code); 
candev/canslave.c:                                    mylog(LOG_ERR, "[%04x:%02x] not found, ABORTING transfer\n", fsm->index, fsm->subindex);
candev/canslave.c:                                // because object can be an array, wee should set parameter array_index to fsm->subindex
candev/canslave.c:                                l = vcaod_get_value(odo, fsm->subindex, db->data, db->len, &abort_code);
candev/canslave.c:                                    mylog(LOG_ERR, "[%04x:%02x] not found, ABORTING transfer\n", fsm->index, fsm->subindex);
candev/canslave.c:                                mylog(LOG_DEB, "LOAD OK [%04x:%02x] %i pcs of data moved OD -> FSM\n", fsm->index, fsm->subindex, l);
candev/canslave.c:                                mylog(LOG_INF, "--------------------------------------------------------\n");
candev/canslave.c:                                mylog(LOG_INF, "Got INIT_DOWNLOAD request [%04x:%02x]\n", fsm->index, fsm->subindex);
candev/canslave.c:                    // if(fsm->state != sdofsmRun) vcasdo_fsm_taste_msg() returns -1 and it does not do anything more.
candev/canslave.c:                        if(fsm->state == sdofsmDone) {
candev/canslave.c:                                if(!fsm->is_uploader) {
candev/canslave.c:                                    ul_dbuff_t *db = &fsm->data;
candev/canslave.c:                                    mylog(LOG_DEB, "Try to store downloaded data of [%04x:%02x] to the OD\n", fsm->index, fsm->subindex);
candev/canslave.c:                                    odo = vcaod_find_object(&od_root, fsm->index, fsm->subindex, &abort_code); 
candev/canslave.c:                                    l = vcaod_set_value(odo, fsm->subindex, db->data, db->len, &abort_code);
candev/canslave.c:                                        //mylog(LOG_ERR, "[%04x:%02x] ERROR '%s'\n", fsm->index, fsm->subindex, vcasdo_abort_msg(abort_code));
candev/canslave.c:                                    mylog(LOG_DEB, "STORE OK [%04x:%02x] %i pcs of data moved FSM -> OD\n", fsm->index, fsm->subindex, l);
candev/canslave.c:                                    ul_dbuff_set_len(&fsm->data, 0);
candev/canslave.c:                        else if(fsm->state == sdofsmAbort) {
candev/canslave.c:                            mylog(LOG_MSG, "SDO transfer ABORTED: error %x '%s'\n", fsm->err_no, vcasdo_abort_msg(fsm->err_no));
candev/canslave.c:                        else if(fsm->state == sdofsmError) {
candev/canslave.c:                            mylog(LOG_MSG, "SDO transfer ERROR: error %x '%s'\n", fsm->err_no, vcasdo_abort_msg(fsm->err_no));
candev/canslave.c:                        else if(fsm->state == sdofsmRun) {
candev/canslave.c:                            mylog(LOG_ERR, "SDO FSM unexpected state: %i\n", fsm->state);
candev/canslave.c:                            fsm->out_msg.length = 0;
candev/canslave.c:                        if(fsm->out_msg.length > 0) {
candev/canslave.c:                            // fsm->out_msg.length > 0 signals slave thad message should be sent to CAN
candev/canslave.c:                            send_to_can_sdo(NULL,&fsm->out_msg);
candev/canslave.c:                        if(fsm->state != sdofsmRun) {
candev/canslave.c:            d = syncPeriod - d;
candev/canslave.c:            else d *= 1000; //us->ns
candev/nascan.eds:Line1=|---------------------------------------------------
candev/nascan.eds:Line1=|--- WAGO Kontakttechnik                         ---
candev/nascan.eds:Line1=|--- Hansastrasse 27                             ---
candev/nascan.eds:Line1=|--- D-32423 Minden                              ---
candev/nascan.eds:Line1=|--- Phone : +49 571 887-0 Fax : +49 571 887-555 ---
candev/nascan.eds:Line1=|---                                             ---
candev/nascan.eds:Line1=|--- Bearbeitung: WAGO                           ---
candev/nascan.eds:Line1=|---------------------------------------------------
candev/nascan.eds:FileName=750-307.eds
candev/nascan.eds:Description=Basic EDS for the CANopen bus coupler 750-307
candev/nascan.eds:CreationDate=03-20-98
candev/nascan.eds:ModificationDate=11-24-00
candev/nascan.eds:ProductNumber=750-307
candev/nascan.eds:OrderCode=730-307
candev/nascan.eds:ParameterName=pre-defined error field
candev/nascan.eds:ParameterName=COB-ID SYNC message
candev/nascan.eds:ParameterName=COB-ID guarding protocol
candev/nascan.eds:ParameterName=COB-ID Emergency message
candev/nascan.eds:ParameterName=COB_ID Client->Server (rx)
candev/nascan.eds:ParameterName=COB_ID Server ->Client (tx)
candev/nascan.eds:ParameterName=COB_ID Client->Server (rx)
candev/nascan.eds:;ParameterName=COB_ID Server ->Client (tx)
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID TPDO2
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/nascan.eds:ParameterName=COB-ID used by PDO
candev/sdoiface.h: * struct sdoifc_root_t - structure representing root of SDO interfaces list
candev/sdoiface.h: * struct sdoifc_item_t - structure representing single object in OD
candev/sdoiface.h: * @cobid:     cli->srv COBID (client_port:nodeid), port on which SDO FSM will listen
candev/sdoiface.h:  if (*a<*b) return -1;
candev/sm_can1.eds:CreationDate=11-08-2004
candev/sm_can1.eds:ModificationDate=11-08-2004
candev/sm_can1.eds:ParameterName=Node-ID
candev/sm_can1.eds:ParameterName=Largest Sub-Index Supported
candev/sm_can1.eds:ParameterName=COB-ID Used by PDO
candev/sm_can1.eds:ParameterName=Largest Sub-Index Supported
candev/sm_can1.eds:ParameterName=COB-ID Used by PDO
candev/sm_can1.eds:LowLimit=-1
candev/sm_can1.eds:DefaultValue=-1
candev/sm_can1.eds:LowLimit=-0x7FFFFFFF
candev/sm_can1.eds:LowLimit=-2147483648
candev/sm_can1.eds:LowLimit=-2147483648
candev/socknode.c:    clog(LOG_DEB, "request on server socket: %i\n", srv->fdnode.fd);
candev/socknode.c:        cli->fdnode.fd = accept(srv->fdnode.fd, (struct sockaddr *)&cli_addr, &sin_size);
candev/socknode.c:        if(cli->fdnode.fd < 0) {
candev/socknode.c:            if(fcntl(cli->fdnode.fd, F_SETFL, O_NONBLOCK) < 0) {
candev/socknode.c:            cli->cannet = srv->cannet;
candev/socknode.c:            //write(cli->fdnode.fd, msg, sizeof(msg) - 1);
candev/socknode.c:            vcaFdPoll_insert(p, &(cli->fdnode));
candev/socknode.c:    vcaFdNode_init(&(sock->fdnode), -1, VCAFD_RD);
candev/socknode.c:    sock->fdnode.fd = -1;
candev/socknode.c:    sock->fdnode.ready = FdNodeSrvSock_ready;
candev/socknode.c:    sock->cannet = NULL;
candev/socknode.c:    sock->fdnode.ready = NULL;
candev/socknode.c://------------------------------------------------------------
candev/socknode.c:    vcaSDORequest_init(&req->sdorq, is_upload, index, subindex, data, data_len);
candev/socknode.c:    req->sdorq.finished_callback = FdNodeCliSock_vcaSDORequest_finished;
candev/socknode.c:    req->cli = cli;
candev/socknode.c:    if(req->sdorq.is_pending)
candev/socknode.c:         vcaSDORequest_abort(&req->sdorq);
candev/socknode.c:    if(req->cli){
candev/socknode.c:        socknodeSDORequestQue_delete(req->cli, req);
candev/socknode.c:        req->cli = NULL;
candev/socknode.c:    vcaSDORequest_destroy(&req->sdorq);
candev/socknode.c:    if(sdorq->is_upload) {
candev/socknode.c:    //cmsg->super.srvcliCobId = fsm->srvcli_cob_id;
candev/socknode.c:    //cmsg->super.clisrvCobId = fsm->clisrv_cob_id;
candev/socknode.c:    cmsg->super.node = sdorq->node;
candev/socknode.c:    cmsg->super.index = sdorq->index;
candev/socknode.c:    cmsg->super.subindex = sdorq->subindex;
candev/socknode.c:    if(sdorq->state == sdofsmAbort) {
candev/socknode.c:        cmsg->code = sdorq->err_no;
candev/socknode.c:        cmsg->type = SDOConfirmMsg_MSG_ABORT;
candev/socknode.c:        cmsg->errmsg = vcasdo_abort_msg(code);
candev/socknode.c:    else if(sdorq->state == sdofsmError) {
candev/socknode.c:        cmsg->type = SDOConfirmMsg_MSG_ERROR;
candev/socknode.c:        cmsg->code = sdorq->err_no;
candev/socknode.c:        cmsg->errmsg = vcasdo_abort_msg(cmsg->code);
candev/socknode.c:        cmsg->type = SDOConfirmMsg_MSG_OK;
candev/socknode.c:    if(sdorq->is_upload) {
candev/socknode.c:        msg.umsg.data = sdorq->data.data;
candev/socknode.c:        msg.umsg.data_arraylen = sdorq->data.len;
candev/socknode.c:        ret = SDOUploadConfirmMsg_toNet(&msg.umsg, dbuff->data, dbuff->len);
candev/socknode.c:        ret = SDODownloadConfirmMsg_toNet(&msg.dmsg, dbuff->data, dbuff->len);
candev/socknode.c:    return dbuff->len > 0;
candev/socknode.c:    FdNodeCliSock_t *cli = sockrq->cli;
candev/socknode.c:            write(cli->fdnode.fd, db.data, db.len);
candev/socknode.c:        msg.flags = canmsg->flags;
candev/socknode.c:        msg.id = canmsg->id;
candev/socknode.c:        msg.length = canmsg->length;
candev/socknode.c:        memcpy(&msg.data, canmsg->data, CAN_MSG_LENGTH);
candev/socknode.c:            write(sock->fdnode.fd, dbuff.data, dbuff.len);
candev/socknode.c://------------------------------------------------------------
candev/socknode.c:    int fd = cli->fdnode.fd;
candev/socknode.c:        vcaFdPoll_detach(p, &(cli->fdnode));
candev/socknode.c:        ul_dbuff_t *msgdb = &(cli->msgdb);
candev/socknode.c:            if(msgdb->len < FCPICKLE_PACKET_HEAD_SIZE) {
candev/socknode.c:                if(msgdb->len == FCPICKLE_PACKET_HEAD_SIZE) {
candev/socknode.c:                    if(fcpickle_getHead(&head, msgdb->data, msgdb->len) < 0) {
candev/socknode.c:                        for(j=0; j<FCPICKLE_PACKET_HEAD_SIZE-1; j++) msgdb->data[j] = msgdb->data[j+1];
candev/socknode.c:                        msgdb->len--;
candev/socknode.c:                        cli->packet_len = head.packetSize;
candev/socknode.c:            else if(msgdb->len < cli->packet_len) {
candev/socknode.c:            if(msgdb->len == cli->packet_len) {
candev/socknode.c:                const char *class_name = fcpickle_getClassName(msgdb->data, msgdb->len);
candev/socknode.c:                vcaNet_t *net = cli->cannet;
candev/socknode.c:                    pickle_result = CANDtgMsg_fromNet(&candtg, msgdb->data, msgdb->len);
candev/socknode.c:                        pickle_result = SDOUploadRequestMsg_fromNet(&umsg, msgdb->data, msgdb->len);
candev/socknode.c:                        pickle_result = SDODownloadRequestMsg_fromNet(&dmsg, msgdb->data, msgdb->len);
candev/socknode.c:                        int node = msg->node;
candev/socknode.c:                            req = socknodeSDORequest_init(NULL, cli, is_upload, msg->index, msg->subindex,
candev/socknode.c:                            req = socknodeSDORequest_init(NULL, cli, is_upload, msg->index, msg->subindex,
candev/socknode.c:                            vcaCANNode_addSDORequest(nd, &req->sdorq);
candev/socknode.c:                    pickle_result = ServiceSetRawMsgParamsRequest_fromNet(&req, msgdb->data, msgdb->len);
candev/socknode.c:			    if(vcaNet_msg_rec_connect(net, &cli->rough_canmsg_hub, req.id, req.mask)>=0)
candev/socknode.c:			    evc_rx_hub_disconnect_all(&cli->rough_canmsg_hub);
candev/socknode.c:                    clog(LOG_ERR, "%s() unpickling object ERROR %i\n", __func__, -pickle_result);
candev/socknode.c:                cli->packet_len = 0;
candev/socknode.c:        if(cli->packet_len != 0) {
candev/socknode.c:    vcaFdNode_init(&(sock->fdnode), -1, VCAFD_RD);
candev/socknode.c:    sock->packet_len = 0;
candev/socknode.c:    ul_dbuff_init(&(sock->msgdb), 0);
candev/socknode.c:    sock->fdnode.ready = FdNodeCliSock_ready;
candev/socknode.c:    evc_rx_hub_init(&sock->rough_canmsg_hub,(evc_rx_fnc_t*)FdNodeCliSock_msgrec_fnc,sock);
candev/socknode.c:    evc_rx_hub_done(&sock->rough_canmsg_hub);
candev/socknode.c:    ul_dbuff_destroy(&(sock->msgdb));
candev/socknode.c:    sock->fdnode.ready = NULL;
candev/socknode.h: * FdNodeSrvSock_init - constructor
candev/socknode.h: * FdNodeSrvSock_destroy - destructor
candev/socknode.h: * FdNodeCliSock_init - constructor
candev/socknode.h: * FdNodeCliSock_destroy - destructor
candev/nascanhw/CVS/Repository:ts-7200/dist/ocera_comm_can/candev/nascanhw
candev/nascanhw/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
candev/nascanhw/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
candev/nascanhw/Makefile.omk:#INCLUDES = -I $(srcdir)/../include
candev/nascanhw/nascanhw.c:    // -------------- log levels ------------------
candev/nascanhw/nascanhw.c:    sui_dinfo_t *calling_dinfo = (sui_dinfo_t*)(event->u_u.message.ptr);
candev/nascanhw/nascanhw.c://-------------------- exported symbols --------------------------
candev/nascanhw/nascanhw.c:    int ret = -1;
candev/nascanhw/nascanhw.c:    sui_dinfo_connect_to_hub(di_output01, &hub1, NULL); // NULL - use default propagation function
candev/nascanhw/nascanhw.c://-------------------------------------------------------------
canmon/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon
canmon/canmond/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmond
canmon/canmond/CVS/Entries:/canmond-simple.c/1.1.1.1/Thu Oct  6 19:31:07 2005//
canmon/canmond/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canmon/canmond/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canmon/canmond/Makefile.omk:bin_PROGRAMS = canmond testclient canmond-simple
canmon/canmond/Makefile.omk:canmond-simple_SOURCES = canmond-simple.c
canmon/canmond/canmond-simple.c:static int server_sockfd = -1; 
canmon/canmond/canmond-simple.c:// -------------- log levels ------------------
canmon/canmond/canmond-simple.c:    exit(-1);
canmon/canmond/canmond-simple.c:    if(fsm->is_uploader) {
canmon/canmond/canmond-simple.c:    sprintf(str, "%x ", (unsigned)fsm->srvcli_cob_id); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:    sprintf(str, "%x ", (unsigned)fsm->clisrv_cob_id); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:    sprintf(str, "%x ", (unsigned)fsm->node); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:    sprintf(str, "%x ", fsm->index); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:    sprintf(str, "%x ", fsm->subindex); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:    if(fsm->state == sdofsmAbort) {
canmon/canmond/canmond-simple.c:        byte *data = fsm->out_msg.data;
canmon/canmond/canmond-simple.c:        for(i=0; i<4; i++) code = (code << 8) + data[7 - i];
canmon/canmond/canmond-simple.c:    else if(fsm->state == sdofsmError) {
canmon/canmond/canmond-simple.c:        sprintf(str, "%x '", fsm->err_no); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c:        ul_dbuff_strcat(dbuff, vcasdo_error_msg(fsm->err_no));        
canmon/canmond/canmond-simple.c:        if(fsm->is_uploader) {
canmon/canmond/canmond-simple.c:            for(n=0; n<fsm->data.len; n++) {
canmon/canmond/canmond-simple.c:                sprintf(str, "%x", (unsigned)(fsm->data.data[n])); ul_dbuff_strcat(dbuff, str);
canmon/canmond/canmond-simple.c://--------------------------------------------------------------------
canmon/canmond/canmond-simple.c:			"\t-h\n"
canmon/canmond/canmond-simple.c:            "\t--help\tthis help screen\n"
canmon/canmond/canmond-simple.c:			"\t-v --verbose\n"
canmon/canmond/canmond-simple.c:			"\t-p\n"
canmon/canmond/canmond-simple.c:            "\t--port [n]\tsets port where the server listens (default "mkstr(CANMOND_PORT)")\n"
canmon/canmond/canmond-simple.c:			"\t-g\n"
canmon/canmond/canmond-simple.c:            "\t--log_level [n]\tsets how many log messages you will see.\n"
canmon/canmond/canmond-simple.c:            "\t\t0 - fatal errors only\n"
canmon/canmond/canmond-simple.c:            "\t\t1 - level 0 + errors\n"
canmon/canmond/canmond-simple.c:            "\t\t2 - level 1 + messages\n"
canmon/canmond/canmond-simple.c:            "\t\t3 - level 2 + info messages\n"
canmon/canmond/canmond-simple.c:            "\t\t4 - level 3 + debug messages\n"
canmon/canmond/canmond-simple.c://-------------------- client list ------------------
canmon/canmond/canmond-simple.c:  if (*a<*b) return -1;
canmon/canmond/canmond-simple.c://-------------------- gavlfsm list ------------------
canmon/canmond/canmond-simple.c:  if (*a<*b) return -1;
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:        mylog(LOG_DEB, "removing fsm %p from fsm tree, status [%i]\n", gavlfsm->fsm, ret);
canmon/canmond/canmond-simple.c:    mylog(LOG_DEB, "destroying fsm %p\n", gavlfsm->fsm);
canmon/canmond/canmond-simple.c:    vcasdo_destroy_fsm(&gavlfsm->fsm);
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:    *eaten_chars = -1;
canmon/canmond/canmond-simple.c:    fsm = &(gavlfsm->fsm);
canmon/canmond/canmond-simple.c:    fsm->index = index;
canmon/canmond/canmond-simple.c:    fsm->subindex = subindex;
canmon/canmond/canmond-simple.c:    fsm->is_uploader = is_uploader;
canmon/canmond/canmond-simple.c:    srv_port = fsm->srvcli_cob_id;
canmon/canmond/canmond-simple.c:    cli_port = fsm->clisrv_cob_id;
canmon/canmond/canmond-simple.c:    gavlfsm->fd = fd;
canmon/canmond/canmond-simple.c:    gavlfsm->cobid = (word)(srv_port | node);
canmon/canmond/canmond-simple.c:        fsm->state = sdofsmError;
canmon/canmond/canmond-simple.c:        fsm->err_no = sdofsmErrFsmExists;
canmon/canmond/canmond-simple.c:        ul_dbuff_t *db = &fsm->data;
canmon/canmond/canmond-simple.c:        // load data to the gavlfsm.fsm->data
canmon/canmond/canmond-simple.c:                    fsm, fsm->srvcli_cob_id, fsm->clisrv_cob_id, fsm->node);
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:        if(gf->fd == fd) {
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:        delete_client(item->fd);
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:// returns t1-t2 in usec
canmon/canmond/canmond-simple.c:    int sec = t1->tv_sec - t2->tv_sec;
canmon/canmond/canmond-simple.c:    int usec = t1->tv_usec - t2->tv_usec;
canmon/canmond/canmond-simple.c://----------------------------------------------------
canmon/canmond/canmond-simple.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
canmon/canmond/canmond-simple.c:	printf("CANMOND - CAN monitor server\n");
canmon/canmond/canmond-simple.c:            if (c == -1) break;
canmon/canmond/canmond-simple.c:                    mylog(LOG_DEB, "option -g with value `%s'\n", optarg);
canmon/canmond/canmond-simple.c:                    mylog(LOG_DEB, "option -p with value `%s'\n", optarg);
canmon/canmond/canmond-simple.c:                    mylog(LOG_DEB, "option -h\n");
canmon/canmond/canmond-simple.c:            mylog(LOG_INF, "non-option ARGV-elements: ");
canmon/canmond/canmond-simple.c:    /*------- register handler on SIGINT signal -------*/
canmon/canmond/canmond-simple.c:	/*---------------------------------------*/	
canmon/canmond/canmond-simple.c:                vcasdo_fsm_t *fsm = &gavlfsm->fsm;
canmon/canmond/canmond-simple.c:                int d = subtimeval(&t, &(fsm->last_activity));
canmon/canmond/canmond-simple.c:                    fsm->state = sdofsmError;
canmon/canmond/canmond-simple.c:                    fsm->err_no = sdofsmErrTimeout;
canmon/canmond/canmond-simple.c:                    if(gavlfsm->fd > 0) write(gavlfsm->fd, dbuff.data, dbuff.len); //send also terminating zero
canmon/canmond/canmond-simple.c:                nc->fd = client_sockfd;
canmon/canmond/canmond-simple.c:                write(client_sockfd, msg, sizeof(msg) - 1); /* without terminating '\0' */
canmon/canmond/canmond-simple.c:                fsm = &gavlfsm->fsm;
canmon/canmond/canmond-simple.c:                    c = client_find(&client_root, &(gavlfsm->fd));
canmon/canmond/canmond-simple.c:                    if(!c) fatal_error("cann't find client with fd %d\n", gavlfsm->fd);
canmon/canmond/canmond-simple.c:                    if(fsm->state == sdofsmRun) {
canmon/canmond/canmond-simple.c:                        if(fsm->out_msg.length) send_to_can(NULL, &fsm->out_msg);
canmon/canmond/canmond-simple.c:                        if(fsm->state == sdofsmDone) {
canmon/canmond/canmond-simple.c:                        else if(fsm->state == sdofsmAbort) {
canmon/canmond/canmond-simple.c:                        else if(fsm->state == sdofsmError) {
canmon/canmond/canmond-simple.c:                            mylog(LOG_ERR, "SDO FSM unexpected state: %i\n", fsm->state);
canmon/canmond/canmond-simple.c:                        mylog(LOG_MSG, "sending confirmation SDO to fd %i: %s\n", c->fd, dbuff.data);
canmon/canmond/canmond-simple.c:                        write(c->fd, dbuff.data, dbuff.len); //send also terminating zero
canmon/canmond/canmond-simple.c:                    int fd = client->fd;
canmon/canmond/canmond-simple.c:                int fd = client->fd;
canmon/canmond/canmond-simple.c:                            for(n = nread-1; n>=0; n--) if((rdbuff.data + old_len)[n] == '}') {eofmsg = 1; break;}
canmon/canmond/canmond-simple.c:                                mylog(LOG_INF, "--------------------------------------------------------\n");
canmon/canmond/canmond-simple.c:                                    vcasdo_fsm_t *fsm = &gavlfsm->fsm;
canmon/canmond/canmond-simple.c:                                    if(fsm->is_uploader) vcasdo_fsm_upload1(fsm);
canmon/canmond/canmond-simple.c:                                    else                 vcasdo_fsm_download1(fsm, &fsm->data);
canmon/canmond/canmond-simple.c:                                    send_to_can(NULL, &(fsm->out_msg));
canmon/canmond/canmond-simple.c:                        nread = read(fd, rdbuff.data, rdbuff.len-1);
canmon/canmond/canmond.cc:static int server_sockfd = -1; 
canmon/canmond/canmond.cc:static int candev_in = -1;
canmon/canmond/canmond.cc:static int candev_out = -1;
canmon/canmond/canmond.cc:// -------------- log levels ------------------
canmon/canmond/canmond.cc:    exit(-1);
canmon/canmond/canmond.cc://--------------------------------------------------------------------
canmon/canmond/canmond.cc:			"\t-h\n"
canmon/canmond/canmond.cc:            "\t--help\tthis help screen\n"
canmon/canmond/canmond.cc:			"\t-v --verbose\n"
canmon/canmond/canmond.cc:			"\t-p\n"
canmon/canmond/canmond.cc:            "\t--port [n]\tsets port where the server listens (default "mkstr(CANMOND_PORT)")\n"
canmon/canmond/canmond.cc:            "\t-i named pipe\t--candev_in named pipe\n"
canmon/canmond/canmond.cc:            "\t-o named pipe\t--candev_out named pipe\n"
canmon/canmond/canmond.cc:            "\t\tdefault names are /tmp/canmond/candev-in and /tmp/canmond/candev-out\n"
canmon/canmond/canmond.cc:            "\t\tcanmond writes data to the candev-in pipe\n"
canmon/canmond/canmond.cc:			"\t-g\n"
canmon/canmond/canmond.cc:            "\t--log_level [n]\tsets how many log messages you will see.\n"
canmon/canmond/canmond.cc:            "\t\t0 - fatal errors only\n"
canmon/canmond/canmond.cc:            "\t\t1 - level 0 + errors\n"
canmon/canmond/canmond.cc:            "\t\t2 - level 1 + messages\n"
canmon/canmond/canmond.cc:            "\t\t3 - level 2 + info messages\n"
canmon/canmond/canmond.cc:            "\t\t4 - level 3 + debug messages\n"
canmon/canmond/canmond.cc://------------------------------------------------------------------------------------
canmon/canmond/canmond.cc://------------------------------------------------------------------------------------
canmon/canmond/canmond.cc:    srvcli = msg->srvcliCobId;
canmon/canmond/canmond.cc:    clisrv = msg->clisrvCobId;
canmon/canmond/canmond.cc:    if(srvcli == 0) srvcli = 0x580 + msg->node;
canmon/canmond/canmond.cc:    if(clisrv == 0) clisrv = 0x600 + msg->node;
canmon/canmond/canmond.cc:    mylog(LOG_TRASH+1, "\tnode: 0x%x\n", msg->node);
canmon/canmond/canmond.cc://-------------------- client list ------------------
canmon/canmond/canmond.cc://-------------------- served SDO list ------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc: * check_pipe - check if pipename exists ant try ti create new one if it doesn't
canmon/canmond/canmond.cc:    for(int i=0; i<sl.Cnt()-1; i++) {
canmon/canmond/canmond.cc:    FString dir = fs, name = sl[-1];
canmon/canmond/canmond.cc:    if(access(fs.Str(), F_OK) == -1) {
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc://----------------------------------------------------
canmon/canmond/canmond.cc:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
canmon/canmond/canmond.cc:        printf("CANMOND - CAN monitor server\n");
canmon/canmond/canmond.cc:                    {"candev-in", required_argument, 0, 'i'},
canmon/canmond/canmond.cc:                    {"candev-out", required_argument, 0, 'o'},
canmon/canmond/canmond.cc:                    {"log-level", required_argument, 0, 'g'},
canmon/canmond/canmond.cc:                if (c == -1) break;
canmon/canmond/canmond.cc:                        mylog(LOG_DEB, "option -g with value `%s'\n", optarg);
canmon/canmond/canmond.cc:                        mylog(LOG_DEB, "option -p with value `%s'\n", optarg);
canmon/canmond/canmond.cc:                        mylog(LOG_DEB, "option -h\n");
canmon/canmond/canmond.cc:                mylog(LOG_INF, "non-option ARGV-elements: ");
canmon/canmond/canmond.cc:        /*------- register handler on SIGINT signal -------*/
canmon/canmond/canmond.cc:        /*---------------------------------------*/
canmon/canmond/canmond.cc:        if(setsockopt(server_sockfd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(yes)) == -1) {
canmon/canmond/canmond.cc:                                for(int j=0; j<FCPICKLE_PACKET_HEAD_SIZE-1; j++) buff[j] = buff[j+1];
canmon/canmond/canmond.cc:                                candev_msg.setLen(candev_msg.Len() - 1);
canmon/canmond/canmond.cc:                        len += fcpickle_getClassDef(&cn, buff+len, buff_len-len);
canmon/canmond/canmond.cc:                        SDOMsgBase_unpickleObject(&msg, buff+len, buff_len-len);
canmon/canmond/canmond.cc:                                    mylog(LOG_ERR, "ERROR: signature 0x%08x - client[%i] not found in client list\n", sig, ix);
canmon/canmond/canmond.cc:                                    for(int j=0; j<FCPICKLE_PACKET_HEAD_SIZE-1; j++) buff[j] = buff[j+1];
canmon/canmond/canmond.cc:                                    cc.msg.setLen(cc.msg.Len() - 1);
canmon/canmond/canmond.cc:                            ret = fcpickle_getClassDef(&cn, buff+len, buff_len-len);
canmon/canmond/canmond.cc:                            ret = SDOMsgBase_unpickleObject(&msg, buff+len, buff_len-len);
canmon/canmond/testclient.c:// -------------- log levels ------------------
canmon/canmond/testclient.c://--------------------------------------------------------------------
canmon/canmond/testclient.c:            "TESTCLIENT - canmond client\n"
canmon/canmond/testclient.c:			"\t-h\n"
canmon/canmond/testclient.c:            "\t--help\tthis help screen\n"
canmon/canmond/testclient.c:			"\t-v\n"
canmon/canmond/testclient.c:            "\t--verbose\ttverbose\n"
canmon/canmond/testclient.c:			"\t-a\n"
canmon/canmond/testclient.c:            "\t--host [n]\tsets  the IP address where the server listens default is "mkstr(DEF_ADDR)"\n"
canmon/canmond/testclient.c:			"\t-p\n"
canmon/canmond/testclient.c:            "\t--port [n]\tsets port on which server listens default "mkstr(CANMOND_PORT)"\n"
canmon/canmond/testclient.c:            "\t\t- sends CAN message (short version)\n"
canmon/canmond/testclient.c:            "\t\t- sends CAN message (detailed version)\n"
canmon/canmond/testclient.c:            "\t\t- uploads CANopen object from device object dictionary\n"
canmon/canmond/testclient.c:            "\t\t- downloads CANopen object to device object dictionary\n"
canmon/canmond/testclient.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
canmon/canmond/testclient.c:	/*------- register handler on SIGINT signal -------*/
canmon/canmond/testclient.c:	/*---------------------------------------*/	
canmon/canmond/testclient.c:    // -------------- logging ------------------
canmon/canmond/testclient.c:        if (c == -1) break;
canmon/canmond/testclient.c:    printf("found address: %s - ", hostinfo->h_name);
canmon/canmond/testclient.c:        for(ppc=hostinfo->h_addr_list; *ppc; ppc++)
canmon/canmond/testclient.c:    address.sin_addr = *(struct in_addr*)*(hostinfo->h_addr_list);
canmon/canmond/testclient.c:    printf("connecting %s:%hu ...\n", inet_ntoa(*(struct in_addr*)*(hostinfo->h_addr_list)), ntohs(address.sin_port));
canmon/canmond/testclient.c:    if(result == -1) fatal_error("oops: %s", strerror(errno));
canmon/canmond/testclient.c:            ul_dbuff_set_len(&readdb, readdb.len - 1);
canmon/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canmon/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canmon/canmonitor/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor
canmon/canmonitor/${java_lib_dir}/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_lib_dir}
canmon/canmonitor/${java_lib_dir}/canmonitor:#$JAVA_HOME/bin/java -classpath class:$JAVA_HOME/jre/lib/charsets.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/javaplugin.jar:$JAVA_HOME/jre/lib/jce.jar:$JAVA_HOME/jre/lib/jsse.jar:$JAVA_HOME/jre/lib/sunrsasign.jar:$JAVA_HOME/jre/lib/ext/localedata.jar:$JAVA_HOME/jre/lib/ext/dnsns.jar:$JAVA_HOME/jre/lib/ext/ldapsec.jar:$JAVA_HOME/jre/lib/ext/sunjce_provider.jar ocera.rtcan.monitor.CanMonitor
canmon/canmonitor/${java_lib_dir}/canmonitor:if [ -z "$JAVA_HOME" ] ; then
canmon/canmonitor/${java_lib_dir}/canmonitor:# -ea - enble assertions
canmon/canmonitor/${java_lib_dir}/canmonitor:$JAVA_HOME/bin/java -ea -jar $CANMON_DIR/lib/canmonitor.jar $@
canmon/canmonitor/${java_lib_dir}/canmonitor:#$JAVA_HOME/bin/java -cp lib/jdom.jar:class ocera/rtcan/monitor/CanMonitor $@
canmon/canmonitor/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canmon/canmonitor/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canmon/canmonitor/Makefile.omk:ANT=$(shell if [ -n "`which ant 2>/dev/null`" ]; then which ant; else [ -x $(TRY_ANT) ] && echo $(TRY_ANT); fi)
canmon/canmonitor/Makefile.omk:$(warning You need Ant in order to compile this. If you have it in non-standard \
canmon/canmonitor/Makefile.omk:.PHONY: java-default
canmon/canmonitor/Makefile.omk:utils-pass-local: java-default
canmon/canmonitor/Makefile.omk:java-default:
canmon/canmonitor/Makefile.omk:	$(ANT) -Djava_class_dir=$(USER_OBJS_DIR)/ -Djava_lib_dir=$(USER_BIN_DIR)/ \
canmon/canmonitor/Makefile.omk:	       -buildfile $(srcdir)/build.xml
canmon/canmonitor/Makefile.omk:#clean-java:
canmon/canmonitor/Makefile.omk:clean-custom:
canmon/canmonitor/Makefile.omk:	$(ANT) -Djava_class_dir=$(USER_OBJS_DIR)/ -Djava_lib_dir=$(USER_BIN_DIR)/ \
canmon/canmonitor/Makefile.omk:	       -buildfile $(srcdir)/build.xml clean
canmon/canmonitor/build.xml:<!-- build file for OCERA CanMonitor -->
canmon/canmonitor/build.xml:    <target name="canmonitor" depends="jar-monitor">
canmon/canmonitor/build.xml:    <target name="xmlconf" depends="jar-xmlconf">
canmon/canmonitor/build.xml:    <target name="cpickle" depends="jar-cpickle">
canmon/canmonitor/build.xml:    <target name="prepare-compile">
canmon/canmonitor/build.xml:    <target name="compile" depends="compile-monitor, compile-xmlconf">
canmon/canmonitor/build.xml:        <!--
canmon/canmonitor/build.xml:          -->
canmon/canmonitor/build.xml:    <target name="compile-monitor" depends="prepare-compile">
canmon/canmonitor/build.xml:        <!-- Copy the toolbar icons images -->
canmon/canmonitor/build.xml:        <!-- Copy the XmlConfPanel icons images -->
canmon/canmonitor/build.xml:    <!-- Generate the jar file -->
canmon/canmonitor/build.xml:    <target name="copy-libs">
canmon/canmonitor/build.xml:        <!-- Copy the toolbar icons images -->
canmon/canmonitor/build.xml:    <target name="jar-monitor" depends="compile-monitor, copy-libs">
canmon/canmonitor/build.xml:        <!-- <unjar dest="${class}" src="${lib}/jdom.jar"/> -->
canmon/canmonitor/build.xml:            <!-- Do not include test files in the runtime jar
canmon/canmonitor/build.xml:            -->
canmon/canmonitor/build.xml:    <target name="compile-xmlconf" depends="prepare-compile">
canmon/canmonitor/build.xml:        <!-- Copy the toolbar icons images -->
canmon/canmonitor/build.xml:    <target name="compile-cpickle" depends="prepare-compile">
canmon/canmonitor/build.xml:    <!-- Generate the jar file -->
canmon/canmonitor/build.xml:    <target name="jar-xmlconf" depends="compile-xmlconf, copy-libs">
canmon/canmonitor/build.xml:        <!-- <unjar dest="${class}" src="${lib}/jdom.jar"/> -->
canmon/canmonitor/build.xml:    <target name="jar-cpickle" depends="compile-cpickle">
canmon/canmonitor/build.xml:        <!-- <unjar dest="${class}" src="${lib}/jdom.jar"/> -->
canmon/canmonitor/build.xml:	<!-- 
canmon/canmonitor/build.xml:        <copy todir="${java_lib_dir}" file="cpickle-canmsgs"/>
canmon/canmonitor/build.xml:        <chmod file="${java_lib_dir}/cpickle-canmsgs" perm="a+x"/>
canmon/canmonitor/build.xml:	-->
canmon/canmonitor/build.xml:    <target name="run"  depends="jar-monitor">
canmon/canmonitor/build.xml:<!--            <fileset dir="${class}" includes="**/*.class" defaultexcludes="no"/>-->
canmon/canmonitor/canmonitor:#$JAVA_HOME/bin/java -classpath class:$JAVA_HOME/jre/lib/charsets.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/javaplugin.jar:$JAVA_HOME/jre/lib/jce.jar:$JAVA_HOME/jre/lib/jsse.jar:$JAVA_HOME/jre/lib/sunrsasign.jar:$JAVA_HOME/jre/lib/ext/localedata.jar:$JAVA_HOME/jre/lib/ext/dnsns.jar:$JAVA_HOME/jre/lib/ext/ldapsec.jar:$JAVA_HOME/jre/lib/ext/sunjce_provider.jar ocera.rtcan.monitor.CanMonitor
canmon/canmonitor/canmonitor:if [ -z "$JAVA_HOME" ] ; then
canmon/canmonitor/canmonitor:# -ea - enble assertions
canmon/canmonitor/canmonitor:$JAVA_HOME/bin/java -ea -jar $CANMON_DIR/lib/canmonitor.jar $@
canmon/canmonitor/canmonitor:#$JAVA_HOME/bin/java -cp lib/jdom.jar:class ocera/rtcan/monitor/CanMonitor $@
canmon/canmonitor/canmonitor.bat:@echo USAGE: canmonitor -p host -n node -f EDS_file
canmon/canmonitor/canmonitor.bat:%JAVA_HOME%\bin\javaw.exe -classpath class;%JAVA_HOME%\jre\lib\charsets.jar;%JAVA_HOME%\jre\lib\jaws.jar;%JAVA_HOME%\jre\lib\jce.jar;%JAVA_HOME%\jre\lib\jsse.jar;%JAVA_HOME%\jre\lib\rt.jar;%JAVA_HOME%\jre\lib\sunrsasign.jar;%JAVA_HOME%\jre\lib\ext\dnsns.jar;%JAVA_HOME%\jre\lib\ext\ldapsec.jar;%JAVA_HOME%\jre\lib\ext\localedata.jar;%JAVA_HOME%\jre\lib\ext\sunjce_provider.jar ocera.rtcan.monitor.CanMonitor %1 %2 %3 %4 %5 %6 %7 %8 %9 
canmon/canmonitor/example.eds:Line1=|---------------------------------------------------
canmon/canmonitor/example.eds:Line1=|--- WAGO Kontakttechnik                         ---
canmon/canmonitor/example.eds:Line1=|--- Hansastrasse 27                             ---
canmon/canmonitor/example.eds:Line1=|--- D-32423 Minden                              ---
canmon/canmonitor/example.eds:Line1=|--- Phone : +49 571 887-0 Fax : +49 571 887-555 ---
canmon/canmonitor/example.eds:Line1=|---                                             ---
canmon/canmonitor/example.eds:Line1=|--- Bearbeitung: WAGO                           ---
canmon/canmonitor/example.eds:Line1=|---------------------------------------------------
canmon/canmonitor/example.eds:FileName=750-307.eds
canmon/canmonitor/example.eds:Description=Basic EDS for the CANopen bus coupler 750-307
canmon/canmonitor/example.eds:CreationDate=03-20-98
canmon/canmonitor/example.eds:ModificationDate=11-24-00
canmon/canmonitor/example.eds:ProductNumber=750-307
canmon/canmonitor/example.eds:OrderCode=730-307
canmon/canmonitor/example.eds:ParameterName=pre-defined error field
canmon/canmonitor/example.eds:ParameterName=COB-ID SYNC message
canmon/canmonitor/example.eds:ParameterName=COB-ID guarding protocol
canmon/canmonitor/example.eds:ParameterName=COB-ID Emergency message
canmon/canmonitor/example.eds:ParameterName=COB_ID Client->Server (rx)
canmon/canmonitor/example.eds:ParameterName=COB_ID Server ->Client (tx)
canmon/canmonitor/example.eds:ParameterName=COB_ID Client->Server (rx)
canmon/canmonitor/example.eds:;ParameterName=COB_ID Server ->Client (tx)
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID TPDO2
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/example.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/make.ant:ANT=/usr/local/opt/apache-ant-1.6.5/bin/ant
canmon/canmonitor/makeant.bat:set ANT=/usr/local/opt/apache-ant-1.6.5/bin/ant
canmon/canmonitor/makeant.bat:rem %ANT% -verbose
canmon/canmonitor/nascan307.eds:Line1=|---------------------------------------------------
canmon/canmonitor/nascan307.eds:Line1=|--- WAGO Kontakttechnik                         ---
canmon/canmonitor/nascan307.eds:Line1=|--- Hansastrasse 27                             ---
canmon/canmonitor/nascan307.eds:Line1=|--- D-32423 Minden                              ---
canmon/canmonitor/nascan307.eds:Line1=|--- Phone : +49 571 887-0 Fax : +49 571 887-555 ---
canmon/canmonitor/nascan307.eds:Line1=|---                                             ---
canmon/canmonitor/nascan307.eds:Line1=|--- Bearbeitung: WAGO                           ---
canmon/canmonitor/nascan307.eds:Line1=|---------------------------------------------------
canmon/canmonitor/nascan307.eds:FileName=750-307.eds
canmon/canmonitor/nascan307.eds:Description=Basic EDS for the CANopen bus coupler 750-307
canmon/canmonitor/nascan307.eds:CreationDate=03-20-98
canmon/canmonitor/nascan307.eds:ModificationDate=11-24-00
canmon/canmonitor/nascan307.eds:ProductNumber=750-307
canmon/canmonitor/nascan307.eds:OrderCode=730-307
canmon/canmonitor/nascan307.eds:ParameterName=pre-defined error field
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID SYNC message
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID guarding protocol
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID Emergency message
canmon/canmonitor/nascan307.eds:ParameterName=COB_ID Client->Server (rx)
canmon/canmonitor/nascan307.eds:ParameterName=COB_ID Server ->Client (tx)
canmon/canmonitor/nascan307.eds:ParameterName=COB_ID Client->Server (rx)
canmon/canmonitor/nascan307.eds:;ParameterName=COB_ID Server ->Client (tx)
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID TPDO2
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/nascan307.eds:ParameterName=COB-ID used by PDO
canmon/canmonitor/xmlconf:if [ -z "$JAVA_HOME" ] ; then
canmon/canmonitor/xmlconf:$JAVA_HOME/bin/java -jar lib/xmlconf.jar $@
canmon/canmonitor/${java_class_dir}class/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class
canmon/canmonitor/${java_class_dir}class/ocera/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera
canmon/canmonitor/${java_class_dir}class/ocera/msg/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/msg
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CanOpen/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CanOpen
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CanOpen/ODNode.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CanOpen/ObjectDictionary.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/CanMonClient.class matches
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/eds/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan/eds
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/eds/EdsAttribute.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/eds/EdsNode.class matches
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/CVS/Entries:/eds-close.png/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/CVS/Entries:/file-open.png/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/CanMonitor.conf.xml:<?xml version="1.0" encoding="ISO-8859-2"?>
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/cancel.png matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/file-open.png matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/left.png matches
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/menu.xml:            <action caption="Open EDS" id="EdsOpen" icon="resources/file-open.png"
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/menu.xml:            <action caption="Close EDS" id="EdsClose" icon="resources/eds-close.png"
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/menu.xml:<!--
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/menu.xml:-->
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/menu.xml:<!--                <menuitem action="DeviceStatePreoperational"/>-->
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/ok.png matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/resources/right.png matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/AttrModel.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CANopenDevicePanel$1.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CANopenDevicePanel$2.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CANopenDevicePanel$3.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CANopenDevicePanel.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonStatusBar.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$1.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$10.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$11.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$2.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$4.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$6.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor$8.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/CanMonitor.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/ConfigDialog$1.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/ConfigDialog.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/monitor/LogTextAreaDocumentFilter.class matches
canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/CANDtgMsg.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/SDOConfirmMsg.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/SDODownloadRequestMsg.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/SDOMsgBase.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/SDOUploadConfirmMsg.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/SDOUploadRequestMsg.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/ServiceSetRawMsgParamsConfirm.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/rtcan/msg/ServiceSetRawMsgParamsRequest.class matches
canmon/canmonitor/${java_class_dir}class/ocera/util/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/util
canmon/canmonitor/${java_class_dir}class/ocera/util/xmlconfig/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/util/xmlconfig
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/xmlconfig/XmlConfElement.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/xmlconfig/XmlConfig.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/ConfigLookup.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/FFile.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/FFileFilter.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/FramedLayoutPanel.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/RoundQueue.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/util/StringParser.class matches
canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/xmlconf
canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources
canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/CVS/Entries:/file-open.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/CVS/Entries:/file-save-as.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/CVS/Entries:/file-save.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/copy.gif matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/file-save-as.gif matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/resources/file-save.gif matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConf$1.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConf.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$1.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$2.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$3.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$4.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$5.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$6.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$7.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$8.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel$9.class matches
Binary file canmon/canmonitor/${java_class_dir}class/ocera/xmlconf/XmlConfPanel.class matches
canmon/canmonitor/${java_class_dir}class/org/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/org
canmon/canmonitor/${java_class_dir}class/org/flib/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/org/flib
canmon/canmonitor/${java_class_dir}class/org/flib/net/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/org/flib/net
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/net/CClassProps.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/net/CField.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/net/CPickle.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/net/CPickleHead.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/net/CPickleOptions.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/FLog.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/flib/FString.class matches
canmon/canmonitor/${java_class_dir}class/org/jx/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/org/jx
canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui
Binary file canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui/XMLActionMapBuilder.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui/XMLMenuBuilder.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui/XMLToolbarBuilder.class matches
Binary file canmon/canmonitor/${java_class_dir}class/org/jx/xmlgui/XMLWidgetBuilder.class matches
canmon/canmonitor/${java_lib_dir}lib/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/${java_lib_dir}lib
Binary file canmon/canmonitor/${java_lib_dir}lib/canmonitor.jar matches
Binary file canmon/canmonitor/${java_lib_dir}lib/cpickle.jar matches
Binary file canmon/canmonitor/${java_lib_dir}lib/jdom.jar matches
Binary file canmon/canmonitor/${java_lib_dir}lib/ui.jar matches
Binary file canmon/canmonitor/${java_lib_dir}lib/xmlconf.jar matches
canmon/canmonitor/lib/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/lib
Binary file canmon/canmonitor/lib/jdom.jar matches
Binary file canmon/canmonitor/lib/ui.jar matches
canmon/canmonitor/src/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src
canmon/canmonitor/src/ocera/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera
canmon/canmonitor/src/ocera/msg/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/msg
canmon/canmonitor/src/ocera/msg/InfoMsg.java:	//-------------------------------------------------------------
canmon/canmonitor/src/ocera/msg/InfoMsg.java:	//-------------------------------------------------------------
canmon/canmonitor/src/ocera/rtcan/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan
canmon/canmonitor/src/ocera/rtcan/CanOpen/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/CanOpen
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:    public int len = -1;
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("UNKNOWN", -1), new DataTypeDef("BOOLEAN", 1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("TIME_OF_DAY", -1), new DataTypeDef("TIME_DIFERENCE", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("reserved", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("DOMAIN", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("reserved", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("reserved", -1), new DataTypeDef("reserved", -1), new DataTypeDef("reserved", -1), new DataTypeDef("reserved", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("PDO_COMMUNICATION_PARAMETER", -1), new DataTypeDef("PDO_MAPPING", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("SDO_PARAMETER", -1),
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:         new DataTypeDef("IDENTITY", -1)
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:    public byte accessType; //bitfield: 1 - read, 2 - write
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:        return Integer.toString(index, 16) + s + " - " + parameterName;
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:            return fields.length - attrOffset; // subindex node
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:            String s2 = FString.slice(s1, -2);
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:            s1 = FString.slice(s1, 0, -2);
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:     * <i>signum</i> function, which is defined to return one of <tt>-1</tt>,
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:     * -sgn(y.compareTo(x))</tt> for all <tt>x</tt> and <tt>y</tt>.  (This
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:        if(index < on.index) return -1;
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:        if(index < on.index) return -1;
canmon/canmonitor/src/ocera/rtcan/CanOpen/ODNode.java:        if(subIndex < on.subIndex) return -1;
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:                ret = -1;
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:        int ret = -1;
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:     * @return length of msg if succeed, -1 else.<br>
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:        int ret = -1;
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:            errMsg = "ERROR: PICKLE - " + e.getMessage();
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:            errMsg = "ERROR: unsuccesfull write to the socket - " + e.getMessage();
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:                FLog.log("CanMonClient", FLog.LOG_DEB, "--------------------------------");
canmon/canmonitor/src/ocera/rtcan/CanMonClient.java:                FLog.log("CanMonClient", FLog.LOG_ERR, "ERROR: invalid data received - " + e.getMessage());
canmon/canmonitor/src/ocera/rtcan/eds/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/eds
canmon/canmonitor/src/ocera/rtcan/eds/EdsNode.java:    public int index = -1;
canmon/canmonitor/src/ocera/rtcan/eds/EdsNode.java:    public int subindex = -1;
canmon/canmonitor/src/ocera/rtcan/eds/EdsNode.java:		return name + " - " + caption;
canmon/canmonitor/src/ocera/rtcan/monitor/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/monitor
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/monitor/forms
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:<?xml version="1.0" encoding="UTF-8"?>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="ocera.rtcan.monitor.CANopenDevicePanel">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:      <grid id="b0707" row-count="1" column-count="1" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                <preferred-size width="200" height="200"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:              <grid id="44b2a" row-count="1" column-count="1" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                  <grid id="c10c1" row-count="2" column-count="1" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                      <grid id="72fd0" row-count="1" column-count="6" hgap="5" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                          <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="4" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="5" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                                <preferred-size width="20" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                              <grid row="0" column="3" row-span="1" col-span="1" vsize-policy="1" hsize-policy="0" anchor="0" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                                <preferred-size width="30" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                          <grid row="1" column="0" row-span="1" col-span="1" vsize-policy="7" hsize-policy="7" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:      <grid id="85a8d" row-count="1" column-count="1" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:          <grid id="f94e" row-count="2" column-count="1" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                  <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="7" hsize-policy="7" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:              <grid id="eb582" row-count="1" column-count="2" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                  <grid row="1" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                      <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/CANopenDevice.form:                      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:<?xml version="1.0" encoding="UTF-8"?>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="ocera.rtcan.monitor.CanMonStatusBar">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:  <grid id="50574" binding="panel" row-count="1" column-count="3" hgap="5" vgap="0">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:      <grid id="88a6b" row-count="1" column-count="1" hgap="-1" vgap="0">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:          <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="2" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:      <grid id="d9fa2" row-count="1" column-count="1" hgap="-1" vgap="0">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:          <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="3">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:            <preferred-size width="50" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:      <grid id="5d01b" row-count="1" column-count="1" hgap="-1" vgap="0">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:          <grid row="0" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="3">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:            <preferred-size width="50" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonStatusBar.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:<?xml version="1.0" encoding="UTF-8"?>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="ocera.rtcan.monitor.CanMonitor">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:      <grid id="f94e" row-count="3" column-count="1" hgap="3" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:              <grid row="1" column="0" row-span="1" col-span="1" vsize-policy="7" hsize-policy="7" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:          <grid id="eb582" row-count="1" column-count="3" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:              <grid row="2" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:              <grid id="f1cd" row-count="2" column-count="11" hgap="5" vgap="0">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="6" anchor="8" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                        <minimum-size width="50" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="5" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="7" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="5" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="7" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="4" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="6" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="8" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="4" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="6" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="8" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="9" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="9" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="0" column="10" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                      <grid row="1" column="10" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="2" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:          <grid id="f4663" binding="lblRawId" row-count="1" column-count="11" hgap="-1" vgap="-1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:              <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="10" row-span="1" col-span="1" vsize-policy="1" hsize-policy="3" anchor="1" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="9" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="2" anchor="8" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                    <preferred-size width="70" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="1" row-span="1" col-span="1" vsize-policy="1" hsize-policy="2" anchor="0" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                    <minimum-size width="30" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="6" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="7" row-span="1" col-span="1" vsize-policy="0" hsize-policy="2" anchor="8" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                    <preferred-size width="70" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="8" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="4" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0"/>
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                  <grid row="0" column="5" row-span="1" col-span="1" vsize-policy="1" hsize-policy="2" anchor="0" fill="1">
canmon/canmonitor/src/ocera/rtcan/monitor/forms/FormCanMonitor.form:                    <minimum-size width="30" height="-1"/>
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:                index = subindex = -1;
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:                    s = FString.slice(s, 1, -1);
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:                    if(index != -1 && subindex == -1) {
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:                    else if(index != -1 && subindex != -1) {
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        //int oldix = -1;
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:                nd.subIndex = -1;
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        FLog.log(getClass().getName(), FLog.LOG_TRASH, "node " + getNodeID() + " - tasteObject() - " + o);
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:            ErrorMsg.show(this, "ABORT - " + msg.errmsg);
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:            ErrorMsg.show(this, "ERROR - " + msg.errmsg);
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _2.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _4.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _5.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(2, 1, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _6.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 6, new Insets(2, 3, 0, 3), 5, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _6.add(_11, new com.intellij.uiDesigner.core.GridConstraints(0, 5, 1, 1, 8, 1, 0, 0, null, new Dimension(20, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _6.add(_12, new com.intellij.uiDesigner.core.GridConstraints(0, 3, 1, 1, 0, 1, 0, 1, null, new Dimension(30, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _17.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new Insets(3, 5, 3, 5), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _18.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(2, 1, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CANopenDevicePanel.java:        _21.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 2, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonStatusBar.java:        _2.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new java.awt.Insets(0, 0, 0, 0), -1, 0));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonStatusBar.java:        _4.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new java.awt.Insets(0, 0, 0, 0), -1, 0));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonStatusBar.java:        _1.add(_4, new com.intellij.uiDesigner.core.GridConstraints(0, 1, 1, 1, 0, 3, 0, 0, null, new java.awt.Dimension(50, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonStatusBar.java:        _6.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 1, new java.awt.Insets(0, 0, 0, 0), -1, 0));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonStatusBar.java:        _1.add(_6, new com.intellij.uiDesigner.core.GridConstraints(0, 2, 1, 1, 0, 3, 0, 0, null, new java.awt.Dimension(50, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:            if(FString.charAt(s, 0) == '-') {
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:                    System.out.println("USAGE: cammonitor -a host -n node -e EDS_file_name -v -g debug_level\n");
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        super("CANopen monitor - Beta 0.9");
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _2.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(3, 1, new Insets(3, 3, 0, 0), 3, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _5.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 3, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _6.add(_7, new com.intellij.uiDesigner.core.GridConstraints(1, 0, 1, 1, 8, 1, 6, 6, new Dimension(50, -1), null, null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _31.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(1, 11, new Insets(0, 0, 0, 0), -1, -1));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _31.add(_35, new com.intellij.uiDesigner.core.GridConstraints(0, 3, 1, 1, 8, 1, 2, 0, null, new Dimension(70, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _31.add(_37, new com.intellij.uiDesigner.core.GridConstraints(0, 1, 1, 1, 0, 1, 2, 1, new Dimension(30, -1), null, null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _31.add(_39, new com.intellij.uiDesigner.core.GridConstraints(0, 7, 1, 1, 8, 1, 2, 0, null, new Dimension(70, -1), null));
canmon/canmonitor/src/ocera/rtcan/monitor/CanMonitor.java:        _31.add(_42, new com.intellij.uiDesigner.core.GridConstraints(0, 5, 1, 1, 0, 1, 2, 1, new Dimension(30, -1), null, null));
canmon/canmonitor/src/ocera/rtcan/monitor/manifest:Manifest-Version: 1.0
canmon/canmonitor/src/ocera/rtcan/monitor/manifest:Class-Path: jdom.jar ui.jar
canmon/canmonitor/src/ocera/rtcan/monitor/manifest:Main-Class: ocera.rtcan.monitor.CanMonitor
canmon/canmonitor/src/ocera/rtcan/monitor/resources/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/monitor/resources
canmon/canmonitor/src/ocera/rtcan/monitor/resources/CVS/Entries:/eds-close.png/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/src/ocera/rtcan/monitor/resources/CVS/Entries:/file-open.png/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/src/ocera/rtcan/monitor/resources/CanMonitor.conf.xml:<?xml version="1.0" encoding="ISO-8859-2"?>
Binary file canmon/canmonitor/src/ocera/rtcan/monitor/resources/cancel.png matches
Binary file canmon/canmonitor/src/ocera/rtcan/monitor/resources/file-open.png matches
Binary file canmon/canmonitor/src/ocera/rtcan/monitor/resources/left.png matches
canmon/canmonitor/src/ocera/rtcan/monitor/resources/menu.xml:            <action caption="Open EDS" id="EdsOpen" icon="resources/file-open.png"
canmon/canmonitor/src/ocera/rtcan/monitor/resources/menu.xml:            <action caption="Close EDS" id="EdsClose" icon="resources/eds-close.png"
canmon/canmonitor/src/ocera/rtcan/monitor/resources/menu.xml:<!--
canmon/canmonitor/src/ocera/rtcan/monitor/resources/menu.xml:-->
canmon/canmonitor/src/ocera/rtcan/monitor/resources/menu.xml:<!--                <menuitem action="DeviceStatePreoperational"/>-->
Binary file canmon/canmonitor/src/ocera/rtcan/monitor/resources/ok.png matches
Binary file canmon/canmonitor/src/ocera/rtcan/monitor/resources/right.png matches
canmon/canmonitor/src/ocera/rtcan/msg/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/rtcan/msg
canmon/canmonitor/src/ocera/rtcan/msg/SDOConfirmMsg.java: * (C) Copyright 9:03:55 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDOConfirmMsg.java:        String s = "SDO confirmation - ";
canmon/canmonitor/src/ocera/rtcan/msg/SDOConfirmMsg.java:            s += "ABORT: " + code + " - '" + errmsg + "'\n";
canmon/canmonitor/src/ocera/rtcan/msg/SDOConfirmMsg.java:            s += "ERROR: " + code + " - '" + errmsg + "'\n";
canmon/canmonitor/src/ocera/rtcan/msg/SDODownloadConfirmMsg.java: * (C) Copyright 10:58:32 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDODownloadRequestMsg.java: * (C) Copyright 10:56:53 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDODownloadRequestMsg.java:        String s = "SDO download request - ";
canmon/canmonitor/src/ocera/rtcan/msg/SDOMsgBase.java: * (C) Copyright 2:04:17 PM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDOUploadConfirmMsg.java: * (C) Copyright 1:54:04 PM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDOUploadRequestMsg.java: * (C) Copyright 1:54:04 PM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/SDOUploadRequestMsg.java:        String s = "SDO upload request - ";
canmon/canmonitor/src/ocera/rtcan/msg/ServiceConfirmMsg.java: * (C) Copyright 10:48:17 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/ServiceMsgBase.java: * (C) Copyright 10:47:20 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/ServiceSetRawMsgParamsConfirm.java: * (C) Copyright 11:21:22 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/rtcan/msg/ServiceSetRawMsgParamsRequest.java: * (C) Copyright 9:03:55 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/ocera/util/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/util
canmon/canmonitor/src/ocera/util/xmlconfig/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/util/xmlconfig
canmon/canmonitor/src/ocera/util/xmlconfig/XmlConfig.java: * &lt;?xml version="1.0" encoding="windows-1250"?>
canmon/canmonitor/src/ocera/util/xmlconfig/XmlConfig.java:          System.err.println(uri + " is not well-formed.");
canmon/canmonitor/src/ocera/util/xmlconfig/XmlConfig.java:        serializer.setEncoding("ISO-8859-2");
canmon/canmonitor/src/ocera/util/FFile.java://-----------------------------------------------------------------------------	
canmon/canmonitor/src/ocera/util/FFile.java://-----------------------------------------------------------------------------
canmon/canmonitor/src/ocera/util/FFile.java:					System.err.println(fileName + " - IO_error_close");
canmon/canmonitor/src/ocera/util/FFile.java://-----------------------------------------------------------------------------
canmon/canmonitor/src/ocera/util/FFile.java://-----------------------------------------------------------------------------	
canmon/canmonitor/src/ocera/util/FFileFilter.java: * Example - create a new filter that filerts out all files
canmon/canmonitor/src/ocera/util/FFileFilter.java:            if(i>0 && i<filename.length()-1) {
canmon/canmonitor/src/ocera/util/FramedLayoutPanel.java:            g.drawRect(p.x, p.y, p.x + width-1, p.y + height-1);
canmon/canmonitor/src/ocera/util/FramedLayoutPanel.java:                    g.drawRect(xpos, ypos, width-1, height-1);
canmon/canmonitor/src/ocera/util/FramedLayoutPanel.java:                    g.drawRect(xpos+1, ypos+1, width-3, height-3);
canmon/canmonitor/src/ocera/util/RoundQueue.java:            System.arraycopy(vec, first, newvec, 0, vec.length - first);
canmon/canmonitor/src/ocera/util/RoundQueue.java:            System.arraycopy(vec, 0, newvec, vec.length - first, size - (vec.length - first));
canmon/canmonitor/src/ocera/util/RoundQueue.java:        if (first + size >= vec.length) vec[first + size - vec.length] = o;
canmon/canmonitor/src/ocera/util/RoundQueue.java:        size--;
canmon/canmonitor/src/ocera/util/StringParser.java://--------------------------------------------------------------
canmon/canmonitor/src/ocera/util/StringParser.java:	//--------------------------------------------------------------
canmon/canmonitor/src/ocera/util/StringParser.java:	 * @param s - splitted string
canmon/canmonitor/src/ocera/util/StringParser.java:	 * @return String[] - an array containing delimited parts of s
canmon/canmonitor/src/ocera/util/StringParser.java:	 * @param s - cutted string
canmon/canmonitor/src/ocera/util/StringParser.java:			if(s.length() > 1) if(s.charAt(0) == fieldQuote) sa[0] = s.substring(1, s.length() - 1);
canmon/canmonitor/src/ocera/util/StringParser.java://--------------------------------------------------------------
canmon/canmonitor/src/ocera/util/StringParser.java://--------------------------------------------------------------
canmon/canmonitor/src/ocera/xmlconf/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/xmlconf
canmon/canmonitor/src/ocera/xmlconf/resources/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/ocera/xmlconf/resources
canmon/canmonitor/src/ocera/xmlconf/resources/CVS/Entries:/file-open.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/src/ocera/xmlconf/resources/CVS/Entries:/file-save-as.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
canmon/canmonitor/src/ocera/xmlconf/resources/CVS/Entries:/file-save.gif/1.1.1.1/Thu Oct  6 19:31:08 2005//
Binary file canmon/canmonitor/src/ocera/xmlconf/resources/copy.gif matches
Binary file canmon/canmonitor/src/ocera/xmlconf/resources/file-save-as.gif matches
Binary file canmon/canmonitor/src/ocera/xmlconf/resources/file-save.gif matches
canmon/canmonitor/src/ocera/xmlconf/XmlConf.java:        String[][] itemKeys = {{"file", "new", "open", "save", "saveAs", "-", "quit"}};
canmon/canmonitor/src/ocera/xmlconf/XmlConf.java:                    if (itemKeys[j][i].equals("-")) {
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:        //ImageIcon ico = new ImageIcon("./ocera/xmlconf/resources/file-open.gif");
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:        URL url = this.getClass().getResource("resources/file-open.gif");
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:        url = this.getClass().getResource("resources/file-save-as.gif");
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:        url = this.getClass().getResource("resources/file-save.gif");
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:     * FIXME - I'm not very useful yet
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java:     * Find the hosting frame, for the file-chooser dialog.
canmon/canmonitor/src/ocera/xmlconf/XmlConfPanel.java://        getWindow().setTitle("Xml Configurator - " + fname);
canmon/canmonitor/src/ocera/xmlconf/manifest:Manifest-Version: 1.0
canmon/canmonitor/src/ocera/xmlconf/manifest:Class-Path: jdom.jar
canmon/canmonitor/src/ocera/xmlconf/manifest:Main-Class: ocera.xmlconf.XmlConf
canmon/canmonitor/src/org/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org
canmon/canmonitor/src/org/flib/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org/flib
canmon/canmonitor/src/org/flib/net/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org/flib/net
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("getCType() - unsupported type '" + type + "'");
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("getCSize() - unsupported type '" + type + "'");
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("getCAlignFnc() - unsupported type '" + type + "'");
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("putToBuffer() - unsupported array type " + type);
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("putToBuffer() - CPickle.arraySizeTypeLen: " + opts.arraySizeTypeLen + " unsupported");
canmon/canmonitor/src/org/flib/net/CPickle.java:                throw new CPickleException("putToBuffer() - Field '" + fld.getName() + "': unsupported type '" + type + "'");
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("putToBuffer() - " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("getFromBuffer() - unsupported array type " + type);
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("getFromBuffer() - CPickle.arraySizeTypeLen: " + opts.arraySizeTypeLen + " unsupported");
canmon/canmonitor/src/org/flib/net/CPickle.java:                throw new CPickleException("getFromBuffer() - Field '" + fld.getName() + "': unsupported type '" + fld.getType() + "'");
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("getFromBuffer() - " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:        //FLog.log(getClass().toString(), FLog.LOG_TRASH,  "putToBuffer('" + c.getName() + "') - buffer position: " + bb.position() + " size: " + bb.capacity());
canmon/canmonitor/src/org/flib/net/CPickle.java:                throw new CPickleException("getPickledObjectSize() - String arrays are not supported.");
canmon/canmonitor/src/org/flib/net/CPickle.java:                        throw new CPickleException("getFromBuffer() - unsupported array type " + type);
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("getPickledFieldSize() '" + fld.getName() + "' - unsupported array type");
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("getPickledObjectSize() - " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:        String s = "\n\nCPickle -c class_names [--use-package-names] [--long-arrays] [-d output_dir]" +
canmon/canmonitor/src/org/flib/net/CPickle.java:                " [--debug-print] [--cpp-extension ext]\n\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "Generates headers needed for C - C++ - Java socket communication.\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "class_names - it is a coma separated list of class names to parse.\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "-cpp: generate C++ implementation code (default is C).\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "--use-package-names: C/C++ type will contains class package name\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "--long-arrays: int64_t will be used for String and arrays size coding instead of int32_t\n\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "--debug-print: include debug printf() to generated code\n\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:        s += "--cpp-extension ext: use .ext as extension of generated C++ sources (default is cc)\n\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("-c")) {class_names = args[++i]; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("-cpp")) {opts.generate_cpp_code = true; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("-d")) {out_dir = args[++i]; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("--cpp-extension")) {CPP_EXTENSION = args[++i]; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("-h")) {help(); System.exit(0);}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("--use-package-names")) {opts.use_package_names = true; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("--long-arrays")) {opts.setArraySizeTypeLen(4); continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            if(arg.equals("--debug-print")) {opts.debug_print = true; continue;}
canmon/canmonitor/src/org/flib/net/CPickle.java:            System.err.println("You should specify generated classes (-c switch)");
canmon/canmonitor/src/org/flib/net/CPickle.java:     * @return -1 if field is not array<br>
canmon/canmonitor/src/org/flib/net/CPickle.java:        if(!fld.getType().isArray()) return -1; // not an array
canmon/canmonitor/src/org/flib/net/CPickle.java:            throw new CPickleException("getCArrayDeclaredLen() - " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:            //throw new CPickleException("getCArrayDeclaredLen() - " + meta_field_name + " not found - " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:            "    char operator[](int pos) const {return ((const QString*)this)->operator[](pos).toAscii();}\n" +
canmon/canmonitor/src/org/flib/net/CPickle.java:            "    char operator[](int pos) const {return ((const QString*)this)->operator[](pos);}\n" +
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("writeDefinition() - this should never happen. " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:                    throw new CPickleException("writeDefinition() - this should never happen. " + e.getMessage());
canmon/canmonitor/src/org/flib/net/CPickle.java:            c_this = "o->";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    " + ccp.sc_name + "_init(&(o->super));\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        throw new CPickleException("getPickledObjectSize() - String arrays are not supported.");
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "    if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "    size += " + ccp.sc_name + "_getObjectBufferSize(&(o->super));\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        throw new CPickleException("getPickledObjectSize() - String arrays are not supported.");
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "    if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "    size += o->" + CField.getCName(fld) + "_arraylen" +
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "    size += strlen(o->" + CField.getCName(fld) + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "    int i = " + ccp.sc_name + "::pickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        if(len + sizeof(arraylen) > (size_t)buff_len) return -2;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "            if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -3;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        if(len + arraylen + " + CField.getCSize(jtype, pickleOptions) + " > (size_t)buff_len) return -4;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "            buffer[len+i] = (uint8_t)((const " + ccp.c_name + "*)this)->" + cfldname + "[i];\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -5;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            //s += "    if(len != packetlen) return -6;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "        i = " + ccp.sc_name + "_pickleObject(&(o->super), buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        arraylen = o->" + cfldname + "_arraylen;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        if(len + sizeof(arraylen) > (size_t)buff_len) return -2;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "            if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "            if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -3;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "            *(/*packed*/ " + ctype + "*)(buffer + len) = " + fnc + "(o->" + cfldname + "[i]); len += sizeof(" + ctype + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        arraylen = strlen(o->" + cfldname + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        if(len + arraylen + " + CField.getCSize(jtype, pickleOptions) + " > (size_t)buff_len) return -4;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        memcpy(buffer + len, o->" + cfldname + ", ++arraylen);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -5;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    *(/*packed*/ " + ctype + "*)(buffer + len) = " + fnc + "(o->" + cfldname + "); len += sizeof(" + ctype + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            //s += "    if(len != packetlen) return -6;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    if(len > (size_t)buff_len) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = head.pickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = class_def.pickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = pickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    if(len > (size_t)buff_len) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + pickledPacketHead_cname + "_pickleObject(&head, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + pickledClassDef_cname + "_pickleObject(&class_def, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + ccp.c_name + "_pickleObject(o, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "        int i = " + ccp.sc_name + "::unpickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "            if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -3;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        if(len + string_size + 1 > (size_t)buff_len) return -2;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -4;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            //s += "    if(len != packetlen) return -5;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                s += "        i = " + ccp.sc_name + "_unpickleObject(&(o->super), buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        o->" + cfldname + "_arraylen = arraylen;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "        o->" + cfldname + " = (/*packed*/ " + ctype + "*)(buffer + len); len += arraylen * sizeof(" + ctype + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "            if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "            if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -3;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                        s += "            o->" + cfldname + "[i] = " + fnc + "(*(/*packed*/ " + ctype + "*)(buffer + len)); len += sizeof(" + ctype + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        if(!o) return -1;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        if(len + arraylen + 1 > (size_t)buff_len) return -2;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "        o->" + cfldname + " = buffer+len;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    if(len + sizeof(" + ctype + ") > (size_t)buff_len) return -4;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:                    s += "    o->" + cfldname + " = " + fnc + "(*(/*packed*/ " + ctype + "*)(buffer + len)); len += sizeof(" + ctype + ");\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            //s += "    if(len != packetlen) return -5;\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = head.unpickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = class_def.unpickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = unpickle(buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + pickledPacketHead_cname + "_unpickleObject(&head, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + pickledClassDef_cname + "_unpickleObject(&class_def, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:            s += "    i = " + ccp.c_name + "_unpickleObject(o, buffer+len, buff_len-len);\n";
canmon/canmonitor/src/org/flib/net/CPickle.java:     * 2 (deault) - int16_t will be used - max size of pickled array or String is 0x7FFF, negative values are reserved for NULL<br>
canmon/canmonitor/src/org/flib/net/CPickle.java:     * 4 - int32_t will be used - max size of pickled array or String is 0x7FFFFFFE<br>
canmon/canmonitor/src/org/flib/net/CPickleException.java: * (C) Copyright 10:36:09 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/org/flib/net/NotCPickleDataException.java: * (C) Copyright 11:58:44 AM by Frantisek Vacek - Originator
canmon/canmonitor/src/org/flib/net/manifest:Manifest-Version: 1.0
canmon/canmonitor/src/org/flib/net/manifest:Class-Path: 
canmon/canmonitor/src/org/flib/net/manifest:Main-Class: org.flib.net.CPickle
canmon/canmonitor/src/org/flib/CondVar.java: * (C) Copyright 3:28:27 PM by Frantisek Vacek - Originator
canmon/canmonitor/src/org/flib/FString.java:        return s.substring(l-len, l);
canmon/canmonitor/src/org/flib/FString.java:        if(d >= 0xA) s += (char)(d-0xA + 'A'); else s += (char)(d + '0');
canmon/canmonitor/src/org/flib/FString.java:        if(d >= 0xA) s += (char)(d-0xA + 'A'); else s += (char)(d + '0');
canmon/canmonitor/src/org/jx/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org/jx
canmon/canmonitor/src/org/jx/xmlgui/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org/jx/xmlgui
canmon/canmonitor/src/org/jx/xmlgui/resources/CVS/Repository:ts-7200/dist/ocera_comm_can/canmon/canmonitor/src/org/jx/xmlgui/resources
Binary file canmon/canmonitor/src/org/jx/xmlgui/resources/empty18.png matches
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:            FLog.log("XMLActionMapBuilder", FLog.LOG_ERR, "buildFrom() - URL is NULL");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:        FLog.log("XMLActionMapBuilder", FLog.LOG_DEB, "buildFrom() - build from URL: " + url.toString());
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:          System.err.println(url + " is not well-formed.");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:        FLog.log("XMLActionMapBuilder", FLog.LOG_DEB, "buildFrom() - open URL '" + resource_file_name + "'");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:            FLog.log("XMLActionMapBuilder", FLog.LOG_ERR, "buildFrom() - element name should be <actionmap>");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:            FLog.log("XMLActionMapBuilder", FLog.LOG_ERR, "buildAction() - element name should be <action>");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:            FLog.log("XMLActionMapBuilder", FLog.LOG_ERR, "buildAction() - missing id attribute");
canmon/canmonitor/src/org/jx/xmlgui/XMLActionMapBuilder.java:            int offset = c - 'A';
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:/* -*- Mode: java; indent-tabs-mode: nil; c-basic-offset: 2 -*-
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:        FLog.log("XMLMenuBuilder", FLog.LOG_ERR, "buildFrom() - URL is NULL");
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:      FLog.log("XMLMenuBuilder", FLog.LOG_DEB, "buildFrom() - build from URL: " + url.toString());
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:        System.err.println(url + " is not well-formed.");
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:        FLog.log("XMLMenuBuilder", FLog.LOG_DEB, "buildFrom() - open URL '" + resource_file_name + "'");
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java://          throw new Exception("XMLMenuBuilder.buildFrom() - element name should be <menubar>");
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:            FLog.log("XMLMenuBuilder", FLog.LOG_ERR, "buildFrom() - element name should be <menubar>");
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:    //            FLog.log("XMLMenuBuilder", FLog.LOG_DEB, "buildMenu() - adding menu item: " + comp.getClass().toString());
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:        nestCnt--;
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java://        FLog.log("XMLMenuBuilder", FLog.LOG_DEB, "buildMenuItem() - element: " + current.toString()
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:        //FLog.log("XMLMenuBuilder", FLog.LOG_DEB, "buildMenuItem() - new menu item label: " + item.getText() + " icon: " + item.getIcon());
canmon/canmonitor/src/org/jx/xmlgui/XMLMenuBuilder.java:            int offset = c - 'A';
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:            FLog.log("XMLToolbarBuilder", FLog.LOG_ERR, "buildFrom() - URL is NULL");
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:        FLog.log("XMLToolbarBuilder", FLog.LOG_DEB, "buildFrom() - build from URL: " + url.toString());
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:          System.err.println(url + " is not well-formed.");
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:        FLog.log("XMLToolbarBuilder", FLog.LOG_DEB, "buildFrom() - open URL '" + resource_file_name + "'");
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:            FLog.log("XMLActionMapBuilder", FLog.LOG_ERR, "buildFrom() - element name should be <toolbar>");
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:                FLog.log("XMLToolbarBuilder", FLog.LOG_ERR, "buildComponent() - missing action_id attribute");
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:                    //FLog.log("XMLToolbarBuilder", FLog.LOG_ERR, "buildComponent() - ICON: " + ico.getImageLoadStatus());
canmon/canmonitor/src/org/jx/xmlgui/XMLToolbarBuilder.java:            FLog.log("XMLToolbarBuilder", FLog.LOG_ERR, "buildComponent() - element name unsupported: " + s);
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:/* -*- Mode: java; indent-tabs-mode: nil; c-basic-offset: 2 -*-
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:            //FLog.log("XMLActionMapBuilder", FLog.LOG_DEB, "loadEmptyIcon() - class is null");
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:        //FLog.log("XMLActionMapBuilder", FLog.LOG_DEB, "loadEmptyIcon() - class: " + c.toString());
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:        FLog.log("XMLActionMapBuilder", FLog.LOG_DEB, "loadEmptyIcon() - icon: " + ico);
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:                //FLog.log("XMLWidgetBuilder", FLog.LOG_DEB, "setConfiguration() - read: '" + resource + "'");
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:                    FLog.log("XMLWidgetBuilder", FLog.LOG_ERR, "setConfiguration() - properties '" + resource + "' not found");
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java:                    FLog.log("XMLWidgetBuilder", FLog.LOG_DEB, "setConfiguration() - loading properties: '" + linkURL.toExternalForm() + "'");
canmon/canmonitor/src/org/jx/xmlgui/XMLWidgetBuilder.java://      FLog.log("XMLWidgetBuilder", FLog.LOG_DEB, "getReferencedLabel() - looking for attr: " + attr + " found: " + label);
canvca/CVS/Repository:ts-7200/dist/ocera_comm_can/canvca
canvca/cantest/CVS/Repository:ts-7200/dist/ocera_comm_can/canvca/cantest
canvca/cantest/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canvca/cantest/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canvca/cantest/README:  1 - START
canvca/cantest/README:  2 - STOP
canvca/cantest/README:128 - PREOPERATIONAL
canvca/cantest/README:129 - RESET NODE
canvca/cantest/README:130 - RESET COMMUNICATION
canvca/cantest/readcan.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
canvca/cantest/readcan.c:    if(argc == 2 && argv[1][0] == '-' && argv[1][1] == 'h') {
canvca/cantest/readcan.c:	/*------- register handler on SIGINT signal -------*/
canvca/cantest/readcan.c:	/*---------------------------------------*/	
canvca/cantest/sendcan.c:	if(argc < 2 || (argc == 2 && args[1][0] == '-' && args[1][1] == 'h')) {
canvca/cantest/sendcan.c:            "\t-d can_device (default is %s)\n";
canvca/cantest/sendcan.c:    if(argc > 3 && args[1][0] == '-' && args[1][1] == 'd') {
canvca/cantest/sendcan.c:    sendmsg.length = argc - msg_arg;
canvca/cantest/sendcan.c:        sendmsg.data[i-msg_arg] = strtol(args[i], 0, 16);
canvca/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canvca/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canvca/doc/CVS/Repository:ts-7200/dist/ocera_comm_can/canvca/doc
canvca/doc/Makefile:KERNELDOC=$(CURDIR)/../../utils/scripts/kernel-doc
canvca/doc/Makefile:#KERNELDOC=$(TOPDIR)/scripts/kernel-doc
canvca/doc/Makefile:	rm -f *.sgml *.html *.log *.aux
canvca/doc/can_vca.sgml:<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN"[]>
canvca/doc/can_vca.sgml:<!--
canvca/doc/can_vca.sgml:<!DOCTYPE book PUBLIC "-//Norman Walsh//DTD DocBk XML V4.1.2//EN" []>
canvca/doc/can_vca.sgml:-->
canvca/doc/can_vca.sgml:     MA 02111-1307 USA
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-h2log">vca_h2log</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-open-handle">vca_open_handle</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-close-handle">vca_close_handle</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-send-msg-seq">vca_send_msg_seq</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-rec-msg-seq">vca_rec_msg_seq</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-wait">vca_wait</phrase></refentrytitle>
canvca/doc/can_vca.sgml:      0,1 =&gt; wait for Rx message, 2 =&gt; wait for Tx - free
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-log">vca_log</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-log-redir">vca_log_redir</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcaod-root-t">struct vcaod_root_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcaod-object-t">struct vcaod_object_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:          subindex of subobject or -1 if object is not subobject
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API--vcaod-find-object">_vcaod_find_object</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcaod-get-value">vcaod_get_value</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcaod-set-value">vcaod_set_value</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcaod-od-free">vcaod_od_free</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcaod-load-eds">vcaod_load_eds</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcaod-dump-od">vcaod_dump_od</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-gethex">vca_gethex</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-strmatch">vca_strmatch</phrase></refentrytitle>
canvca/doc/can_vca.sgml:   or negative value (number of partially matched chars from str - 1) 
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-msg2str">vca_msg2str</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-byte2str">vca_byte2str</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vca-str2msg">vca_str2msg</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcasdo-fsm-t">struct vcasdo_fsm_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:    SDO client-server port (default is 0x600), port on which slave listen
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-read-multiplexor">vcasdo_read_multiplexor</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-error-msg">vcasdo_error_msg</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-init-fsm">vcasdo_init_fsm</phrase></refentrytitle>
canvca/doc/can_vca.sgml:      port to use for server-&gt;client communication (default 0x850 used if <constant>srvcli_port</constant>==0)
canvca/doc/can_vca.sgml:      port to use for client-&gt;server communication (default 0x600 used if <constant>clisrv_port</constant>==0)
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-destroy-fsm">vcasdo_destroy_fsm</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-idle">vcasdo_fsm_idle</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-run">vcasdo_fsm_run</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-abort">vcasdo_fsm_abort</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-upload">vcasdo_fsm_upload</phrase></refentrytitle>
canvca/doc/can_vca.sgml:      port to use for server-&gt;client communication (default 0x850 used if <constant>srvcli_port</constant>==0)
canvca/doc/can_vca.sgml:      port to use for client-&gt;server communication (default 0x600 used if <constant>clisrv_port</constant>==0)
canvca/doc/can_vca.sgml:   Returns not 0 if <constant>fsm-</constant>&gt;out_msg contains CAN message to sent
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-download">vcasdo_fsm_download</phrase></refentrytitle>
canvca/doc/can_vca.sgml:      port to use for server-&gt;client communication (default 0x850 used if <constant>srvcli_port</constant>==0)
canvca/doc/can_vca.sgml:      port to use for client-&gt;server communication (default 0x600 used if <constant>clisrv_port</constant>==0)
canvca/doc/can_vca.sgml:   Returns not 0 if <constant>fsm-</constant>&gt;out_msg contains CAN message to sent
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcasdo-fsm-taste-msg">vcasdo_fsm_taste_msg</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcapdolst-root-t">struct vcapdolst_root_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcapdo-mapping-t">struct vcapdo_mapping_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-struct-vcapdolst-object-t">struct vcapdolst_object_t</phrase></refentrytitle>
canvca/doc/can_vca.sgml:        synchronous PDO vil be processed every n-th SYNC message
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcapdo-pdos-create">vcapdo_pdos_create</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcapdo-pdos-destroy">vcapdo_pdos_destroy</phrase></refentrytitle>
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-pdo-init">pdo_init</phrase></refentrytitle>
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.sgml:     0 - object successfully created
canvca/doc/can_vca.sgml:   1 - object should not be created
canvca/doc/can_vca.sgml:   -1 - object creation error
canvca/doc/can_vca.sgml:<refentrytitle><phrase id="API-vcapdo-pdos-create">vcapdo_pdos_create</phrase></refentrytitle>
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.sgml:     -- undescribed --
canvca/doc/can_vca.tmpl:<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN"[]>
canvca/doc/can_vca.tmpl:<!--
canvca/doc/can_vca.tmpl:<!DOCTYPE book PUBLIC "-//Norman Walsh//DTD DocBk XML V4.1.2//EN" []>
canvca/doc/can_vca.tmpl:-->
canvca/doc/can_vca.tmpl:     MA 02111-1307 USA
canvca/doc/can_vca.tmpl:<!--!F../libvca/can.h-->
canvca/libvca/CVS/Repository:ts-7200/dist/ocera_comm_can/canvca/libvca
canvca/libvca/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
canvca/libvca/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
canvca/libvca/Makefile.omk:# RT-Linux version of build
canvca/libvca/Makefile.omk:rtlinux_INCLUDES = -DUL_WITH_RTL_MALLOC
canvca/libvca/canmsg.h: * struct canmsg_t - structure representing CAN message
canvca/libvca/canmsg.h: * struct canfilt_t - structure for acceptance filter setup
canvca/libvca/canmsg.h:#define MSG_ID_MASK ((1l<<29)-1)
canvca/libvca/eds_utils.c:    // -------------- log levels ------------------
canvca/libvca/eds_utils.c://-----------------------------------------------------------------
canvca/libvca/eds_utils.c:    if(line->len) line_no++;
canvca/libvca/eds_utils.c:    return line->len - 1;   // ignore terminating zero
canvca/libvca/eds_utils.c://-----------------------------------------------------------------
canvca/libvca/eds_utils.c:    is_subindex = (item->subcnt == 0);
canvca/libvca/eds_utils.c:        if(!line->len || !line->data[0]) {
canvca/libvca/eds_utils.c:        if(line->data[0] == '[') break; // next index/subindex definition
canvca/libvca/eds_utils.c:        l = ul_str_cpos(line->data, '=', 0);
canvca/libvca/eds_utils.c:            line->data[l] = '\0'; 
canvca/libvca/eds_utils.c:            if(vca_strmatch(line->data, "ParameterName") > 0) {
canvca/libvca/eds_utils.c:                ul_str_ncpy(item->name, line->data + l + 1, VCAOD_OBJECT_NAME_LEN);
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "SubNumber") > 0) { 
canvca/libvca/eds_utils.c:                item->subcnt = strtol(line->data + l + 1, NULL, 0);
canvca/libvca/eds_utils.c:                if(errno) item->subcnt = 0;
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "ObjectType") > 0) { 
canvca/libvca/eds_utils.c:                item->object_type = strtol(line->data + l + 1, NULL, 0);
canvca/libvca/eds_utils.c:                if(errno) item->object_type = 0;
canvca/libvca/eds_utils.c:                if(is_subindex) switch(item->object_type) {
canvca/libvca/eds_utils.c:                                item->index, item->subindex, item->object_type, od_item_type2str(item->object_type));
canvca/libvca/eds_utils.c:                        item->object_type = vcaod_object_type_VAR;
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "DataType") > 0) { 
canvca/libvca/eds_utils.c:                item->data_type = strtol(line->data + l + 1, NULL, 0);
canvca/libvca/eds_utils.c:                if(errno) item->data_type = 0;
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "AccessType") > 0) {
canvca/libvca/eds_utils.c:                unsigned char *pc = line->data + l + 1;
canvca/libvca/eds_utils.c:                if(vca_strmatch(pc, "ro") >= 0) item->access = vcaod_access_RO;
canvca/libvca/eds_utils.c:                else if(vca_strmatch(pc, "wo") >= 0) item->access = vcaod_access_WO;
canvca/libvca/eds_utils.c:                else if(vca_strmatch(pc, "rw") >= 0) item->access = vcaod_access_RW;
canvca/libvca/eds_utils.c:                else if(vca_strmatch(pc, "rwr") >= 0) item->access = vcaod_access_RWR;
canvca/libvca/eds_utils.c:                else if(vca_strmatch(pc, "rww") >= 0) item->access = vcaod_access_RWW;
canvca/libvca/eds_utils.c:                else if(vca_strmatch(pc, "const") >= 0) item->access = vcaod_access_CONST;
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "DefaultValue") > 0) {
canvca/libvca/eds_utils.c:                od_item_set_value_as_str(item, line->data + l + 1);
canvca/libvca/eds_utils.c:            else if(vca_strmatch(line->data, "PDOMapping") > 0) {
canvca/libvca/eds_utils.c:                li = strtol(line->data + l + 1, NULL, 0);
canvca/libvca/eds_utils.c:                item->flags &= ~VCAOD_OBJECT_FLAG_PDO_MAPPING;
canvca/libvca/eds_utils.c:                if(!errno) if(li) item->flags |= VCAOD_OBJECT_FLAG_PDO_MAPPING;
canvca/libvca/eds_utils.c:                mylog(LOG_DEB, "[%04x:%02x] get_od_item_def() - line %i: flushing: %s\n", item->index, item->subindex, line_no, line->data);
canvca/libvca/eds_utils.c:        line->data[0] = 0;
canvca/libvca/eds_utils.c://-----------------------------------------------------------------
canvca/libvca/eds_utils.c: * vcaod_load_eds - opens file and create new OD acording to its contens
canvca/libvca/eds_utils.c:        //return -1;
canvca/libvca/eds_utils.c:        return -2;
canvca/libvca/eds_utils.c:            item->index = ix;
canvca/libvca/eds_utils.c:            if(item->subcnt > 0) {
canvca/libvca/eds_utils.c:                int subcnt = item->subcnt;
canvca/libvca/eds_utils.c:                item->subobjects = malloc(sizeof(vcaod_object_t) * subcnt);
canvca/libvca/eds_utils.c:                if(item->subobjects) {
canvca/libvca/eds_utils.c:                    for(i=0; i<subcnt; i++) od_item_init(item->subobjects + i);
canvca/libvca/eds_utils.c:                            mylog(LOG_DEB, "----- processing line %i: %s\nparsing index [%04x:%02x]\n", line_no, line.data, item->index, subix);
canvca/libvca/eds_utils.c:                                    if(subcnt == item->subcnt) {
canvca/libvca/eds_utils.c:                                        item->subcnt++;
canvca/libvca/eds_utils.c:                                        item->subobjects = realloc(item->subobjects, sizeof(vcaod_object_t) * item->subcnt);
canvca/libvca/eds_utils.c:                                        od_item_init(item->subobjects + subcnt);
canvca/libvca/eds_utils.c:                                item->subobjects[six].index = item->index;
canvca/libvca/eds_utils.c:                                item->subobjects[six].subindex = subix;
canvca/libvca/eds_utils.c:                                get_od_item_def(in, &line, item->subobjects + six);
canvca/libvca/eds_utils.c:                    for(i=0; i<subcnt; i++) if(item->subobjects[i].subindex < 0) {
canvca/libvca/eds_utils.c://-----------------------------------------------------------------
canvca/libvca/eds_utils.c: * vcaod_load_hds - opens HDS file and connect dinfo to appropriate objects in OD
canvca/libvca/eds_utils.c:        return -2;
canvca/libvca/eds_utils.c:            mylog(LOG_DEB, "Loading HW dinfo [%04x:%02x]->'%s'\n", ix, subix, line.data);
canvca/libvca/eds_utils.c:                if(o->dinfo) {
canvca/libvca/eds_utils.c:                if(sui_dtree_lookup(&(dinfotreeroot->dir), line.data, NULL, &di) != SUI_DTREE_FOUND) {
canvca/libvca/eds_utils.c:                    mylog(LOG_ERR, "HW dinfo [%04x:%02x]->'%s' NOT FOUND\n", ix, subix, line.data);
canvca/libvca/eds_utils.c:                o->dinfo = di;
canvca/libvca/eds_utils.c:                o->flags &= ~VCAOD_OBJECT_FLAG_WEAK_DINFO;        
canvca/libvca/eds_utils.c:                mylog(LOG_DEB, "%s: added HW dinfo (%p) to object %04x:%02x\n", __PRETTY_FUNCTION__, o->dinfo, ix, subix);
canvca/libvca/eds_utils.c://-----------------------------------------------------------------
canvca/libvca/vca_base.c: * vca_h2log - converts VCA handle to printable number
canvca/libvca/vca_base.c:  	msg->flags,msg->cob,msg->id,msg->id,msg->length);
canvca/libvca/vca_base.c:  for(i=0;i<msg->length;i++){
canvca/libvca/vca_base.c:    vca_log(VCA_LDOMAIN,0|VCA_LOGL_CONT,"0x%x",msg->data[i]);
canvca/libvca/vca_base.c: * vca_open_handle - opens new VCA handle from CAN driver
canvca/libvca/vca_base.c:    return -1;
canvca/libvca/vca_base.c:    vca_log(VCA_LDOMAIN,0,"vca_open_handle(\"%s\",\"%s\") -> handle %ld\n",
canvca/libvca/vca_base.c: * vca_close_handle - closes previously acquired VCA handle
canvca/libvca/vca_base.c: * vca_send_msg_seq - sends sequentially block of CAN messages 
canvca/libvca/vca_base.c:  if(ret==-EAGAIN) ret=0;
canvca/libvca/vca_base.c:    return -1;
canvca/libvca/vca_base.c: * vca_rec_msg_seq - receive sequential block of CAN messages 
canvca/libvca/vca_base.c:  messages->flags=0; /* Ensure standard receive, else RTR coud be set */
canvca/libvca/vca_base.c:  if(ret==-EAGAIN) ret=0;
canvca/libvca/vca_base.c:    return -1;
canvca/libvca/vca_base.c: * vca_wait - blocking wait for the new message(s)
canvca/libvca/vca_base.c: * @what: 0,1 => wait for Rx message, 2 => wait for Tx - free
canvca/libvca/vca_base.c:  		NULL,&timeout))==-1 && errno==-EINTR);
canvca/libvca/vca_canopen.c: * vca_sdo_abort_msg - translates sdo communication abort code to the text
canvca/libvca/vca_canopen.c: * vca_upload_sdo - Uploads SDO to the CANopen device using previously opened vca_handle
canvca/libvca/vca_canopen.c: * @node:  ID of uploaded node (1 - 127)
canvca/libvca/vca_canopen.h:/* COB-ID bits 10-7 port (Function code) */
canvca/libvca/vca_canopen.h:/* COB-ID bits 6-0 node */
canvca/libvca/vca_canopen.h:#define VCA_SDO_EXPEDITED_SIZE(head)    (4 - ((head & VCA_SDO_EXPEDITED_SIZE_MASK) >> 2))
canvca/libvca/vca_canopen.h:#define VCA_SDO_SEGMENTED_SIZE(head)    (8 - ((head & VCA_SDO_SEGMENTED_SIZE_MASK) >> 1))
canvca/libvca/vca_canopen.h:                                                  head |= ((4 - size) & 3) << 2;
canvca/libvca/vca_canopen.h:                                                  head |= ((8 - size) & 7) << 1;
canvca/libvca/vca_canopen.h:*  ..._R - request
canvca/libvca/vca_canopen.h:*  ..._C - confirm
canvca/libvca/vca_custlog.h:// -------------- log levels ------------------
canvca/libvca/vca_dinfomgr.c:    sui_dtree_memdir_t *root = &(dimgr->dtree_root);
canvca/libvca/vca_dinfomgr.c://-----------------------------------------------------------------
canvca/libvca/vca_dinfomgr.c:    sui_dtree_memdir_t *root = &(dimgr->dtree_root);
canvca/libvca/vca_dinfomgr.c://-----------------------------------------------------------------
canvca/libvca/vca_dinfomgr.c://-----------------------------------------------------------------
canvca/libvca/vca_fdpoll.c:  if (*a<*b) return -1;
canvca/libvca/vca_fdpoll.c:        if(!nd) fatal_error("vcaFdNode_init() - memory allocation ERROR\n");
canvca/libvca/vca_fdpoll.c:    nd->fd = fd;
canvca/libvca/vca_fdpoll.c:    nd->ready = NULL;
canvca/libvca/vca_fdpoll.c:    nd->event_type = event_type;
canvca/libvca/vca_fdpoll.c:        if(!p) fatal_error("vcaFdPoll_init() - memory allocation ERROR.\n");
canvca/libvca/vca_fdpoll.c:    p->pollfd_array = NULL;
canvca/libvca/vca_fdpoll.c:    p->pollfd_size = 0;
canvca/libvca/vca_fdpoll.c:    p->pollfd_size = 0;
canvca/libvca/vca_fdpoll.c:    if(p->pollfd_array != NULL) {
canvca/libvca/vca_fdpoll.c:        free(p->pollfd_array);
canvca/libvca/vca_fdpoll.c:        p->pollfd_array = NULL;
canvca/libvca/vca_fdpoll.c:    if(p->fdnode_list.items != NULL) {
canvca/libvca/vca_fdpoll.c:        free(p->fdnode_list.items);		/* FIXME: */
canvca/libvca/vca_fdpoll.c:	p->fdnode_list.items = NULL;
canvca/libvca/vca_fdpoll.c:    p->need_resync = 0;
canvca/libvca/vca_fdpoll.c:    p->pollfd_size = p->fdnode_list.count;
canvca/libvca/vca_fdpoll.c:    if(p->pollfd_size == 0) {
canvca/libvca/vca_fdpoll.c:        if(p->pollfd_array) free(p->pollfd_array);
canvca/libvca/vca_fdpoll.c:        p->pollfd_array = NULL;
canvca/libvca/vca_fdpoll.c:    if(p->pollfd_array) {
canvca/libvca/vca_fdpoll.c:        p->pollfd_array = (struct pollfd*)realloc(p->pollfd_array, p->pollfd_size * sizeof(struct pollfd));
canvca/libvca/vca_fdpoll.c:        p->pollfd_array = (struct pollfd*)malloc(p->pollfd_size * sizeof(struct pollfd));
canvca/libvca/vca_fdpoll.c:    f = p->pollfd_array;
canvca/libvca/vca_fdpoll.c:        f->fd = n->fd;
canvca/libvca/vca_fdpoll.c:        f->revents = 0;
canvca/libvca/vca_fdpoll.c:        f->events = 0;
canvca/libvca/vca_fdpoll.c:        if(n->event_type & VCAFD_RD) f->events |= POLLIN;
canvca/libvca/vca_fdpoll.c:        if(n->event_type & VCAFD_WR) f->events |= POLLOUT;
canvca/libvca/vca_fdpoll.c:    clog(LOG_DEB, "adding fd %i\n", nd->fd);
canvca/libvca/vca_fdpoll.c:    if(nd->fd < 0) {
canvca/libvca/vca_fdpoll.c:        clog(LOG_ERR, "invalid fd: %i\n", nd->fd);
canvca/libvca/vca_fdpoll.c:    p->need_resync = 1;
canvca/libvca/vca_fdpoll.c:    clog(LOG_DEB, "detaching fd %i\n", nd->fd);
canvca/libvca/vca_fdpoll.c:    p->need_resync = 1;
canvca/libvca/vca_fdpoll.c:    if(p->need_resync) {
canvca/libvca/vca_fdpoll.c:    ret = poll(p->pollfd_array, p->pollfd_size, timeout);
canvca/libvca/vca_fdpoll.c:        for(i=0; i<p->pollfd_size; i++) {
canvca/libvca/vca_fdpoll.c:            int revents = p->pollfd_array[i].revents;
canvca/libvca/vca_fdpoll.c:            if(n->ready) n->ready(n, ev_type, p);
canvca/libvca/vca_fdpoll.c:            if(p->need_resync) break;
canvca/libvca/vca_hwmod.h: * init_module - module initialization function obviously called by working_thread_function() when it starts.
canvca/libvca/vca_hwmod.h: * cleanup_module - module cleanup function obviously called by working_thread_function() when it finish.
canvca/libvca/vca_log.c:  ORTCAN Project - VCA Logger
canvca/libvca/vca_log.c:  vca_log.c	- simple logging support
canvca/libvca/vca_log.c: * vca_log - generic logging facility for VCA library
canvca/libvca/vca_log.c: * vca_log_redir - redirects default log output function
canvca/libvca/vca_net.c:  return *a>*b?1:*a<*b?-1:0;
canvca/libvca/vca_net.c:    netid->refcnt=1;
canvca/libvca/vca_net.c:    netid->dead=0;
canvca/libvca/vca_net.c:    netid->masked=0;
canvca/libvca/vca_net.c:    netid->distinct=0;
canvca/libvca/vca_net.c:    netid->net=NULL;
canvca/libvca/vca_net.c:    netid->id=id;
canvca/libvca/vca_net.c:    netid->id_mask=id_mask;
canvca/libvca/vca_net.c:    evc_tx_hub_init(&netid->tx_hub);
canvca/libvca/vca_net.c:    evc_tx_hub_done(&netid->tx_hub);
canvca/libvca/vca_net.c:    vcaSDOFsm_init(&(cannode->sdofsm), cannode);
canvca/libvca/vca_net.c:    cannode->node_number=node_number;
canvca/libvca/vca_net.c:    vcaSDOFsm_destroy(&(cannode->sdofsm));
canvca/libvca/vca_net.c:    vcaSDOFsm_t *sdofsm = &(cannode->sdofsm);
canvca/libvca/vca_net.c:    if(!sdofsm->fsm_connected){
canvca/libvca/vca_net.c:    if(!cannode->sdofsm){
canvca/libvca/vca_net.c:        cannode->sdofsm=vcaSDOFsm_init(NULL,cannode);
canvca/libvca/vca_net.c:    return cannode->sdofsm;
canvca/libvca/vca_net.c:    sdofsm->cannode=cannode;
canvca/libvca/vca_net.c:    evc_rx_hub_init(&sdofsm->rx_hub,(evc_rx_fnc_t*)vcaSDOFsm_msgrec_fnc, sdofsm);
canvca/libvca/vca_net.c:    ul_htimer_init_detached(&sdofsm->timer);
canvca/libvca/vca_net.c:    sdofsm->timer.function = vcaSDOFsm_timeout_fnc;
canvca/libvca/vca_net.c:    sdofsm->timer.data = (unsigned long)sdofsm;
canvca/libvca/vca_net.c:    sdofsm->timeout_time = 2000;
canvca/libvca/vca_net.c:    sdofsm->fsm_connected = 0;
canvca/libvca/vca_net.c:    sdofsm->actrq = NULL;
canvca/libvca/vca_net.c:    ul_htimer_detach(&ul_root_htimer, &sdofsm->timer);
canvca/libvca/vca_net.c:    new_time += sdofsm->timeout_time;
canvca/libvca/vca_net.c:    ul_htimer_set_expire(&sdofsm->timer, new_time);
canvca/libvca/vca_net.c:    ul_htimer_add(&ul_root_htimer, &sdofsm->timer);
canvca/libvca/vca_net.c:    clog(LOG_ERR, "vcaSDOFsm_timeout_fnc() - SDO transfer timeout\n");
canvca/libvca/vca_net.c:    vcasdo_fsm_set_error(&sdofsm->fsm, sdofsmErrTimeout);
canvca/libvca/vca_net.c:    vcasdo_fsm_t *fsm=&sdofsm->fsm;
canvca/libvca/vca_net.c:    if(!sdofsm->fsm_connected)
canvca/libvca/vca_net.c:    if(fsm->state == sdofsmRun) {
canvca/libvca/vca_net.c:            ul_htimer_detach(&ul_root_htimer, &sdofsm->timer);
canvca/libvca/vca_net.c:            if(((fsm->state==sdofsmRun) || (fsm->state==sdofsmAbort))
canvca/libvca/vca_net.c:              && fsm->out_msg.length) {
canvca/libvca/vca_net.c:                res=vcaNet_send_can_msg(sdofsm->cannode->net, &fsm->out_msg);
canvca/libvca/vca_net.c:    if(fsm->state != sdofsmRun) {
canvca/libvca/vca_net.c:    if(!sdofsm->cannode)
canvca/libvca/vca_net.c:        return -1;
canvca/libvca/vca_net.c:    if(!sdofsm->cannode->net)
canvca/libvca/vca_net.c:        return -1;
canvca/libvca/vca_net.c:    if(sdofsm->fsm_connected)
canvca/libvca/vca_net.c:    vcasdo_init_fsm(&sdofsm->fsm, srvcli_port, clisrv_port, sdofsm->cannode->node_number);
canvca/libvca/vca_net.c:    if(vcaNet_msg_rec_connect(sdofsm->cannode->net, &sdofsm->rx_hub, sdofsm->fsm.srvcli_cob_id, MSG_ID_MASK)<0)
canvca/libvca/vca_net.c:        return -1;
canvca/libvca/vca_net.c:    sdofsm->fsm_connected=1;
canvca/libvca/vca_net.c:    req->is_pending = 1;
canvca/libvca/vca_net.c:    vcasdo_fsm_t *fsm=&sdofsm->fsm;
canvca/libvca/vca_net.c:    if(req->sdofsm != sdofsm)
canvca/libvca/vca_net.c:        return -1;
canvca/libvca/vca_net.c:    if(sdofsm->actrq == req) {
canvca/libvca/vca_net.c:        if(fsm->state == sdofsmRun) {
canvca/libvca/vca_net.c:        req->is_pending = 0;
canvca/libvca/vca_net.c:    vcasdo_fsm_t *fsm=&sdofsm->fsm;
canvca/libvca/vca_net.c:    if(fsm->state == sdofsmRun) {
canvca/libvca/vca_net.c:        clog(LOG_ERR, "vcaSDOFsm_finishRequest() - called when FSM active!\n");
canvca/libvca/vca_net.c:    ul_htimer_detach(&ul_root_htimer, &sdofsm->timer);
canvca/libvca/vca_net.c:    sdorq = sdofsm->actrq;
canvca/libvca/vca_net.c:        sdorq->state = fsm->state;
canvca/libvca/vca_net.c:        sdorq->err_no = fsm->err_no;
canvca/libvca/vca_net.c:        sdorq->node = fsm->node;
canvca/libvca/vca_net.c:        if(sdorq->is_upload && (fsm->state == sdofsmDone)) {
canvca/libvca/vca_net.c:            if(ul_dbuff_cpy(&sdorq->data, fsm->data.data, fsm->data.len) != fsm->data.len) {
canvca/libvca/vca_net.c:                 sdorq->state = sdofsmError;
canvca/libvca/vca_net.c:                 sdorq->err_no = sdofsmErrNoMemory;
canvca/libvca/vca_net.c:        clog(LOG_INF, "vcaSDOFsm_finishRequest() - sdo request finished\n");
canvca/libvca/vca_net.c:        sdorq->is_pending = 0;
canvca/libvca/vca_net.c:        if(sdorq->finished_callback)
canvca/libvca/vca_net.c:            sdorq->finished_callback(sdorq);
canvca/libvca/vca_net.c:    sdofsm->actrq = NULL;
canvca/libvca/vca_net.c:    vcasdo_fsm_t *fsm=&sdofsm->fsm;
canvca/libvca/vca_net.c:    if(fsm->state != sdofsmIdle) return;
canvca/libvca/vca_net.c:    if(sdofsm->actrq) return; 
canvca/libvca/vca_net.c:        if(!sdofsm->fsm_connected || !sdofsm->cannode || !sdofsm->cannode->net){
canvca/libvca/vca_net.c:        sdofsm->actrq = sdorq;
canvca/libvca/vca_net.c:        if(sdorq->is_upload) {
canvca/libvca/vca_net.c:            clog(LOG_INF, "vcaSDOFsm_processPendingRequest() - starting SDO upload processing\n");
canvca/libvca/vca_net.c:            vcasdo_fsm_upload(fsm, fsm->node, sdorq->index, sdorq->subindex, 
canvca/libvca/vca_net.c:                                  fsm->srvcli_cob_id, fsm->clisrv_cob_id);
canvca/libvca/vca_net.c:            clog(LOG_INF, "vcaSDOFsm_processPendingRequest() - starting SDO download processing\n");
canvca/libvca/vca_net.c:            vcasdo_fsm_download(fsm, &sdorq->data, fsm->node, sdorq->index, sdorq->subindex,
canvca/libvca/vca_net.c:                                    fsm->srvcli_cob_id, fsm->clisrv_cob_id);
canvca/libvca/vca_net.c:        if(fsm->state == sdofsmRun) {
canvca/libvca/vca_net.c:            res=vcaNet_send_can_msg(sdofsm->cannode->net, &fsm->out_msg);
canvca/libvca/vca_net.c:        if(fsm->state == sdofsmRun)
canvca/libvca/vca_net.c:      evc_rx_hub_init(&net->rx_hub,(evc_rx_fnc_t*)vcaNet_msgrec_fnc,net);
canvca/libvca/vca_net.c:      net->canfdnode=NULL;
canvca/libvca/vca_net.c:      evc_rx_hub_done(&net->rx_hub);
canvca/libvca/vca_net.c:      if(net->canfdnode != NULL) {
canvca/libvca/vca_net.c:          vcaFdNodeCan_destroy(net->canfdnode);
canvca/libvca/vca_net.c:          free(net->canfdnode);
canvca/libvca/vca_net.c:        clog(LOG_INF, "  ID 0x%lx mask 0x%lx\n", netid->id, netid->id_mask);
canvca/libvca/vca_net.c:        clog(LOG_INF, "  ID 0x%lx mask 0x%lx\n", netid->id, netid->id_mask);
canvca/libvca/vca_net.c:    net->canfdnode=canfdnode;
canvca/libvca/vca_net.c:    if(net->canfdnode){
canvca/libvca/vca_net.c:        evc_link_connect(link, &net->canfdnode->tx_hub, &net->rx_hub, prop);
canvca/libvca/vca_net.c:        clog(LOG_TRASH, "vcaNet_msgrec_fnc(): traversing node #%i\n", nd->node_number);
canvca/libvca/vca_net.c:    netid=vcaNet_find_id(net, canmsg->id&MSG_ID_MASK, 0);
canvca/libvca/vca_net.c:        evc_tx_hub_emit(&netid->tx_hub, event_code, canmsg);
canvca/libvca/vca_net.c:        if(((netid->id^canmsg->id)&netid->id_mask)==0){
canvca/libvca/vca_net.c:            evc_tx_hub_emit(&netid->tx_hub, event_code, canmsg);
canvca/libvca/vca_net.c:        netid->distinct=1;
canvca/libvca/vca_net.c:        netid->net=net;
canvca/libvca/vca_net.c:        if((netid->id==id)&&(netid->id_mask==id_mask))
canvca/libvca/vca_net.c:    netid->masked=1;
canvca/libvca/vca_net.c:        cannode->net=net;
canvca/libvca/vca_net.c:            return -1;
canvca/libvca/vca_net.c:            return -1;
canvca/libvca/vca_net.c:    ret=evc_link_connect(link, &netid->tx_hub, rx_hub, prop);
canvca/libvca/vca_net.c:        if(!net->canfdnode) break;
canvca/libvca/vca_net.c:        vca_send_msg_seq(net->canfdnode->vcah, (canmsg_t*)msg, 1);
canvca/libvca/vca_net.c:    clog(LOG_ERR, "vcaNet_send_can_msg() - ERROR sending CAM message\n");
canvca/libvca/vca_net.c:    return -1;
canvca/libvca/vca_net.c:    req->sdofsm = NULL;
canvca/libvca/vca_net.c:    req->index = index;
canvca/libvca/vca_net.c:    req->subindex = subindex;
canvca/libvca/vca_net.c:    req->is_upload = is_upload;
canvca/libvca/vca_net.c:    req->is_pending = 0;
canvca/libvca/vca_net.c:    ul_dbuff_init(&(req->data), 0);
canvca/libvca/vca_net.c:    ul_dbuff_cpy(&(req->data), data, data_len);
canvca/libvca/vca_net.c:    if(req->is_pending)
canvca/libvca/vca_net.c:    ul_dbuff_destroy(&(req->data));
canvca/libvca/vca_net.c:    if(!req->sdofsm)
canvca/libvca/vca_net.c:    vcaSDOFsm_abortSDORequest(req->sdofsm, req);
canvca/libvca/vca_net.h: * struct vcaNet_t - structure representing one can network/interface
canvca/libvca/vca_net.h:  /*struct vcaNet_t *net;  use cannode->net instead */
canvca/libvca/vca_od.c:// -------------- log levels ------------------
canvca/libvca/vca_od.c:    exit(-1);
canvca/libvca/vca_od.c:    {{"UNKNOWN", -1}, {"BOOLEAN", 1}, 
canvca/libvca/vca_od.c:     {"TIME_OF_DAY", -1}, {"TIME_DIFERENCE", -1},
canvca/libvca/vca_od.c:     {"reserved", -1},
canvca/libvca/vca_od.c:     {"DOMAIN", -1},
canvca/libvca/vca_od.c:     {"reserved", -1},
canvca/libvca/vca_od.c:     {"reserved", -1}, {"reserved", -1}, {"reserved", -1}, {"reserved", -1},
canvca/libvca/vca_od.c:     {"PDO_COMMUNICATION_PARAMETER", -1}, {"PDO_MAPPING", -1},
canvca/libvca/vca_od.c:     {"SDO_PARAMETER", -1},
canvca/libvca/vca_od.c:     {"IDENTITY", -1}
canvca/libvca/vca_od.c:  if (*a < *b) return -1;
canvca/libvca/vca_od.c:        item->subindex = -1;
canvca/libvca/vca_od.c:        ul_dbuff_init(&item->value, 0);
canvca/libvca/vca_od.c:        item->dinfo = NULL;
canvca/libvca/vca_od.c:        mylog(LOG_DEB, "od_item_destroy(): object [%04x:%02x]\n", o->index, o->subindex);
canvca/libvca/vca_od.c:        if(o->dinfo) {
canvca/libvca/vca_od.c:            if(o->flags & VCAOD_OBJECT_FLAG_WEAK_DINFO) sui_dinfo_dec_refcnt(o->dinfo);
canvca/libvca/vca_od.c:            else sui_dinfo_del_weakptr(o->dinfo, &(o->dinfo));
canvca/libvca/vca_od.c:        if(o->subobjects) {
canvca/libvca/vca_od.c:            for(i=0; i<o->subcnt; i++) {
canvca/libvca/vca_od.c:                vcaod_object_t *o1 = o->subobjects + i;
canvca/libvca/vca_od.c:            free(o->subobjects);
canvca/libvca/vca_od.c:        ul_dbuff_destroy(&o->value);
canvca/libvca/vca_od.c:    ret = ul_dbuff_set_len(&(item->value), size);
canvca/libvca/vca_od.c:    memset(item->value.data, 0, item->value.len);
canvca/libvca/vca_od.c:    memcpy(item->value.data, &val, size);
canvca/libvca/vca_od.c:    //ul_dbuff_fix_endianning(&(item->value));
canvca/libvca/vca_od.c:    if(item->data_type == data_type_VISIBLE_STRING) {
canvca/libvca/vca_od.c:        ret = ul_dbuff_set_len(&(item->value), size);
canvca/libvca/vca_od.c:        if(ret > 0) memcpy(item->value.data, valstr, item->value.len);
canvca/libvca/vca_od.c:    else if(item->data_type >= data_type_BOOLEAN && item->data_type <= data_type_INTEGER32) {
canvca/libvca/vca_od.c:    else if(item->data_type >= data_type_UNSIGNED8 && item->data_type <= data_type_UNSIGNED32) {
canvca/libvca/vca_od.c:    else if(item->data_type == data_type_INTEGER24 || (item->data_type >= data_type_INTEGER40 && item->data_type <= data_type_INTEGER64)) {
canvca/libvca/vca_od.c:        //printf("od_item_set_value_as_str(): item_data_type: 0x%x, value: '%s'\n", item->data_type, valstr);
canvca/libvca/vca_od.c:    else if(item->data_type == data_type_UNSIGNED24 || (item->data_type >= data_type_UNSIGNED40 && item->data_type <= data_type_UNSIGNED64)) {
canvca/libvca/vca_od.c://-----------------------------------------------------------------
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.c:    if(item->subindex < 0) indent = ' ';
canvca/libvca/vca_od.c:    //mylog(LOG_INF, "%c\tParameterName='%s'\n", indent, item->name);
canvca/libvca/vca_od.c:    printf("%c\tParameterName='%s'\n", indent, item->name);
canvca/libvca/vca_od.c:    if(item->subcnt > 0) {
canvca/libvca/vca_od.c:        //mylog(LOG_INF, "%c\tSubNumber=%i\n", indent, item->subcnt);
canvca/libvca/vca_od.c:        printf("%c\tSubNumber=%i\n", indent, item->subcnt);
canvca/libvca/vca_od.c:        const char *pc = od_item_type2str(item->object_type);
canvca/libvca/vca_od.c:	//mylog(LOG_INF, "%c\tObjectType=%02x(%s)\n", indent, item->object_type, pc);
canvca/libvca/vca_od.c:        printf("%c\tObjectType=%02x(%s)\n", indent, item->object_type, pc);
canvca/libvca/vca_od.c:        type = item->data_type;
canvca/libvca/vca_od.c:        //mylog(LOG_INF, "%c\tDataType=%04x(%s)\n", indent, item->data_type, data_types[type].name);
canvca/libvca/vca_od.c:        printf("%c\tDataType=%04x(%s)\n", indent, item->data_type, data_types[type].name);
canvca/libvca/vca_od.c:        switch(item->access) {
canvca/libvca/vca_od.c:        //mylog(LOG_INF, "%c\tPDOMapping=%i\n", indent, item->pdo_mapping);
canvca/libvca/vca_od.c:        printf("%c\tPDOMapping=%s\n", indent, (item->flags & VCAOD_OBJECT_FLAG_PDO_MAPPING)? "yes": "no");
canvca/libvca/vca_od.c:        buf = item->value.data;
canvca/libvca/vca_od.c:        for(i=0; i<item->value.len; i++) {
canvca/libvca/vca_od.c:        //mylog(LOG_INF, "[%04x]\n", item->index);
canvca/libvca/vca_od.c:        printf("[%04x]\n", item->index);
canvca/libvca/vca_od.c:        if(item->subcnt) {
canvca/libvca/vca_od.c:            // item->subobjects[subcnt] can be optional FF subindex
canvca/libvca/vca_od.c:            for(i=0; i<item->subcnt; i++) {
canvca/libvca/vca_od.c:                int six = item->subobjects[i].subindex;
canvca/libvca/vca_od.c:                dump_item(item->subobjects + i);
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.c:    if(o->subcnt == 0) return o;
canvca/libvca/vca_od.c:    if(o->object_type != vcaod_object_type_ARRAY) {
canvca/libvca/vca_od.c:        int s = -1;
canvca/libvca/vca_od.c:        if(subix == 0xFF) s = o->subcnt - 1;
canvca/libvca/vca_od.c:        else if(subix < o->subcnt) s = subix;
canvca/libvca/vca_od.c:        if(s == -1) {
canvca/libvca/vca_od.c:        if(o->subobjects[s].subindex != subix) {
canvca/libvca/vca_od.c:        o = o->subobjects + s;
canvca/libvca/vca_od.c:    int dsize = -1;
canvca/libvca/vca_od.c:    if(o->data_type < data_types_cnt) dsize = data_types[o->data_type].size;
canvca/libvca/vca_od.c:    if(dsize == -1) {
canvca/libvca/vca_od.c:            mylog(LOG_ERR, "get_object_size(): [%04x:%02x] size of data type 0x%x not known\n", o->index, o->subindex, o->data_type);
canvca/libvca/vca_od.c:        return -1;
canvca/libvca/vca_od.c:    if(o->access == vcaod_access_WO) {
canvca/libvca/vca_od.c:        mylog(LOG_MSG, "vcaod_set_value(): [%04x:%02x] attempt to read WRITE ONLY object\n", o->index, o->subindex);
canvca/libvca/vca_od.c:        return -1;
canvca/libvca/vca_od.c:    if(dsize < 0) return -1;
canvca/libvca/vca_od.c:                       o->index, o->subindex, dsize, buff_len);
canvca/libvca/vca_od.c:        return -1;
canvca/libvca/vca_od.c:    if(o->dinfo) {
canvca/libvca/vca_od.c:        if(sui_rd_long(o->dinfo, 0, &val) == SUDI_DATA_OK) {
canvca/libvca/vca_od.c:            return -1;
canvca/libvca/vca_od.c:        dstart = -1;
canvca/libvca/vca_od.c:        is_array = (o->object_type == vcaod_object_type_ARRAY);
canvca/libvca/vca_od.c:            if(array_index < o->subcnt) {
canvca/libvca/vca_od.c:                               o->index, o->subindex, array_index, o->subcnt);
canvca/libvca/vca_od.c:                return -1;
canvca/libvca/vca_od.c:        db = &(o->value);
canvca/libvca/vca_od.c:        if(dstart + dsize > db->len) {
canvca/libvca/vca_od.c:                            o->index, o->subindex, db->len, dstart + dsize);
canvca/libvca/vca_od.c:            return -1;
canvca/libvca/vca_od.c:        memcpy(buff, db->data + dstart, dsize);
canvca/libvca/vca_od.c:    return -1;
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.c:    if(dsize < 0) return -1;
canvca/libvca/vca_od.c:    mylog(LOG_DEB, "vcaod_set_value(): set object %04x:%02x value\n", o->index, o->subindex);
canvca/libvca/vca_od.c:        return -1;
canvca/libvca/vca_od.c:    if(o->access < vcaod_access_RW) {
canvca/libvca/vca_od.c:                        o->index, o->subindex);
canvca/libvca/vca_od.c:        return -1;
canvca/libvca/vca_od.c:    if(o->dinfo) {
canvca/libvca/vca_od.c:        if(sui_wr_long(o->dinfo, 0, buff) == SUDI_DATA_OK) {
canvca/libvca/vca_od.c:            return -1;
canvca/libvca/vca_od.c:        is_array = (o->object_type == vcaod_object_type_ARRAY);
canvca/libvca/vca_od.c:            sz *= o->subcnt;
canvca/libvca/vca_od.c:            if(array_index < o->subcnt) {
canvca/libvca/vca_od.c:                                o->index, o->subindex, array_index, o->subcnt);
canvca/libvca/vca_od.c:                return -1;
canvca/libvca/vca_od.c:        db = &(o->value);
canvca/libvca/vca_od.c:        if(dstart + dsize > db->len) {
canvca/libvca/vca_od.c:                            o->index, o->subindex, db->len, dstart + dsize);
canvca/libvca/vca_od.c:            return -1;
canvca/libvca/vca_od.c:        memset(db->data + dstart, 0, dsize);
canvca/libvca/vca_od.c:        memcpy(db->data + dstart, buff, dsize);
canvca/libvca/vca_od.c:    return -1;
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.c:    sui_dinfo_t *d = obj->dinfo;
canvca/libvca/vca_od.c:    d = sui_dinfo_dbuff_create(&obj->value, 0);
canvca/libvca/vca_od.c:                     d, obj->index, obj->subindex);
canvca/libvca/vca_od.c:    obj->dinfo = d;
canvca/libvca/vca_od.c:    obj->flags |= VCAOD_OBJECT_FLAG_WEAK_DINFO;
canvca/libvca/vca_od.c:    sui_dinfo_add_weakptr(obj->dinfo, &(obj->dinfo));
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.c:    mylog(LOG_INF, "--- connecting HW dinfos to OD objects ---\n");
canvca/libvca/vca_od.c:        if(o->dinfo) {
canvca/libvca/vca_od.c:        o->dinfo = vcaHwModule_getDinfoRef(i);
canvca/libvca/vca_od.c:        o->flags &= ~VCAOD_OBJECT_FLAG_WEAK_DINFO;        
canvca/libvca/vca_od.c:        mylog(LOG_DEB, "vcaod_connect_hw_dinfos_to_OD(): added HW dinfo (%p) to object %04x:%02x\n", o->dinfo, ix, six);
canvca/libvca/vca_od.c://-------------------------------------------------------------------
canvca/libvca/vca_od.h: * struct vcaod_root_t - structure representing root of OD
canvca/libvca/vca_od.h: * struct vcaod_object_t - structure representing single object in OD
canvca/libvca/vca_od.h: * @subindex:       subindex of subobject or -1 if object is not subobject
canvca/libvca/vca_od.h: *                  1. Object is PDO mapped but its value doesn't come from HW dinfo (it is not tecnological value) - 
canvca/libvca/vca_od.h: *                  2. Object is PDO mapped and its value comes from HW dinfo (it is tecnological value) - 
canvca/libvca/vca_od.h: *                  3. Object is not PDO mapped but its value comes from HW dinfo - 
canvca/libvca/vca_od.h: * _vcaod_find_object - finds object in OD. This function is not a part of the SDO API
canvca/libvca/vca_od.h: * vcaod_get_value - reads object value from Object Dictionary and copies them to caller buffer
canvca/libvca/vca_od.h: * vcaod_set_value - copies object value from caller's buffer to Object Dictionary
canvca/libvca/vca_od.h: * vcaod_get_object_data_size - get size of object in bytes
canvca/libvca/vca_od.h: * od_item_set_value_as_str - set object value from its string representation.
canvca/libvca/vca_od.h: * vcaod_od_free - release all OD memory
canvca/libvca/vca_od.h: * vcaod_dump_od - debug function, dumps OD to log
canvca/libvca/vca_od.h: * vcaod_get_dinfo_ref - returns reference to dinfo corresponting to @obj
canvca/libvca/vca_od.h: * vcaod_connect_hw_dinfos_to_OD - reads HW module dinfos and connect them to appropriate objects in OD
canvca/libvca/vca_pdo.c:// -------------- log levels ------------------
canvca/libvca/vca_pdo.c:    exit(-1);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:    if(o->mapped_objects) free(o->mapped_objects);
canvca/libvca/vca_pdo.c:    o->mapped_cnt = 0;
canvca/libvca/vca_pdo.c:    o->mapped_objects = NULL;
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:        o->mapped_cnt = 0;
canvca/libvca/vca_pdo.c:        o->mapped_objects = NULL;
canvca/libvca/vca_pdo.c:        o->flags = 0;
canvca/libvca/vca_pdo.c:        o->sync_counter = 0;
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c: * _pdo_load_definition_from_OD - loads PDO object acording to its definition in OD
canvca/libvca/vca_pdo.c:    int res, ret = -1;
canvca/libvca/vca_pdo.c:        if(comm_index < 0x1600) o->flags |= (1<<vcapdoFlagRPDO);
canvca/libvca/vca_pdo.c:        mylog(LOG_INF, "init %cPDO from definition on %04x\n", (o->flags & (1<<vcapdoFlagRPDO))? 'R': 'T', comm_index);
canvca/libvca/vca_pdo.c:        29              0           11-bit ID (CAN 2.0A) 
canvca/libvca/vca_pdo.c:                        1           29-bit ID (CAN 2.0B) 
canvca/libvca/vca_pdo.c:        28-11           0           if bit 29=0 
canvca/libvca/vca_pdo.c:                        X           if bit 29=1: bits 28-11 of 29-bit-COB-ID 
canvca/libvca/vca_pdo.c:        10-0 (LSB)      X           bits 10-0 of COB-ID
canvca/libvca/vca_pdo.c:            mylog(LOG_ERR, "\tCOB-ID can not be 0\n");
canvca/libvca/vca_pdo.c:            return -1;
canvca/libvca/vca_pdo.c:            // Index 1400h: 200h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1401h: 300h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1402h: 400h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1403h: 500h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1404h - 15FFh: disabled
canvca/libvca/vca_pdo.c:            // Index 1800h: 180h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1801h: 280h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1802h: 380h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1803h: 480h + Node-ID
canvca/libvca/vca_pdo.c:            // Index 1804h - 18FFh: disabled
canvca/libvca/vca_pdo.c:            if(o->flags & (1<<vcapdoFlagRPDO)) {
canvca/libvca/vca_pdo.c:                i = comm_index - 0x1400;
canvca/libvca/vca_pdo.c:                i = comm_index - 0x1800;
canvca/libvca/vca_pdo.c:            mylog(LOG_ERR, "\tCOB-ID can not be 0\n");
canvca/libvca/vca_pdo.c:            return -1;
canvca/libvca/vca_pdo.c:        if(u & (1<<31)) o->flags |= (1<<vcapdoFlagNotValid);
canvca/libvca/vca_pdo.c:        if(u & (1<<30)) o->flags |= (1<<vcapdoFlagRTRAllowed);
canvca/libvca/vca_pdo.c:            o->flags |= (1<<vcapdoFlag29BitId);
canvca/libvca/vca_pdo.c:        if(o->flags & (1<<vcapdoFlagNotValid)) {
canvca/libvca/vca_pdo.c:            return -1;
canvca/libvca/vca_pdo.c:        mylog(LOG_DEB, "\tCOB-ID: %04x\n", u);
canvca/libvca/vca_pdo.c:        o->cob_id = u;
canvca/libvca/vca_pdo.c:         1-240                X                  X (every n-th SYNC)
canvca/libvca/vca_pdo.c:         241-251 - reserved
canvca/libvca/vca_pdo.c:        o->transmition_type = (unsigned char)u;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransSynchronous;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransSynchronous;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransCyclic;
canvca/libvca/vca_pdo.c:            o->sync_every = (unsigned char)u;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransReserved;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransSynchronous;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransRTROnly;
canvca/libvca/vca_pdo.c:            o->flags |= vcapdoFlagTransRTROnly;
canvca/libvca/vca_pdo.c:        mylog(LOG_DEB, "\tTransmition type: %i\n", o->transmition_type);
canvca/libvca/vca_pdo.c:            if(res < 0) o->inhibit_time = 0;
canvca/libvca/vca_pdo.c:            else        o->inhibit_time = (uint16_t)u;
canvca/libvca/vca_pdo.c:            mylog(LOG_DEB, "\tInhibit time: %i\n", o->inhibit_time);
canvca/libvca/vca_pdo.c:            if(res < 0) o->event_timer = 0;
canvca/libvca/vca_pdo.c:            else        o->event_timer = (uint16_t)u;
canvca/libvca/vca_pdo.c:            mylog(LOG_DEB, "\tEvent timer: %i\n", o->event_timer);
canvca/libvca/vca_pdo.c:        o->mapped_cnt = u;
canvca/libvca/vca_pdo.c:        o->mapped_objects = (vcapdo_mapping_t*)malloc(o->mapped_cnt * sizeof(vcapdo_mapping_t));
canvca/libvca/vca_pdo.c:        mylog(LOG_DEB, "\t\tMapped objects: %i\n", o->mapped_cnt);
canvca/libvca/vca_pdo.c:        for(i=0; i<o->mapped_cnt; i++) {
canvca/libvca/vca_pdo.c:            vcapdo_mapping_t *m = o->mapped_objects + i;
canvca/libvca/vca_pdo.c:            m->dinfo = NULL;
canvca/libvca/vca_pdo.c:            m->object = vcaod_find_object(odroot, ix, six, &err); if(res < 0) break;
canvca/libvca/vca_pdo.c:            m->start = start;
canvca/libvca/vca_pdo.c:            m->len =  l;
canvca/libvca/vca_pdo.c:            mylog(LOG_DEB, "\t\t[%2i] object %04x:%02x -> bits[%02i-%02i]\n", i, ix, six, m->start, m->start+m->len-1);
canvca/libvca/vca_pdo.c:        o->mapped_cnt = i;
canvca/libvca/vca_pdo.c:        o->flags |= (1<<vcapdoFlagNotValid);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:    vcapdolst_init_root_field(&(proc->pdolst_root));
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:        vcapdolst_root_t *pdoroot = &(proc->pdolst_root);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:// dest_start_bit: 0-63
canvca/libvca/vca_pdo.c:// src_start_bit: 0-63
canvca/libvca/vca_pdo.c:    sui_dinfo_t *di = (sui_dinfo_t*)(event->u_u.message.ptr);
canvca/libvca/vca_pdo.c:        proc = pdo->pdo_processor;
canvca/libvca/vca_pdo.c:            for(map_ix=0; map_ix<pdo->mapped_cnt; map_ix++) {
canvca/libvca/vca_pdo.c:                if(pdo->mapped_objects[map_ix].dinfo == di) {
canvca/libvca/vca_pdo.c:                    vcapdo_mapping_t *m = pdo->mapped_objects + map_ix;
canvca/libvca/vca_pdo.c:                    if(m->len <= sizeof(long)*8) {
canvca/libvca/vca_pdo.c:                            _bitcpy64(pdo->pdo_buff, m->start, &val, 0, m->len);
canvca/libvca/vca_pdo.c:                            memcpy(msg.data, pdo->pdo_buff, msg.length);
canvca/libvca/vca_pdo.c:                            msg.id = pdo->cob_id;
canvca/libvca/vca_pdo.c:                            if(proc->send_to_can_fnc) {
canvca/libvca/vca_pdo.c:                                proc->send_to_can_fnc(proc->send_to_can_context,&msg);
canvca/libvca/vca_pdo.c:                            mylog(LOG_ERR, "_pdo_hub_event(): ERROR - %i reading dinfo\n", ret);
canvca/libvca/vca_pdo.c:        return -1;
canvca/libvca/vca_pdo.c:    if(!proc->od_root) {
canvca/libvca/vca_pdo.c:        return -1;
canvca/libvca/vca_pdo.c:    // RPDOs: 1400 - 512 * communication parameter
canvca/libvca/vca_pdo.c:    // RPDOs: 1600 - 512 * mapping parameter
canvca/libvca/vca_pdo.c:    // TPDOs: 1800 - 512 * communication parameter
canvca/libvca/vca_pdo.c:    // TPDOs: 1A00 - 512 * mapping parameter
canvca/libvca/vca_pdo.c:        int ret = -1;
canvca/libvca/vca_pdo.c:            ret = _pdo_load_definition_from_OD(o, proc->od_root, comm_ix, map_ix, proc->node_id);
canvca/libvca/vca_pdo.c:            mylog(LOG_DEB, "inserting PDO[%i] COBID: %x to PDOlist\n", cnt, o->cob_id);
canvca/libvca/vca_pdo.c:            ret = vcapdolst_insert(&(proc->pdolst_root), o);
canvca/libvca/vca_pdo.c:            o->pdo_processor = proc;
canvca/libvca/vca_pdo.c:            evc_rx_hub_init(&o->rx_hub, (evc_rx_fnc_t*)_pdo_hub_event, o);
canvca/libvca/vca_pdo.c:            mylog(LOG_MY, "rx_hub(%p) had setted context proc(%p)\n", &o->rx_hub, proc);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:    r = &(proc->pdolst_root);
canvca/libvca/vca_pdo.c:        vcapdo_mapping_t *m = o->mapped_objects;
canvca/libvca/vca_pdo.c:        for(i=0; i<o->mapped_cnt; i++) {
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:    if(!proc->od_root) return;
canvca/libvca/vca_pdo.c:    mylog(LOG_INF, "--- connecting dinfos to PDOs ---\n");
canvca/libvca/vca_pdo.c:    r = &(proc->pdolst_root);
canvca/libvca/vca_pdo.c:        vcapdo_mapping_t *m = pdo->mapped_objects;
canvca/libvca/vca_pdo.c:        for(i=0; i<pdo->mapped_cnt; i++) {
canvca/libvca/vca_pdo.c:            ix = object->index;
canvca/libvca/vca_pdo.c:            six = object->subindex;
canvca/libvca/vca_pdo.c:            mylog(LOG_DEB, "Looking for dinfo for object %04x:%02x '%s'.\n", ix, six, object->name);
canvca/libvca/vca_pdo.c:                if(!(pdo->flags & (1<<vcapdoFlagRPDO)) && pdo->transmition_type >= 254) {
canvca/libvca/vca_pdo.c:                    mylog(LOG_INF, "\tConnecting %04x:%02x '%s'-> PDO %04x (type == %i).\n", ix, six, object->name, pdo->cob_id, pdo->transmition_type);
canvca/libvca/vca_pdo.c:                    sui_dinfo_connect_to_hub(d, &(pdo->rx_hub), NULL);
canvca/libvca/vca_pdo.c:                    mylog(LOG_DEB, "\ttx hub: %p\n", d->tx_hub);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.c:    int ret = -1;
canvca/libvca/vca_pdo.c:    o = vcapdolst_find(&(proc->pdolst_root), &(msg->id));
canvca/libvca/vca_pdo.c:    mylog(LOG_DEB, "PDOprocessor got registered PDO COBID 0x%x\n", msg->id);
canvca/libvca/vca_pdo.c://-----------------------------------------------------------------
canvca/libvca/vca_pdo.h: * struct vcapdolst_mapping_t - structure representing mapping of sigle object in PDO
canvca/libvca/vca_pdo.h: * struct vcapdolst_object_t - structure representing single PDO object
canvca/libvca/vca_pdo.h: * @sync_every:      synchronous PDO will be processed every n-th SYNC message
canvca/libvca/vca_pdo.h: * struct vcapdolst_root_t - structure representing root of OD
canvca/libvca/vca_pdo.h:  if (*a < *b) return -1;
canvca/libvca/vca_pdo.h: * struct vcaPDOProcessor_t - structure used for PDO communication
canvca/libvca/vca_pdo.h: * @node_id:         Node number, optional parameter, if it is specified, default PDO COB-IDs can be assigned
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_init - vcaPDOProcessor constructor
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_destroy - vcaPDOProcessor destructor
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_setOD - assign OD to PDOProcessor
canvca/libvca/vca_pdo.h:    if(proc) proc->od_root = od_root;
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_setDinfoMgr - assign DinfoManager to PDOProcessor
canvca/libvca/vca_pdo.h:    if(proc) proc->dinfo_mgr = dimgr;
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_createPDOLIst - scans OD and creates all valid PDO structures.
canvca/libvca/vca_pdo.h: * _vcaPDOProcessor_disconnectDinfoLinks - disconnect all PDOs and their dinfo structures
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_connectDinfoLinks - scans defined PDOs and makes necessary data links from PDOs to OD and HW
canvca/libvca/vca_pdo.h: * vcaPDOProcessor_processMsg - tries to process @msg
canvca/libvca/vca_pollfdnodecan.c:  if(link->dead){
canvca/libvca/vca_pollfdnodecan.c:    if(link->standalone && link->dst.standalone.weakptr){
canvca/libvca/vca_pollfdnodecan.c:      *link->dst.standalone.weakptr=NULL;
canvca/libvca/vca_pollfdnodecan.c:      link->dst.standalone.weakptr=NULL;
canvca/libvca/vca_pollfdnodecan.c:  if(link->standalone){
canvca/libvca/vca_pollfdnodecan.c:    fnc=(vca_msg_propagate_event_fnc_t*) link->dst.standalone.rx_fnc;
canvca/libvca/vca_pollfdnodecan.c:    context=link->dst.standalone.context;
canvca/libvca/vca_pollfdnodecan.c:    if(!link->dst.multi.hub) return 0;
canvca/libvca/vca_pollfdnodecan.c:    fnc=(vca_msg_propagate_event_fnc_t*) link->dst.multi.hub->rx_fnc;
canvca/libvca/vca_pollfdnodecan.c:    context=link->dst.multi.hub->context;
canvca/libvca/vca_pollfdnodecan.c:    res=vca_rec_msg_seq(fd->vcah, &canmsg, 1);
canvca/libvca/vca_pollfdnodecan.c:      evc_tx_hub_emit(&fd->tx_hub, event_code, &canmsg);
canvca/libvca/vca_pollfdnodecan.c:        vcaFdNode_init(&(nd->fdnode), vca_h2fd(vcah), VCAFD_RD);       
canvca/libvca/vca_pollfdnodecan.c:        nd->vcah = vcah;
canvca/libvca/vca_pollfdnodecan.c:        nd->fdnode.ready = vcaFdNodeCan_ready;
canvca/libvca/vca_pollfdnodecan.c:    evc_tx_hub_init(&nd->tx_hub);
canvca/libvca/vca_pollfdnodecan.c:    evc_tx_hub_done(&nd->tx_hub);
canvca/libvca/vca_pollfdnodecan.c:    vcaFdNode_destroy(&(nd->fdnode));
canvca/libvca/vca_pollfdnodecan.h: * vcaFdNodeCan_init - init/create CAN fdpoll node
canvca/libvca/vca_utils.c: * vca_gethex - gets one hexadecimal number from string
canvca/libvca/vca_utils.c:    if(*pc == '-') {neg = 1; pc++;}
canvca/libvca/vca_utils.c:            val += c - '0';
canvca/libvca/vca_utils.c:            val += 10 + (c - 'a');
canvca/libvca/vca_utils.c:    if(neg) val = -val;
canvca/libvca/vca_utils.c:    return pc - str;
canvca/libvca/vca_utils.c: * vca_strmatch - get token from string
canvca/libvca/vca_utils.c: * or negative value (number of partially matched chars from str - 1) 
canvca/libvca/vca_utils.c:    if(*pct) return -(pcs - str + 1);
canvca/libvca/vca_utils.c:    return pcs - str;
canvca/libvca/vca_utils.c: * vca_msg2str - converts canmsg_t to the string
canvca/libvca/vca_utils.c:    timestamp=can_msg->timestamp.tv_usec;
canvca/libvca/vca_utils.c:    timestamp=can_msg->timestamp;
canvca/libvca/vca_utils.c:    buff_len--;
canvca/libvca/vca_utils.c:        can_msg->flags, can_msg->cob, 
canvca/libvca/vca_utils.c:        timestamp, can_msg->id);
canvca/libvca/vca_utils.c:        //can_msg->length);  
canvca/libvca/vca_utils.c:    for(i=0; i<can_msg->length; i++) {
canvca/libvca/vca_utils.c:            n += snprintf(buff + n, buff_len - n, " ");
canvca/libvca/vca_utils.c:            n += snprintf(buff + n, buff_len - n, "%02x", can_msg->data[i]);
canvca/libvca/vca_utils.c:        n += snprintf(buff + n, buff_len - n, "]}");
canvca/libvca/vca_utils.c: * vca_byte2str - converts byte to the string
canvca/libvca/vca_utils.c:        if(r > 9) c = 'a' + (r - 10);
canvca/libvca/vca_utils.c:        vca_byte2str_buff[digit_cnt - i - 1] = c;
canvca/libvca/vca_utils.c: * vca_str2msg - converts the string to the canmsg_t object
canvca/libvca/vca_utils.c:    int ok = -1;
canvca/libvca/vca_utils.c:        can_msg->flags = (short)u;
canvca/libvca/vca_utils.c:        can_msg->cob = (int)u;
canvca/libvca/vca_utils.c:        can_msg->timestamp.tv_usec = (unsigned long)u;;
canvca/libvca/vca_utils.c:        can_msg->timestamp = (unsigned long)u;
canvca/libvca/vca_utils.c:        can_msg->id = (unsigned long)u;
canvca/libvca/vca_utils.c:        //can_msg->length = (unsigned int)u;
canvca/libvca/vca_utils.c:            can_msg->data[i] = (unsigned char)u;
canvca/libvca/vca_utils.c:        can_msg->length = i;
canvca/libvca/vca_utils.c://----------------------------------------------------
canvca/libvca/vca_utils.c: * Return: %t1 - %t2 in usec
canvca/libvca/vca_utils.c:    int sec = t1->tv_sec - t2->tv_sec;
canvca/libvca/vca_utils.c:    int usec = t1->tv_usec - t2->tv_usec;
canvca/libvca/vca_utils.c://----------------------------------------------------
canvca/libvca/vca_utils.c: * Return: %t1 - %t2
canvca/libvca/vca_utils.c:    int sec = t1->tv_sec - t2->tv_sec;
canvca/libvca/vca_utils.c:    int nsec = t1->tv_nsec - t2->tv_nsec;
canvca/libvca/vca_utils.c:        sec--;
canvca/libvca/vca_utils.c://----------------------------------------------------
canvca/libvca/vca_utils.c: * vca_cmp_terminated - compares two strings terminated either by '\0' or by %terminator.
canvca/libvca/vca_utils.c:            return -1;
canvca/libvca/vca_utils.c:        if (ca<cb) return -1;
canvca/libvca/vca_utils.c://----------------------------------------------------
canvca/libvca/vcasdo_fsm.c: * vcasdo_error_msg - translates err_no to the string message
canvca/libvca/vcasdo_fsm.c:// -------------- log levels ------------------
canvca/libvca/vcasdo_fsm.c: * sdo_log - write message to the log if level <= log_level
canvca/libvca/vcasdo_fsm.c://---------------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c:    memcpy(&(fsm->out_msg), msg, sizeof(canmsg_t));
canvca/libvca/vcasdo_fsm.c:    fsm->state = sdofsmError;
canvca/libvca/vcasdo_fsm.c:    int head = msg->data[0];
canvca/libvca/vcasdo_fsm.c:        memcpy(&(fsm->out_msg), msg, sizeof(canmsg_t));
canvca/libvca/vcasdo_fsm.c:        fsm->state = sdofsmAbort;
canvca/libvca/vcasdo_fsm.c:        for(i=0; i<4; i++) code = (code << 8) + msg->data[7 - i];
canvca/libvca/vcasdo_fsm.c:        fsm->err_no = code;
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.cob = 0;
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.flags = 0;
canvca/libvca/vcasdo_fsm.c:    //fsm->out_msg.id = fsm->tx_cob_id;
canvca/libvca/vcasdo_fsm.c:    if(fsm->is_server) fsm->out_msg.id = fsm->srvcli_cob_id;
canvca/libvca/vcasdo_fsm.c:    else               fsm->out_msg.id = fsm->clisrv_cob_id;
canvca/libvca/vcasdo_fsm.c://--------------- help functions ------------------------------------
canvca/libvca/vcasdo_fsm.c:    ul_dbuff_t *db = &fsm->data;
canvca/libvca/vcasdo_fsm.c:    if(!db) fatal_error("fsm(%p) load_data_from_msg: fsm->data == NULL\n", fsm);
canvca/libvca/vcasdo_fsm.c:    data = msg->data;
canvca/libvca/vcasdo_fsm.c:    if(fsm->statefnc == vcasdo_fsm_state_init) {
canvca/libvca/vcasdo_fsm.c:        fsm->bytes_to_load = size;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "\tbytes_to_load: %i\n", fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:    else if(fsm->statefnc == vcasdo_fsm_state_segment) {
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "\tbytes_to_load: %i\n", fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:    if(size > fsm->bytes_to_load) {
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_ERR, "fsm (%p): received more bytes (%lu) than expected (%i)\n", db->len + size, fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:        size = fsm->bytes_to_load;
canvca/libvca/vcasdo_fsm.c:    else if(last_segment && size != fsm->bytes_to_load) {
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_ERR, "fsm (%p): received other number of bytes (%lu) than expected (%i)\n", db->len + size, fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:        fsm->bytes_to_load = size;
canvca/libvca/vcasdo_fsm.c:    fsm->bytes_to_load -= size;
canvca/libvca/vcasdo_fsm.c:    //if(!fsm->data) fatal_error("fsm(%p) store_data_to_out_msg: fsm->data == NULL\n", fsm);
canvca/libvca/vcasdo_fsm.c:    db = &fsm->data;
canvca/libvca/vcasdo_fsm.c:    data = fsm->out_msg.data;
canvca/libvca/vcasdo_fsm.c:    if(fsm->statefnc == vcasdo_fsm_state_init) {
canvca/libvca/vcasdo_fsm.c:        fsm->bytes_to_load = db->len;
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load <= 4) {
canvca/libvca/vcasdo_fsm.c:    if(size > fsm->bytes_to_load) size = fsm->bytes_to_load;
canvca/libvca/vcasdo_fsm.c:    data_start = db->len - fsm->bytes_to_load;
canvca/libvca/vcasdo_fsm.c:    fsm->bytes_to_load -= size;
canvca/libvca/vcasdo_fsm.c:        data[0] |= (unsigned char)(((4 - size) & 0x3) << 2);
canvca/libvca/vcasdo_fsm.c:        sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:        memcpy(data + 4, db->data + data_start, size);
canvca/libvca/vcasdo_fsm.c:        fsm->out_msg.length = size + 4;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "\tobject length: %i, data start: %i, bytes to load: %i\n", db->len, data_start, fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "\tobject length: %i, data start: %i, bytes to load: %i\n", db->len, data_start, fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:        if(fsm->statefnc == vcasdo_fsm_state_init) {
canvca/libvca/vcasdo_fsm.c:            l = db->len;
canvca/libvca/vcasdo_fsm.c:            fsm->toggle_bit = 0;
canvca/libvca/vcasdo_fsm.c:            mylog(LOG_DEB, "\t%i/%i pcs of data stored\n", size, fsm->bytes_to_load + size);
canvca/libvca/vcasdo_fsm.c:            sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 8;
canvca/libvca/vcasdo_fsm.c:            if(fsm->bytes_to_load == 0) data[0] |= VCA_SDO_LAST_SEGMENT_INDICATOR;
canvca/libvca/vcasdo_fsm.c:            if(fsm->toggle_bit) {
canvca/libvca/vcasdo_fsm.c:            fsm->toggle_bit = !fsm->toggle_bit;
canvca/libvca/vcasdo_fsm.c:            mylog(LOG_DEB, "\t%i/%i pcs of data stored\n", size, fsm->bytes_to_load + size);
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 1 + size;
canvca/libvca/vcasdo_fsm.c:        memcpy(data + 1, db->data + data_start, size);
canvca/libvca/vcasdo_fsm.c:        //fsm->out_msg.length = size + 1;
canvca/libvca/vcasdo_fsm.c://-------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_state_init - SDO upload/download init state function 
canvca/libvca/vcasdo_fsm.c: * Return: 0 if no answer is in fsm->out_msg, 
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.length = 0;
canvca/libvca/vcasdo_fsm.c:    fsm->toggle_bit = 0;
canvca/libvca/vcasdo_fsm.c:    cmd = VCA_SDO_GET_COMMAND(msg->data[0]);
canvca/libvca/vcasdo_fsm.c:    // I must check fsm->is_server,
canvca/libvca/vcasdo_fsm.c:    if(cmd == VCA_SDO_INIT_UPLOAD_C && !fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->err_no = sdofsmDoneUpload;
canvca/libvca/vcasdo_fsm.c:            byte *data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 1;
canvca/libvca/vcasdo_fsm.c:            fsm->statefnc = vcasdo_fsm_state_segment;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "\t\t%i bytes rest to upload\n", fsm->bytes_to_load);
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_INIT_DOWNLOAD_C && !fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->err_no = sdofsmDoneDownload;
canvca/libvca/vcasdo_fsm.c:            fsm->statefnc = vcasdo_fsm_state_segment;
canvca/libvca/vcasdo_fsm.c:            data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.id = fsm->srvcli_cob_id;
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_INIT_UPLOAD_R && fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        fsm->is_uploader = 1;
canvca/libvca/vcasdo_fsm.c:        vcasdo_read_multiplexor(msg->data + 1, &(fsm->index), &(fsm->subindex)); 
canvca/libvca/vcasdo_fsm.c:        data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->statefnc = vcasdo_fsm_state_segment;
canvca/libvca/vcasdo_fsm.c:        sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_INIT_DOWNLOAD_R && fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        fsm->is_uploader = 0;
canvca/libvca/vcasdo_fsm.c:        vcasdo_read_multiplexor(msg->data + 1, &(fsm->index), &(fsm->subindex)); 
canvca/libvca/vcasdo_fsm.c:        data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:        sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 4;
canvca/libvca/vcasdo_fsm.c:            fsm->statefnc = vcasdo_fsm_state_segment;
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 4;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_ERR, "fsm(%p): vcasdo_fsm_state_init - unexpected command 0x%x\n", fsm, cmd);
canvca/libvca/vcasdo_fsm.c:    //fsm->out_msg.length = 8;
canvca/libvca/vcasdo_fsm.c:    if(fsm->out_msg.length) {
canvca/libvca/vcasdo_fsm.c:    mylog(LOG_DEB, "\tfsm(%p): out_msg.length: %i\n", fsm, fsm->out_msg.length);
canvca/libvca/vcasdo_fsm.c:    gettimeofday(&(fsm->last_activity), NULL);
canvca/libvca/vcasdo_fsm.c://-------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_state_segment - SDO upload/download segment state function 
canvca/libvca/vcasdo_fsm.c: * Return: 0 if no answer is in fsm->out_msg, 
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.length = 0;
canvca/libvca/vcasdo_fsm.c:    cmd = VCA_SDO_GET_COMMAND(msg->data[0]);
canvca/libvca/vcasdo_fsm.c:    if(cmd == VCA_SDO_UPLOAD_SEGMENT_C && !fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        tb = msg->data[0] & VCA_SDO_TOGGLE_BIT;
canvca/libvca/vcasdo_fsm.c:        if((tb && !fsm->toggle_bit) || (!tb && fsm->toggle_bit)) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->err_no = sdofsmDoneUpload;
canvca/libvca/vcasdo_fsm.c:            byte *data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:            fsm->toggle_bit = !fsm->toggle_bit;
canvca/libvca/vcasdo_fsm.c:            if(fsm->toggle_bit) data[0] |= VCA_SDO_TOGGLE_BIT;
canvca/libvca/vcasdo_fsm.c:            fsm->out_msg.length = 1;
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_DOWNLOAD_SEGMENT_C && !fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_UPLOAD_SEGMENT_R && fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->err_no = sdofsmDoneUpload;
canvca/libvca/vcasdo_fsm.c:        data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:    else if(cmd == VCA_SDO_DOWNLOAD_SEGMENT_R && fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        data = fsm->out_msg.data; 
canvca/libvca/vcasdo_fsm.c:        if(msg->data[0] &  VCA_SDO_TOGGLE_BIT) {
canvca/libvca/vcasdo_fsm.c:        fsm->out_msg.length = 1;
canvca/libvca/vcasdo_fsm.c:        if(fsm->bytes_to_load == 0) {
canvca/libvca/vcasdo_fsm.c:            fsm->state = sdofsmDone;
canvca/libvca/vcasdo_fsm.c:            fsm->err_no = sdofsmDoneDownload;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_ERR, "fsm(%p): vcasdo_fsm_state_segment - unexpected command 0x%x\n", cmd);
canvca/libvca/vcasdo_fsm.c:    if(fsm->out_msg.length) fill_out_msg_cobid(fsm);
canvca/libvca/vcasdo_fsm.c:    gettimeofday(&(fsm->last_activity), NULL);
canvca/libvca/vcasdo_fsm.c://-------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c:    fsm->srvcli_cob_id = srvcli_cob_id;
canvca/libvca/vcasdo_fsm.c:    fsm->clisrv_cob_id = clisrv_cob_id;
canvca/libvca/vcasdo_fsm.c:    fsm->node = node;
canvca/libvca/vcasdo_fsm.c:    if(fsm->is_server){
canvca/libvca/vcasdo_fsm.c:       fsm->tx_cob_id = srvcli_cob_id;
canvca/libvca/vcasdo_fsm.c:       fsm->rx_cob_id = clisrv_cob_id;
canvca/libvca/vcasdo_fsm.c:       fsm->tx_cob_id = clisrv_cob_id;
canvca/libvca/vcasdo_fsm.c:       fsm->rx_cob_id = srvcli_cob_id;
canvca/libvca/vcasdo_fsm.c:    if(msg->length > 0 && msg->length < CAN_MSG_LENGTH) {
canvca/libvca/vcasdo_fsm.c:        byte *data = msg->data;
canvca/libvca/vcasdo_fsm.c:        int l = msg->length;
canvca/libvca/vcasdo_fsm.c:        memset(data + l, 0, CAN_MSG_LENGTH - l);
canvca/libvca/vcasdo_fsm.c:        msg->length = CAN_MSG_LENGTH;
canvca/libvca/vcasdo_fsm.c: * vcasdo_init_fsm -  init SDO FSM 
canvca/libvca/vcasdo_fsm.c: * @srvcli_cob_id: port to use for server->client communication (default 0x850 used if %srvcli_cob_id==0)
canvca/libvca/vcasdo_fsm.c: * @clisrv_cob_id: port to use for client->server communication (default 0x600 used if %clisrv_cob_id==0)
canvca/libvca/vcasdo_fsm.c:    ul_dbuff_init(&fsm->data, 0);
canvca/libvca/vcasdo_fsm.c:    //fsm->node = node;
canvca/libvca/vcasdo_fsm.c:    fsm->statefnc = NULL;
canvca/libvca/vcasdo_fsm.c:    fsm->is_server = 1;
canvca/libvca/vcasdo_fsm.c: * vcasdo_destroy_fsm -  frees all SDO FSM resources (destructor) 
canvca/libvca/vcasdo_fsm.c:    ul_dbuff_destroy(&fsm->data);
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_idle - sets SDO FSM to idle state
canvca/libvca/vcasdo_fsm.c:    fsm->state = sdofsmIdle;
canvca/libvca/vcasdo_fsm.c:    fsm->statefnc = NULL;
canvca/libvca/vcasdo_fsm.c:    ul_dbuff_set_len(&fsm->data, 0);
canvca/libvca/vcasdo_fsm.c:    gettimeofday(&(fsm->last_activity), NULL);
canvca/libvca/vcasdo_fsm.c: * vcasdo_run_fsm - starts SDO communication protocol for this FSM
canvca/libvca/vcasdo_fsm.c:    fsm->state = sdofsmRun;
canvca/libvca/vcasdo_fsm.c:    fsm->statefnc = vcasdo_fsm_state_init;
canvca/libvca/vcasdo_fsm.c:    gettimeofday(&(fsm->last_activity), NULL);
canvca/libvca/vcasdo_fsm.c: * vcasdo_run_fsm - aborts SDO communication for this FSM, fill abort out_msg
canvca/libvca/vcasdo_fsm.c:    fsm->state = sdofsmAbort;
canvca/libvca/vcasdo_fsm.c:    fsm->err_no = abort_code;
canvca/libvca/vcasdo_fsm.c:    data = fsm->out_msg.data;
canvca/libvca/vcasdo_fsm.c:    sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.length = 8;
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_set_error - immediately stop SDO communication and set error code
canvca/libvca/vcasdo_fsm.c:    fsm->state = sdofsmError;
canvca/libvca/vcasdo_fsm.c:    fsm->err_no = err_no;
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_upload - starts upload SDO communication protocol for this FSM
canvca/libvca/vcasdo_fsm.c: * @srvcli_cob_id: port to use for server->client communication (default 0x850 used if %srvcli_cob_id==0)
canvca/libvca/vcasdo_fsm.c: * @clisrv_cob_id: port to use for client->server communication (default 0x600 used if %clisrv_cob_id==0)
canvca/libvca/vcasdo_fsm.c: * Return: not 0 if %fsm->out_msg contains CAN message to sent
canvca/libvca/vcasdo_fsm.c:    //fsm->node = node;
canvca/libvca/vcasdo_fsm.c:    fsm->index = index; fsm->subindex = subindex;
canvca/libvca/vcasdo_fsm.c:    fsm->is_server = 0; // only master can invoke SDO communication
canvca/libvca/vcasdo_fsm.c:    data = fsm->out_msg.data;
canvca/libvca/vcasdo_fsm.c:    sdo_fill_multiplexor(data + 1, fsm->index, fsm->subindex);
canvca/libvca/vcasdo_fsm.c:    fsm->out_msg.length = 4;
canvca/libvca/vcasdo_fsm.c:    align_SDO_msg(&fsm->out_msg);
canvca/libvca/vcasdo_fsm.c:    fsm->is_uploader = 1;
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_download - starts download SDO communication protocol for this FSM
canvca/libvca/vcasdo_fsm.c: * @srvcli_cob_id: port to use for server->client communication (default 0x850 used if %srvcli_cob_id==0)
canvca/libvca/vcasdo_fsm.c: * @clisrv_cob_id: port to use for client->server communication (default 0x600 used if %clisrv_cob_id==0)
canvca/libvca/vcasdo_fsm.c: * Return: not 0 if %fsm->out_msg contains CAN message to sent
canvca/libvca/vcasdo_fsm.c:    //fsm->node = node;
canvca/libvca/vcasdo_fsm.c:    fsm->index = index; fsm->subindex = subindex;
canvca/libvca/vcasdo_fsm.c:    if(&fsm->data != dbuff) {
canvca/libvca/vcasdo_fsm.c:        if(ul_dbuff_cpy(&fsm->data, dbuff->data, dbuff->len)!=dbuff->len){
canvca/libvca/vcasdo_fsm.c:    fsm->is_server = 0; // only master can invoke SDO communication
canvca/libvca/vcasdo_fsm.c:    fsm->is_uploader = 0;
canvca/libvca/vcasdo_fsm.c:    // store_data_to_out_msg() does not work correctly if fsm->statefnc==NULL
canvca/libvca/vcasdo_fsm.c:    data = fsm->out_msg.data;
canvca/libvca/vcasdo_fsm.c:    align_SDO_msg(&fsm->out_msg);
canvca/libvca/vcasdo_fsm.c://----------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c:    if(!msg->length) return ret;
canvca/libvca/vcasdo_fsm.c://    unsigned char cmd = msg->data[0];
canvca/libvca/vcasdo_fsm.c:    if(fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "SLAVE: is_for_me(): checking msg cob-id %x against fsm cob-id %x\n", msg->id, fsm->clisrv_cob_id);
canvca/libvca/vcasdo_fsm.c:        if(msg->id != fsm->clisrv_cob_id) return ret;
canvca/libvca/vcasdo_fsm.c:        mylog(LOG_DEB, "MASTER: is_for_me(): checking msg cob-id %x against fsm cob-id %x\n", msg->id, fsm->srvcli_cob_id);
canvca/libvca/vcasdo_fsm.c:        if(msg->id != fsm->srvcli_cob_id) return ret;
canvca/libvca/vcasdo_fsm.c:    //if(msg->id != fsm->rx_cob_id) return ret;
canvca/libvca/vcasdo_fsm.c:    if(fsm->is_server) {
canvca/libvca/vcasdo_fsm.c:        if(VCA_SDO_GET_PORT(msg->id) != fsm->clisrv_cob_id) return ret;
canvca/libvca/vcasdo_fsm.c:        if(VCA_SDO_GET_PORT(msg->id) != fsm->srvcli_cob_id) return ret;
canvca/libvca/vcasdo_fsm.c:    if(VCA_SDO_GET_NODE(msg->id) != fsm->node) return ret;
canvca/libvca/vcasdo_fsm.c://-------------------------------------------------------------------
canvca/libvca/vcasdo_fsm.c: * vcasdo_fsm_taste_msg - try to process msg in FSM
canvca/libvca/vcasdo_fsm.c: *               -1 if message has correct CobID but cann't be processed in current FSM state, 
canvca/libvca/vcasdo_fsm.c:    mylog(LOG_DEB, "tasting message: '%s' in state: %s\n", msgstr, fsm_state_names[fsm->state]);
canvca/libvca/vcasdo_fsm.c:    if(fsm->statefnc && fsm->state == sdofsmRun) {
canvca/libvca/vcasdo_fsm.c:        fsm->statefnc(fsm, msg);
canvca/libvca/vcasdo_fsm.c:        align_SDO_msg(&fsm->out_msg);
canvca/libvca/vcasdo_fsm.c:    return -1;
canvca/libvca/vcasdo_fsm.c:    if(fsm->statefnc) {
canvca/libvca/vcasdo_fsm.c:        if(fsm->state == sdofsmError) return sdofsmMsgEatError;
canvca/libvca/vcasdo_fsm.c:        if(fsm->state == sdofsmAbort) return sdofsmMsgEatError;
canvca/libvca/vcasdo_fsm.h:enum {sdofsmMsgRefuse = -1, sdofsmMsgEat, sdofsmMsgEatError};
canvca/libvca/vcasdo_fsm.h: * struct vcasdo_fsm_t - structure representing SDO FSM
canvca/libvca/vcasdo_fsm.h: * @srvcli_cob_id:  SDO server-client COB_ID (default is 0x580 + node), port on which master listen
canvca/libvca/vcasdo_fsm.h: * @clisrv_cob_id:  SDO client-server COB_ID (default is 0x600 + node), port on which slave listen
canvca/libvca/vcasdo_fsm.h: * vcasdo_fsm_upload1 - starts SDO upload using parameters set by previous calling vcasdo_init_fsm()
canvca/libvca/vcasdo_fsm.h:    return vcasdo_fsm_upload(fsm, fsm->node, fsm->index, fsm->subindex, fsm->srvcli_cob_id, fsm->clisrv_cob_id);
canvca/libvca/vcasdo_fsm.h: * vcasdo_fsm_download1 - starts SDO download using parameters set by previous calling vcasdo_init_fsm()
canvca/libvca/vcasdo_fsm.h:    return vcasdo_fsm_download(fsm, data, fsm->node, fsm->index, fsm->subindex, fsm->srvcli_cob_id, fsm->clisrv_cob_id);
canvca/libvca/vcasdo_fsm.h: * vcasdo_read_multiplexor - reads index and subindex from multiplexor part of CANopen mesage
canvca/libvca/vcasdo_msg.c:    {0x06090011, "Sub-index does not exist."}, 
canvca/libvca/vcasdo_msg.h: * vcasdo_abort_msg - translates SDO abort_code to the string message
config.omk:LINUX_DIR=/mnt/fc1/usr/local/src/ts-kernel/linux24
config.omk:CC=/mnt/fc1/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
config.omk:CXX=/mnt/fc1/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-g++
config.omk:AR=/mnt/fc1/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ar
config.omk:LD=/mnt/fc1/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ld
config.omk:CFLAGS+=-ggdb
config.omk:QTDIR=/mnt/fc1/usr/local/src/qt-embedded-free-3.3.4-arm
config.omk:QMAKESPEC=mkspecs/qws/linux-arm-g++
config.omk:#CPPFLAGS+=-DFOR_USER_SPACE -DUL_DRV_IN_LIB
config.omk-arm:LINUX_DIR=/usr/local/src/ts-kernel/linux24
config.omk-arm:CC=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
config.omk-arm:CXX=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-g++
config.omk-arm:AR=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ar
config.omk-arm:LD=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ld
config.omk-arm:CFLAGS+=-ggdb
config.omk-arm:QTDIR=/usr/local/src/qt-embedded-free-3.3.4-arm
config.omk-arm:QMAKESPEC=mkspecs/qws/linux-arm-g++
config.omk-arm:#CPPFLAGS+=-DFOR_USER_SPACE -DUL_DRV_IN_LIB
config.omk-x86:LINUX_DIR=/usr/local/src/rtai_x86/linux-2.4.23-ok
config.omk-x86:#CC=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
config.omk-x86:#CXX=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-g++
config.omk-x86:#AR=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ar
config.omk-x86:#LD=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/arm-linux-ld
config.omk-x86:#CFLAGS+=-ggdb
config.omk-x86:#QTDIR=/usr/local/src/qt-embedded-free-3.3.4-arm
config.omk-x86:#QMAKESPEC=mkspecs/qws/linux-arm-g++
config.omk-x86:#CPPFLAGS+=-DFOR_USER_SPACE -DUL_DRV_IN_LIB
CVS/Repository:ts-7200/dist/ocera_comm_can
CVS/Entries:/Makefile.rules-ocera/1.1.1.1/Thu Oct  6 19:31:07 2005//
CVS/Entries:/OCERA_TOP_DIR-ocera/1.1.1.1/Thu Oct  6 19:31:07 2005//
CVS/Entries:/config.omk-default/1.1.1.1/Thu Oct  6 19:31:07 2005//
CVS/Entries:/config.omk-x86/1.1.1.1/Thu Oct  6 19:31:07 2005//
CVS/Entries:/test-can-in-konsole/1.1.1.1/Thu Oct  6 19:31:07 2005//
CVS/Entries:/config.omk-arm/1.2/Thu Aug 24 17:06:05 2006//
INSTALL:  cvs -z3 -d $EXTCVS co ocera/components/comm/can
INSTALL:script generates file "config.omk-default" with default configuration
INSTALL:redefine some of "config.omk-default" defines.
INSTALL:check by "make --version" command
Kconfig:menu "Linux/RT-Linux CAN Driver (LinCAN)"
Kconfig:	bool "LinCAN - Linux CAN driver"
Kconfig:	  - Linux only driver, prerequisite is only kernel modules support
Kconfig:	  - Linux+RT-Linux driver
Kconfig:	  The RT-Linux and RT-Linux dynamic memory support is required for
Kconfig:	  driver API for both Linux and RT-Linux in such case.
Kconfig:	  http://cmp.felk.cvut.cz/~pisa/can/doc/lincandoc-0.2.pdf
Kconfig:	bool "LinCAN RT-Linux API support"
Kconfig:	  RT-Linux application interface to LinCAN driver.
Kconfig:	  from RT-Linux worker threads.
Kconfig:          VME-PCI brige.
Kconfig:	bool "PCI-7841 card (ADLINK)"
Kconfig:	bool "EMS CPC-PCI card support"
Kconfig:		Support for EMS Wuensche CPC-PCI dual SJA1000 card
Kconfig:		page http://www.ems-wuensche.com/
Kconfig:	bool "PC-I03 ISA card (IXXAT)"
Kconfig:	bool "PCAN parallel port dongle (PEAK System-Technik GmbH)"
Kconfig:	bool "PCcan-Q/D/S/F ISA cards (KVASER)"
Kconfig:	bool "PCIcan-Q/D/S PCI cards (KVASER)"
Kconfig:	bool "PCM-3680 PC/104 card (Advantech)"
Kconfig:		Driver supports Linux and RT-Linux clients CAN API.
Kconfig:		of Linux and RT-Linux CAN devices.
Kconfig:	bool "Virtual CAN API for RT-Linux (Experimental)"
Kconfig:	  RT-Linux version of VCA library.
Kconfig:	bool "CANOpen Device for RT-Linux (Not finished yet)"
Kconfig:	  RT-Linux version of CANopen slave device.
Kconfig.dep:	---help---
Kconfig.dep:	  [Yes] (RTL_OC_DYNMEM)             (Dynamic Memory Management support in RT-Linux)
Kconfig.dep:	  [Yes] (RTL_OC_BIGPHYSAREA_DYNMEM) (Big physical memory allocation in RT-Linux)
Kconfig.dep:        bool "Dynamic Memory Management support in RT-Linux"
Kconfig.dep:        bool "Big physical memory allocation in RT-Linux"
kernelcfg2mk:if [ $# -lt 1 ] ; then
kernelcfg2mk:if [ $# -gt 1 ] ; then
kernelcfg2mk:if [ ! -e $LINUX_DIR/.config ] ; then
kernelcfg2mk:if [ ! -e $LINUX_DIR/.config ] ; then
kernelcfg2mk:if [ -z "$KERN_BUILD_DIR" ]  ; then
kernelcfg2mk:if [ -z "$KERN_MODULES_DIR" ]  ; then
kernelcfg2mk:if [ -z "$MAKE" ]  ; then
kernelcfg2mk:KERN_TEST_DIR="$KERN_BUILD_DIR/kern-test-mk"
kernelcfg2mk:mkdir -p $KERN_TEST_DIR
kernelcfg2mk:LINUX_VERSION_MAJOR=$(echo ${LINUX_VERSION} | cut -d. -f1)
kernelcfg2mk:LINUX_VERSION_MINOR=$(echo ${LINUX_VERSION} | cut -d. -f2)
kernelcfg2mk:	rm -f ${KERN_BUILD_DIR}/kernel.mk
kernelcfg2mk:	rm -rf ${KERN_TEST_DIR}
kernelcfg2mk:	#echo ${MAKE} -C ${LINUX_DIR} SUBDIRS=${KERN_TEST_DIR} modules
kernelcfg2mk:	${MAKE} -C ${LINUX_DIR} SUBDIRS=${KERN_TEST_DIR} modules
kernelcfg2mk:		cp -v flags ${KERN_MODULES_DIR}/kernel.mk	
kernelcfg2mk:	rm -rf ${KERN_TEST_DIR}
kernelcfg2mk:	rm -f ${KERN_BUILD_DIR}/kernel.mk
kernelcfg2mk:	rm -rf ${KERN_TEST_DIR}
kernelcfg2mk:obj-m += fake.o
kernelcfg2mk:	#echo ${MAKE} -C ${LINUX_DIR} SUBDIRS=${KERN_TEST_DIR} LINUXDIR=${LINUX_DIR} MODVERDIR=${KERN_TEST_DIR} modules
kernelcfg2mk:	${MAKE} -C ${LINUX_DIR} SUBDIRS=${KERN_TEST_DIR} LINUXDIR=${LINUX_DIR} MODVERDIR=${KERN_TEST_DIR} modules
kernelcfg2mk:		cp -v flags ${KERN_MODULES_DIR}/kernel.mk	
kernelcfg2mk:	rm -rf ${KERN_TEST_DIR}
lincan/CVS/Repository:ts-7200/dist/ocera_comm_can/lincan
lincan/CVS/Entries:/Unsupported-hardware/1.1.1.1/Thu Oct  6 19:31:08 2005//
lincan/CVS/Entries:/switch-omk2std/1.1.1.1/Thu Oct  6 19:31:08 2005//
lincan/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
lincan/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
lincan/CREDITS:Original can-0.7.1 author, http://home.wanadoo.nl/arnaud/
lincan/CREDITS:	He provided ETHERNET CAN-PROXY as well.
lincan/CREDITS:	Work on VME support for Unicontrols V-CAN board
lincan/CREDITS:	contributed support for series of IXXAT iPC-I 165 (PCI) 
lincan/CREDITS:	provided PC-104, PCI and VME CAN boards
lincan/CREDITS:	donated EMS CPC-PCI card
lincan/include/CVS/Repository:ts-7200/dist/ocera_comm_can/lincan/include
lincan/include/CVS/Entries:/pc-i03.h/1.1.1.1/Thu Oct  6 19:31:08 2005//
lincan/include/ts732.h: * Header file for the Linux CAN-bus driver.
lincan/include/ts732.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/ts732.h: * This software is released under the GPL-License.
lincan/include/ts732.h: * Version lincan-0.3  17 Jun 2004
lincan/include/aim104.h: * Header file for the Linux CAN-bus driver.
lincan/include/aim104.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/aim104.h: * This software is released under the GPL-License.
lincan/include/aim104.h: * Version lincan-0.3  17 Jun 2004
lincan/include/c_can.h:/* c_can.h - Hynix HMS30c7202 ARM generic C_CAN module handling
lincan/include/c_can.h: * Linux CAN-bus device driver.
lincan/include/c_can.h: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/include/c_can.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/c_can.h: * This software is released under the GPL-License.
lincan/include/c_can.h: * Version lincan-0.3  17 Jun 2004
lincan/include/c_can.h:	u32 address = pchip->chip_base_addr + reg;
lincan/include/c_can.h:	pchip->write_register(data, address);
lincan/include/c_can.h:	u32 address = pchip->chip_base_addr + reg;
lincan/include/c_can.h:	return pchip->read_register(address);
lincan/include/c_can.h:     CR_SIE  = 1<<2,	// Status-change Interrupt Enable
lincan/include/c_can.h:   IFXCM_DB        = 1,		// R/W Data Byte 4-7
lincan/include/c_can.h:     IFXCM_DA        = 1<<1,	// R/W Data Byte 0-3
lincan/include/can.h: * Header file for the Linux CAN-bus driver.
lincan/include/can.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/can.h: * This software is released under the GPL-License.
lincan/include/can.h: * Version lincan-0.3  17 Jun 2004
lincan/include/can.h: * struct can_baudparams_t - datatype for calling CONF_BAUDPARAMS IOCTL 
lincan/include/can.h: * @flags: reserved for additional flags for chip configuration, should be written -1 or 0
lincan/include/can.h: * @sjw: synchronization jump width (0-3) prescaled clock cycles
lincan/include/can.h: * @sampl_pt: sample point in % (0-100) sets (TSEG1+1)/(TSEG1+TSEG2+2) ratio
lincan/include/can.h: * If default value of some field should be preserved, fill field by value -1.
lincan/include/can.h:#define CAN_DRV_QRY_BRANCH    0	/* returns driver branch value - "LINC" for LinCAN driver */
lincan/include/can_iortl.h:/* can_iortl.h - RT-Linux Posix file IO interface
lincan/include/can_iortl.h: * Linux CAN-bus device driver.
lincan/include/can_iortl.h: * RT-Linux support by Pavel Pisa - OCERA team member
lincan/include/can_iortl.h: * This software is released under the GPL-License.
lincan/include/can_iortl.h: * Version lincan-0.3  17 Jun 2004
lincan/include/can_queue.h:/* can_queue.h - CAN queues and message passing infrastructure 
lincan/include/can_queue.h: * Linux CAN-bus device driver.
lincan/include/can_queue.h: * Written by Pavel Pisa - OCERA team member
lincan/include/can_queue.h: * This software is released under the GPL-License.
lincan/include/can_queue.h: * Version lincan-0.3  17 Jun 2004
lincan/include/can_queue.h: * struct canque_slot_t - one CAN message slot in the CAN FIFO queue 
lincan/include/can_queue.h: * struct canque_fifo_t - CAN FIFO queue representation
lincan/include/can_queue.h:  test_bit(CAN_FIFOF_##fifo_fl##_b,&(fifo)->fifo_flags)
lincan/include/can_queue.h:  set_bit(CAN_FIFOF_##fifo_fl##_b,&(fifo)->fifo_flags)
lincan/include/can_queue.h:  clear_bit(CAN_FIFOF_##fifo_fl##_b,&(fifo)->fifo_flags)
lincan/include/can_queue.h:  test_and_set_bit(CAN_FIFOF_##fifo_fl##_b,&(fifo)->fifo_flags)
lincan/include/can_queue.h:  test_and_clear_bit(CAN_FIFOF_##fifo_fl##_b,&(fifo)->fifo_flags)
lincan/include/can_queue.h: * canque_fifo_get_inslot - allocate slot for the input of one CAN message 
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	if(!(slot=fifo->flist)) {
lincan/include/can_queue.h:		can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:		return -1;
lincan/include/can_queue.h:	if(!(fifo->flist=slot->next))
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	slot->slot_flags=cmd&CAN_SLOTF_CMD;
lincan/include/can_queue.h: * canque_fifo_put_inslot - releases slot to further processing
lincan/include/can_queue.h: *	before call to the function. The caller should wake-up output side of the queue.
lincan/include/can_queue.h:	slot->next=NULL;
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	if(*fifo->tail) can_printk(KERN_CRIT "canque_fifo_put_inslot: fifo->tail != NULL\n");
lincan/include/can_queue.h:	*fifo->tail=slot;
lincan/include/can_queue.h:	fifo->tail=&slot->next;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h: * canque_fifo_abort_inslot - release and abort slot
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	slot->next=fifo->flist;
lincan/include/can_queue.h:	fifo->flist=slot;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h: * canque_fifo_test_outslot - test and get ready slot from the FIFO
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	if(!(slot=fifo->head)){;
lincan/include/can_queue.h:		can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:		return -1;
lincan/include/can_queue.h:	if(!(fifo->head=slot->next))
lincan/include/can_queue.h:		fifo->tail=&fifo->head;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	cmd=slot->slot_flags;
lincan/include/can_queue.h: * canque_fifo_free_outslot - free processed FIFO slot
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	slot->next=fifo->flist;
lincan/include/can_queue.h:	fifo->flist=slot;
lincan/include/can_queue.h:	if(!(fifo->head)){
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h: * canque_fifo_again_outslot - interrupt and postpone processing of the slot
lincan/include/can_queue.h:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/include/can_queue.h:	if(!(slot->next=fifo->head))
lincan/include/can_queue.h:		fifo->tail=&slot->next;
lincan/include/can_queue.h:	fifo->head=slot;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/include/can_queue.h: * struct canque_edge_t - CAN message delivery subsystem graph edge
lincan/include/can_queue.h: * @edge_prio: the assigned queue priority from the range 0 to %CANQUEUE_PRIO_NR-1
lincan/include/can_queue.h: * @pending_peers: edges with pending delayed events (RTL->Linux calls)
lincan/include/can_queue.h: * struct canque_ends_t - CAN message delivery subsystem graph vertex (FIFO ends)
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_EMPTY (out->in call) - all slots are processed by FIFO out side. 
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_SPACE (out->in call) - full state negated => there is space for new message.
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_PROC  (in->out call) - empty state negated => out side is requested to process slots.
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_NOUSR (both) - notify, that the last user has released the edge usage
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_DEAD  (both) - edge is in progress of deletion.
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_ATACH (both) - new edge has been attached to end.
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_FILTCH (out->in call) - edge filter rules changed
lincan/include/can_queue.h: *	%CANQUEUE_NOTIFY_ERROR  (out->in call) - error in messages processing.
lincan/include/can_queue.h: *	mainly for waking-up by the notify calls.
lincan/include/can_queue.h:#define CANQUEUE_NOTIFY_EMPTY  1 /* out -> in - all slots are processed by FIFO out side */
lincan/include/can_queue.h:#define CANQUEUE_NOTIFY_SPACE  2 /* out -> in - full state negated => there is space for new message */
lincan/include/can_queue.h:#define CANQUEUE_NOTIFY_PROC   3 /* in -> out - empty state negated => out side is requested to process slots */
lincan/include/can_queue.h: * canque_notify_inends - request to send notification to the input ends
lincan/include/can_queue.h:	if(qedge->inends)
lincan/include/can_queue.h:		if(qedge->inends->notify)
lincan/include/can_queue.h:			qedge->inends->notify(qedge->inends,qedge,what);
lincan/include/can_queue.h: * canque_notify_outends - request to send notification to the output ends
lincan/include/can_queue.h:	if(qedge->outends)
lincan/include/can_queue.h:		if(qedge->outends->notify)
lincan/include/can_queue.h:			qedge->outends->notify(qedge->outends,qedge,what);
lincan/include/can_queue.h: * canque_notify_bothends - request to send notification to the both ends
lincan/include/can_queue.h: * canque_activate_edge - mark output end of the edge as active
lincan/include/can_queue.h:	if(qedge->edge_prio>=CANQUEUE_PRIO_NR)
lincan/include/can_queue.h:		qedge->edge_prio=CANQUEUE_PRIO_NR-1;
lincan/include/can_queue.h:	if((outends=qedge->outends)){
lincan/include/can_queue.h:		can_spin_lock_irqsave(&outends->ends_lock, flags);
lincan/include/can_queue.h:		can_spin_lock(&qedge->fifo.fifo_lock);
lincan/include/can_queue.h:		if(!canque_fifo_test_fl(&qedge->fifo,EMPTY)){
lincan/include/can_queue.h:			list_del(&qedge->activepeers);
lincan/include/can_queue.h:			list_add_tail(&qedge->activepeers,&outends->active[qedge->edge_prio]);
lincan/include/can_queue.h:		can_spin_unlock(&qedge->fifo.fifo_lock);
lincan/include/can_queue.h:		can_spin_unlock_irqrestore(&outends->ends_lock, flags);
lincan/include/can_queue.h: * canque_filtid2internal - converts message ID and filter flags into internal format
lincan/include/can_queue.h: * canque_edge_incref - increments edge reference count
lincan/include/can_queue.h:	atomic_inc(&edge->edge_used);
lincan/include/can_queue.h:		can_spin_lock_irqsave(&inends->ends_lock, flags);
lincan/include/can_queue.h:		can_spin_lock(&outends->ends_lock);
lincan/include/can_queue.h:		can_spin_lock_irqsave(&outends->ends_lock, flags);
lincan/include/can_queue.h:		if(outends!=inends) can_spin_lock(&inends->ends_lock);
lincan/include/can_queue.h:	if(outends!=inends) can_spin_unlock(&outends->ends_lock);
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&inends->ends_lock, flags);
lincan/include/can_queue.h:/* Non-inlined version of edge reference decrement */
lincan/include/can_queue.h:	struct canque_ends_t *inends=edge->inends;
lincan/include/can_queue.h:	struct canque_ends_t *outends=edge->outends;
lincan/include/can_queue.h:	if(atomic_dec_and_test(&edge->edge_used)) {
lincan/include/can_queue.h:		dead_fl=!canque_fifo_test_and_set_fl(&edge->fifo,DEAD);
lincan/include/can_queue.h:		   be moved to canque_edge_do_dead :-) */
lincan/include/can_queue.h: * canque_edge_decref - decrements edge reference count
lincan/include/can_queue.h:        x = atomic_read(&edge->edge_used);
lincan/include/can_queue.h:		/* x=cmpxchg(&edge->edge_used, x, x-1); */
lincan/include/can_queue.h:		x=__cmpxchg(&edge->edge_used, x, x-1, sizeof(atomic_t));
lincan/include/can_queue.h:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/include/can_queue.h:	entry=qends->inlist.next;
lincan/include/can_queue.h:	if(entry != &qends->inlist) {
lincan/include/can_queue.h:		if(canque_fifo_test_fl(&edge->fifo,DEAD)) {
lincan/include/can_queue.h:			entry=entry->next;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/include/can_queue.h:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/include/can_queue.h:	entry=edge->inpeers.next;
lincan/include/can_queue.h:	if(entry != &qends->inlist) {
lincan/include/can_queue.h:		if(canque_fifo_test_fl(&edge->fifo,DEAD)) {
lincan/include/can_queue.h:			entry=entry->next;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/include/can_queue.h:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/include/can_queue.h:	entry=qends->outlist.next;
lincan/include/can_queue.h:	if(entry != &qends->outlist) {
lincan/include/can_queue.h:		if(canque_fifo_test_fl(&edge->fifo,DEAD)) {
lincan/include/can_queue.h:			entry=entry->next;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/include/can_queue.h:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/include/can_queue.h:	entry=edge->outpeers.next;
lincan/include/can_queue.h:	if(entry != &qends->outlist) {
lincan/include/can_queue.h:		if(canque_fifo_test_fl(&edge->fifo,DEAD)) {
lincan/include/can_queue.h:			entry=entry->next;
lincan/include/can_queue.h:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/include/can_queue.h:/* RT-Linux specific functions and variables */
lincan/include/can_sysdep.h:/* can_sysdep.h - hides differences between individual Linux kernel 
lincan/include/can_sysdep.h: * Linux CAN-bus device driver.
lincan/include/can_sysdep.h: * Written by Pavel Pisa - OCERA team member
lincan/include/can_sysdep.h: * This software is released under the GPL-License.
lincan/include/can_sysdep.h: * Version lincan-0.3  17 Jun 2004
lincan/include/can_sysdep.h:                        (qentry->next=NULL,qentry->task=qtask)
lincan/include/can_sysdep.h:       /* (_tasklet)->next=NULL; */ \
lincan/include/can_sysdep.h:       (_tasklet)->sync=0; \
lincan/include/can_sysdep.h:       (_tasklet)->routine=_func; \
lincan/include/can_sysdep.h:       (_tasklet)->data=(void*)_data; \
lincan/include/can_sysdep.h:	(MINOR(file->f_dentry->d_inode->i_rdev))
lincan/include/can_sysdep.h:	(minor(file->f_dentry->d_inode->i_rdev))
lincan/include/can_sysdep.h:#define can_set_rtl_file_private_data(fptr, p) do{ fptr->f_minor=(long)(p); } while(0)
lincan/include/can_sysdep.h:#define can_get_rtl_file_private_data(fptr) ((void*)((fptr)->f_minor))
lincan/include/can_sysdep.h:	  ptr->tv_usec=temp_timespec.tv_nsec/1000;\
lincan/include/can_sysdep.h:	  ptr->tv_sec=temp_timespec.tv_sec;\
lincan/include/canmsg.h:/* canmsg.h - common kernel-space and user-space CAN message structure
lincan/include/canmsg.h: * Linux CAN-bus device driver.
lincan/include/canmsg.h: * Written by Pavel Pisa - OCERA team member
lincan/include/canmsg.h: * This software is released under the GPL-License.
lincan/include/canmsg.h: * Version lincan-0.3  17 Jun 2004
lincan/include/canmsg.h: * struct canmsg_t - structure representing CAN message
lincan/include/canmsg.h: * struct canfilt_t - structure for acceptance filter setup
lincan/include/canmsg.h:#define MSG_ID_MASK ((1l<<29)-1)
lincan/include/cc_can104.h: * Header file for the Linux CAN-bus driver.
lincan/include/cc_can104.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/cc_can104.h: * This software is released under the GPL-License.
lincan/include/cc_can104.h: * Version lincan-0.3  17 Jun 2004
lincan/include/close.h: * Header file for the Linux CAN-bus driver.
lincan/include/close.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/close.h: * This software is released under the GPL-License.
lincan/include/close.h: * Version lincan-0.3  17 Jun 2004
lincan/include/constants.h: * Header file for the Linux CAN-bus driver.
lincan/include/constants.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/constants.h: * This software is released under the GPL-License.
lincan/include/constants.h: * Version lincan-0.3  17 Jun 2004
lincan/include/constants.h:  test_bit(MSGOBJ_##obj_fl##_b,&(obj)->obj_flags)
lincan/include/constants.h:  set_bit(MSGOBJ_##obj_fl##_b,&(obj)->obj_flags)
lincan/include/constants.h:  clear_bit(MSGOBJ_##obj_fl##_b,&(obj)->obj_flags)
lincan/include/constants.h:  test_and_set_bit(MSGOBJ_##obj_fl##_b,&(obj)->obj_flags)
lincan/include/constants.h:  test_and_clear_bit(MSGOBJ_##obj_fl##_b,&(obj)->obj_flags)
lincan/include/devcommon.h:/* devcommon.h - common device code
lincan/include/devcommon.h: * Linux CAN-bus device driver.
lincan/include/devcommon.h: * New CAN queues by Pavel Pisa - OCERA team member
lincan/include/devcommon.h: * This software is released under the GPL-License.
lincan/include/devcommon.h: * Version lincan-0.3  17 Jun 2004
lincan/include/eb8245.h: * Header file for the Linux CAN-bus driver.
lincan/include/eb8245.h: * This software is released under the GPL-License.
lincan/include/eb8245.h: * Version lincan-0.3  17 Jun 2004
lincan/include/fasync.h: * Header file for the Linux CAN-bus driver.
lincan/include/fasync.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/fasync.h: * This software is released under the GPL-License.
lincan/include/fasync.h: * Version lincan-0.3  17 Jun 2004
lincan/include/finish.h: * Header file for the Linux CAN-bus driver.
lincan/include/finish.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/finish.h: * This software is released under the GPL-License.
lincan/include/finish.h: * Version lincan-0.3  17 Jun 2004
lincan/include/hms30c7202_can.h:/* hms30c7202_can.h - Hynix HMS30c7202 ARM device specific code
lincan/include/hms30c7202_can.h: * Linux CAN-bus device driver.
lincan/include/hms30c7202_can.h: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/include/hms30c7202_can.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/hms30c7202_can.h: * This software is released under the GPL-License.
lincan/include/hms30c7202_can.h: * Version lincan-0.3  17 Jun 2004
lincan/include/i82527.h: * Header file for the Linux CAN-bus driver.
lincan/include/i82527.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/i82527.h: * This software is released under the GPL-License.
lincan/include/i82527.h: * Version lincan-0.3  17 Jun 2004
lincan/include/ioctl.h: * Header file for the Linux CAN-bus driver.
lincan/include/ioctl.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/ioctl.h: * This software is released under the GPL-License.
lincan/include/ioctl.h: * Version lincan-0.3  17 Jun 2004
lincan/include/ipci165.h: * Linux CAN-bus device driver for IXXAT iPC-I 165 (PCI) compatible HW.
lincan/include/ipci165.h: * This software is released under the GPL-License.
lincan/include/ipci165.h: * Version lincan-0.3  17 Jun 2004
lincan/include/ipci165.h:#define IPCI165_SUBSYSTEM_ID 0x1067   /* subsystem ID for IXXAT iPC-I 165 card */
lincan/include/ipci165.h: * DP-RAM (PCI Memory Window 2) specific defines                             *
lincan/include/ipci165.h:#define DPRAM_SIZE                 8*1024   /* DP-RAM size - PCI Memory Window 2 */
lincan/include/ipci165.h:#define CHIP_FLAG_BUS_OFF               1  /* bus-off signal to kthread */
lincan/include/ipci165_fw.h: * Linux CAN-bus device driver firmware for IXXAT iPC-I 165 (PCI) compatible HW.
lincan/include/ipci165_fw.h: * This software is released under the GPL-License.
lincan/include/ipci165_fw.h: * Version lincan-0.3  17 Jun 2004
lincan/include/irq.h: * Header file for the Linux CAN-bus driver.
lincan/include/irq.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/irq.h: * This software is released under the GPL-License.
lincan/include/irq.h: * Version lincan-0.3  17 Jun 2004
lincan/include/m437.h: * Header file for the Linux CAN-bus driver.
lincan/include/m437.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/m437.h: * This software is released under the GPL-License.
lincan/include/m437.h: * Version lincan-0.3  17 Jun 2004
lincan/include/main.h: * Header file for the Linux CAN-bus driver.
lincan/include/main.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/main.h: * This software is released under the GPL-License.
lincan/include/main.h: * Version lincan-0.3  17 Jun 2004
lincan/include/main.h: * struct canhardware_t - structure representing pointers to all CAN boards
lincan/include/main.h: * @rtr_queue: RTR - remote transmission request queue (expect some changes there)
lincan/include/main.h: * struct candevice_t - CAN device/board structure
lincan/include/main.h: * and @nr_sja1000_chips in the board non-specific functions.
lincan/include/main.h: * to the same value. The request_io function can fix-up @dev_base_addr
lincan/include/main.h: * struct canchip_t - CAN chip state and type information
lincan/include/main.h: * @sja_cdr_reg: SJA specific register -
lincan/include/main.h: * @sja_ocr_reg: SJA specific register -
lincan/include/main.h: * @int_cpu_reg: Intel specific register -
lincan/include/main.h: * @int_clk_reg: Intel specific register -
lincan/include/main.h: * @int_bus_reg: Intel specific register -
lincan/include/main.h: * @worker_thread: chip worker thread ID (RT-Linux specific field)
lincan/include/main.h: *	(RT-Linux specific field). Masks values:
lincan/include/main.h: * (chip->hostdevice->hwspecops->write_register and 
lincan/include/main.h: * chip->hostdevice->hwspecops->read_register)
lincan/include/main.h: * struct msgobj_t - structure holding communication object state
lincan/include/main.h: * struct canuser_t - structure holding CAN user/client state
lincan/include/main.h: * @flags: used to distinguish Linux/RT-Linux type
lincan/include/main.h: *	for the Linux user-space client applications
lincan/include/main.h: * struct hwspecops_t - hardware/board specific operations
lincan/include/main.h: *	It is responsible to setup &canchip_t->@chipspecops functions
lincan/include/main.h: *	for non-standard chip types (type other than "i82527", "sja1000" or "sja1000p")
lincan/include/main.h: * struct chipspecops_t - can controller chip specific operations
lincan/include/main.h:	outb(data, chip->chip_base_addr+address);
lincan/include/main.h:	return inb(chip->chip_base_addr+address);
lincan/include/main.h:	outb(data, obj->obj_base_addr+address);
lincan/include/main.h:	return inb(obj->obj_base_addr+address);
lincan/include/main.h:	writeb(data, chip->chip_base_addr+address);
lincan/include/main.h:	return readb(chip->chip_base_addr+address);
lincan/include/main.h:	writeb(data, obj->obj_base_addr+address);
lincan/include/main.h:	return readb(obj->obj_base_addr+address);
lincan/include/main.h:	address_to_write = chip->chip_base_addr+address;
lincan/include/main.h:	chip->write_register(data, address_to_write);
lincan/include/main.h:	address_to_read = chip->chip_base_addr+address;
lincan/include/main.h:	return chip->read_register(address_to_read);
lincan/include/main.h:	address_to_write = obj->obj_base_addr+address;
lincan/include/main.h:	chip->write_register(data, address_to_write);
lincan/include/main.h:	address_to_read = obj->obj_base_addr+address;
lincan/include/main.h:	return chip->read_register(address_to_read);
lincan/include/main.h:	ptimestamp->tv_sec = 0;
lincan/include/main.h:	ptimestamp->tv_usec = 0;
lincan/include/modparms.h: * Header file for the Linux CAN-bus driver.
lincan/include/modparms.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/modparms.h: * This software is released under the GPL-License.
lincan/include/modparms.h: * Version lincan-0.3  17 Jun 2004
lincan/include/msmcan.h: * Header file for the Linux CAN-bus driver.
lincan/include/msmcan.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/msmcan.h: * This software is released under the GPL-License.
lincan/include/msmcan.h: * Version lincan-0.3  17 Jun 2004
lincan/include/ns_dev_can.h:/* ns_dev_can.h - FPGA version of C_CAN ARM device specific code
lincan/include/ns_dev_can.h: * Linux CAN-bus device driver.
lincan/include/ns_dev_can.h: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/include/ns_dev_can.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/ns_dev_can.h: * Ported to FS Forth-Systeme GmbH A9M9750DEVx development boards
lincan/include/ns_dev_can.h: * This software is released under the GPL-License.
lincan/include/ns_dev_can.h: * Version lincan-0.3  17 Jun 2004
lincan/include/nsi.h: * Header file for the Linux CAN-bus driver.
lincan/include/nsi.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/nsi.h: * This software is released under the GPL-License.
lincan/include/nsi.h: * Version lincan-0.3  17 Jun 2004
lincan/include/open.h: * Header file for the Linux CAN-bus driver.
lincan/include/open.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/open.h: * This software is released under the GPL-License.
lincan/include/open.h: * Version lincan-0.3  17 Jun 2004
lincan/include/oscar.h: * Header file for the Linux CAN-bus driver.
lincan/include/oscar.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/oscar.h: * This software is released under the GPL-License.
lincan/include/oscar.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pc-i03.h:/* pc-i03.h
lincan/include/pc-i03.h: * Header file for the Linux CAN-bus driver.
lincan/include/pc-i03.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/pc-i03.h: * This software is released under the GPL-License.
lincan/include/pc-i03.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pcan_dongle.h:// Copyright (C) 2001,2002,2003,2004  PEAK System-Technik GmbH
lincan/include/pcan_dongle.h:// linux@peak-system.com
lincan/include/pcan_dongle.h:// www.peak-system.com
lincan/include/pcan_dongle.h:// all parts to handle device interface specific parts of pcan-dongle
lincan/include/pccan.h: * Header file for the Linux CAN-bus driver.
lincan/include/pccan.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/pccan.h: * This software is released under the GPL-License.
lincan/include/pccan.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pcccan.h: * Header file for the Linux CAN-bus driver.
lincan/include/pcccan.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/pcccan.h: * This software is released under the GPL-License.
lincan/include/pcccan.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pcm3680.h: * Header file for the Linux CAN-bus driver.
lincan/include/pcm3680.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/pcm3680.h: * This software is released under the GPL-License.
lincan/include/pcm3680.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pikronisa.h: * Header file for the Linux CAN-bus driver.
lincan/include/pikronisa.h: * This software is released under the GPL-License.
lincan/include/pikronisa.h: * Version lincan-0.3  17 Jun 2004
lincan/include/pip.h: * Header file for the Linux CAN-bus driver.
lincan/include/pip.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/pip.h: * This software is released under the GPL-License.
lincan/include/pip.h: * Version lincan-0.3  17 Jun 2004
lincan/include/proc.h: * Header file for the Linux CAN-bus driver.
lincan/include/proc.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/proc.h: * This software is released under the GPL-License.
lincan/include/proc.h: * Version lincan-0.3  17 Jun 2004
lincan/include/read.h: * Header file for the Linux CAN-bus driver.
lincan/include/read.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/read.h: * This software is released under the GPL-License.
lincan/include/read.h: * Version lincan-0.3  17 Jun 2004
lincan/include/select.h: * Header file for the Linux CAN-bus driver.
lincan/include/select.h: * This software is released under the GPL-License.
lincan/include/select.h: * Version lincan-0.3  17 Jun 2004
lincan/include/setup.h: * Header file for the Linux CAN-bus driver.
lincan/include/setup.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/setup.h: * This software is released under the GPL-License.
lincan/include/setup.h: * Version lincan-0.3  17 Jun 2004
lincan/include/sja1000.h: * Header file for the Linux CAN-bus driver.
lincan/include/sja1000.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/sja1000.h: * This software is released under the GPL-License.
lincan/include/sja1000.h: * Version lincan-0.3  17 Jun 2004
lincan/include/sja1000.h:	sjaIR_WUI = 1<<4	// Wake-Up Interrupt
lincan/include/sja1000.h:	sjaCDR_CBP = 1<<6,	// Input Comparator By-Pass
lincan/include/sja1000.h:// TX0 push-pull not inverted
lincan/include/sja1000.h:// TX0 push-pull inverted
lincan/include/sja1000.h:// TX1 pull-down not inverted
lincan/include/sja1000.h:	sjaID0_DLC_M = (1<<4)-1	// Length Mask
lincan/include/sja1000p.h: * Header file for the Linux CAN-bus driver.
lincan/include/sja1000p.h: * This software is released under the GPL-License.
lincan/include/sja1000p.h: * Version lincan-0.3  17 Jun 2004
lincan/include/sja1000p.h:	sjaIER_WUIE= 1<<4, // Wake-Up Interrupt Enable
lincan/include/sja1000p.h: * Counting starts from 0 (bit1 of ID). Bits 5-7 reserved*/
lincan/include/sja1000p.h:	sjaECC_SEG_M = (1<<5) -1 // Segment mask, see page 37 of SJA1000 Data Sheet
lincan/include/sja1000p.h:	sjaFRM_DLC_M = (1<<4)-1 // Length Mask
lincan/include/sja1000p.h:	sjaIR_WUI = 1<<4,  // Wake-Up Interrupt
lincan/include/sja1000p.h:/// TX0 push-pull not inverted
lincan/include/smartcan.h: * Header file for the Linux CAN-bus driver.
lincan/include/smartcan.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/smartcan.h: * This software is released under the GPL-License.
lincan/include/smartcan.h: * Version lincan-0.3  17 Jun 2004
lincan/include/ssv.h: * Header file for the Linux CAN-bus driver.
lincan/include/ssv.h: * This software is released under the GPL-License.
lincan/include/ssv.h: * Version lincan-0.3  17 Jun 2004
lincan/include/template.h: * Header file for the Linux CAN-bus driver.
lincan/include/template.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/template.h: * This software is released under the GPL-License.
lincan/include/template.h: * Version lincan-0.3  17 Jun 2004
lincan/include/tscan1.h: * Header file for the Linux CAN-bus driver.
lincan/include/tscan1.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/tscan1.h: * This software is released under the GPL-License.
lincan/include/tscan1.h: * Version lincan-0.3  17 Jun 2004
lincan/include/tscan1.h:#include <asm-arm/arch-ep93xx/regmap.h>
lincan/include/unican_cl2.h:Cl2.H - PCAN and VCAN cards hardware access library
lincan/include/unican_cl2.h:27.1.1999 - corected value of CL2_ERROR_WARNING and CL2_ERROR_BUS_OFF constants
lincan/include/unican_cl2.h:12.12.2000 - CL2_STATUS_RESET_CARD, CL2_ERROR_RESET_CARD added
lincan/include/unican_cl2.h:10.8.2001 - PCI PCAN ID registers content defined
lincan/include/unican_cl2.h:	- cl2_find_card function prototype added
lincan/include/unican_cl2.h:	- cl2_get_ID function prototype added
lincan/include/unican_cl2.h:10.2.2004 - Start of PCAN support porting to RT-Linux and Linux environment
lincan/include/unican_cl2.h:#define CL2_RAM_SIZE			0x1000	/* size of dual-port RAM */
lincan/include/unican_cl2.h:#define CL2_RX_BUFFER_DEFAULT		0x800	/* off(BA->rx buffer) */
lincan/include/unican_cl2.h:#define CL2_SYNC_BUFFER_DEFAULT		0x400	/* off(BA->sync buffer) */
lincan/include/unican_cl2.h:#define CL2_ASYNC_BUFFER_DEFAULT	0x600	/* off(BA->async buffer) */
lincan/include/unican_cl2.h:#define CL2_COMMAND_REGISTER		0x3FE	/* off(BA->command register )*/
lincan/include/unican_cl2.h:#define CL2_VERSION_REGISTER		0x3F6	/* off(BA->version register )*/
lincan/include/unican_cl2.h:#define CL2_ID_REGISTER			0x3EE	/* off(BA->ID register) */
lincan/include/unican_cl2.h:#define CL2_GEN_INT_REGISTER		0x3E4	/* off(BA->generate interrupt reg.)*/
lincan/include/unican_cl2.h:#define CL2_CLEAR_INT_REGISTER		0x3E2	/* off(BA->clear interrupt reg)*/
lincan/include/unican_cl2.h:#define CL2_RESET_REGISTER		0x3E0	/* off(BA->reset register)*/
lincan/include/unican_cl2.h:#define CL2_ERROR_REGISTER		0x3F8	/* off(BA->error register)*/
lincan/include/unican_cl2.h:#define CL2_START_IT_REGISTER		0x3E6	/* off(BA->start inhibit time reg.) */
lincan/include/unican_cl2.h:#define CL2_STATUS_REGISTER		0x3FA	/* off(BA->status register)*/
lincan/include/unican_cl2.h:#define CL2_DATA_BUFFER			0x100	/* off(BA->data buffer)*/
lincan/include/unican_cl2.h:#define CL2_BITRATE_5K            0x7f7f   /* bit-rate 5 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_10K           0x5c67   /* bit-rate 10 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_20K           0x5c53   /* bit-rate 20 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_50K           0x5c47   /* bit-rate 50 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_100K          0x5c43   /* bit-rate 100 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_125K          0x6743   /* bit-rate 125 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_200K          0x5c41   /* bit-rate 200 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_250K          0x6741   /* bit-rate 250 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_500K          0x6740   /* bit-rate 500 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_800K          0x3440   /* bit-rate 800 kb/s */
lincan/include/unican_cl2.h:#define CL2_BITRATE_1M            0x2340   /* bit-rate 1 Mb/s */
lincan/include/unican_cl2.h:	CL2_COMMAND_BUSY,     /* Command busy - previous command not completed */
lincan/include/unican_cl2.h:   cmCL2_INT_MODE = 0x01,            /**01 - Set Interrupt mode */
lincan/include/unican_cl2.h:   cmCL2_IIT_MODE,                   /**02 - Inhibit Interrupt Time mode */
lincan/include/unican_cl2.h:   cmCL2_SYNC_MODE,                  /**03 - SYNC mode */
lincan/include/unican_cl2.h:	cmCL2_RTR_MODE,                   /**04 - RTR list mode */
lincan/include/unican_cl2.h:	cmCL2_BUF_SIZE,                   /**05 - Set buffers sizes */
lincan/include/unican_cl2.h:   cmCL2_SET_IIT,                    /**06 - Start Inhibit Interrupt Time */
lincan/include/unican_cl2.h:   cmCL2_START_FIRMWARE,             /**07 - Start firmware */
lincan/include/unican_cl2.h:   cmCL2_LOAD_FIRMWARE,              /* 08 - Load firmware */
lincan/include/unican_cl2.h:	cmCL2_SET_REC_MODE,               /**09 - Set Receive mode */
lincan/include/unican_cl2.h:   cmCL2_CLR_RX_BUFFER = 0x10,       /**10 - Clear receive buffer */
lincan/include/unican_cl2.h:   cmCL2_CLR_SYNC_BUFFER,            /**11 - Clear synchronous buffer */
lincan/include/unican_cl2.h:   cmCL2_CLR_ASYNC_BUFFER,           /**12 - Clear asynchronous buffer */
lincan/include/unican_cl2.h:	cmCL2_SEND_TIME_SYNC,             /**13 - Sends time synchronization */
lincan/include/unican_cl2.h:	cmCL2_SET_TIME_COBID,             /**14 - Sets time frames COB-ID */
lincan/include/unican_cl2.h:   cmCL2_SET_RECEIVE_LIMIT,          /* 15 - Sets receive limit */
lincan/include/unican_cl2.h:	cmCL2_DOWNLOAD_RTR_LIST = 0x20,   /**20 - Download RTR list */
lincan/include/unican_cl2.h:   cmCL2_SUBSCRIBE_RTR,              /**21 - Subscribe RTR */
lincan/include/unican_cl2.h:   cmCL2_DESUBSCRIBE_RTR,            /* 22 - Desubscribe RTR */
lincan/include/unican_cl2.h:   cmCL2_SET_COBID = 0x30,           /**30 - Set COB-ID */
lincan/include/unican_cl2.h:   cmCL2_SET_SYNC_PERIOD,            /**31 - Set SYNC period */
lincan/include/unican_cl2.h:   cmCL2_SET_SYNC_WINDOW,            /**32 - Set SYNC period window */
lincan/include/unican_cl2.h:	cmCL2_SET_BITRATE = 0x40,         /**40 - Set CAN bit rate */
lincan/include/unican_cl2.h:	cmCL2_BUS_RESET                   /* 41 - CAN controller reset */
lincan/include/unican_cl2.h:* cl2_find_card - find PCIPCAN card
lincan/include/unican_cl2.h:*   CL2_OK - card found and mapped under 1 MB
lincan/include/unican_cl2.h:*   CL2_HW_FAILURE - card not found or not mapped under 1 MB
lincan/include/unican_cl2.h:* cl2_init_card - initialize card to default parameters
lincan/include/unican_cl2.h:*   CL2_OK - command completed succesfuly
lincan/include/unican_cl2.h:* cl2_test_card - test card
lincan/include/unican_cl2.h:*   CL2_OK - card is present and working properly
lincan/include/unican_cl2.h:*   CL2_HW_FAILURE - card not found or card error
lincan/include/unican_cl2.h:* cl2_reset_card - reset card
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_get_version - read card version
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_get_ID - read card ID
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_gen_interrupt - request for interrupt
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_start_it - start inhibit time
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_clear_interrupt - clear interrupt
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_int_mode - set interrupt mode
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_iit_mode - inhibit interrupt time mode
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   BOOLEAN1 onoff              /* IIT mode - TRUE=on, FALSE=off */
lincan/include/unican_cl2.h:* cl2_sync_mode - sync mode
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   BOOLEAN1 onoff              /* Sync mode - TRUE=on, FALSE=off */
lincan/include/unican_cl2.h:* cl2_rtr_mode - rtr mode
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   BOOLEAN1 onoff              /* RTR mode - TRUE=on, FALSE=off */
lincan/include/unican_cl2.h:* cl2_buf_size - size of synchronous queue
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfully
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter (bufSize>64)
lincan/include/unican_cl2.h:* cl2_set_iit - set value of inhibit interrupt time
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_start_firmware - start firmware
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_set_rec_mode - set receive mode
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   BOOLEAN1 mode              /* Mode - TRUE=ext, FALSE=std */
lincan/include/unican_cl2.h:* cl2_clr_rx_buffer - clear RX buffer
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_clr_sync_buffer - clear synchronous buffer
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_clr_async_buffer - clear asynchronous buffer
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_send_time_sync - send time synchronization
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_set_time_cobid - set time COB-ID
lincan/include/unican_cl2.h:* Command sets the COB-ID for high resolution synchronization
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   U32 COBID                  /* HRS frame COB-ID */
lincan/include/unican_cl2.h:* cl2_set_receive_limit - set limit for receive signaling
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:* cl2_download_rtr_list - download rtr list
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:* cl2_subscribe_rtr - subscribe RTR frame
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:* cl2_desubscribe_rtr - desubscribe rtr frame
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:* cl2_set_sync_cobid - set COB-ID
lincan/include/unican_cl2.h:* Command sets COB-ID of SYNC frame. In active SYNC mode, the SYNC
lincan/include/unican_cl2.h:* frame with this COB-ID is periodically sent with period defined
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:   U32 COBID                   /* COB-ID */
lincan/include/unican_cl2.h:* cl2_set_sync_period - set SYNC period
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_set_sync_window - set SYNC window
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_set_bitrate - set CAN bit-rate
lincan/include/unican_cl2.h:* Command switches the bus bit-rate. There are some predefined
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previous command not completed
lincan/include/unican_cl2.h:* cl2_bus_reset - resets CAN controller
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_COMMAND_BUSY - previously command not completed
lincan/include/unican_cl2.h:* cl2_send_sync - sends synchronous frame
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_HW_QUEUE_FULL - synchronous send buffer is full
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:*   CL2_HW_FAILURE - error in HW configuration
lincan/include/unican_cl2.h:* cl2_send_async - sends asynchronous frame
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_HW_QUEUE_FULL - asynchronous buffer full
lincan/include/unican_cl2.h:*   CL2_HW_FAILURE - error in HW configuration
lincan/include/unican_cl2.h:*   CL2_BAD_PARAM - bad command parameter
lincan/include/unican_cl2.h:* cl2_get_status - reads card status
lincan/include/unican_cl2.h:*   CL2_OK - command completed successfuly
lincan/include/unican_cl2.h:*   CL2_NO_REQUEST - status is not valid
lincan/include/unican_cl2.h:* cl2_get_error - reads card error
lincan/include/unican_cl2.h:*   Cl2_OK - command completed successfuly
lincan/include/unican_cl2.h:* cl2_receive_data - reads received frame
lincan/include/unican_cl2.h:*   CL2_OK - command commpleted successfuly
lincan/include/unican_cl2.h:*   CL2_NO_REQUEST - there is no new message
lincan/include/write.h: * Header file for the Linux CAN-bus driver.
lincan/include/write.h: * This software is released under the GPL-License.
lincan/include/write.h: * Version lincan-0.3  17 Jun 2004
lincan/include/tsdmx.h: * Header file for the Linux CAN-bus driver.
lincan/include/tsdmx.h: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/include/tsdmx.h: * This software is released under the GPL-License.
lincan/include/tsdmx.h: * Version lincan-0.3  17 Jun 2004
lincan/Makefile.std:# Makefile for the Linux CAN-bus driver.
lincan/Makefile.std:# This software is released under the GPL-License.
lincan/Makefile.std:SOURCES_DIR := $(shell ( pwd -L ) )
lincan/Makefile.std:.PHONY: check-dir include-pass library-pass binary-pass utils-pass kernel-lib-pass kernel-pass
lincan/Makefile.std:default dep clean install utils-pass kernel-pass:
lincan/Makefile.std:	$(foreach dir, $(dirs), $(MAKE) -C $(SOURCES_DIR)/$(dir) \
lincan/Makefile.std:	@echo -e "\nTo build LinCAN driver for OCERA framework, ocera.mk file have"
lincan/Makefile.std:	@echo -e "to be generated first. Go to ocera/ directory and do 'make', please."
lincan/Makefile.std:	@echo -e "If standalone build is required, mark lincan/ by 'touch ./Standalone.mk'.\n"
lincan/README:The LinCAN is an implementation of the Linux CAN-bus device driver supporting
lincan/README:  - chip level manipulation routines
lincan/README:  - board specific support
lincan/README:  - message queues
lincan/README:  - user-space API and ABI character device interface
lincan/README:  http://www.llp.fu-berlin.de/
lincan/README:can-0.7.1	latest driver version version published
lincan/README:can-0.7.1-tm5	the enhanced version with better support of
lincan/README:can-0.7.1-pi1	the import and usage of previous version for
lincan/README:can-0.7.1-pi3.4 enhanced version with select support and rewritten
lincan/README:lincan-0.2-pre	heavily rewritten infrastructure of the driver based
lincan/README:lincan-0.2	version tested on many bords and 2.2, 2.4, 2.6 Linux
lincan/README:(Mar 2004)	and RT-Linux enabled 2.4 Linux kernel
lincan/README:lincan-0.2.8	possible SMP and HT deadlock fixed, driver can take
lincan/README:		added support for CPC-PCI and PCAN-PCI cards,
lincan/README:lincan-0.3	Changed SJA1000 chip IRQ handling. Enhanced VME
lincan/README:(Nov 2004)	and EMS CPC-PCI support and many other changes.
lincan/README:lincan-0.3.1	Small improvements, RTR read moved into separate IOCTL,
lincan/README:  - PC104 Advantech PCM3680 dual channel board on 2.4 RT-Linux enabled kernel
lincan/README:  - PiKRON ISA card on 2.4.and 2.6 Linux kernels
lincan/README:  - BfaD DIMM PC card on 2.4 RT-Linux enabled kernel
lincan/README:  - KVASER pcican-q on 2.6 Linux kernel
lincan/README:  - MICROSPACE msmcan on 2.4 Linux and RT-Linux enabled kernel
lincan/README:  - Unicontrols PCAN ("unican"),PCAN-PCI ("unican-pci"), VCAN  ("unican-vme")
lincan/README:  - EMS CPC-PCI cards ("ems_cpcpci")
lincan/README:  - virtual board tested on all systems as wel
lincan/README:  http://www.ocera.org/download/components/WP7/lincan-0.2.html
lincan/README:  cvs -d$EXTCVS login
lincan/README:  cvs -z3 -d$EXTCVS co ocera
lincan/README:  http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ocera/ocera/components/comm/can/lincan/
lincan/README:  http://cmp.felk.cvut.cz/~pisa/can/lincan-YYMMDD.tar.gz
lincan/README:Please send comments, bug-fixes and enhancements directly to
lincan/README:and lists <ocera-development@lists.sourceforge.net>
lincan/README:  http://cmp.felk.cvut.cz/~pisa/can/doc/lincandoc-0.2.pdf
lincan/README:  http://cmp.felk.cvut.cz/~pisa/can/lincandoc-X.Y.pdf
lincan/README:  sh ./switch-omk2std
lincan/README: http://paulandlesley.org/make/make-3.81beta1.tar.bz2
lincan/README:  http://cmp.felk.cvut.cz/~pisa/can/make-3.81beta1.tar.gz
lincan/README:---------------------------------------------------------------------------
lincan/README:---------------------------------------------------------------------------
lincan/README:  cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ocera login
lincan/README:  cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ocera co
lincan/README:---------------------------------------------------------------------------
lincan/README:---------------------------------------------------------------------------
lincan/README:command invocation. Lines containing required changes to config.omk-default 
lincan/README:config.omk-default file. GNU make program version 3.81beta1 or newer is 
lincan/README:required by OMK make-system. If this is problem, LinCAN driver can be 
lincan/README:---------------------------------------------------------------------------
lincan/README:---------------------------------------------------------------------------
lincan/README:  ./switch-omk2std
lincan/README:- pip5, for the PIP5 computer by MPL
lincan/README:- pip6, for the PIP6 computer by MPL
lincan/README:- pip7, for the PIP7 computer by MPL
lincan/README:- pip8, for the PIP8 computer by MPL
lincan/README:- pccan-q, for the PCcan-Q ISA card by KVASER
lincan/README:- pccan-f, for the PCcan-F ISA card by KVASER
lincan/README:- pccan-s, for the PCcan-S ISA card by KVASER
lincan/README:- pccan-d, for the PCcan-D ISA card by KVASER
lincan/README:- pcican-q, for the PCIcan-Q PCI card by KVASER (4x SJA1000)
lincan/README:- pcican-d, for the PCIcan-Q PCI card by KVASER (2x SJA1000)
lincan/README:- pcican-s, for the PCIcan-Q PCI card by KVASER (1x SJA1000)
lincan/README:- smartcan for i82527 based card with indexed access
lincan/README:- nsican, for the CAN104 PC/104 card by NSI
lincan/README:- cc104, for the CAN104 PC/104 card by Contemporary Controls
lincan/README:- aim104, for the AIM104CAN PC/104 card by Arcom Control Systems
lincan/README:- pc-i03, for the PC-I03 ISA card by IXXAT
lincan/README:- pcm3680, for the PCM-3680 PC/104 card by Advantech
lincan/README:- m437, for the M436 PC/104 card by SECO
lincan/README:- bfadcan for sja1000 CAN embedded card made by BFAD GmbH
lincan/README:- pikronisa for ISA memory mapped sja1000 CAN card made by PiKRON Ltd.
lincan/README:- msmcan for MICROSPACE IO space indexed i82527
lincan/README:- unican for Unicontrols PCAN card
lincan/README:- unican-pci for Unicontrols PCAN-PCI card
lincan/README:- unican-vme for Unicontrols VCAN card
lincan/README:- ipci165 for IXXAT iPC-I 165 (PCI), requires CONFIG_OC_LINCAN_CARD_ipci165=y
lincan/README:- ems_cpcpci for EMS CPC-PCI card
lincan/README:- pcan_dongle for PEAK's printer port dongle addapter
lincan/README:- oscar for SJA1000 based card connected to ARM LH7A400 SoC
lincan/README:- eb8245 for Kontron EB8245 onboard CAN with SJA1000 controller
lincan/README:- adlink7841 for ADLINK PCI-7841 dual SJA1000 based card
lincan/README:- template, for yet unsupported hardware (you need to edit src/template.c)
lincan/README:- virtual, CAN channel for testing of software and driver without CAN hardware
lincan/README:- major=<nr>, major specifies the major number of the driver.
lincan/README:- minor=<nr>, you can specify which minor numbers the driver should use for your
lincan/README:- extended=[1|0], configures the driver to use extended message format.
lincan/README:- pelican=[1|0], configures the driver to set the CAN chips into pelican mode.
lincan/README:- baudrate=<nr>, sets the baudrate of the device(s)
lincan/README:- clock_freq=<nr>, the frequency of the CAN quartz
lincan/README:- stdmask=<nr>, sets the standard mask of the device
lincan/README:- extmask=<nr>, sets the extended mask of the device
lincan/README:- mo15mask=<nr>, sets the mask for message object 15 (i82527 only)
lincan/README:- processlocal=<nr>, controls distribution of send messages to Rx FIFOs
lincan/README:and config.omk-default is located.
lincan/TODO:- Error handling/reporting and statistics
lincan/TODO:- Proc directory
lincan/TODO:- Lot of ioctl's and API compatibility
lincan/Unsupported-hardware:Unsupported-hardware 
lincan/Unsupported-hardware:This software is released under the GPL-License.
lincan/switch-omk2std:#cd lincan-0.x.y-omk
lincan/src/CVS/Repository:ts-7200/dist/ocera_comm_can/lincan/src
lincan/src/ts732.c: * Linux CAN-bus device driver.
lincan/src/ts732.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ts732.c: * This software is released under the GPL-License.
lincan/src/ts732.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ts732.c:#include <asm-arm/arch-ep93xx/regmap.h>
lincan/src/ts732.c: * ts732_request_io: - reserve io or memory range for can board
lincan/src/ts732.c: * The function ts732_request_io() is used to reserve the io-memory. If your
lincan/src/ts732.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/ts732.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ts732.c:	candev->io_addr = base_addr;
lincan/src/ts732.c:	candev->dev_base_addr = base_addr;
lincan/src/ts732.c:	candev->chip[0]->chip_base_addr = base_addr;
lincan/src/ts732.c:	DEBUGMSG("TS-732 CAN phy addr 0x%lx mapped to 0x%lx\n",
lincan/src/ts732.c: * ts732_release_io - free reserved io memory range
lincan/src/ts732.c: * The function ts732_release_io() is used to free reserved io-memory.
lincan/src/ts732.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/ts732.c:    __iounmap((unsigned long *) candev->io_addr);
lincan/src/ts732.c: * ts732_reset - hardware reset routine
lincan/src/ts732.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ts732.c:	DEBUGMSG("Resetting %s hardware ...\n", candev->hwname);
lincan/src/ts732.c:	for(chipnr=0;chipnr<candev->nr_sja1000_chips;chipnr++) {
lincan/src/ts732.c:		chip=candev->chip[chipnr];
lincan/src/ts732.c:		ts732_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/ts732.c:		ts732_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/ts732.c:		while (ts732_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/ts732.c:			if(!i--) return -ENODEV;
lincan/src/ts732.c:			ts732_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/ts732.c:		ts732_write_register(sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/ts732.c:		ts732_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/ts732.c: * ts732_init_hw_data - Initialize hardware cards
lincan/src/ts732.c: * structure containing information about the installed CAN-board.
lincan/src/ts732.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/ts732.c:	if (baudrate[candev->candev_idx] == -1) baudrate[candev->candev_idx] = 500;
lincan/src/ts732.c:	irq[candev->candev_idx] = TS732_IRQ;
lincan/src/ts732.c:	candev->res_addr=RESET_ADDR;
lincan/src/ts732.c:	candev->nr_82527_chips=NR_82527;
lincan/src/ts732.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/ts732.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/ts732.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/ts732.c: * ts732_init_chip_data - Initialize chips
lincan/src/ts732.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/ts732.c:	candev->hwname="ts732";
lincan/src/ts732.c:	irq[candev->candev_idx] = TS732_IRQ;
lincan/src/ts732.c:	candev->chip[chipnr]->chip_base_addr = TS732_BASE_ADDR + TS732_CAN_IO;
lincan/src/ts732.c:	candev->chip[chipnr]->clock = TS732_CLOCK*1000;
lincan/src/ts732.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/ts732.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/ts732.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/ts732.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |	sjaOCR_TX0_LH;
lincan/src/ts732.c: * ts732_init_obj_data - Initialize message buffers
lincan/src/ts732.c:	chip->msgobj[objnr]->obj_base_addr = chip->chip_base_addr;
lincan/src/ts732.c: * ts732_program_irq - program interrupts
lincan/src/ts732.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and
lincan/src/ts732.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/ts732.c: * ts732_write_register - Low level write register routine
lincan/src/ts732.c: * ts732_read_register - Low level read register routine
lincan/src/ts732.c:	hwspecops->request_io = ts732_request_io;
lincan/src/ts732.c:	hwspecops->release_io = ts732_release_io;
lincan/src/ts732.c:	hwspecops->reset = ts732_reset;
lincan/src/ts732.c:	hwspecops->init_hw_data = ts732_init_hw_data;
lincan/src/ts732.c:	hwspecops->init_chip_data = ts732_init_chip_data;
lincan/src/ts732.c:	hwspecops->init_obj_data = ts732_init_obj_data;
lincan/src/ts732.c:	hwspecops->write_register = ts732_write_register;
lincan/src/ts732.c:	hwspecops->read_register = ts732_read_register;
lincan/src/ts732.c:	hwspecops->program_irq = ts732_program_irq;
lincan/src/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
lincan/src/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
lincan/src/Makefile.omk:rtlinux_INCLUDES = -I $(srcdir)/../include -I .
lincan/src/Makefile.omk:kernel_INCLUDES = -I $(srcdir)/../include -I .
lincan/src/Makefile.omk:#kernel_INCLUDES += -DCAN_DEBUG
lincan/src/Makefile.omk:kernel_INCLUDES += -DWITH_DEVFS_FS
lincan/src/Makefile.omk:rtlinux_INCLUDES +=  -DCAN_WITH_RTL
lincan/src/Makefile.std:# Makefile for the Linux CAN-bus driver.
lincan/src/Makefile.std:# This software is released under the GPL-License.
lincan/src/Makefile.std:# Version lincan-0.2  9 Aug 2003
lincan/src/Makefile.std:.PHONY: kernel-pass utils-pass
lincan/src/Makefile.std:kernel-pass : default
lincan/src/Makefile.std:	@echo -e "\nTo build LinCAN driver for OCERA framework, ocera.mk file have"
lincan/src/Makefile.std:	@echo -e "to be generated first. Go to ocera/ directory and do 'make', please."
lincan/src/Makefile.std:	@echo -e "If standalone build is required, mark lincan/ by 'touch ../Standalone.mk'.\n"
lincan/src/Makefile.std:#KERNEL_LOCATION=/usr/src/linux-2.2.19
lincan/src/Makefile.std:#KERNEL_LOCATION=/usr/src/linux-2.2.22
lincan/src/Makefile.std:#KERNEL_LOCATION=/usr/src/linux-2.6.0
lincan/src/Makefile.std:#KERNEL_LOCATION=/home/cvs/ocera/ocera-build/kernel/linux
lincan/src/Makefile.std:CURRENT=$(shell uname -r)
lincan/src/Makefile.std:KERNEL_NEW=$(shell if [ -d /lib/modules/$(CURRENT)/build ] ; \
lincan/src/Makefile.std:KERNEL_VERSION := $(shell awk -F\" '/REL/ {print $$2}' \
lincan/src/Makefile.std:	$(KERNEL_LOCATION)/include/linux/version.h | awk -F\- '{print $$1}')
lincan/src/Makefile.std:PROC_FS := $(shell awk -F\  '/PROC_FS/ {print $$3}' \
lincan/src/Makefile.std:DEVFS_FS := $(shell awk -F\  '/DEVFS_FS/ {print $$3}' \
lincan/src/Makefile.std:	| sed -n 's/^.*2\.[5-9]\..*$$/yes/p')
lincan/src/Makefile.std:	EXTRA_CFLAGS += -DCAN_DEBUG
lincan/src/Makefile.std:	EXTRA_CFLAGS += -ggdb
lincan/src/Makefile.std:#	EXTRA_CFLAGS += -DNOVER
lincan/src/Makefile.std:#	EXTRA_CFLAGS += -DMODVERSIONS
lincan/src/Makefile.std:	EXTRA_CFLAGS += -DWITH_DEVFS_FS
lincan/src/Makefile.std:EXTRA_CFLAGS += -I $(SUBDIRS)
lincan/src/Makefile.std:EXTRA_CFLAGS += -I .
lincan/src/Makefile.std:# Objects with exported symbols (-DEXPORT_SYMTAB)
lincan/src/Makefile.std:# Module only objects with exported symbols (-DEXPORT_SYMTAB)
lincan/src/Makefile.std:# Kernel only objects with exported symbols (-DEXPORT_SYMTAB)
lincan/src/Makefile.std:can-objs = $(O_OBJS)
lincan/src/Makefile.std:obj-y = $(O_OBJS)
lincan/src/Makefile.std:obj-m = can.o
lincan/src/Makefile.std:FINAL_MODULE_OBJS=$(obj-m)
lincan/src/Makefile.std:FINAL_MODULE_OBJS=$(obj-m:%.o=%.ko)
lincan/src/Makefile.std:	echo Module target $(obj-m)
lincan/src/Makefile.std:	echo Module objects $(can-objs)
lincan/src/Makefile.std:	su -c "mkdir -v -p $(MODULE_CHAR_LOC) && cp -v $(FINAL_MODULE_OBJS) $(MODULE_CHAR_LOC)"
lincan/src/Makefile.std:	rm -f $(M_OBJS) $(MX_OBJS) $(O_OBJS) $(OX_OBJS) $(obj-m) \
lincan/src/Makefile.std:	      $(obj-m:%.o=%.mod.o) $(obj-m:%.o=%.mod.c) \
lincan/src/adlink7841.c:/* adlink7841.c - support for ADLINK 7841 cards
lincan/src/adlink7841.c: * Linux CAN-bus device driver.
lincan/src/adlink7841.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/adlink7841.c: * This software is released under the GPL-License.
lincan/src/adlink7841.c: * Version lincan-0.3  17 Jun 2004
lincan/src/adlink7841.c:  This means  normal output mode , push-pull and the correct polarity. 
lincan/src/adlink7841.c:  You will probably also want to set the clock divider value to 0 (meaning divide-by-2),
lincan/src/adlink7841.c:  the Pelican bit, and the clock-off bit (you have no need for CLKOUT anyway.)
lincan/src/adlink7841.c:	if(pci_request_region(candev->sysdevptr.pcidev, 1, "adlink7841_plx9050") != 0){
lincan/src/adlink7841.c:		return -ENODEV;
lincan/src/adlink7841.c:	}else if(pci_request_region(candev->sysdevptr.pcidev, 2, "adlink7841_io") != 0){
lincan/src/adlink7841.c:	if(pci_request_regions(candev->sysdevptr.pcidev, "adlink7841") != 0){
lincan/src/adlink7841.c:		return -ENODEV;
lincan/src/adlink7841.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/adlink7841.c:	return -ENODEV;
lincan/src/adlink7841.c:	pci_release_region(candev->sysdevptr.pcidev, 2);
lincan/src/adlink7841.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/adlink7841.c:	pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/adlink7841.c:	for(chip_nr=0;chip_nr<candev->nr_all_chips;chip_nr++){
lincan/src/adlink7841.c:		if(!candev->chip[chip_nr]) continue;
lincan/src/adlink7841.c:		chip=candev->chip[chip_nr];
lincan/src/adlink7841.c:		adlink7841_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/adlink7841.c:		cdr=adlink7841_read_register(chip->chip_base_addr+SJACDR);
lincan/src/adlink7841.c:		adlink7841_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/adlink7841.c:		adlink7841_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/adlink7841.c:		adlink7841_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/adlink7841.c:		while (adlink7841_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/adlink7841.c:			if(!i--) return -ENODEV;
lincan/src/adlink7841.c:			adlink7841_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/adlink7841.c:		cdr=adlink7841_read_register(chip->chip_base_addr+SJACDR);
lincan/src/adlink7841.c:		adlink7841_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/adlink7841.c:		adlink7841_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/adlink7841.c:		adlink7841_read_register(chip->chip_base_addr+SJAIR);
lincan/src/adlink7841.c:		if(pcidev == NULL) return -ENODEV;
lincan/src/adlink7841.c:		return -EIO;
lincan/src/adlink7841.c:	candev->sysdevptr.pcidev=pcidev;
lincan/src/adlink7841.c:			return -EIO;
lincan/src/adlink7841.c:	candev->dev_base_addr=pci_resource_start(pcidev,1); /* PLX 9050 BASE*/
lincan/src/adlink7841.c:	candev->io_addr=pci_resource_start(pcidev,2); /*IO window for SJA1000 chips*/
lincan/src/adlink7841.c:	candev->res_addr=pci_resource_start(pcidev,1); /*reserved*/
lincan/src/adlink7841.c:	/*candev->flags |= CANDEV_PROGRAMMABLE_IRQ;*/
lincan/src/adlink7841.c:	candev->nr_82527_chips=0;
lincan/src/adlink7841.c:	candev->nr_sja1000_chips=2;
lincan/src/adlink7841.c:	candev->nr_all_chips=2;
lincan/src/adlink7841.c:	if(candev->sysdevptr.pcidev==NULL)
lincan/src/adlink7841.c:		return -ENODEV;
lincan/src/adlink7841.c:	candev->chip[chipnr]->chip_irq=candev->sysdevptr.pcidev->irq;
lincan/src/adlink7841.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/adlink7841.c:	candev->chip[chipnr]->chip_base_addr=
lincan/src/adlink7841.c:			candev->io_addr+chipnr*ADLINK7841_BYTES_PER_CIRCUIT;
lincan/src/adlink7841.c:	candev->chip[chipnr]->flags = 0;
lincan/src/adlink7841.c:	candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/adlink7841.c:	candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/adlink7841.c:	candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/adlink7841.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/adlink7841.c:	candev->chip[chipnr]->sja_ocr_reg = ADLINK7841_OCR_DEFAULT_STD;
lincan/src/adlink7841.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/adlink7841.c:	candev->chip[chipnr]->flags |= CHIP_IRQ_PCI;
lincan/src/adlink7841.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/adlink7841.c:	hwspecops->request_io = adlink7841_request_io;
lincan/src/adlink7841.c:	hwspecops->release_io = adlink7841_release_io;
lincan/src/adlink7841.c:	hwspecops->reset = adlink7841_reset;
lincan/src/adlink7841.c:	hwspecops->init_hw_data = adlink7841_init_hw_data;
lincan/src/adlink7841.c:	hwspecops->init_chip_data = adlink7841_init_chip_data;
lincan/src/adlink7841.c:	hwspecops->init_obj_data = adlink7841_init_obj_data;
lincan/src/adlink7841.c:	hwspecops->write_register = adlink7841_write_register;
lincan/src/adlink7841.c:	hwspecops->read_register = adlink7841_read_register;
lincan/src/adlink7841.c:	hwspecops->program_irq = adlink7841_program_irq;
lincan/src/aim104.c: * Linux CAN-bus device driver.
lincan/src/aim104.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/aim104.c: * This software is released under the GPL-License.
lincan/src/aim104.c: * Version lincan-0.3  17 Jun 2004
lincan/src/aim104.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/aim104.c: * template_request_io: - reserve io or memory range for can board
lincan/src/aim104.c: * The function template_request_io() is used to reserve the io-memory. If your
lincan/src/aim104.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/aim104.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/aim104.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/aim104.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/aim104.c:		return -ENODEV;
lincan/src/aim104.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/aim104.c: * template_elease_io - free reserved io memory range
lincan/src/aim104.c: * The function template_release_io() is used to free reserved io-memory.
lincan/src/aim104.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/aim104.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/aim104.c: * template_reset - hardware reset routine
lincan/src/aim104.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/aim104.c:	aim104_write_register(0x00, candev->io_addr + SJACR);
lincan/src/aim104.c:	while ( (aim104_read_register(candev->io_addr + SJACR) 
lincan/src/aim104.c:		return -ENODEV;
lincan/src/aim104.c: * template_init_hw_data - Initialize hardware cards
lincan/src/aim104.c: * structure containing information about the installed CAN-board.
lincan/src/aim104.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/aim104.c:	candev->res_addr=RESET_ADDR;
lincan/src/aim104.c:	candev->nr_82527_chips=0;
lincan/src/aim104.c:        candev->nr_sja1000_chips=1;
lincan/src/aim104.c:	candev->nr_all_chips=1;
lincan/src/aim104.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/aim104.c: * template_init_chip_data - Initialize chips
lincan/src/aim104.c:	sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/aim104.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/aim104.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/aim104.c:	candev->chip[chipnr]->flags = 0;
lincan/src/aim104.c:	candev->chip[chipnr]->sja_cdr_reg = 0x08;
lincan/src/aim104.c:	candev->chip[chipnr]->sja_ocr_reg = 0xfa;
lincan/src/aim104.c: * template_init_obj_data - Initialize message buffers
lincan/src/aim104.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/aim104.c:	chip->msgobj[objnr]->obj_flags=0;
lincan/src/aim104.c: * template_program_irq - program interrupts
lincan/src/aim104.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/aim104.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/aim104.c: * template_write_register - Low level write register routine
lincan/src/aim104.c: * template_read_register - Low level read register routine
lincan/src/aim104.c:	hwspecops->request_io = aim104_request_io;
lincan/src/aim104.c:	hwspecops->release_io = aim104_release_io;
lincan/src/aim104.c:	hwspecops->reset = aim104_reset;
lincan/src/aim104.c:	hwspecops->init_hw_data = aim104_init_hw_data;
lincan/src/aim104.c:	hwspecops->init_chip_data = aim104_init_chip_data;
lincan/src/aim104.c:	hwspecops->init_obj_data = aim104_init_obj_data;
lincan/src/aim104.c:	hwspecops->write_register = aim104_write_register;
lincan/src/aim104.c:	hwspecops->read_register = aim104_read_register;
lincan/src/aim104.c:	hwspecops->program_irq = aim104_program_irq;
lincan/src/bfadcan.c: * Linux CAN-bus device driver.
lincan/src/bfadcan.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/bfadcan.c: * This software is released under the GPL-License.
lincan/src/bfadcan.c: * Version lincan-0.3  17 Jun 2004
lincan/src/bfadcan.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/bfadcan.c: * bfadcan_request_io: - reserve io or memory range for can board
lincan/src/bfadcan.c: * The function bfadcan_request_io() is used to reserve the io-memory. If your
lincan/src/bfadcan.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/bfadcan.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/bfadcan.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/bfadcan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/bfadcan.c:		return -ENODEV;
lincan/src/bfadcan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/bfadcan.c: * bfadcan_elease_io - free reserved io memory range
lincan/src/bfadcan.c: * The function bfadcan_release_io() is used to free reserved io-memory.
lincan/src/bfadcan.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/bfadcan.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/bfadcan.c: * bfadcan_reset - hardware reset routine
lincan/src/bfadcan.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/bfadcan.c:	struct canchip_t *chip=candev->chip[0];
lincan/src/bfadcan.c:	bfadcan_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/bfadcan.c:	cdr=bfadcan_read_register(chip->chip_base_addr+SJACDR);
lincan/src/bfadcan.c:	bfadcan_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/bfadcan.c:	bfadcan_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/bfadcan.c:	bfadcan_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/bfadcan.c:	while (bfadcan_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/bfadcan.c:		if(!i--) return -ENODEV;
lincan/src/bfadcan.c:		bfadcan_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/bfadcan.c:	cdr=bfadcan_read_register(chip->chip_base_addr+SJACDR);
lincan/src/bfadcan.c:	bfadcan_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/bfadcan.c:	bfadcan_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/bfadcan.c: * bfadcan_init_hw_data - Initialize hardware cards
lincan/src/bfadcan.c: * structure containing information about the installed CAN-board.
lincan/src/bfadcan.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/bfadcan.c:	candev->res_addr=RESET_ADDR;
lincan/src/bfadcan.c:	candev->nr_82527_chips=NR_82527;
lincan/src/bfadcan.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/bfadcan.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/bfadcan.c:	candev->flags |= 0 /* CANDEV_PROGRAMMABLE_IRQ */ ;
lincan/src/bfadcan.c: * bfadcan_init_chip_data - Initialize chips
lincan/src/bfadcan.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/bfadcan.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/bfadcan.c:	candev->chip[chipnr]->clock = clock_freq;
lincan/src/bfadcan.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/bfadcan.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | sjaOCR_TX0_LH;
lincan/src/bfadcan.c:	CANMSG("can driver ver lincan-0.3, at %04lx, CPLD v%d.%d.%d.%d\n",
lincan/src/bfadcan.c:			                candev->chip[chipnr]->chip_base_addr,
lincan/src/bfadcan.c: * bfadcan_init_obj_data - Initialize message buffers
lincan/src/bfadcan.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/bfadcan.c: * bfadcan_program_irq - program interrupts
lincan/src/bfadcan.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/bfadcan.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/bfadcan.c: * bfadcan_write_register - Low level write register routine
lincan/src/bfadcan.c: * bfadcan_read_register - Low level read register routine
lincan/src/bfadcan.c:	hwspecops->request_io = bfadcan_request_io;
lincan/src/bfadcan.c:	hwspecops->release_io = bfadcan_release_io;
lincan/src/bfadcan.c:	hwspecops->reset = bfadcan_reset;
lincan/src/bfadcan.c:	hwspecops->init_hw_data = bfadcan_init_hw_data;
lincan/src/bfadcan.c:	hwspecops->init_chip_data = bfadcan_init_chip_data;
lincan/src/bfadcan.c:	hwspecops->init_obj_data = bfadcan_init_obj_data;
lincan/src/bfadcan.c:	hwspecops->write_register = bfadcan_write_register;
lincan/src/bfadcan.c:	hwspecops->read_register = bfadcan_read_register;
lincan/src/bfadcan.c:	hwspecops->program_irq = bfadcan_program_irq;
lincan/src/boardlist.c: * Linux CAN-bus device driver.
lincan/src/boardlist.c: * Written for new CAN driver version by Pavel Pisa - OCERA team member
lincan/src/boardlist.c: * This software is released under the GPL-License.
lincan/src/boardlist.c: * Version lincan-0.3  17 Jun 2004
lincan/src/boardlist.c:	{"pc-i03", pci03_register, 1},
lincan/src/boardlist.c:	{"pccan-f", pccanf_register, 1},
lincan/src/boardlist.c:	{"pccan-s", pccanf_register, 1},
lincan/src/boardlist.c:	{"pccan-d", pccand_register, 2},
lincan/src/boardlist.c:	{"pccan-q", pccanq_register, 4},
lincan/src/boardlist.c:	{"pcican-s", kv_pcican_register, 0},
lincan/src/boardlist.c:	{"pcican-d", kv_pcican_register, 0},
lincan/src/boardlist.c:	{"pcican-q", kv_pcican_register, 0},
lincan/src/boardlist.c:	{"unican-pci", unican_pci_register, 0},
lincan/src/boardlist.c:	{"unican-vme", unican_vme_register, 1},
lincan/src/boardlist.c:	for(brp=can_boardtypes;brp->boardtype;brp++) {
lincan/src/boardlist.c:		if(!strcmp(str,brp->boardtype))
lincan/src/c_can.c:/* c_can.c - Hynix HMS30c7202 ARM generic C_CAN module handling
lincan/src/c_can.c: * Linux CAN-bus device driver.
lincan/src/c_can.c: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/src/c_can.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/c_can.c: * This software is released under the GPL-License.
lincan/src/c_can.c: * Version lincan-0.3  17 Jun 2004
lincan/src/c_can.c: * c_can_enable_configuration - enable chip configuration mode
lincan/src/c_can.c:		 pchip->chip_idx);
lincan/src/c_can.c:	disable_irq(chip->chip_irq);
lincan/src/c_can.c:	//set Init-Bit in the Control Register (10 tries)
lincan/src/c_can.c:		//enable_irq(chip->chip_irq);
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:		 pchip->chip_idx);
lincan/src/c_can.c:	//reset Init-Bit in the Control Register (10 tries)
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	//enable_irq(chip->chip_irq);
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_chip_config(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		return -1;
lincan/src/c_can.c:	if (pchip->baudrate == 0)
lincan/src/c_can.c:		pchip->baudrate = 1000;
lincan/src/c_can.c:	    (pchip, pchip->baudrate * 1000, pchip->clock, 0, 75, 0)) {
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	   return -ENODEV;
lincan/src/c_can.c:	   return -ENODEV;
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	DEBUGMSG("-> Configured successfully\n");
lincan/src/c_can.c: * Checks if the Busy-Bit in the IF1-Command-Request Register is set
lincan/src/c_can.c:		CANMSG("Error Busy-Bit stays set\n");
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c: * Checks if the Busy-Bit in the IF2-Command-Request Register is set
lincan/src/c_can.c:		CANMSG("Error Busy-Bit stays set\n");
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c: * Though the C-CAN Chip can handle one mask for each Message Object, this Method defines
lincan/src/c_can.c: * param clock frequency of C-CAN clock in Hz
lincan/src/c_can.c: * param sjw synchronization jump width (0-3) prescaled clock cycles
lincan/src/c_can.c: * param sampl_pt sample point in % (0-100) sets (TSEG1+2)/(TSEG1+TSEG2+3) ratio
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_baud_rate(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:		error = rate - clock / (brp * (1 + tseg / 2));
lincan/src/c_can.c:			error = -error;
lincan/src/c_can.c:			best_brp = brp - 1;
lincan/src/c_can.c:		return -EINVAL;
lincan/src/c_can.c:	tseg2 = best_tseg - (sampl_pt * (best_tseg + 1)) / 100;
lincan/src/c_can.c:	tseg1 = best_tseg - tseg2 - 2;
lincan/src/c_can.c:		tseg2 = best_tseg - tseg1 - 2;
lincan/src/c_can.c:	DEBUGMSG("-> Setting %d bps.\n", best_rate);
lincan/src/c_can.c:	DEBUGMSG("->brp=%d, best_tseg=%d, tseg1=%d, tseg2=%d, sampl_pt=%d\n",
lincan/src/c_can.c:		 (100 * (best_tseg - tseg2) / (best_tseg + 1)));
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:		 pmsgobj->hostchip->chip_idx, pmsgobj->object);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, readMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, tempreg & ~(IFXARB2_MVAL),
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:			c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:			c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, (mask & 0xFFFF), CCIF1M1);
lincan/src/c_can.c:			c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:			c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, 0, CCIF1M1);
lincan/src/c_can.c:	tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, tempreg | IFXARB2_MVAL, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	DEBUGMSG("-> Setting acceptance mask to 0x%lx\n", (unsigned long)mask);
lincan/src/c_can.c:	c_can_registerdump(pmsgobj->hostchip);
lincan/src/c_can.c:		 pmsgobj->hostchip->chip_idx, pmsgobj->object);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, readMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, tempreg & ~IFXARB2_MVAL, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:		tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1DMC);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, tempreg | IFXMC_UMASK,
lincan/src/c_can.c:		tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1DMC);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, tempreg & ~IFXMC_UMASK,
lincan/src/c_can.c:	tempreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, tempreg | IFXARB2_MVAL, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	DEBUGMSG("-> Setting umask bit to %s\n", boolstring);
lincan/src/c_can.c:	c_can_registerdump(pmsgobj->hostchip);
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_clear_objects(...)\n", pchip->chip_idx);
lincan/src/c_can.c:			return -ENODEV;
lincan/src/c_can.c:			return -ENODEV;
lincan/src/c_can.c:			return -ENODEV;
lincan/src/c_can.c:			return -ENODEV;
lincan/src/c_can.c:	for (i = 0; i < pchip->max_objects; i++) {
lincan/src/c_can.c:		if (can_msgobj_test_fl(pchip->msgobj[i], OPENED)) {
lincan/src/c_can.c:			// In- and output buffer re-initialization
lincan/src/c_can.c:			canqueue_ends_flush_inlist(pchip->msgobj[i]->qends);
lincan/src/c_can.c:			canqueue_ends_flush_outlist(pchip->msgobj[i]->qends);
lincan/src/c_can.c:	DEBUGMSG("-> Message Objects reset\n");
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_config_irqs(...)\n", pchip->chip_idx);
lincan/src/c_can.c:	DEBUGMSG("-> CAN Control Register: 0x%4lx\n", (long)tempreg);
lincan/src/c_can.c:	DEBUGMSG("-> Configured hardware interrupt delivery\n");
lincan/src/c_can.c:	u32 id = pmsgobj->rx_preconfig_id;
lincan/src/c_can.c:		 pmsgobj->hostchip->chip_idx, pmsgobj->object);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, readMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, 0, CCIF1A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:	//Configuring Message-Object
lincan/src/c_can.c:	mcreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1DMC);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, id & 0xFFFF, CCIF1A1);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:		//c_can_write_reg_w(pmsgobj->hostchip, 0, CCIF1A1);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	DEBUGMSG("-> Receiving through message object %d with id=%d\n",
lincan/src/c_can.c:		 pmsgobj->object, id);
lincan/src/c_can.c:	c_can_registerdump(pmsgobj->hostchip);
lincan/src/c_can.c:	return -ENODEV;
lincan/src/c_can.c:		 pmsgobj->hostchip->chip_idx, pmsgobj->object);
lincan/src/c_can.c:	if (c_can_if2_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, readMaskCM, CCIF2CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF2CR);
lincan/src/c_can.c:	if (c_can_if2_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, 0, CCIF2A2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeMaskCM, CCIF2CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF2CR);
lincan/src/c_can.c:	if (c_can_if2_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	mcreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF2CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:			  IFXMC_RMTEN | IFXMC_NEWDAT | IFXMC_TXRQST | (pmsg->
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, (u16) (pmsg->id), CCIF2A1);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:				  ((u16) (pmsg->id >> 16) & 0x1FFF), CCIF2A2);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip,
lincan/src/c_can.c:				   ((u16) (pmsg->id << 2) & 0x1FFC)), CCIF2A2);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, 0, CCIF1A1);
lincan/src/c_can.c:	if (pmsg->length > 0) {
lincan/src/c_can.c:		dataA1 = pmsg->data[0] | (u16) pmsg->data[1] << 8;
lincan/src/c_can.c:		dataA2 = pmsg->data[2] | (u16) pmsg->data[3] << 8;
lincan/src/c_can.c:		dataB1 = pmsg->data[4] | (u16) pmsg->data[5] << 8;
lincan/src/c_can.c:		dataB2 = pmsg->data[6] | (u16) pmsg->data[7] << 8;
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, dataA1, CCIF2DA1);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, dataA2, CCIF2DA2);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, dataB1, CCIF2DB1);
lincan/src/c_can.c:		c_can_write_reg_w(pmsgobj->hostchip, dataB2, CCIF2DB2);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, writeSendMskCM, CCIF2CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF2CR);
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:	c_can_registerdump(pmsgobj->hostchip);
lincan/src/c_can.c:		 pmsgobj->hostchip->chip_idx, pmsgobj->object);
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, readMaskCM, CCIF1CM);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	//setting Transmit-Request-Bit
lincan/src/c_can.c:	if (c_can_if1_busycheck(pmsgobj->hostchip))
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	mcreg = c_can_read_reg_w(pmsgobj->hostchip, CCIF1DMC);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, mcreg | IFXMC_TXRQST, CCIF1DMC);
lincan/src/c_can.c:	c_can_write_reg_w(pmsgobj->hostchip, pmsgobj->object, CCIF1CR);
lincan/src/c_can.c:	DEBUGMSG("-> Sent remote request through message object %d\n",
lincan/src/c_can.c:		 pmsgobj->object);
lincan/src/c_can.c:	c_can_registerdump(pmsgobj->hostchip);
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_set_btregs(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		return -1;
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:		return -ENODEV;
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_start_chip(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		DEBUGMSG("-> Error Chip not available.\n");
lincan/src/c_can.c:		return -1;
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_stop_chip(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		DEBUGMSG("-> Error Chip not available.\n");
lincan/src/c_can.c:		return -1;
lincan/src/c_can.c:	DEBUGMSG("-> ok\n");
lincan/src/c_can.c:	/* Power-down C_CAN, except this does nothing in the version 1.2 */
lincan/src/c_can.c:	DEBUGMSG("(c%d)calling c_can_check_tx_stat(...)\n", pchip->chip_idx);
lincan/src/c_can.c:		return -1;
lincan/src/c_can.c:	CANMSG("------------------------------------\n");
lincan/src/c_can.c:	CANMSG("---------C-CAN Register Dump--------\n");
lincan/src/c_can.c:	CANMSG("------------at 0x%.8lx-----------\n",
lincan/src/c_can.c:	       (unsigned long)pchip->chip_base_addr);
lincan/src/c_can.c:	CANMSG("------------------------------------\n");
lincan/src/c_can.c:	CANMSG("------------------------------------\n");
lincan/src/c_can.c:	CANMSG("------------------------------------\n");
lincan/src/c_can.c:	CANMSG("------------------------------------\n");
lincan/src/c_can.c:	CANMSG("----------------------------------------\n");
lincan/src/c_can.c:	CANMSG("---------C-CAN IF1 Register Dump--------\n");
lincan/src/c_can.c:	chipspecops->chip_config = c_can_chip_config;
lincan/src/c_can.c:	chipspecops->baud_rate = c_can_baud_rate;
lincan/src/c_can.c:	/*chipspecops->standard_mask=c_can_standard_mask;
lincan/src/c_can.c:	   chipspecops->extended_mask=c_can_extended_mask;
lincan/src/c_can.c:	   chipspecops->message15_mask=c_can_extended_mask; */
lincan/src/c_can.c:	chipspecops->clear_objects = c_can_clear_objects;
lincan/src/c_can.c:	/*chipspecops->config_irqs=c_can_config_irqs; */
lincan/src/c_can.c:	chipspecops->pre_read_config = c_can_pre_read_config;
lincan/src/c_can.c:	chipspecops->pre_write_config = c_can_pre_write_config;
lincan/src/c_can.c:	chipspecops->send_msg = c_can_send_msg;
lincan/src/c_can.c:	chipspecops->check_tx_stat = c_can_check_tx_stat;
lincan/src/c_can.c:	chipspecops->wakeup_tx = c_can_wakeup_tx;
lincan/src/c_can.c:	chipspecops->filtch_rq = c_can_filtch_rq;
lincan/src/c_can.c:	chipspecops->remote_request = c_can_remote_request;
lincan/src/c_can.c:	chipspecops->enable_configuration = c_can_enable_configuration;
lincan/src/c_can.c:	chipspecops->disable_configuration = c_can_disable_configuration;
lincan/src/c_can.c:	chipspecops->attach_to_chip = c_can_attach_to_chip;
lincan/src/c_can.c:	chipspecops->release_chip = c_can_release_chip;
lincan/src/c_can.c:	chipspecops->set_btregs = c_can_set_btregs;
lincan/src/c_can.c:	chipspecops->start_chip = c_can_start_chip;
lincan/src/c_can.c:	chipspecops->stop_chip = c_can_stop_chip;
lincan/src/c_can.c:	chipspecops->irq_handler = c_can_irq_handler;
lincan/src/c_can.c:	chipspecops->irq_accept = NULL;
lincan/src/c_can.c:	chip->chip_type = "c_can";
lincan/src/c_can.c:		chip->max_objects = 32;
lincan/src/c_can.c:		chip->max_objects = MAX_MSGOBJS;
lincan/src/c_can.c:	c_can_register(chip->chipspecops);
lincan/src/c_can_irq.c:/* c_can_irq.c - Hynix HMS30c7202 ARM IRQ handling code
lincan/src/c_can_irq.c: * Linux CAN-bus device driver.
lincan/src/c_can_irq.c: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/src/c_can_irq.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/c_can_irq.c: * This software is released under the GPL-License.
lincan/src/c_can_irq.c: * Version lincan-0.3  17 Jun 2004
lincan/src/c_can_irq.c:	struct msgobj_t *pmsgobj = pchip->msgobj[idxobj];
lincan/src/c_can_irq.c:		 pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:	if (pmsgobj->tx_slot) {
lincan/src/c_can_irq.c:			can_filltimestamp(&pmsgobj->tx_slot->msg.timestamp);
lincan/src/c_can_irq.c:			pmsgobj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/c_can_irq.c:			canque_filter_msg2edges(pmsgobj->qends,
lincan/src/c_can_irq.c:						&pmsgobj->tx_slot->msg);
lincan/src/c_can_irq.c:		canque_free_outslot(pmsgobj->qends, pmsgobj->tx_qedge,
lincan/src/c_can_irq.c:				    pmsgobj->tx_slot);
lincan/src/c_can_irq.c:		pmsgobj->tx_slot = NULL;
lincan/src/c_can_irq.c:	    canque_test_outslot(pmsgobj->qends, &pmsgobj->tx_qedge,
lincan/src/c_can_irq.c:				&pmsgobj->tx_slot);
lincan/src/c_can_irq.c:			 pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:	if (pchip->chipspecops->
lincan/src/c_can_irq.c:	    send_msg(pchip, pmsgobj, &pmsgobj->tx_slot->msg)) {
lincan/src/c_can_irq.c:		pmsgobj->ret = -1;
lincan/src/c_can_irq.c:		canque_notify_inends(pmsgobj->tx_qedge,
lincan/src/c_can_irq.c:		canque_free_outslot(pmsgobj->qends, pmsgobj->tx_qedge,
lincan/src/c_can_irq.c:				    pmsgobj->tx_slot);
lincan/src/c_can_irq.c:		pmsgobj->tx_slot = NULL;
lincan/src/c_can_irq.c:			 pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:		pchip->stat.cntTxPkt++;
lincan/src/c_can_irq.c:		pchip->stat.cntTxData += pmsgobj->tx_slot->length;
lincan/src/c_can_irq.c:// Message received form the line. Write it in the input fifo->
lincan/src/c_can_irq.c:	struct msgobj_t *pmsgobj = pchip->msgobj[idxobj];
lincan/src/c_can_irq.c:		 pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:		pchip->stat.cntRxFifoOvr++;
lincan/src/c_can_irq.c:		pmsgobj->rx_msg.length = msgCntlReg & 0x000F;
lincan/src/c_can_irq.c:		pmsgobj->rx_msg.id = (u32) msgid;
lincan/src/c_can_irq.c:		if (pmsgobj->rx_msg.length > 0)
lincan/src/c_can_irq.c:		if (pmsgobj->rx_msg.length > 2)
lincan/src/c_can_irq.c:		if (pmsgobj->rx_msg.length > 4)
lincan/src/c_can_irq.c:		if (pmsgobj->rx_msg.length > 6)
lincan/src/c_can_irq.c:		for (i = 0; i < pmsgobj->rx_msg.length; i++) {
lincan/src/c_can_irq.c:			pmsgobj->rx_msg.data[i] = readData.bdata[i];
lincan/src/c_can_irq.c:			 pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:		DEBUGMSG(" id = %ld\n", pmsgobj->rx_msg.id);
lincan/src/c_can_irq.c:		DEBUGMSG(" length = %d\n", pmsgobj->rx_msg.length);
lincan/src/c_can_irq.c:		for (i = 0; i < pmsgobj->rx_msg.length; i++)
lincan/src/c_can_irq.c:				 pmsgobj->rx_msg.data[i]);
lincan/src/c_can_irq.c:		can_filltimestamp(&pmsgobj->rx_msg.timestamp);
lincan/src/c_can_irq.c:		canque_filter_msg2edges(pmsgobj->qends, &pmsgobj->rx_msg);
lincan/src/c_can_irq.c:		pchip->stat.cntRxPkt++;
lincan/src/c_can_irq.c:		pchip->stat.cntRxData += pmsgobj->rx_msg.length;
lincan/src/c_can_irq.c:			CANMSG("(c%dm%d)c-can fifo full: Message lost!\n",
lincan/src/c_can_irq.c:			       pchip->chip_idx, pmsgobj->object);
lincan/src/c_can_irq.c:	if(canqueue_ends_filt_conjuction(obj->qends, &filt)) {
lincan/src/c_can_irq.c:		obj->rx_preconfig_id=filt.id;
lincan/src/c_can_irq.c:		CANMSG("c_can_irq_update_filter: obj #%d\n",obj->object);
lincan/src/c_can_irq.c:			int idxobj = obj->object-1;
lincan/src/c_can_irq.c:		if(!obj->tx_slot) {
lincan/src/c_can_irq.c:		if (can_msgobj_test_fl(obj, FILTCH_REQUEST) && !obj->tx_slot)
lincan/src/c_can_irq.c:	struct rtr_id *rtr_search = hardware_p->rtr_queue;
lincan/src/c_can_irq.c:			 pchip->chip_idx,
lincan/src/c_can_irq.c:			 (long)(pchip-> /*v */ chip_base_addr /* + CCSR */ ));
lincan/src/c_can_irq.c:		 pchip->chip_idx,
lincan/src/c_can_irq.c:		 (long)(pchip-> /*v */ chip_base_addr /* + CCSR */ ),
lincan/src/c_can_irq.c:				 pchip->chip_idx, chip_status);
lincan/src/c_can_irq.c:				pchip->stat.cntWarnings++;
lincan/src/c_can_irq.c:				     pchip->chip_idx, (errcount & 0x00ff),
lincan/src/c_can_irq.c:				   if ((pchip->stat.cntWarnings > 100) && ((errcount&0x00ff) > 127))
lincan/src/c_can_irq.c:				   pchip->chip_idx);
lincan/src/c_can_irq.c:				   pchip->config_irqs(pchip, 0);
lincan/src/c_can_irq.c:				   pchip->enable_configuration(pchip);
lincan/src/c_can_irq.c:				   pchip->clear_objects(pchip);
lincan/src/c_can_irq.c:				   pchip->flags &= ~CHANNEL_CONFIGURED;
lincan/src/c_can_irq.c:				pchip->stat.cntErrPassive++;
lincan/src/c_can_irq.c:				     pchip->chip_idx);
lincan/src/c_can_irq.c:				pchip->stat.cntBusOff++;
lincan/src/c_can_irq.c:				//pchip->fifo->tx_in_progress = 0;
lincan/src/c_can_irq.c:				     pchip->chip_idx);
lincan/src/c_can_irq.c:				/*if (pchip->stat.cntBusOff > 100)
lincan/src/c_can_irq.c:				   pchip->chip_idx);
lincan/src/c_can_irq.c:				   pchip->config_irqs(pchip, 0);
lincan/src/c_can_irq.c:				   pchip->enable_configuration(pchip);
lincan/src/c_can_irq.c:				   pchip->clear_objects(pchip);
lincan/src/c_can_irq.c:				   pchip->flags &= ~CHANNEL_CONFIGURED;
lincan/src/c_can_irq.c:				       pchip->chip_idx);
lincan/src/c_can_irq.c:				pchip->chipspecops->
lincan/src/c_can_irq.c:				     pchip->chip_idx);
lincan/src/c_can_irq.c:				     pchip->chip_idx);
lincan/src/c_can_irq.c:				pchip->stat.cntStuffErr++;
lincan/src/c_can_irq.c:				pchip->stat.cntFormErr++;
lincan/src/c_can_irq.c:				pchip->stat.cntAckErr++;
lincan/src/c_can_irq.c:				pchip->stat.cntBit1Err++;
lincan/src/c_can_irq.c:				pchip->stat.cntBit0Err++;
lincan/src/c_can_irq.c:				pchip->stat.cntCrcErr++;
lincan/src/c_can_irq.c:				idxobj = irqreg - 1;
lincan/src/c_can_irq.c:				pmsgobj = pchip->msgobj[idxobj];
lincan/src/c_can_irq.c:				//            (unsigned long)pchip->vbase_addr + iIRQ,
lincan/src/c_can_irq.c:					       pchip->chip_idx,
lincan/src/c_can_irq.c:					       pmsgobj->object);
lincan/src/c_can_irq.c:					pchip->stat.cntMsgLst++;
lincan/src/c_can_irq.c:					if(!pmsgobj->tx_slot){
lincan/src/c_can_irq.c:					spin_lock(&hardware_p->rtr_lock);
lincan/src/c_can_irq.c:						if (rtr_search->id == msgid) {
lincan/src/c_can_irq.c:						rtr_search = rtr_search->next;
lincan/src/c_can_irq.c:					spin_unlock(&hardware_p->rtr_lock);
lincan/src/c_can_irq.c:					    && (rtr_search->id == msgid)) {
lincan/src/c_can_irq.c:	struct rtr_id *prtr_search = hardware_p->rtr_queue;
lincan/src/c_can_irq.c:	spin_lock(&hardware_p->rtr_lock);
lincan/src/c_can_irq.c:	prtr_search->rtr_message->id = msgid;
lincan/src/c_can_irq.c:	prtr_search->rtr_message->length =
lincan/src/c_can_irq.c:	if (prtr_search->rtr_message->length > 0)
lincan/src/c_can_irq.c:	if (prtr_search->rtr_message->length > 2)
lincan/src/c_can_irq.c:	if (prtr_search->rtr_message->length > 4)
lincan/src/c_can_irq.c:	if (prtr_search->rtr_message->length > 6)
lincan/src/c_can_irq.c:	for (i = 0; i < prtr_search->rtr_message->length; i++) {
lincan/src/c_can_irq.c:		prtr_search->rtr_message->data[i] = rtrData.bdata[i];
lincan/src/c_can_irq.c:	spin_unlock(&hardware_p->rtr_lock);
lincan/src/c_can_irq.c:	wake_up_interruptible(&prtr_search->rtr_wq);
lincan/src/can_devrtl.c:/* can_devrtl.c - CAN message queues functions for the RT-Linux
lincan/src/can_devrtl.c: * Linux CAN-bus device driver.
lincan/src/can_devrtl.c: * New CAN queues by Pavel Pisa - OCERA team member
lincan/src/can_devrtl.c: * This software is released under the GPL-License.
lincan/src/can_devrtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/can_devrtl.c:	/* I hate next loop, but RT-Linux does not provide context to ISR */
lincan/src/can_devrtl.c:	for (board_nr=hardware_p->nr_boards; board_nr--; ) {
lincan/src/can_devrtl.c:		if((candev=hardware_p->candevice[board_nr])==NULL)
lincan/src/can_devrtl.c:		for(chip_nr=candev->nr_all_chips; chip_nr--; ) {
lincan/src/can_devrtl.c:			if((chip=candev->chip[chip_nr])==NULL)
lincan/src/can_devrtl.c:			if(chip->chip_irq!=irq_num) continue;
lincan/src/can_devrtl.c:			if(chip->chipspecops->irq_accept)
lincan/src/can_devrtl.c:				ret=chip->chipspecops->irq_accept(chip->chip_irq,chip);
lincan/src/can_devrtl.c:			set_bit(MSGOBJ_IRQ_REQUEST_b,&chip->pend_flags);
lincan/src/can_devrtl.c:			set_bit(MSGOBJ_WORKER_WAKE_b,&chip->pend_flags);
lincan/src/can_devrtl.c:			if(chip->flags & CHIP_IRQ_PCI)
lincan/src/can_devrtl.c:			if (chip->flags & CHIP_IRQ_VME)
lincan/src/can_devrtl.c:			if(!chip->worker_thread) continue;
lincan/src/can_devrtl.c:			thread=chip->worker_thread;
lincan/src/can_devrtl.c:         * and RT-Linux. */
lincan/src/can_devrtl.c:	if (!(chip->flags & CHIP_CONFIGURED)){
lincan/src/can_devrtl.c:		if (chip->chipspecops->chip_config(chip))
lincan/src/can_devrtl.c:			chip->flags |= CHIP_CONFIGURED; 
lincan/src/can_devrtl.c:		if((chip->msgobj[0])!=NULL)
lincan/src/can_devrtl.c:			if (chip->chipspecops->pre_read_config(chip,chip->msgobj[0])<0)
lincan/src/can_devrtl.c:	set_bit(MSGOBJ_IRQ_REQUEST_b,&chip->pend_flags);
lincan/src/can_devrtl.c:		DEBUGMSG("Worker thread for chip %d active\n",chip->chip_idx);
lincan/src/can_devrtl.c:		if(test_and_clear_bit(MSGOBJ_IRQ_REQUEST_b,&chip->pend_flags)){
lincan/src/can_devrtl.c:			if(chip->chipspecops->irq_handler) do{
lincan/src/can_devrtl.c:				ret=chip->chipspecops->irq_handler(chip->chip_irq,chip);
lincan/src/can_devrtl.c:			}while(ret && --loop_cnt);
lincan/src/can_devrtl.c:		if(test_and_clear_bit(MSGOBJ_TX_REQUEST_b,&chip->pend_flags)){
lincan/src/can_devrtl.c:			for(i=0;i<chip->max_objects;i++){
lincan/src/can_devrtl.c:				if((obj=chip->msgobj[i])==NULL)
lincan/src/can_devrtl.c:					chip->chipspecops->wakeup_tx(chip, obj);
lincan/src/can_devrtl.c:					if(chip->chipspecops->filtch_rq)
lincan/src/can_devrtl.c:						chip->chipspecops->filtch_rq(chip, obj);
lincan/src/can_devrtl.c:		/*re-enable chip IRQ, I am not sure, if this is required,
lincan/src/can_devrtl.c:		if(chip->chip_irq>=0) {
lincan/src/can_devrtl.c:			if ((chip->flags & CHIP_IRQ_VME) == 0) can_enable_irq(chip->chip_irq);
lincan/src/can_devrtl.c:		if(test_and_clear_bit(MSGOBJ_WORKER_WAKE_b,&chip->pend_flags)){
lincan/src/can_devrtl.c:		return -1;
lincan/src/can_devrtl.c:	if(chip->chipspecops->irq_handler && !(chip->flags & CHIP_IRQ_CUSTOM)){
lincan/src/can_devrtl.c:		if ((chip->flags & CHIP_IRQ_VME) != 0)
lincan/src/can_devrtl.c:		if (my_request_irq(chip->chip_irq,can_rtl_isr))
lincan/src/can_devrtl.c:			return -1;
lincan/src/can_devrtl.c:			DEBUGMSG("Registered interrupt %d\n",chip->chip_irq);
lincan/src/can_devrtl.c:			chip->flags |= CHIP_IRQ_SETUP;
lincan/src/can_devrtl.c:        ret=pthread_create(&chip->worker_thread, attrib_p, can_chip_worker_thread, chip);
lincan/src/can_devrtl.c:	if(ret<0) chip->worker_thread=NULL;
lincan/src/can_devrtl.c:	if(chip->worker_thread)
lincan/src/can_devrtl.c:		pthread_delete_np(chip->worker_thread);
lincan/src/can_devrtl.c:	if((chip->flags & CHIP_IRQ_SETUP) && (chip->chip_irq>=0)
lincan/src/can_devrtl.c:	    && !(chip->flags & CHIP_IRQ_CUSTOM)) {
lincan/src/can_devrtl.c:		if ((chip->flags & CHIP_IRQ_VME) != 0)
lincan/src/can_devrtl.c:		my_free_irq(chip->chip_irq);
lincan/src/can_devrtl.c:		chip->flags &= ~CHIP_IRQ_SETUP;
lincan/src/can_quekern.c:/* can_quekern.c - CAN message queues functions for the Linux kernel
lincan/src/can_quekern.c: * Linux CAN-bus device driver.
lincan/src/can_quekern.c: * New CAN queues by Pavel Pisa - OCERA team member
lincan/src/can_quekern.c: * This software is released under the GPL-License.
lincan/src/can_quekern.c: * Version lincan-0.3  17 Jun 2004
lincan/src/can_quekern.c:		list_del(&edge->inpeers);
lincan/src/can_quekern.c:		DEBUGQUE("edge %d disposed\n",qedge->edge_num);
lincan/src/can_quekern.c:		if(canque_fifo_test_fl(&qedge->fifo,RTL_MEM)){
lincan/src/can_quekern.c:		canque_fifo_done_kern(&qedge->fifo);
lincan/src/can_quekern.c:		entry=entry->next;
lincan/src/can_quekern.c:		if(!list_empty(&qends->inlist))
lincan/src/can_quekern.c:		if(!list_empty(&qends->outlist))
lincan/src/can_quekern.c:		list_del(&qends->dead_peers);
lincan/src/can_quekern.c:		if(qends->ends_flags&CAN_ENDSF_MEM_RTL){
lincan/src/can_quekern.c:	/* The problem of the above call is, that in RT-Linux to Linux notify
lincan/src/can_quekern.c:	if(atomic_read(&edge->edge_used)>0){
lincan/src/can_quekern.c:		can_spin_lock_irqsave(&edge->inends->ends_lock, flags);
lincan/src/can_quekern.c:		can_spin_lock(&edge->outends->ends_lock);
lincan/src/can_quekern.c:		if(atomic_read(&edge->edge_used)>0){
lincan/src/can_quekern.c:			canque_fifo_clear_fl(&edge->fifo,DEAD);
lincan/src/can_quekern.c:			can_spin_unlock(&edge->outends->ends_lock);
lincan/src/can_quekern.c:			can_spin_unlock_irqrestore(&edge->inends->ends_lock, flags);
lincan/src/can_quekern.c:		can_spin_unlock(&edge->outends->ends_lock);
lincan/src/can_quekern.c:		can_spin_unlock_irqrestore(&edge->inends->ends_lock, flags);
lincan/src/can_quekern.c:	list_add(&edge->inpeers,&canque_dead_edges);
lincan/src/can_quekern.c:/*if(qends->ends_flags & CAN_ENDSF_DEAD){
lincan/src/can_quekern.c:	list_del(&qends->dead_peers);
lincan/src/can_quekern.c:	list_add(&qends->dead_peers,&canque_dead_ends);
lincan/src/can_quekern.c: * canqueue_notify_kern - notification callback handler for Linux userspace clients
lincan/src/can_quekern.c: * when called from RT-Linux context in mixed mode Linux/RT-Linux compilation.
lincan/src/can_quekern.c:			qedge->edge_num,(int)atomic_read(&qedge->edge_used),what);
lincan/src/can_quekern.c:	/* delay event delivery for RT-Linux -> kernel notifications */
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.emptyq);
lincan/src/can_quekern.c:			if(canque_fifo_test_and_clear_fl(&qedge->fifo, FREEONEMPTY))
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.writeq);
lincan/src/can_quekern.c:			kill_fasync(&qends->endinfo.fileinfo.fasync, SIGIO, POLL_OUT); 
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.readq);
lincan/src/can_quekern.c:			kill_fasync(&qends->endinfo.fileinfo.fasync, SIGIO, POLL_IN); 
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.readq);
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.writeq);
lincan/src/can_quekern.c:			wake_up(&qends->endinfo.fileinfo.emptyq);
lincan/src/can_quekern.c:			if(canque_fifo_test_and_clear_fl(&qedge->fifo, READY))
lincan/src/can_quekern.c: * canqueue_ends_init_kern - Linux userspace clients specific ends initialization
lincan/src/can_quekern.c:	qends->context=NULL;
lincan/src/can_quekern.c:	init_waitqueue_head(&qends->endinfo.fileinfo.readq);
lincan/src/can_quekern.c:	init_waitqueue_head(&qends->endinfo.fileinfo.writeq);
lincan/src/can_quekern.c:	init_waitqueue_head(&qends->endinfo.fileinfo.emptyq);
lincan/src/can_quekern.c:	qends->endinfo.fileinfo.fasync=NULL;
lincan/src/can_quekern.c:	qends->notify=canqueue_notify_kern;
lincan/src/can_quekern.c: * canque_get_inslot4id_wait_kern - find or wait for best outgoing edge and slot for given ID
lincan/src/can_quekern.c:	int ret=-1;
lincan/src/can_quekern.c:	wait_event_interruptible((qends->endinfo.fileinfo.writeq), 
lincan/src/can_quekern.c:		(ret=canque_get_inslot4id(qends,qedgep,slotp,cmd,id,prio))!=-1);
lincan/src/can_quekern.c: * canque_get_outslot_wait_kern - receive or wait for ready slot for given ends
lincan/src/can_quekern.c:	int ret=-1;
lincan/src/can_quekern.c:	wait_event_interruptible((qends->endinfo.fileinfo.readq), 
lincan/src/can_quekern.c:		(ret=canque_test_outslot(qends,qedgep,slotp))!=-1);
lincan/src/can_quekern.c: * canque_sync_wait_kern - wait for all slots processing
lincan/src/can_quekern.c:	int ret=-1;
lincan/src/can_quekern.c:	wait_event_interruptible((qends->endinfo.fileinfo.emptyq), 
lincan/src/can_quekern.c:		(ret=canque_fifo_test_fl(&qedge->fifo,EMPTY)?1:0));
lincan/src/can_quekern.c: * canque_fifo_init_kern - initialize one CAN FIFO
lincan/src/can_quekern.c:	fifo->entry=kmalloc(size,GFP_KERNEL);
lincan/src/can_quekern.c:	if(!fifo->entry) return -1;
lincan/src/can_quekern.c:	fifo->slotsnr=slotsnr;
lincan/src/can_quekern.c: * canque_fifo_done_kern - frees slots allocated for CAN FIFO
lincan/src/can_quekern.c:	if(fifo->entry)
lincan/src/can_quekern.c:		kfree(fifo->entry);
lincan/src/can_quekern.c:	fifo->entry=NULL;
lincan/src/can_quekern.c: * canque_new_edge_kern - allocate new edge structure in the Linux kernel context
lincan/src/can_quekern.c:	can_spin_lock_init(&qedge->fifo.fifo_lock);
lincan/src/can_quekern.c:	if(canque_fifo_init_kern(&qedge->fifo, slotsnr)<0){
lincan/src/can_quekern.c:	atomic_set(&qedge->edge_used,1);
lincan/src/can_quekern.c:	qedge->filtid = 0;
lincan/src/can_quekern.c:	qedge->filtmask = canque_filtid2internal(0l, (processlocal<2)? MSG_LOCAL:0);
lincan/src/can_quekern.c:	qedge->edge_prio = 0;
lincan/src/can_quekern.c:	qedge->edge_num=atomic_read(&edge_num_cnt);
lincan/src/can_quekern.c:	DEBUGQUE("canque_new_edge_kern %d\n",qedge->edge_num);
lincan/src/can_quekern.c: * canqueue_disconnect_edge_kern - disconnect edge from communicating entities with wait
lincan/src/can_quekern.c:	canque_fifo_set_fl(&qedge->fifo,BLOCK);
lincan/src/can_quekern.c:	DEBUGQUE("canqueue_disconnect_edge_kern %d called\n",qedge->edge_num);
lincan/src/can_quekern.c:	if(!canque_fifo_test_and_set_fl(&qedge->fifo,DEAD)){
lincan/src/can_quekern.c:		if(atomic_read(&qedge->edge_used)>0)
lincan/src/can_quekern.c:			atomic_dec(&qedge->edge_used);
lincan/src/can_quekern.c:		DEBUGQUE("canqueue_disconnect_edge_kern %d waiting\n",qedge->edge_num);
lincan/src/can_quekern.c:		wait_event((qends->endinfo.fileinfo.emptyq), 
lincan/src/can_quekern.c:		return -1;
lincan/src/can_quekern.c:		can_spin_lock_irqsave(&qends->ends_lock,flags);
lincan/src/can_quekern.c:			can_spin_unlock_irqrestore(&qends->ends_lock,flags);
lincan/src/can_quekern.c:		if(list == &qends->inlist)
lincan/src/can_quekern.c:			edge=list_entry(list->next,struct canque_edge_t,inpeers);
lincan/src/can_quekern.c:			edge=list_entry(list->next,struct canque_edge_t,outpeers);
lincan/src/can_quekern.c:		atomic_inc(&edge->edge_used);
lincan/src/can_quekern.c:		can_spin_unlock_irqrestore(&qends->ends_lock,flags);
lincan/src/can_quekern.c:			canque_fifo_done_kern(&edge->fifo);
lincan/src/can_quekern.c:			DEBUGQUE("the edge %d has usage count %d and flags %ld\n",edge->edge_num,atomic_read(&edge->edge_used),edge->fifo.fifo_flags);
lincan/src/can_quekern.c:			return -1;
lincan/src/can_quekern.c:		DEBUGQUE("canque_sync_wait_kern called for edge %d\n",qedge->edge_num);
lincan/src/can_quekern.c:	qends->ends_flags |= CAN_ENDSF_DEAD;
lincan/src/can_quekern.c:	list_add(&qends->dead_peers,&canque_dead_ends);
lincan/src/can_quekern.c: * canqueue_ends_dispose_kern - finalizing of the ends structure for Linux kernel clients
lincan/src/can_quekern.c:	wake_up(&qends->endinfo.fileinfo.readq);
lincan/src/can_quekern.c:	wake_up(&qends->endinfo.fileinfo.writeq);
lincan/src/can_quekern.c:	wake_up(&qends->endinfo.fileinfo.emptyq);
lincan/src/can_quertl.c:/* can_quertl.c - CAN message queues functions for the RT-Linux
lincan/src/can_quertl.c: * Linux CAN-bus device driver.
lincan/src/can_quertl.c: * New CAN queues by Pavel Pisa - OCERA team member
lincan/src/can_quertl.c: * This software is released under the GPL-License.
lincan/src/can_quertl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/can_quertl.c:#define CANQUE_PENDOPS_MASK  ((1<<CANQUE_PENDOPS_LIMIT)-1)
lincan/src/can_quertl.c:		list_del(&qedge->pending_peers);
lincan/src/can_quertl.c:		canque_fifo_clear_fl(&qedge->fifo, NOTIFYPEND);
lincan/src/can_quertl.c:		pending_inops=qedge->pending_inops;
lincan/src/can_quertl.c:		qedge->pending_inops=0;
lincan/src/can_quertl.c:		pending_outops=qedge->pending_outops;
lincan/src/can_quertl.c:		qedge->pending_outops=0;
lincan/src/can_quertl.c:			canque_notify_outends(qedge,CANQUEUE_NOTIFY_ERROR | qedge->fifo.error_code);
lincan/src/can_quertl.c:			canque_notify_inends(qedge,CANQUEUE_NOTIFY_ERROR | qedge->fifo.error_code);
lincan/src/can_quertl.c: * canqueue_rtl2lin_check_and_pend - postpones edge notification if called from RT-Linux 
lincan/src/can_quertl.c: *		on caller responsibility. If called from RT-Linux contexts, schedules postponed
lincan/src/can_quertl.c:	if(qends == qedge->inends) {
lincan/src/can_quertl.c:		set_bit(what,&qedge->pending_inops);
lincan/src/can_quertl.c:	} else if(qends == qedge->outends) {
lincan/src/can_quertl.c:		set_bit(what,&qedge->pending_outops);
lincan/src/can_quertl.c:	if(!canque_fifo_test_and_set_fl(&qedge->fifo, NOTIFYPEND)){
lincan/src/can_quertl.c:		list_add_tail(&qedge->pending_peers,&canque_pending_edges_list);
lincan/src/can_quertl.c: * canque_get_inslot4id_wait_rtl - find or wait for best outgoing edge and slot for given ID
lincan/src/can_quertl.c:	old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_writeq_age);
lincan/src/can_quertl.c:	while((ret=canque_get_inslot4id(qends,qedgep,slotp,cmd,id,prio))==-1){
lincan/src/can_quertl.c:		rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:		if(old_age == atomic_read(&qends->endinfo.rtlinfo.rtl_writeq_age))
lincan/src/can_quertl.c:			sigset=rtl_wait_sleep(&qends->endinfo.rtlinfo.rtl_writeq, &qends->endinfo.rtlinfo.rtl_lock);
lincan/src/can_quertl.c:		rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			return -1;
lincan/src/can_quertl.c:		old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_writeq_age);
lincan/src/can_quertl.c: * canque_get_outslot_wait_rtl - receive or wait for ready slot for given ends
lincan/src/can_quertl.c:	old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_readq_age);
lincan/src/can_quertl.c:	while((ret=canque_test_outslot(qends,qedgep,slotp))==-1){
lincan/src/can_quertl.c:		rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:		if(old_age == atomic_read(&qends->endinfo.rtlinfo.rtl_readq_age))
lincan/src/can_quertl.c:			sigset=rtl_wait_sleep(&qends->endinfo.rtlinfo.rtl_readq, &qends->endinfo.rtlinfo.rtl_lock);
lincan/src/can_quertl.c:		rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			return -1;
lincan/src/can_quertl.c:		old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_readq_age);
lincan/src/can_quertl.c: * canque_sync_wait_rtl - wait for all slots processing
lincan/src/can_quertl.c:	old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_emptyq_age);
lincan/src/can_quertl.c:	while(!(ret=canque_fifo_test_fl(&qedge->fifo,EMPTY)?1:0)){
lincan/src/can_quertl.c:		rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:		if(old_age == atomic_read(&qends->endinfo.rtlinfo.rtl_emptyq_age))
lincan/src/can_quertl.c:			sigset=rtl_wait_sleep(&qends->endinfo.rtlinfo.rtl_emptyq, &qends->endinfo.rtlinfo.rtl_lock);
lincan/src/can_quertl.c:		rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			return -1;
lincan/src/can_quertl.c:		old_age=atomic_read(&qends->endinfo.rtlinfo.rtl_emptyq_age);
lincan/src/can_quertl.c: * canque_fifo_init_rtl - initialize one CAN FIFO
lincan/src/can_quertl.c:	fifo->entry=rt_malloc(size);
lincan/src/can_quertl.c:	if(!fifo->entry) return -1;
lincan/src/can_quertl.c:	fifo->slotsnr=slotsnr;
lincan/src/can_quertl.c: * canque_fifo_done_rtl - frees slots allocated for CAN FIFO
lincan/src/can_quertl.c:	if(fifo->entry)
lincan/src/can_quertl.c:		rt_free(fifo->entry);
lincan/src/can_quertl.c:	fifo->entry=NULL;
lincan/src/can_quertl.c:	canque_fifo_done_rtl(&qedge->fifo);
lincan/src/can_quertl.c: * canque_new_edge_rtl - allocate new edge structure in the RT-Linux context
lincan/src/can_quertl.c:	can_spin_lock_init(&qedge->fifo.fifo_lock);
lincan/src/can_quertl.c:	canque_fifo_set_fl(&qedge->fifo,RTL_MEM);
lincan/src/can_quertl.c:	if(canque_fifo_init_rtl(&qedge->fifo, slotsnr)<0){
lincan/src/can_quertl.c:	atomic_set(&qedge->edge_used,1);
lincan/src/can_quertl.c:	qedge->filtid = 0;
lincan/src/can_quertl.c:	qedge->filtmask = canque_filtid2internal(0l, (processlocal<2)? MSG_LOCAL:0);
lincan/src/can_quertl.c:	qedge->edge_prio = 0;
lincan/src/can_quertl.c:	qedge->edge_num=atomic_read(&edge_num_cnt);
lincan/src/can_quertl.c: * canqueue_notify_rtl - notification callback handler for Linux userspace clients
lincan/src/can_quertl.c:			rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_emptyq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_emptyq);
lincan/src/can_quertl.c:			rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			if(canque_fifo_test_and_clear_fl(&qedge->fifo, FREEONEMPTY))
lincan/src/can_quertl.c:			rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_writeq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_writeq);
lincan/src/can_quertl.c:			rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_readq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_readq);
lincan/src/can_quertl.c:			rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_readq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_readq);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_writeq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_writeq);
lincan/src/can_quertl.c:			atomic_inc(&qends->endinfo.rtlinfo.rtl_emptyq_age);
lincan/src/can_quertl.c:			rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_emptyq);
lincan/src/can_quertl.c:			rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:			if(canque_fifo_test_and_clear_fl(&qedge->fifo, READY))
lincan/src/can_quertl.c: * canqueue_ends_init_rtl - RT-Linux clients specific ends initialization
lincan/src/can_quertl.c:	qends->context=NULL;
lincan/src/can_quertl.c:    	rtl_spin_lock_init(&(qends->endinfo.rtlinfo.rtl_lock));
lincan/src/can_quertl.c:	rtl_wait_init(&(qends->endinfo.rtlinfo.rtl_readq));
lincan/src/can_quertl.c:	rtl_wait_init(&(qends->endinfo.rtlinfo.rtl_writeq));
lincan/src/can_quertl.c:	rtl_wait_init(&(qends->endinfo.rtlinfo.rtl_emptyq));
lincan/src/can_quertl.c:	qends->notify=canqueue_notify_rtl;
lincan/src/can_quertl.c:	qends->endinfo.rtlinfo.pend_flags=0;
lincan/src/can_quertl.c: * canqueue_ends_dispose_rtl - finalizing of the ends structure for Linux kernel clients
lincan/src/can_quertl.c:	rtl_spin_lock_irqsave(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:	rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_readq);
lincan/src/can_quertl.c:	rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_writeq);
lincan/src/can_quertl.c:	rtl_wait_wakeup(&qends->endinfo.rtlinfo.rtl_emptyq);
lincan/src/can_quertl.c:	rtl_spin_unlock_irqrestore(&qends->endinfo.rtlinfo.rtl_lock, flags);
lincan/src/can_quertl.c:	if(delayed || !(qends->ends_flags&CAN_ENDSF_MEM_RTL)){
lincan/src/can_quertl.c: * canqueue_rtl_initialize - initialization of global RT-Linux specific features
lincan/src/can_quertl.c: * canqueue_rtl_done - finalization of glopal RT-Linux specific features
lincan/src/can_queue.c:/* can_queue.c - CAN message queues
lincan/src/can_queue.c: * Linux CAN-bus device driver.
lincan/src/can_queue.c: * New CAN queues by Pavel Pisa - OCERA team member
lincan/src/can_queue.c: * This software is released under the GPL-License.
lincan/src/can_queue.c: * Version lincan-0.3  17 Jun 2004
lincan/src/can_queue.c: * canque_fifo_flush_slots - free all ready slots from the FIFO
lincan/src/can_queue.c:	can_spin_lock_irqsave(&fifo->fifo_lock, flags);
lincan/src/can_queue.c:	slot=fifo->head;
lincan/src/can_queue.c:		*fifo->tail=fifo->flist;
lincan/src/can_queue.c:		fifo->flist=slot;
lincan/src/can_queue.c:		fifo->head=NULL;
lincan/src/can_queue.c:		fifo->tail=&fifo->head;
lincan/src/can_queue.c:	can_spin_unlock_irqrestore(&fifo->fifo_lock, flags);
lincan/src/can_queue.c: * canque_fifo_init_slots - initializes slot chain of one CAN FIFO
lincan/src/can_queue.c:	int slotsnr=fifo->slotsnr;
lincan/src/can_queue.c:	if(!fifo->entry || !slotsnr) return -1;
lincan/src/can_queue.c:	slot=fifo->entry;
lincan/src/can_queue.c:	fifo->flist=slot;
lincan/src/can_queue.c:	while(--slotsnr){
lincan/src/can_queue.c:		slot->next=slot+1;
lincan/src/can_queue.c:	slot->next=NULL;
lincan/src/can_queue.c:	fifo->head=NULL;
lincan/src/can_queue.c:	fifo->tail=&fifo->head;
lincan/src/can_queue.c:/* atomic_dec_and_test(&qedge->edge_used);
lincan/src/can_queue.c: void atomic_inc(&qedge->edge_used);
lincan/src/can_queue.c: list_for_each(edge,qends->inlist);
lincan/src/can_queue.c: * canque_get_inslot - finds one outgoing edge and allocates slot from it
lincan/src/can_queue.c: * Function looks for the first non-blocked outgoing edge in @qends structure
lincan/src/can_queue.c:	int ret=-2;
lincan/src/can_queue.c:		if(!canque_fifo_test_fl(&edge->fifo,BLOCK)){
lincan/src/can_queue.c:			ret=canque_fifo_get_inslot(&edge->fifo, slotp, cmd);
lincan/src/can_queue.c:				DEBUGQUE("canque_get_inslot cmd=%d found edge %d\n",cmd,edge->edge_num);
lincan/src/can_queue.c: * canque_get_inslot4id - finds best outgoing edge and slot for given ID
lincan/src/can_queue.c: * Function looks for the non-blocked outgoing edge accepting messages
lincan/src/can_queue.c: * The edges with non-zero mask are preferred over edges open to all messages.
lincan/src/can_queue.c:	int ret=-2;
lincan/src/can_queue.c:		if(canque_fifo_test_fl(&edge->fifo,BLOCK))
lincan/src/can_queue.c:		if((id^edge->filtid)&edge->filtmask)
lincan/src/can_queue.c:			if(bestedge->filtmask){
lincan/src/can_queue.c:				if (!edge->filtmask) continue;
lincan/src/can_queue.c:				if(edge->filtmask){
lincan/src/can_queue.c:			if(bestedge->edge_prio<edge->edge_prio){
lincan/src/can_queue.c:				if(edge->edge_prio>prio) continue;
lincan/src/can_queue.c:				if(bestedge->edge_prio<=prio) continue;
lincan/src/can_queue.c:		ret=canque_fifo_get_inslot(&edge->fifo, slotp, cmd);
lincan/src/can_queue.c:			DEBUGQUE("canque_get_inslot4id cmd=%d id=%ld prio=%d found edge %d\n",cmd,id,prio,edge->edge_num);
lincan/src/can_queue.c: * canque_put_inslot - schedules filled slot for processing
lincan/src/can_queue.c:	ret=canque_fifo_put_inslot(&qedge->fifo,slot);
lincan/src/can_queue.c:	DEBUGQUE("canque_put_inslot for edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canque_abort_inslot - aborts preparation of the message in the slot
lincan/src/can_queue.c:	ret=canque_fifo_abort_inslot(&qedge->fifo,slot);
lincan/src/can_queue.c:	DEBUGQUE("canque_abort_inslot for edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canque_filter_msg2edges - sends message into all edges which accept its ID
lincan/src/can_queue.c:			msg->id, msg->flags);
lincan/src/can_queue.c:	msgid = canque_filtid2internal(msg->id, msg->flags);
lincan/src/can_queue.c:		if(canque_fifo_test_fl(&edge->fifo,BLOCK))
lincan/src/can_queue.c:		if((msgid^edge->filtid)&edge->filtmask)
lincan/src/can_queue.c:		ret=canque_fifo_get_inslot(&edge->fifo, &slot, 0);
lincan/src/can_queue.c:			slot->msg=*msg;
lincan/src/can_queue.c:			ret=canque_fifo_put_inslot(&edge->fifo,slot);
lincan/src/can_queue.c:	DEBUGQUE("canque_filter_msg2edges sent msg ID %ld to %d edges\n",msg->id,destnr);
lincan/src/can_queue.c: * canque_test_outslot - test and retrieve ready slot for given ends
lincan/src/can_queue.c:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/src/can_queue.c:	for(prio=CANQUEUE_PRIO_NR;--prio>=0;){
lincan/src/can_queue.c:		while(!list_empty(&qends->active[prio])){
lincan/src/can_queue.c:			edge=list_entry(qends->active[prio].next,struct canque_edge_t,activepeers);
lincan/src/can_queue.c:			if(!canque_fifo_test_fl(&edge->fifo,DEAD)) {
lincan/src/can_queue.c:				if(canque_fifo_test_fl(&edge->fifo,EMPTY)) {
lincan/src/can_queue.c:					can_spin_lock(&edge->fifo.fifo_lock);
lincan/src/can_queue.c:					if(canque_fifo_test_fl(&edge->fifo,EMPTY)) {
lincan/src/can_queue.c:						canque_fifo_set_fl(&edge->fifo,INACTIVE);
lincan/src/can_queue.c:						list_del(&edge->activepeers);
lincan/src/can_queue.c:						list_add(&edge->activepeers,&qends->idle);
lincan/src/can_queue.c:						can_spin_unlock(&edge->fifo.fifo_lock);
lincan/src/can_queue.c:					can_spin_unlock(&edge->fifo.fifo_lock);
lincan/src/can_queue.c:				can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/src/can_queue.c:				DEBUGQUE("canque_test_outslot found edge %d\n",edge->edge_num);
lincan/src/can_queue.c:				ret=canque_fifo_test_outslot(&edge->fifo, slotp);
lincan/src/can_queue.c:				can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/src/can_queue.c:				can_spin_lock(&edge->fifo.fifo_lock);
lincan/src/can_queue.c:				canque_fifo_set_fl(&edge->fifo,INACTIVE);
lincan/src/can_queue.c:				list_del(&edge->activepeers);
lincan/src/can_queue.c:				list_add(&edge->activepeers,&qends->idle);
lincan/src/can_queue.c:				can_spin_unlock(&edge->fifo.fifo_lock);
lincan/src/can_queue.c:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/src/can_queue.c:	return -1;
lincan/src/can_queue.c: * canque_free_outslot - frees processed output slot
lincan/src/can_queue.c:	ret=canque_fifo_free_outslot(&qedge->fifo, slot);
lincan/src/can_queue.c:	can_spin_lock_irqsave(&qends->ends_lock, flags);
lincan/src/can_queue.c:		can_spin_lock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:		if(canque_fifo_test_fl(&qedge->fifo,EMPTY)){
lincan/src/can_queue.c:			canque_fifo_set_fl(&qedge->fifo,INACTIVE);
lincan/src/can_queue.c:			list_del(&qedge->activepeers);
lincan/src/can_queue.c:			list_add(&qedge->activepeers,&qends->idle);
lincan/src/can_queue.c:			list_del(&qedge->activepeers);
lincan/src/can_queue.c:			list_add_tail(&qedge->activepeers,&qends->active[qedge->edge_prio]);
lincan/src/can_queue.c:		can_spin_unlock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:	can_spin_unlock_irqrestore(&qends->ends_lock, flags);
lincan/src/can_queue.c:	DEBUGQUE("canque_free_outslot for edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canque_again_outslot - reschedule output slot to process it again later
lincan/src/can_queue.c: * @slot: pointer to the slot for re-processing
lincan/src/can_queue.c:	ret=canque_fifo_again_outslot(&qedge->fifo, slot);
lincan/src/can_queue.c:	DEBUGQUE("canque_again_outslot for edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canque_set_filt - sets filter for specified edge
lincan/src/can_queue.c:	can_spin_lock_irqsave(&qedge->fifo.fifo_lock,flags);
lincan/src/can_queue.c:	qedge->filtid=canque_filtid2internal(filtid, filtflags);
lincan/src/can_queue.c:	qedge->filtmask=canque_filtid2internal(filtmask, filtflags>>MSG_FILT_MASK_SHIFT);
lincan/src/can_queue.c:	if(canque_fifo_test_fl(&qedge->fifo,DEAD)) ret=-1;
lincan/src/can_queue.c:	else ret=canque_fifo_test_and_set_fl(&qedge->fifo,BLOCK)?1:0;
lincan/src/can_queue.c:	can_spin_unlock_irqrestore(&qedge->fifo.fifo_lock,flags);
lincan/src/can_queue.c:	can_spin_lock_irqsave(&qedge->fifo.fifo_lock,flags);
lincan/src/can_queue.c:	if(!ret) canque_fifo_clear_fl(&qedge->fifo,BLOCK);
lincan/src/can_queue.c:	can_spin_unlock_irqrestore(&qedge->fifo.fifo_lock,flags);
lincan/src/can_queue.c:	          qedge->edge_num,filtid,filtmask,filtflags,ret);
lincan/src/can_queue.c: * canque_flush - fluesh all ready slots in the edge
lincan/src/can_queue.c:	ret=canque_fifo_flush_slots(&qedge->fifo);
lincan/src/can_queue.c:		can_spin_lock_irqsave(&qedge->outends->ends_lock, flags);
lincan/src/can_queue.c:		can_spin_lock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:		if(canque_fifo_test_fl(&qedge->fifo,EMPTY)){
lincan/src/can_queue.c:			list_del(&qedge->activepeers);
lincan/src/can_queue.c:			list_add(&qedge->activepeers,&qedge->outends->idle);
lincan/src/can_queue.c:		can_spin_unlock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:		can_spin_unlock_irqrestore(&qedge->outends->ends_lock, flags);
lincan/src/can_queue.c:	DEBUGQUE("canque_flush for edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canqueue_ends_init_gen - subsystem independent routine to initialize ends state
lincan/src/can_queue.c:	qends->ends_flags=0;
lincan/src/can_queue.c:	for(i=CANQUEUE_PRIO_NR;--i>=0;){
lincan/src/can_queue.c:		INIT_LIST_HEAD(&qends->active[i]);
lincan/src/can_queue.c:	INIT_LIST_HEAD(&qends->idle);
lincan/src/can_queue.c:	INIT_LIST_HEAD(&qends->inlist);
lincan/src/can_queue.c:	INIT_LIST_HEAD(&qends->outlist);
lincan/src/can_queue.c:	can_spin_lock_init(&qends->ends_lock);
lincan/src/can_queue.c: * canqueue_connect_edge - connect edge between two communication entities
lincan/src/can_queue.c:	if(qedge == NULL) return -1;
lincan/src/can_queue.c:	DEBUGQUE("canqueue_connect_edge %d\n",qedge->edge_num);
lincan/src/can_queue.c:	can_spin_lock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:	qedge->inends=inends;
lincan/src/can_queue.c:	list_add(&qedge->inpeers,&inends->inlist);
lincan/src/can_queue.c:	qedge->outends=outends;
lincan/src/can_queue.c:	list_add(&qedge->outpeers,&outends->outlist);
lincan/src/can_queue.c:	list_add(&qedge->activepeers,&outends->idle);
lincan/src/can_queue.c:	can_spin_unlock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:	if(canque_fifo_test_and_set_fl(&qedge->fifo, READY))
lincan/src/can_queue.c: * canqueue_disconnect_edge - disconnect edge from communicating entities
lincan/src/can_queue.c:	inends=qedge->inends;
lincan/src/can_queue.c:	outends=qedge->outends;
lincan/src/can_queue.c:		if(inends) can_spin_lock_irqsave(&inends->ends_lock,flags);
lincan/src/can_queue.c:		if(outends) can_spin_lock(&outends->ends_lock);
lincan/src/can_queue.c:	can_spin_lock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:	if(atomic_read(&qedge->edge_used)==0) {
lincan/src/can_queue.c:		if(qedge->outends){
lincan/src/can_queue.c:			list_del(&qedge->activepeers);
lincan/src/can_queue.c:			list_del(&qedge->outpeers);
lincan/src/can_queue.c:			qedge->outends=NULL;
lincan/src/can_queue.c:		if(qedge->inends){
lincan/src/can_queue.c:			list_del(&qedge->inpeers);
lincan/src/can_queue.c:			qedge->inends=NULL;
lincan/src/can_queue.c:	} else ret=-1;
lincan/src/can_queue.c:	can_spin_unlock(&qedge->fifo.fifo_lock);
lincan/src/can_queue.c:		if(outends) can_spin_unlock(&outends->ends_lock);
lincan/src/can_queue.c:		if(inends) can_spin_unlock_irqrestore(&inends->ends_lock,flags);
lincan/src/can_queue.c:	DEBUGQUE("canqueue_disconnect_edge %d returned %d\n",qedge->edge_num,ret);
lincan/src/can_queue.c: * canqueue_block_inlist - block slot allocation of all outgoing edges of specified ends  
lincan/src/can_queue.c:		canque_fifo_set_fl(&edge->fifo,BLOCK);
lincan/src/can_queue.c: * canqueue_block_outlist - block slot allocation of all incoming edges of specified ends  
lincan/src/can_queue.c:		canque_fifo_set_fl(&edge->fifo,BLOCK);
lincan/src/can_queue.c: * canqueue_ends_kill_inlist - sends request to die to all outgoing edges
lincan/src/can_queue.c: * Return Value: Non-zero value means, that not all edges could be immediately
lincan/src/can_queue.c:			if(!canque_fifo_test_and_set_fl(&edge->fifo, FREEONEMPTY)){
lincan/src/can_queue.c:				if(!canque_fifo_test_fl(&edge->fifo, EMPTY))
lincan/src/can_queue.c:				if(!canque_fifo_test_and_clear_fl(&edge->fifo, FREEONEMPTY))
lincan/src/can_queue.c:	return list_empty(&qends->inlist)?0:1;
lincan/src/can_queue.c: * canqueue_ends_kill_outlist - sends request to die to all incoming edges
lincan/src/can_queue.c: * Return Value: Non-zero value means, that not all edges could be immediately
lincan/src/can_queue.c:	return list_empty(&qends->outlist)?0:1;
lincan/src/can_queue.c: * canqueue_ends_filt_conjuction - computes conjunction of incoming edges filters filters
lincan/src/can_queue.c:		if(edge->filtid & edge->filtmask & local_only)
lincan/src/can_queue.c:			filtid = edge->filtid;
lincan/src/can_queue.c:			filtmask &= ~(filtid ^ edge->filtid);
lincan/src/can_queue.c:		filtmask &= edge->filtmask;
lincan/src/can_queue.c:	filt->id = filtid & MSG_ID_MASK;
lincan/src/can_queue.c:	filt->mask = filtmask & MSG_ID_MASK;
lincan/src/can_queue.c:	filt->flags = filtid & MSG_EXT;
lincan/src/can_queue.c:		filt->flags |= MSG_EXT_MASK;
lincan/src/can_queue.c:		filt->flags |= MSG_RTR<<1;
lincan/src/can_queue.c:		filt->flags |= MSG_RTR_MASK;
lincan/src/can_queue.c: * canqueue_ends_flush_inlist - flushes all messages in incoming edges
lincan/src/can_queue.c: * canqueue_ends_flush_outlist - flushes all messages in outgoing edges
lincan/src/cc_can104.c: * Linux CAN-bus device driver.
lincan/src/cc_can104.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/cc_can104.c: * This software is released under the GPL-License.
lincan/src/cc_can104.c: * Version lincan-0.3  17 Jun 2004
lincan/src/cc_can104.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/cc_can104.c: * template_request_io: - reserve io or memory range for can board
lincan/src/cc_can104.c: * The function template_request_io() is used to reserve the io-memory. If your
lincan/src/cc_can104.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/cc_can104.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/cc_can104.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/cc_can104.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/cc_can104.c:		return -ENODEV;
lincan/src/cc_can104.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/cc_can104.c: * template_elease_io - free reserved io memory range
lincan/src/cc_can104.c: * The function template_release_io() is used to free reserved io-memory.
lincan/src/cc_can104.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/cc_can104.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/cc_can104.c: * template_reset - hardware reset routine
lincan/src/cc_can104.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/cc_can104.c: * template_init_hw_data - Initialize hardware cards
lincan/src/cc_can104.c: * structure containing information about the installed CAN-board.
lincan/src/cc_can104.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/cc_can104.c:	candev->res_addr=RESET_ADDR;
lincan/src/cc_can104.c:	candev->nr_82527_chips=0;
lincan/src/cc_can104.c:	candev->nr_sja1000_chips=1;
lincan/src/cc_can104.c:        candev->nr_all_chips=1;
lincan/src/cc_can104.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/cc_can104.c: * template_init_chip_data - Initialize chips
lincan/src/cc_can104.c:	sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/cc_can104.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/cc_can104.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/cc_can104.c:	candev->chip[chipnr]->flags = 0;
lincan/src/cc_can104.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/cc_can104.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |
lincan/src/cc_can104.c: * template_init_obj_data - Initialize message buffers
lincan/src/cc_can104.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/cc_can104.c: * template_program_irq - program interrupts
lincan/src/cc_can104.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/cc_can104.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/cc_can104.c: * template_write_register - Low level write register routine
lincan/src/cc_can104.c: * template_read_register - Low level read register routine
lincan/src/cc_can104.c:	hwspecops->request_io = cc104_request_io;
lincan/src/cc_can104.c:	hwspecops->release_io = cc104_release_io;
lincan/src/cc_can104.c:	hwspecops->reset = cc104_reset;
lincan/src/cc_can104.c:	hwspecops->init_hw_data = cc104_init_hw_data;
lincan/src/cc_can104.c:	hwspecops->init_chip_data = cc104_init_chip_data;
lincan/src/cc_can104.c:	hwspecops->init_obj_data = cc104_init_obj_data;
lincan/src/cc_can104.c:	hwspecops->write_register = cc104_write_register;
lincan/src/cc_can104.c:	hwspecops->read_register = cc104_read_register;
lincan/src/cc_can104.c:	hwspecops->program_irq = cc104_program_irq;
lincan/src/close.c: * Linux CAN-bus device driver.
lincan/src/close.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/close.c: * This software is released under the GPL-License.
lincan/src/close.c: * Version lincan-0.3  17 Jun 2004
lincan/src/close.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/close.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/close.c:		return -ENODEV;
lincan/src/close.c:	obj = canuser->msgobj;
lincan/src/close.c:	qends = canuser->qends;
lincan/src/close.c:	can_fasync(-1, file, 0);
lincan/src/close.c:	list_del(&canuser->peers);
lincan/src/close.c:	canuser->qends = NULL;
lincan/src/close.c:	canqueue_ends_dispose_kern(qends, file->f_flags & O_SYNC);
lincan/src/close.c:	if(atomic_dec_and_test(&obj->obj_used)){
lincan/src/close_rtl.c: * Linux CAN-bus device driver.
lincan/src/close_rtl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/close_rtl.c: * This software is released under the GPL-License.
lincan/src/close_rtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/close_rtl.c:	obj = canuser->msgobj;
lincan/src/close_rtl.c:	qends = canuser->qends;
lincan/src/close_rtl.c:	list_del(&canuser->peers);
lincan/src/close_rtl.c:	canuser->qends = NULL;
lincan/src/close_rtl.c:	if(atomic_dec_and_test(&obj->obj_used)){
lincan/src/close_rtl.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/close_rtl.c:		return -ENODEV;
lincan/src/close_rtl.c:	ret=can_release_rtl_common(canuser, fptr->f_flags);
lincan/src/devcommon.c:/* devcommon.c - common device code
lincan/src/devcommon.c: * Linux CAN-bus device driver.
lincan/src/devcommon.c: * New CAN queues by Pavel Pisa - OCERA team member
lincan/src/devcommon.c: * This software is released under the GPL-License.
lincan/src/devcommon.c: * Version lincan-0.3  17 Jun 2004
lincan/src/devcommon.c:	if(qends->endinfo.chipinfo.worker_thread){
lincan/src/devcommon.c:		pthread_kill(qends->endinfo.chipinfo.worker_thread,RTL_SIGNAL_WAKEUP);
lincan/src/devcommon.c:		set_bit(MSGOBJ_TX_REQUEST_b,&chip->pend_flags);
lincan/src/devcommon.c:		if(chip->worker_thread) {
lincan/src/devcommon.c:			set_bit(MSGOBJ_WORKER_WAKE_b,&chip->pend_flags);
lincan/src/devcommon.c:			pthread_kill(chip->worker_thread,RTL_SIGNAL_WAKEUP);
lincan/src/devcommon.c: * canqueue_notify_chip - notification callback handler for CAN chips ends of queues
lincan/src/devcommon.c: * The function can be called from kernel context or RT-Linux thread context
lincan/src/devcommon.c: * for mixed mode Linux/RT-Linux compilation.
lincan/src/devcommon.c:	struct canchip_t *chip=qends->endinfo.chipinfo.chip;
lincan/src/devcommon.c:	struct msgobj_t *obj=qends->endinfo.chipinfo.msgobj;
lincan/src/devcommon.c:	DEBUGMSG("canqueue_notify_chip for edge %d and event %d\n",qedge->edge_num,what);
lincan/src/devcommon.c:			wake_up(&qends->endinfo.chipinfo.daemonq);
lincan/src/devcommon.c:			/*wake_up(&qends->endinfo.chipinfo.daemonq);*/
lincan/src/devcommon.c:			chip->chipspecops->wakeup_tx(chip, obj);
lincan/src/devcommon.c:			if(canque_fifo_test_and_clear_fl(&qedge->fifo, READY))
lincan/src/devcommon.c:			if(!chip->chipspecops->filtch_rq)
lincan/src/devcommon.c:			chip->chipspecops->filtch_rq(chip, obj);
lincan/src/devcommon.c: * canqueue_ends_init_chip - CAN chip specific ends initialization
lincan/src/devcommon.c:	qends->context=NULL;
lincan/src/devcommon.c:	init_waitqueue_head(&qends->endinfo.chipinfo.daemonq);
lincan/src/devcommon.c:	qends->endinfo.chipinfo.chip=chip;
lincan/src/devcommon.c:	qends->endinfo.chipinfo.msgobj=obj;
lincan/src/devcommon.c:	qends->notify=canqueue_notify_chip;
lincan/src/devcommon.c: * canqueue_ends_done_chip - finalizing of the ends structure for CAN chips
lincan/src/eb8245.c: * Linux CAN-bus device driver.
lincan/src/eb8245.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/eb8245.c: * This software is released under the GPL-License.
lincan/src/eb8245.c: * Version lincan-0.3  17 Jun 2004
lincan/src/eb8245.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/eb8245.c: * eb8245_request_io: - reserve io or memory range for can board
lincan/src/eb8245.c: * The function eb8245_request_io() is used to reserve the io-memory. If your
lincan/src/eb8245.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/eb8245.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/eb8245.c:	if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME " - eb8245")) {
lincan/src/eb8245.c:		CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr);
lincan/src/eb8245.c:		return -ENODEV;
lincan/src/eb8245.c:	if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/eb8245.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/eb8245.c:		can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/eb8245.c:		return -ENODEV;
lincan/src/eb8245.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/eb8245.c: * eb8245_release_io - free reserved io memory range
lincan/src/eb8245.c: * The function eb8245_release_io() is used to free reserved io-memory.
lincan/src/eb8245.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/eb8245.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/eb8245.c:	can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/eb8245.c: * eb8245_reset - hardware reset routine
lincan/src/eb8245.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/eb8245.c:	struct canchip_t *chip=candev->chip[0];
lincan/src/eb8245.c:	eb8245_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/eb8245.c:	cdr=eb8245_read_register(chip->chip_base_addr+SJACDR);
lincan/src/eb8245.c:	eb8245_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/eb8245.c:	eb8245_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/eb8245.c:	eb8245_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/eb8245.c:	while (eb8245_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/eb8245.c:		if(!i--) return -ENODEV;
lincan/src/eb8245.c:		eb8245_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/eb8245.c:	cdr=eb8245_read_register(chip->chip_base_addr+SJACDR);
lincan/src/eb8245.c:	eb8245_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/eb8245.c:	eb8245_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/eb8245.c: * eb8245_init_hw_data - Initialize hardware cards
lincan/src/eb8245.c: * structure containing information about the installed CAN-board.
lincan/src/eb8245.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/eb8245.c:	candev->res_addr=RESET_ADDR;
lincan/src/eb8245.c:	candev->nr_82527_chips=0;
lincan/src/eb8245.c:	candev->nr_sja1000_chips=1;
lincan/src/eb8245.c:	candev->nr_all_chips=1;
lincan/src/eb8245.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/eb8245.c: * eb8245_init_chip_data - Initialize chips
lincan/src/eb8245.c:	/*sja1000_fill_chipspecops(candev->chip[chipnr]);*/
lincan/src/eb8245.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/eb8245.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/eb8245.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/eb8245.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/eb8245.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/eb8245.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/eb8245.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | sjaOCR_TX0_LH;
lincan/src/eb8245.c: * eb8245_init_obj_data - Initialize message buffers
lincan/src/eb8245.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/eb8245.c: * eb8245_program_irq - program interrupts
lincan/src/eb8245.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/eb8245.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/eb8245.c: * eb8245_write_register - Low level write register routine
lincan/src/eb8245.c: * eb8245_read_register - Low level read register routine
lincan/src/eb8245.c:	hwspecops->request_io = eb8245_request_io;
lincan/src/eb8245.c:	hwspecops->release_io = eb8245_release_io;
lincan/src/eb8245.c:	hwspecops->reset = eb8245_reset;
lincan/src/eb8245.c:	hwspecops->init_hw_data = eb8245_init_hw_data;
lincan/src/eb8245.c:	hwspecops->init_chip_data = eb8245_init_chip_data;
lincan/src/eb8245.c:	hwspecops->init_obj_data = eb8245_init_obj_data;
lincan/src/eb8245.c:	hwspecops->write_register = eb8245_write_register;
lincan/src/eb8245.c:	hwspecops->read_register = eb8245_read_register;
lincan/src/eb8245.c:	hwspecops->program_irq = eb8245_program_irq;
lincan/src/ems_cpcpci.c:/* ems_cpcpci.c - support for EMS-WUENSCHE CPC-PCI card
lincan/src/ems_cpcpci.c: * Linux CAN-bus device driver.
lincan/src/ems_cpcpci.c: * This software is released under the GPL-License.
lincan/src/ems_cpcpci.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ems_cpcpci.c:/* the only one supported: EMS CPC-PCI */
lincan/src/ems_cpcpci.c:/*The Infineon PSB4610 PITA-2 is used as PCI to local bus bridge*/
lincan/src/ems_cpcpci.c:/*BAR0 - MEM - bridge control registers*/
lincan/src/ems_cpcpci.c:/*BAR1 - MEM - parallel interface*/
lincan/src/ems_cpcpci.c:/*PSB4610 PITA-2 bridge control registers*/   
lincan/src/ems_cpcpci.c:  This means  normal output mode , push-pull and the correct polarity. 
lincan/src/ems_cpcpci.c:	writel(0, candev->dev_base_addr + PITA2_ICR);
lincan/src/ems_cpcpci.c:	writel(PITA2_ICR_INT0_En, candev->dev_base_addr + PITA2_ICR);
lincan/src/ems_cpcpci.c:	if(pci_request_region(candev->sysdevptr.pcidev, 0, "ems_cpcpci_pita2") != 0){
lincan/src/ems_cpcpci.c:		return -ENODEV;
lincan/src/ems_cpcpci.c:	}else if(pci_request_region(candev->sysdevptr.pcidev, 1, "ems_cpcpci_io") != 0){
lincan/src/ems_cpcpci.c:	if(pci_request_regions(candev->sysdevptr.pcidev, "EMS_CPCPCI") != 0){
lincan/src/ems_cpcpci.c:		return -ENODEV;
lincan/src/ems_cpcpci.c:	pita2_addr=pci_resource_start(candev->sysdevptr.pcidev,0);
lincan/src/ems_cpcpci.c:	if (!(candev->dev_base_addr = (long) ioremap(pita2_addr, 
lincan/src/ems_cpcpci.c:	      pci_resource_len(candev->sysdevptr.pcidev,0)))) {
lincan/src/ems_cpcpci.c:	io_addr=pci_resource_start(candev->sysdevptr.pcidev,1);;
lincan/src/ems_cpcpci.c:	if (!(candev->io_addr = (long) ioremap(io_addr,
lincan/src/ems_cpcpci.c:	      pci_resource_len(candev->sysdevptr.pcidev,1)))) {
lincan/src/ems_cpcpci.c:	candev->res_addr=candev->io_addr;
lincan/src/ems_cpcpci.c:	for(i=0;i<candev->nr_all_chips;i++) {
lincan/src/ems_cpcpci.c:		struct canchip_t *chip=candev->chip[i];
lincan/src/ems_cpcpci.c:		chip->chip_base_addr = candev->io_addr+
lincan/src/ems_cpcpci.c:		if(!chip->msgobj[0]) continue;
lincan/src/ems_cpcpci.c:		chip->msgobj[0]->obj_base_addr=chip->chip_base_addr;
lincan/src/ems_cpcpci.c:	/* Configure PITA-2 parallel interface */
lincan/src/ems_cpcpci.c:	writel(PITA2_MISC_CONFIG, candev->dev_base_addr + PITA2_MISC);
lincan/src/ems_cpcpci.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/ems_cpcpci.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/ems_cpcpci.c:	pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/ems_cpcpci.c:	pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/ems_cpcpci.c:	return -ENODEV;
lincan/src/ems_cpcpci.c:	iounmap((void*)candev->io_addr);
lincan/src/ems_cpcpci.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/ems_cpcpci.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/ems_cpcpci.c:	pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/ems_cpcpci.c:	pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/ems_cpcpci.c:	address += ((address&(EMS_CPCPCI_BYTES_PER_CIRCUIT-1))
lincan/src/ems_cpcpci.c:	                    *(EMS_CPCPCI_BYTES_PER_REG-1));
lincan/src/ems_cpcpci.c:	address += ((address&(EMS_CPCPCI_BYTES_PER_CIRCUIT-1))
lincan/src/ems_cpcpci.c:	                    *(EMS_CPCPCI_BYTES_PER_REG-1));
lincan/src/ems_cpcpci.c:	struct candevice_t *candev=chip->hostdevice;
lincan/src/ems_cpcpci.c:	icr=readl(candev->dev_base_addr + PITA2_ICR);
lincan/src/ems_cpcpci.c:	/* correct way to handle interrupts from all chips connected to the one PITA-2 */
lincan/src/ems_cpcpci.c:		writel(PITA2_ICR_INT0_En | PITA2_ICR_INT0, candev->dev_base_addr + PITA2_ICR);
lincan/src/ems_cpcpci.c:		for(i=0;i<candev->nr_all_chips;i++){
lincan/src/ems_cpcpci.c:			chip=candev->chip[i];
lincan/src/ems_cpcpci.c:			if(!chip || !(chip->flags&CHIP_CONFIGURED))
lincan/src/ems_cpcpci.c:		icr=readl(candev->dev_base_addr + PITA2_ICR);
lincan/src/ems_cpcpci.c:	/* Assert PTADR# - we're in passive mode so the other bits are not important */
lincan/src/ems_cpcpci.c:	for(chip_nr=0;chip_nr<candev->nr_all_chips;chip_nr++){
lincan/src/ems_cpcpci.c:		if(!candev->chip[chip_nr]) continue;
lincan/src/ems_cpcpci.c:		chip=candev->chip[chip_nr];
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/ems_cpcpci.c:		cdr=ems_cpcpci_read_register(chip->chip_base_addr+SJACDR);
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/ems_cpcpci.c:		while (ems_cpcpci_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/ems_cpcpci.c:			if(!i--) return -ENODEV;
lincan/src/ems_cpcpci.c:			ems_cpcpci_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/ems_cpcpci.c:		cdr=ems_cpcpci_read_register(chip->chip_base_addr+SJACDR);
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/ems_cpcpci.c:		ems_cpcpci_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/ems_cpcpci.c:		ems_cpcpci_read_register(chip->chip_base_addr+SJAIR);
lincan/src/ems_cpcpci.c:	if(pcidev == NULL) return -ENODEV;
lincan/src/ems_cpcpci.c:		return -EIO;
lincan/src/ems_cpcpci.c:	candev->sysdevptr.pcidev=pcidev;
lincan/src/ems_cpcpci.c:			return -EIO;
lincan/src/ems_cpcpci.c:		return -ENODEV;
lincan/src/ems_cpcpci.c:	/*** candev->dev_base_addr=pci_resource_start(pcidev,0); ***/
lincan/src/ems_cpcpci.c:	/*** candev->io_addr=pci_resource_start(pcidev,1); ***/
lincan/src/ems_cpcpci.c:	/*candev->flags |= CANDEV_PROGRAMMABLE_IRQ;*/
lincan/src/ems_cpcpci.c:		l|=readb(candev->io_addr + i*4);
lincan/src/ems_cpcpci.c:	i=readb(candev->io_addr + i*5);
lincan/src/ems_cpcpci.c:	CANMSG("EMS CPC-PCI check value %04lx, ID %d\n", l, i);
lincan/src/ems_cpcpci.c:		CANMSG("EMS CPC-PCI unexpected check values\n");
lincan/src/ems_cpcpci.c:	/*if (!strcmp(candev->hwname,"ems_cpcpci"))*/
lincan/src/ems_cpcpci.c:	candev->nr_82527_chips=0;
lincan/src/ems_cpcpci.c:	candev->nr_sja1000_chips=2;
lincan/src/ems_cpcpci.c:	candev->nr_all_chips=2;
lincan/src/ems_cpcpci.c:	if(candev->sysdevptr.pcidev==NULL)
lincan/src/ems_cpcpci.c:		return -ENODEV;
lincan/src/ems_cpcpci.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/ems_cpcpci.c:	/* special version of the IRQ handler is required for CPC-PCI board */
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->chipspecops->irq_handler=ems_cpcpci_irq_handler;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->chip_irq=candev->sysdevptr.pcidev->irq;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->chip_base_addr = candev->io_addr+
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->flags = 0;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | 7;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->sja_ocr_reg = EMS_CPCPCI_OCR_DEFAULT_STD;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/ems_cpcpci.c:	candev->chip[chipnr]->flags |= CHIP_IRQ_PCI;
lincan/src/ems_cpcpci.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/ems_cpcpci.c:	hwspecops->request_io = ems_cpcpci_request_io;
lincan/src/ems_cpcpci.c:	hwspecops->release_io = ems_cpcpci_release_io;
lincan/src/ems_cpcpci.c:	hwspecops->reset = ems_cpcpci_reset;
lincan/src/ems_cpcpci.c:	hwspecops->init_hw_data = ems_cpcpci_init_hw_data;
lincan/src/ems_cpcpci.c:	hwspecops->init_chip_data = ems_cpcpci_init_chip_data;
lincan/src/ems_cpcpci.c:	hwspecops->init_obj_data = ems_cpcpci_init_obj_data;
lincan/src/ems_cpcpci.c:	hwspecops->write_register = ems_cpcpci_write_register;
lincan/src/ems_cpcpci.c:	hwspecops->read_register = ems_cpcpci_read_register;
lincan/src/ems_cpcpci.c:	hwspecops->program_irq = ems_cpcpci_program_irq;
lincan/src/fasync.c: * Linux CAN-bus device driver.
lincan/src/fasync.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/fasync.c: * This software is released under the GPL-License.
lincan/src/fasync.c: * Version lincan-0.3  17 Jun 2004
lincan/src/fasync.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/fasync.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/fasync.c:		return -ENODEV;
lincan/src/fasync.c:	qends = canuser->qends;
lincan/src/fasync.c:	retval = fasync_helper(fd, file, on, &qends->endinfo.fileinfo.fasync);
lincan/src/finish.c:/* finish.c - finalization of the driver operation
lincan/src/finish.c: * Linux CAN-bus device driver.
lincan/src/finish.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/finish.c: * This software is released under the GPL-License.
lincan/src/finish.c: * Version lincan-0.3  17 Jun 2004
lincan/src/finish.c: * msgobj_done - destroys one CAN message object
lincan/src/finish.c:	if(obj->qends) {
lincan/src/finish.c:		delayed=canqueue_ends_done_chip(obj->qends);
lincan/src/finish.c:	if((obj->hostchip) && (obj->object>0)) {
lincan/src/finish.c:		if(obj->hostchip->msgobj[obj->object-1] == obj)
lincan/src/finish.c:			obj->hostchip->msgobj[obj->object-1]=NULL;
lincan/src/finish.c:		obj->hostchip=NULL;
lincan/src/finish.c:	if((obj->minor>=0)) {
lincan/src/finish.c:		if(objects_p[obj->minor] == obj)
lincan/src/finish.c:			objects_p[obj->minor] = NULL;
lincan/src/finish.c:	del_timer_sync(&obj->tx_timeout);
lincan/src/finish.c:	if(obj->qends) {
lincan/src/finish.c:			can_checked_free(obj->qends);
lincan/src/finish.c:	obj->qends=NULL;
lincan/src/finish.c: * canchip_done - destroys one CAN chip representation
lincan/src/finish.c:	if(chip->flags & CHIP_ATTACHED)
lincan/src/finish.c:		chip->chipspecops->release_chip(chip);
lincan/src/finish.c:	if((chip->hostdevice) && (chip->chip_idx>=0)) {
lincan/src/finish.c:		if(chip->hostdevice->chip[chip->chip_idx] == chip)
lincan/src/finish.c:			chip->hostdevice->chip[chip->chip_idx] = NULL;
lincan/src/finish.c:	can_synchronize_irq(chip->chip_irq);
lincan/src/finish.c:  	for(i=0; i<chip->max_objects; i++){
lincan/src/finish.c:		if((obj=chip->msgobj[i])==NULL)
lincan/src/finish.c:	can_checked_free(chip->chipspecops);
lincan/src/finish.c:	chip->chipspecops=NULL;
lincan/src/finish.c: * candevice_done - destroys representation of one CAN device/board
lincan/src/finish.c:  	for(i=0; i<candev->nr_all_chips; i++){
lincan/src/finish.c:		if((chip=candev->chip[i])==NULL)
lincan/src/finish.c:	if(candev->flags & CANDEV_IO_RESERVED) {
lincan/src/finish.c:		candev->hwspecops->release_io(candev);
lincan/src/finish.c:		candev->flags &= ~CANDEV_IO_RESERVED;
lincan/src/finish.c:	can_checked_free(candev->hwspecops);
lincan/src/finish.c:	candev->hwspecops=NULL;
lincan/src/finish.c: * candevice_done - destroys representation of all CAN devices/boards
lincan/src/finish.c:  	for(i=0; i<canhw->nr_boards; i++){
lincan/src/finish.c:		if((candev=canhw->candevice[i])==NULL)
lincan/src/hms30c7202_can.c:/* hms30c7202_can.c - Hynix HMS30c7202 ARM device specific code
lincan/src/hms30c7202_can.c: * Linux CAN-bus device driver.
lincan/src/hms30c7202_can.c: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/src/hms30c7202_can.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/hms30c7202_can.c: * This software is released under the GPL-License.
lincan/src/hms30c7202_can.c: * Version lincan-0.3  17 Jun 2004
lincan/src/hms30c7202_can.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/hms30c7202_can.c: * hms30c7202_request_io: - reserve io or memory range for can board
lincan/src/hms30c7202_can.c: * The function hms30c7202_request_io() is used to reserve the io-memory. If your
lincan/src/hms30c7202_can.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/hms30c7202_can.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/hms30c7202_can.c:	DEBUGMSG("(c%d)calling hms30c7202_request_io(...)\n", candev->chip[0]->chip_idx);
lincan/src/hms30c7202_can.c:	if(!can_request_mem_region(candev->io_addr, IO_RANGE, DEVICE_NAME )) {
lincan/src/hms30c7202_can.c:		(unsigned long)candev->io_addr );
lincan/src/hms30c7202_can.c:	if (!( candev->dev_base_addr = (long)ioremap( candev->io_addr, IO_RANGE ))) {
lincan/src/hms30c7202_can.c:		DEBUGMSG( "Failed to map IO-memory: 0x%lx - 0x%lx, mapped to 0x%lx\n",
lincan/src/hms30c7202_can.c:			(unsigned long)candev->io_addr,
lincan/src/hms30c7202_can.c:			(unsigned long)candev->io_addr + IO_RANGE - 1,
lincan/src/hms30c7202_can.c:			(unsigned long)candev->dev_base_addr);
lincan/src/hms30c7202_can.c:		can_release_mem_region(candev->io_addr, IO_RANGE);
lincan/src/hms30c7202_can.c:		return -ENODEV;
lincan/src/hms30c7202_can.c:		DEBUGMSG( "Mapped IO-memory: 0x%lx - 0x%lx, mapped to 0x%lx\n",
lincan/src/hms30c7202_can.c:			(unsigned long)candev->io_addr,
lincan/src/hms30c7202_can.c:			(unsigned long)candev->io_addr + IO_RANGE - 1,
lincan/src/hms30c7202_can.c:			(unsigned long)candev->dev_base_addr);
lincan/src/hms30c7202_can.c:	candev->chip[0]->chip_base_addr=candev->dev_base_addr;
lincan/src/hms30c7202_can.c:	//pchip->write_register(0, pchip->vbase_addr + CCCR);
lincan/src/hms30c7202_can.c:	//DEBUGMSG("C-CAN Control Register : 0x%.4lx\n",
lincan/src/hms30c7202_can.c:	//	(unsigned long)(c_can_read_reg_w( pchip->vbase_addr + CCCR)));
lincan/src/hms30c7202_can.c:	candev->chip[0]->chipspecops->start_chip(candev->chip[0]);
lincan/src/hms30c7202_can.c:	//DEBUGMSG("C-CAN Control Register : 0x%.4lx\n",
lincan/src/hms30c7202_can.c:	//	(unsigned long)(c_can_read_reg_w( pchip->vbase_addr + CCCR)));
lincan/src/hms30c7202_can.c: * hms30c7202_release_io - free reserved io memory range
lincan/src/hms30c7202_can.c: * The function hms30c7202_release_io() is used to free reserved io-memory.
lincan/src/hms30c7202_can.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/hms30c7202_can.c:	tempReg = c_can_read_reg_w(candev->chip[0], CCCR);
lincan/src/hms30c7202_can.c:	c_can_config_irqs(candev->chip[0], 0);
lincan/src/hms30c7202_can.c:			pchip->vbase_addr +
lincan/src/hms30c7202_can.c:			pchip->vbase_addr +
lincan/src/hms30c7202_can.c:	// power down HMS30c7202 - C_CAN
lincan/src/hms30c7202_can.c:	candev->chip[0]->chipspecops->stop_chip(candev->chip[0]);
lincan/src/hms30c7202_can.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/hms30c7202_can.c:	can_release_mem_region(candev->io_addr, IO_RANGE);
lincan/src/hms30c7202_can.c: * hms30c7202_reset - hardware reset routine
lincan/src/hms30c7202_can.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/hms30c7202_can.c:	struct canchip_t *pchip = candev->chip[0];
lincan/src/hms30c7202_can.c:	enableTest = pchip->chipspecops->enable_configuration(pchip);
lincan/src/hms30c7202_can.c:	disableTest = pchip->chipspecops->disable_configuration(pchip);
lincan/src/hms30c7202_can.c:		return -ENODEV;
lincan/src/hms30c7202_can.c:		return -ENODEV;
lincan/src/hms30c7202_can.c:	//pchip->config_irqs(pchip, CR_MIE | CR_SIE | CR_EIE);
lincan/src/hms30c7202_can.c: * hms30c7202_init_hw_data - Initialize hardware cards
lincan/src/hms30c7202_can.c: * structure containing information about the installed CAN-board.
lincan/src/hms30c7202_can.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/hms30c7202_can.c:	u32 baseaddr=candev->io_addr;
lincan/src/hms30c7202_can.c:	//		return -EIO;
lincan/src/hms30c7202_can.c:		return -EIO;
lincan/src/hms30c7202_can.c:		//   DEBUGMSG( "Mapped Interrupt Controller IO-memory: 0x%lx - 0x%lx to 0x%lx\n",
lincan/src/hms30c7202_can.c:		DEBUGMSG( "Mapped GPIO IO-memory: 0x%lx - 0x%lx to 0x%lx\n",
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read GPIO-C Enable Register : 0x%.4lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read changed GPIO-C Enable Register : 0x%.4lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read GPIO-C Direction Register : 0x%.4lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read changed GPIO-C Direction Register : 0x%.4lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read GPIO-E Enable Register : 0x%.8lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read changed GPIO-E Enable Register : 0x%.8lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read GPIO-E Direction Register : 0x%.8lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:		DEBUGMSG("Read changed GPIO-E Direction Register : 0x%.8lx\n",(long)tempReg);
lincan/src/hms30c7202_can.c:	//	DEBUGMSG( "Unmapped Interrupt Controller IO-memory: 0x%lx\n",
lincan/src/hms30c7202_can.c:	DEBUGMSG( "Unmapped GPIO IO-memory: 0x%lx\n",
lincan/src/hms30c7202_can.c:	//  pcandev->pchip[ 0 ]->powner = pcandev;
lincan/src/hms30c7202_can.c:	/*pchip->ntype = CAN_CHIPTYPE_C_CAN;*/
lincan/src/hms30c7202_can.c:	candev->nr_82527_chips=0;
lincan/src/hms30c7202_can.c:	candev->nr_sja1000_chips=0;
lincan/src/hms30c7202_can.c:	candev->nr_all_chips=NR_C_CAN;
lincan/src/hms30c7202_can.c: * hms30c7202_init_chip_data - Initialize chips
lincan/src/hms30c7202_can.c:	c_can_fill_chipspecops(candev->chip[chipnr]);
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->max_objects = NR_MSGOBJ;
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->clock = 16000000/2;
lincan/src/hms30c7202_can.c:	/*candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->sja_cdr_reg = 0x0;
lincan/src/hms30c7202_can.c:	candev->chip[chipnr]->sja_ocr_reg = 0x0;*/
lincan/src/hms30c7202_can.c: * hms30c7202_init_obj_data - Initialize message buffers
lincan/src/hms30c7202_can.c:	DEBUGMSG("(c%d)calling hms30c7202_init_obj_data( ...)\n", chip->chip_idx);
lincan/src/hms30c7202_can.c:	chip->msgobj[objnr]->obj_base_addr=0;
lincan/src/hms30c7202_can.c: * hms30c7202_write_register - Low level write register routine
lincan/src/hms30c7202_can.c: * hms30c7202_read_register - Low level read register routine
lincan/src/hms30c7202_can.c: * hms30c7202_program_irq - program interrupts
lincan/src/hms30c7202_can.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/hms30c7202_can.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/hms30c7202_can.c:	hwspecops->request_io = hms30c7202_request_io;
lincan/src/hms30c7202_can.c:	hwspecops->release_io = hms30c7202_release_io;
lincan/src/hms30c7202_can.c:	hwspecops->reset = hms30c7202_reset;
lincan/src/hms30c7202_can.c:	hwspecops->init_hw_data = hms30c7202_init_hw_data;
lincan/src/hms30c7202_can.c:	hwspecops->init_chip_data = hms30c7202_init_chip_data;
lincan/src/hms30c7202_can.c:	hwspecops->init_obj_data = hms30c7202_init_obj_data;
lincan/src/hms30c7202_can.c:	hwspecops->write_register = hms30c7202_write_register;
lincan/src/hms30c7202_can.c:	hwspecops->read_register = hms30c7202_read_register;
lincan/src/hms30c7202_can.c:	hwspecops->program_irq = hms30c7202_program_irq;
lincan/src/i82527.c: * Linux CAN-bus device driver.
lincan/src/i82527.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/i82527.c: * This software is released under the GPL-License.
lincan/src/i82527.c: * Version lincan-0.3  17 Jun 2004
lincan/src/i82527.c:	if((address > 0xf) && (chip->flags & CHIP_SEGMENTED))
lincan/src/i82527.c:		canobj_write_reg(chip, chip->msgobj[(address>>4)-1],data, address & 0xf);
lincan/src/i82527.c:	if((address > 0xf) && (chip->flags & CHIP_SEGMENTED))
lincan/src/i82527.c:		return canobj_read_reg(chip, chip->msgobj[(address>>4)-1], address & 0xf);
lincan/src/i82527.c:	can_write_reg(chip,chip->int_cpu_reg,iCPU); // Configure cpu interface
lincan/src/i82527.c:	i82527_seg_write_reg(chip,chip->int_clk_reg,iCLK); // Set clock out slew rates 
lincan/src/i82527.c:	i82527_seg_write_reg(chip,chip->int_bus_reg,iBUS); /* Bus configuration */
lincan/src/i82527.c:	canobj_write_reg(chip,chip->msgobj[1],0x25,iMSGDAT1);
lincan/src/i82527.c:	canobj_write_reg(chip,chip->msgobj[2],0x52,iMSGDAT3);
lincan/src/i82527.c:	canobj_write_reg(chip,chip->msgobj[10],0xc3,iMSGDAT6);
lincan/src/i82527.c:	if ( (canobj_read_reg(chip,chip->msgobj[1],iMSGDAT1) != 0x25) ||
lincan/src/i82527.c:	      (canobj_read_reg(chip,chip->msgobj[2],iMSGDAT3) != 0x52) ||
lincan/src/i82527.c:	      (canobj_read_reg(chip,chip->msgobj[10],iMSGDAT6) != 0xc3) ) {
lincan/src/i82527.c:		return -1;
lincan/src/i82527.c:	if (chip->baudrate == 0)
lincan/src/i82527.c:		chip->baudrate=1000000;
lincan/src/i82527.c:	if (i82527_baud_rate(chip,chip->baudrate,chip->clock,0,75,0)) {
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c: * param sjw synchronization jump width (0-3) prescaled clock cycles
lincan/src/i82527.c: * param sampl_pt sample point in % (0-100) sets (TSEG1+2)/(TSEG1+TSEG2+3) ratio
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:	if(chip->int_cpu_reg & iCPU_DSC)
lincan/src/i82527.c:		error = rate - clock/(brp*(1+tseg/2));
lincan/src/i82527.c:			error = -error;
lincan/src/i82527.c:			best_brp = brp-1;
lincan/src/i82527.c:		return -EINVAL;
lincan/src/i82527.c:	tseg2 = best_tseg-(sampl_pt*(best_tseg+1))/100;
lincan/src/i82527.c:	tseg1 = best_tseg-tseg2-2;
lincan/src/i82527.c:		tseg2 = best_tseg-tseg1-2;
lincan/src/i82527.c:					(100*(best_tseg-tseg2)/(best_tseg+1)));
lincan/src/i82527.c:	for (i=0; i<chip->max_objects; i++) {
lincan/src/i82527.c:		obj=chip->msgobj[i];
lincan/src/i82527.c:	unsigned long id=obj->rx_preconfig_id;
lincan/src/i82527.c:	DEBUGMSG("i82527_pre_read_config: configured obj at 0x%08lx\n",obj->obj_base_addr);
lincan/src/i82527.c:	len = msg->length;
lincan/src/i82527.c:	if (extended || (msg->flags&MSG_EXT)) {
lincan/src/i82527.c:		id0 = (unsigned char) (msg->id<<3);
lincan/src/i82527.c:		id1 = (unsigned char) (msg->id>>5);
lincan/src/i82527.c:		id2 = (unsigned char) (msg->id>>13);
lincan/src/i82527.c:		id3 = (unsigned char) (msg->id>>21);
lincan/src/i82527.c:		id1 = (unsigned char) (msg->id<<5);
lincan/src/i82527.c:		id0 = (unsigned char) (msg->id>>3);
lincan/src/i82527.c:		canobj_write_reg(chip,obj,msg->data[i],iMSGDAT0+i);
lincan/src/i82527.c:	if (msg->flags & MSG_RTR) {
lincan/src/i82527.c:		return -ENODEV;
lincan/src/i82527.c:	if(obj->tx_slot){
lincan/src/i82527.c:			can_filltimestamp(&obj->tx_slot->msg.timestamp);
lincan/src/i82527.c:			obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/i82527.c:			canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/i82527.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/i82527.c:		obj->tx_slot=NULL;
lincan/src/i82527.c:	cmd=canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot);
lincan/src/i82527.c:	if (chip->chipspecops->pre_write_config(chip, obj, &obj->tx_slot->msg)) {
lincan/src/i82527.c:		obj->ret = -1;
lincan/src/i82527.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_PREP);
lincan/src/i82527.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/i82527.c:		obj->tx_slot=NULL;
lincan/src/i82527.c:	if (chip->chipspecops->send_msg(chip, obj, &obj->tx_slot->msg)) {
lincan/src/i82527.c:		obj->ret = -1;
lincan/src/i82527.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_SEND);
lincan/src/i82527.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/i82527.c:		obj->tx_slot=NULL;
lincan/src/i82527.c:			obj->rx_msg.flags = MSG_EXT;
lincan/src/i82527.c:			obj->rx_msg.flags = 0;
lincan/src/i82527.c:		obj->rx_msg.length = (msgcfg >> 4) & 0xf;
lincan/src/i82527.c:		if(obj->rx_msg.length > CAN_MSG_LENGTH) obj->rx_msg.length = CAN_MSG_LENGTH;
lincan/src/i82527.c:		obj->rx_msg.id = message_id;
lincan/src/i82527.c:		for (i=0; i < obj->rx_msg.length; i++)
lincan/src/i82527.c:			obj->rx_msg.data[i] = canobj_read_reg(chip,obj,iMSGDAT0+i);
lincan/src/i82527.c:		can_filltimestamp(&obj->rx_msg.timestamp);
lincan/src/i82527.c:		canque_filter_msg2edges(obj->qends, &obj->rx_msg);
lincan/src/i82527.c:			can_spin_lock(&hardware_p->rtr_lock);
lincan/src/i82527.c:			rtr_search=hardware_p->rtr_queue;
lincan/src/i82527.c:				if (rtr_search->id == message_id)
lincan/src/i82527.c:				rtr_search=rtr_search->next;
lincan/src/i82527.c:			can_spin_unlock(&hardware_p->rtr_lock);
lincan/src/i82527.c:			if ((rtr_search!=NULL) && (rtr_search->id==message_id))
lincan/src/i82527.c:	if(canqueue_ends_filt_conjuction(obj->qends, &filt)) {
lincan/src/i82527.c:		obj->rx_preconfig_id=filt.id;
lincan/src/i82527.c:		if(obj->object == 15) {
lincan/src/i82527.c:		CANMSG("i82527_irq_update_filter: obj at 0x%08lx\n",obj->obj_base_addr);
lincan/src/i82527.c:		if(!obj->tx_slot) {
lincan/src/i82527.c:		if(can_msgobj_test_fl(obj,FILTCH_REQUEST) && !obj->tx_slot)
lincan/src/i82527.c:	/*put_reg=device->hwspecops->write_register;*/
lincan/src/i82527.c:	/*get_reg=device->hwspecops->read_register;*/
lincan/src/i82527.c:		if(!loop_cnt--) {
lincan/src/i82527.c:			object = irq_register-3;
lincan/src/i82527.c:		obj=chip->msgobj[object];
lincan/src/i82527.c:	can_spin_lock(&hardware_p->rtr_lock);
lincan/src/i82527.c:	rtr_search->rtr_message->id=message_id;
lincan/src/i82527.c:	rtr_search->rtr_message->length=(canobj_read_reg(chip,obj,iMSGCFG) & 0xf0)>>4;
lincan/src/i82527.c:	for (i=0; i<rtr_search->rtr_message->length; i++)
lincan/src/i82527.c:		rtr_search->rtr_message->data[i]=canobj_read_reg(chip,obj,iMSGDAT0+i);
lincan/src/i82527.c:	can_spin_unlock(&hardware_p->rtr_lock);
lincan/src/i82527.c:	if (waitqueue_active(&rtr_search->rtr_wq))
lincan/src/i82527.c:		wake_up(&rtr_search->rtr_wq);
lincan/src/i82527.c: * i82527_wakeup_tx: - wakeups TX processing
lincan/src/i82527.c:	chipspecops->chip_config = i82527_chip_config;
lincan/src/i82527.c:	chipspecops->baud_rate = i82527_baud_rate;
lincan/src/i82527.c:	chipspecops->standard_mask = i82527_standard_mask;
lincan/src/i82527.c:	chipspecops->extended_mask = i82527_extended_mask;
lincan/src/i82527.c:	chipspecops->message15_mask = i82527_message15_mask;
lincan/src/i82527.c:	chipspecops->clear_objects = i82527_clear_objects;
lincan/src/i82527.c:	chipspecops->config_irqs = i82527_config_irqs;
lincan/src/i82527.c:	chipspecops->pre_read_config = i82527_pre_read_config;
lincan/src/i82527.c:	chipspecops->pre_write_config = i82527_pre_write_config;
lincan/src/i82527.c:	chipspecops->send_msg = i82527_send_msg;
lincan/src/i82527.c:	chipspecops->check_tx_stat = i82527_check_tx_stat;
lincan/src/i82527.c:	chipspecops->wakeup_tx = i82527_wakeup_tx;
lincan/src/i82527.c:	chipspecops->filtch_rq = i82527_filtch_rq;
lincan/src/i82527.c:	chipspecops->remote_request = i82527_remote_request;
lincan/src/i82527.c:	chipspecops->enable_configuration = i82527_enable_configuration;
lincan/src/i82527.c:	chipspecops->disable_configuration = i82527_disable_configuration;
lincan/src/i82527.c:	chipspecops->set_btregs = i82527_set_btregs;
lincan/src/i82527.c:	chipspecops->attach_to_chip = i82527_attach_to_chip;
lincan/src/i82527.c:	chipspecops->release_chip = i82527_release_chip;
lincan/src/i82527.c:	chipspecops->start_chip = i82527_start_chip;
lincan/src/i82527.c:	chipspecops->stop_chip = i82527_stop_chip;
lincan/src/i82527.c:	chipspecops->irq_handler = i82527_irq_handler;
lincan/src/i82527.c:	chipspecops->irq_accept = NULL;
lincan/src/i82527.c:	chip->chip_type="i82527";
lincan/src/i82527.c:	chip->max_objects=15;
lincan/src/i82527.c:	i82527_register(chip->chipspecops);
lincan/src/ioctl.c: * Linux CAN-bus device driver.
lincan/src/ioctl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ioctl.c: * This software is released under the GPL-License.
lincan/src/ioctl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ioctl.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/ioctl.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/ioctl.c:		return -ENODEV;
lincan/src/ioctl.c:	obj = canuser->msgobj;
lincan/src/ioctl.c:		return -1;
lincan/src/ioctl.c:	qends = canuser->qends;
lincan/src/ioctl.c:	chip = obj->hostchip;
lincan/src/ioctl.c:		return -1;
lincan/src/ioctl.c:			if (chip->chipspecops->start_chip(chip))
lincan/src/ioctl.c:				return -1;
lincan/src/ioctl.c:			if (chip->chipspecops->stop_chip(chip))
lincan/src/ioctl.c:				return -1;
lincan/src/ioctl.c:			canque_flush(canuser->rx_edge0);
lincan/src/ioctl.c:			/* In- and output buffer re-initialization */
lincan/src/ioctl.c:			if(canuser->rx_edge0){
lincan/src/ioctl.c:				canque_set_filt(canuser->rx_edge0, arg, ~0, 0);
lincan/src/ioctl.c:			if(ret)	return -EFAULT;
lincan/src/ioctl.c:			if(canuser->rx_edge0){
lincan/src/ioctl.c:				canque_set_filt(canuser->rx_edge0, canfilt.id, canfilt.mask, canfilt.flags);
lincan/src/ioctl.c:			if(ret)	return -EFAULT;
lincan/src/ioctl.c:			if(ret)	return -EFAULT;
lincan/src/ioctl.c:			if (chip->chipspecops->set_btregs(chip, btr0, btr1)) {
lincan/src/ioctl.c:				return -1;
lincan/src/ioctl.c:			if(ret)	return -EFAULT;
lincan/src/ioctl.c:			if(params.flags == -1) params.flags = 0;
lincan/src/ioctl.c:			if(params.baudrate == -1) params.baudrate = chip->baudrate;
lincan/src/ioctl.c:			if(params.sjw == -1) params.sjw = 0;
lincan/src/ioctl.c:			if(params.sample_pt == -1) params.sample_pt = 75;
lincan/src/ioctl.c:			i=chip->chipspecops->baud_rate(chip, params.baudrate, chip->clock, params.sjw,
lincan/src/ioctl.c:			if(i>=0) chip->baudrate = params.baudrate;
lincan/src/ioctl.c:				return -1;
lincan/src/ioctl.c:			return -EINVAL;
lincan/src/ioctl_query.c: * Linux CAN-bus device driver.
lincan/src/ioctl_query.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ioctl_query.c: * This software is released under the GPL-License.
lincan/src/ioctl_query.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ioctl_query.c: * can_ioctl_query - query for driver version and features
lincan/src/ioctl_query.c: * Return Value: returns value for queried characteristic or -EINVAL
lincan/src/ioctl_query.c:			/* returns driver branch value - "LINC" for LinCAN driver */
lincan/src/ioctl_query.c:	return -EINVAL;
lincan/src/ioctl_remote.c: * Linux CAN-bus device driver.
lincan/src/ioctl_remote.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ioctl_remote.c: * This software is released under the GPL-License.
lincan/src/ioctl_remote.c: * Version lincan-0.3  17 Nov 2004
lincan/src/ioctl_remote.c:	/*qends = canuser->qends;*/
lincan/src/ioctl_remote.c:	obj = canuser->msgobj;
lincan/src/ioctl_remote.c:		return -ENODEV;
lincan/src/ioctl_remote.c:	if ( (chip = obj->hostchip) == NULL) {
lincan/src/ioctl_remote.c:		return -ENODEV;
lincan/src/ioctl_remote.c:	can_spin_lock_irqsave(&hardware_p->rtr_lock, flags);
lincan/src/ioctl_remote.c:	if (hardware_p->rtr_queue == NULL) { //No remote messages pending
lincan/src/ioctl_remote.c:			can_spin_unlock_irqrestore(&hardware_p->rtr_lock, 
lincan/src/ioctl_remote.c:			return -ENOMEM;
lincan/src/ioctl_remote.c:		hardware_p->rtr_queue=new_rtr_entry;
lincan/src/ioctl_remote.c:		rtr_current=hardware_p->rtr_queue;
lincan/src/ioctl_remote.c:		while (rtr_current->next != NULL)
lincan/src/ioctl_remote.c:			rtr_current=rtr_current->next;
lincan/src/ioctl_remote.c:		rtr_current->next=new_rtr_entry;
lincan/src/ioctl_remote.c:	init_waitqueue_head(&new_rtr_entry->rtr_wq);
lincan/src/ioctl_remote.c:	new_rtr_entry->id = rtr_id;
lincan/src/ioctl_remote.c:	new_rtr_entry->rtr_message = rtr_msg;
lincan/src/ioctl_remote.c:	new_rtr_entry->next=NULL;
lincan/src/ioctl_remote.c:	can_spin_unlock_irqrestore(&hardware_p->rtr_lock, flags);
lincan/src/ioctl_remote.c:	chip->chipspecops->remote_request(chip,obj);
lincan/src/ioctl_remote.c:	obj->ret = 0;
lincan/src/ioctl_remote.c:	interruptible_sleep_on(&new_rtr_entry->rtr_wq);
lincan/src/ioctl_remote.c:	can_spin_lock_irqsave(&hardware_p->rtr_lock, flags);
lincan/src/ioctl_remote.c:	if (hardware_p->rtr_queue == new_rtr_entry) {
lincan/src/ioctl_remote.c:		if (new_rtr_entry->next != NULL) 
lincan/src/ioctl_remote.c:			hardware_p->rtr_queue=new_rtr_entry->next;
lincan/src/ioctl_remote.c:			hardware_p->rtr_queue=NULL;
lincan/src/ioctl_remote.c:		rtr_current=hardware_p->rtr_queue;
lincan/src/ioctl_remote.c:		while (rtr_current->next != new_rtr_entry)
lincan/src/ioctl_remote.c:			rtr_current=rtr_current->next;
lincan/src/ioctl_remote.c:		if (new_rtr_entry->next != NULL)
lincan/src/ioctl_remote.c:			rtr_current->next=new_rtr_entry->next;
lincan/src/ioctl_remote.c:			rtr_current->next=NULL;
lincan/src/ioctl_remote.c:	can_spin_unlock_irqrestore(&hardware_p->rtr_lock, flags);
lincan/src/ioctl_remote.c:	return obj->ret;
lincan/src/ioctl_rtl.c: * Linux CAN-bus device driver.
lincan/src/ioctl_rtl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ioctl_rtl.c: * This software is released under the GPL-License.
lincan/src/ioctl_rtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ioctl_rtl.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/ioctl_rtl.c:		return -ENODEV;
lincan/src/ioctl_rtl.c:	obj = canuser->msgobj;
lincan/src/ioctl_rtl.c:		return -1;
lincan/src/ioctl_rtl.c:	qends = canuser->qends;
lincan/src/ioctl_rtl.c:	chip = obj->hostchip;
lincan/src/ioctl_rtl.c:		return -1;
lincan/src/ioctl_rtl.c:			if (chip->chipspecops->start_chip(chip))
lincan/src/ioctl_rtl.c:				return -1;
lincan/src/ioctl_rtl.c:			if (chip->chipspecops->stop_chip(chip))
lincan/src/ioctl_rtl.c:				return -1;
lincan/src/ioctl_rtl.c:			canque_flush(canuser->rx_edge0);
lincan/src/ioctl_rtl.c:			if(canuser->rx_edge0){
lincan/src/ioctl_rtl.c:				canque_set_filt(canuser->rx_edge0, arg, ~0, 0);
lincan/src/ioctl_rtl.c:			if(canuser->rx_edge0){
lincan/src/ioctl_rtl.c:				canque_set_filt(canuser->rx_edge0, canfilt.id, canfilt.mask, canfilt.flags);
lincan/src/ioctl_rtl.c:			if (chip->chipspecops->set_btregs(chip, btr0, btr1)) {
lincan/src/ioctl_rtl.c:				return -1;
lincan/src/ioctl_rtl.c:			return -EINVAL;
lincan/src/ipci165.c: * Linux CAN-bus device driver for IXXAT iPC-I 165 (PCI) compatible HW.
lincan/src/ipci165.c: * This software is released under the GPL-License.
lincan/src/ipci165.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ipci165.c: * ipci165_delay - Delay the execution
lincan/src/ipci165.c: * ipci165_generate_irq - Generate irq for HW
lincan/src/ipci165.c:  unsigned long crm_addr = candev->io_addr;
lincan/src/ipci165.c: * bci_command - Send command to controller
lincan/src/ipci165.c:  unsigned long dpram_addr = candev->dev_base_addr;
lincan/src/ipci165.c:    return -EINVAL;
lincan/src/ipci165.c:  can_spin_lock(candev->device_lock);
lincan/src/ipci165.c:    can_spin_unlock(candev->device_lock);
lincan/src/ipci165.c:    return (-EBUSY);
lincan/src/ipci165.c: * bci_response - Get response from controller
lincan/src/ipci165.c:  unsigned long dpram_addr = candev->dev_base_addr;
lincan/src/ipci165.c:    if (--delay == 0)
lincan/src/ipci165.c:      can_spin_unlock(candev->device_lock);
lincan/src/ipci165.c:      return -EBUSY;
lincan/src/ipci165.c:  tmp = readb(dpram_addr + OF_BCI_NUM) - 1;
lincan/src/ipci165.c:    can_spin_unlock(candev->device_lock);
lincan/src/ipci165.c:    return -EIO;
lincan/src/ipci165.c:  can_spin_unlock(candev->device_lock);
lincan/src/ipci165.c: * ipci165_restart_can - Flush queues and sestart can controller
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_RESET_CAN, 1, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_RESET_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:  /* flush TX/RX queues in DP-RAM */
lincan/src/ipci165.c:  chip_data = (struct ipci165_chip_t *)chip->chip_data;
lincan/src/ipci165.c:    writeb(BCI_MSG_STATUS_FREE, chip_data->rx_queue.addr + msg_ofs);
lincan/src/ipci165.c:    writeb(BCI_MSG_STATUS_FREE, chip_data->tx_queue.addr + msg_ofs);
lincan/src/ipci165.c:  /* In- and output buffer re-initialization */
lincan/src/ipci165.c:  canqueue_ends_flush_inlist(chip->msgobj[0]->qends);
lincan/src/ipci165.c:  canqueue_ends_flush_outlist(chip->msgobj[0]->qends);
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_START_CAN, 1, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_START_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c: * ipci165_kthread - Thread restarting can controller after bus-off.
lincan/src/ipci165.c:  struct canchip_t *chip = (struct canchip_t *)kthread->arg;
lincan/src/ipci165.c:  struct ipci165_chip_t *chip_data = (struct ipci165_chip_t *)chip->chip_data;
lincan/src/ipci165.c:    wait_event_interruptible(kthread->queue,test_bit(CHIP_FLAG_BUS_OFF,&chip_data->flags));
lincan/src/ipci165.c:    if (kthread->terminate)
lincan/src/ipci165.c:      clear_bit(CHIP_FLAG_BUS_OFF,&chip_data->flags);
lincan/src/ipci165.c:      set_bit(CHIP_FLAG_RESET,&chip_data->flags);
lincan/src/ipci165.c:      clear_bit(CHIP_FLAG_RESET,&chip_data->flags);
lincan/src/ipci165.c: * ipci165_qfull_latency - Compute delay to send out full tx queue
lincan/src/ipci165.c:  latency = obj->hostchip->baudrate;
lincan/src/ipci165.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c:  unsigned long crm_addr = candev->io_addr;
lincan/src/ipci165.c:  if (request_irq(candev->sysdevptr.pcidev->irq,
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c: * ipci165_disconnect_irq - Disable irq on HW
lincan/src/ipci165.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c:  unsigned long crm_addr = candev->io_addr;
lincan/src/ipci165.c:  free_irq(candev->sysdevptr.pcidev->irq, candev);
lincan/src/ipci165.c: * ipci165_chip_config - Can chip configuration
lincan/src/ipci165.c:  struct ipci165_chip_t *chip_data = chip->chip_data;
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_chip_config[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:  chip_data->tx_queue.addr = chip->chip_base_addr + OF_CH1_TX_QUEUE +
lincan/src/ipci165.c:      chip->chip_idx * (OF_CH2_TX_QUEUE-OF_CH1_TX_QUEUE);
lincan/src/ipci165.c:  chip_data->rx_queue.addr = chip->chip_base_addr + OF_CH1_RX_QUEUE +
lincan/src/ipci165.c:      chip->chip_idx * (OF_CH2_RX_QUEUE-OF_CH1_RX_QUEUE);
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_RESET_CAN, 1, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_RESET_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_CONFIG_RX_QUEUE, 3, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_CONFIG_RX_QUEUE, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:  if (!chip->baudrate) chip->baudrate = 1000000;
lincan/src/ipci165.c:  if ((ret = ipci165_baud_rate(chip, chip->baudrate, chip->clock, 0, 0, 0))) return ret;
lincan/src/ipci165.c: * ipci165_baud_rate - Set communication parameters
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_baud_rate[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:    default: return -EINVAL;
lincan/src/ipci165.c: * ipci165_set_btregs - Configure bitrate registers
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_set_btregs[%i]: btr0=%02x, btr1=%02x\n",chip->chip_idx,
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_INIT_CAN, 3, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_INIT_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c: * ipci165_stop_chip - Start chip message processing
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_start_chip[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_START_CAN, 1, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_START_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c: * ipci165_stop_chip -  Stop chip message processing
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_stop_chip[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:  data[0] = chip->chip_idx;
lincan/src/ipci165.c:  if (bci_command(chip->hostdevice, CMD_STOP_CAN, 1, data) ||
lincan/src/ipci165.c:      bci_response(chip->hostdevice, CMD_STOP_CAN, &size, data) ||
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c: * ipci165_pre_read_config - Prepare message object for message reception
lincan/src/ipci165.c: * ipci165_pre_write_config - Prepare message object for message transmission
lincan/src/ipci165.c: * ipci165_send_msg - Initiate message transmission
lincan/src/ipci165.c: * ipci165_check_tx_stat - Checks state of transmission engine
lincan/src/ipci165.c: * ipci165_irq_read_handler - ISR code responsible for receiving
lincan/src/ipci165.c:  struct ipci165_chip_t *chip_data = (struct ipci165_chip_t *)chip->chip_data;
lincan/src/ipci165.c:  struct bci_queue_t *queue = &(chip_data)->rx_queue;
lincan/src/ipci165.c:  unsigned long       queue_addr = queue->addr;
lincan/src/ipci165.c:  unsigned long       msg_addr   = queue_addr + queue->idx * BCI_MSG_SIZE;
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_irq_read_handler[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:      printk("ST(0)=%x, ST(1)=%x\n",readw(chip->chip_base_addr+OF_CAN1_STATUS),
lincan/src/ipci165.c:             readw(chip->chip_base_addr+OF_CAN2_STATUS));
lincan/src/ipci165.c:        printk ("MSG_ST(%i)=%x\n",tmp16,readb(chip->chip_base_addr + OF_CH2_TX_QUEUE + tmp16*BCI_MSG_SIZE + BCI_MSG_STATUS));
lincan/src/ipci165.c:      DEBUGMSG ("ipci165_irq_read_handler[%i]: message in buffer\n",chip->chip_idx);
lincan/src/ipci165.c:      obj->rx_msg.length = len;
lincan/src/ipci165.c:      obj->rx_msg.flags  = (frame_info & BCI_MSG_FRAME_RTR ? MSG_RTR : 0);
lincan/src/ipci165.c:      obj->rx_msg.cob    = 0;
lincan/src/ipci165.c:      obj->rx_msg.timestamp.tv_sec = 0;
lincan/src/ipci165.c:      obj->rx_msg.timestamp.tv_usec = 
lincan/src/ipci165.c:      /* can_filltimestamp(&obj->rx_msg.timestamp); */
lincan/src/ipci165.c:        /* extended frame - 29 bit identifier */
lincan/src/ipci165.c:        obj->rx_msg.flags |= MSG_EXT;
lincan/src/ipci165.c:        /* obj->rx_msg.id = be32_to_cpu(readl(msg_addr + BCI_MSG_ID) >> 3); */
lincan/src/ipci165.c:        obj->rx_msg.id = be32_to_cpu(tmp32 >> 3);
lincan/src/ipci165.c:          memcpy_fromio(obj->rx_msg.data, msg_addr + BCI_MSG_EXT_DATA, len);
lincan/src/ipci165.c:        /* standard frame - 11 bit identifier */
lincan/src/ipci165.c:        /* obj->rx_msg.id = be16_to_cpu(readw(msg_addr + BCI_MSG_ID) >> 5); */
lincan/src/ipci165.c:        obj->rx_msg.id = be16_to_cpu(tmp16 >> 5);
lincan/src/ipci165.c:          memcpy_fromio(obj->rx_msg.data, msg_addr + BCI_MSG_STD_DATA, len);
lincan/src/ipci165.c:      canque_filter_msg2edges(obj->qends, &obj->rx_msg);
lincan/src/ipci165.c:      DEBUGMSG ("ipci165_irq_read_handler[%i]: CAN status=%04x\n",chip->chip_idx, status);
lincan/src/ipci165.c:        CANMSG ("BUS-OFF detected! Restarting\n");
lincan/src/ipci165.c:        set_bit(CHIP_FLAG_BUS_OFF,&chip_data->flags);
lincan/src/ipci165.c:        wake_up(&chip_data->kthread.queue);
lincan/src/ipci165.c:      if(obj->tx_slot)
lincan/src/ipci165.c:        canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_BUS);
lincan/src/ipci165.c:    DEBUGMSG ("ipci165_irq_read_handler[%i]: device status\n", chip->chip_idx);
lincan/src/ipci165.c:    dump_mem(chip->chip_base_addr + OF_STATUS_BUFFER, 12);
lincan/src/ipci165.c:    queue->idx = (queue->idx + 1) % BCI_QUEUE_SIZE;
lincan/src/ipci165.c:    msg_addr = queue_addr + queue->idx * BCI_MSG_SIZE;
lincan/src/ipci165.c: * ipci165_irq_write_handler - ISR code responsible for transmitting
lincan/src/ipci165.c:  struct ipci165_chip_t *chip_data = ((struct ipci165_chip_t *)chip->chip_data);
lincan/src/ipci165.c:  struct bci_queue_t *queue      = &chip_data->tx_queue;
lincan/src/ipci165.c:  unsigned long       queue_addr = queue->addr;
lincan/src/ipci165.c:  unsigned long       msg_addr   = queue_addr + queue->idx * BCI_MSG_SIZE;
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_irq_write_handler[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:  while ((canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot) >=0))
lincan/src/ipci165.c:    if (test_bit(CHIP_FLAG_RESET,&chip_data->flags) ||
lincan/src/ipci165.c:      canque_again_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/ipci165.c:      ipci165_generate_irq(obj->hostchip->hostdevice);
lincan/src/ipci165.c:      mod_timer(&obj->tx_timeout, jiffies + ipci165_qfull_latency(obj));
lincan/src/ipci165.c:      DEBUGMSG("ipci165_irq_write_handler[%i]: scheduled retry\n", chip->chip_idx);
lincan/src/ipci165.c:    tx_slot = obj->tx_slot;
lincan/src/ipci165.c:              chip->chip_idx,
lincan/src/ipci165.c:              (unsigned long)tx_slot->msg.id,
lincan/src/ipci165.c:              (unsigned int)tx_slot->msg.length,
lincan/src/ipci165.c:              (unsigned int)tx_slot->msg.flags);
lincan/src/ipci165.c:    dump_mem(tx_slot->msg.data, tx_slot->msg.length);
lincan/src/ipci165.c:    len = tx_slot->msg.length;
lincan/src/ipci165.c:    ext = tx_slot->msg.flags;
lincan/src/ipci165.c:        ((tx_slot->msg.flags & MSG_RTR) ? BCI_MSG_FRAME_RTR : 0) |
lincan/src/ipci165.c:        ((tx_slot->msg.flags & MSG_EXT) ? BCI_MSG_FRAME_EXT : 0);
lincan/src/ipci165.c:    writeb(BCI_MSG_SIZE - 2, msg_addr + BCI_MSG_NUM);
lincan/src/ipci165.c:      /* extended frame - 29 bit identifier */
lincan/src/ipci165.c:      tmp32 = be32_to_cpu(tx_slot->msg.id) << 3;
lincan/src/ipci165.c:        memcpy_toio(msg_addr + BCI_MSG_EXT_DATA, tx_slot->msg.data, len);
lincan/src/ipci165.c:      /* standard frame - 11 bit identifier */
lincan/src/ipci165.c:      tmp16 = be16_to_cpu(tx_slot->msg.id) << 5;
lincan/src/ipci165.c:        memcpy_toio(msg_addr + BCI_MSG_STD_DATA, tx_slot->msg.data, len);
lincan/src/ipci165.c:    queue->idx = (queue->idx + 1) % BCI_QUEUE_SIZE;
lincan/src/ipci165.c:    ipci165_generate_irq(chip->hostdevice);
lincan/src/ipci165.c:    msg_addr = queue_addr + queue->idx * BCI_MSG_SIZE;
lincan/src/ipci165.c:      obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/ipci165.c:      canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/ipci165.c:    canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/ipci165.c:    obj->tx_slot = NULL;
lincan/src/ipci165.c: * ipci165_irq_sync_activities - Synchronized access to write handler
lincan/src/ipci165.c:/*    if(can_msgobj_test_fl(obj,FILTCH_REQUEST) && !obj->tx_slot)
lincan/src/ipci165.c: * ipci165_irq_chip_handler - ISR for dedicated chip
lincan/src/ipci165.c:  struct msgobj_t       *obj = chip->msgobj[0];
lincan/src/ipci165.c:  struct ipci165_chip_t *chip_data = chip->chip_data;
lincan/src/ipci165.c:  DEBUGMSG ("ipci165_irq_chip_handler[%i]\n",chip->chip_idx);
lincan/src/ipci165.c:  queue = &chip_data->rx_queue;
lincan/src/ipci165.c:  if (readb(queue->addr + queue->idx * BCI_MSG_SIZE + BCI_MSG_STATUS)
lincan/src/ipci165.c:  queue = &chip_data->tx_queue;
lincan/src/ipci165.c:/*  if (readb(queue->addr + queue->idx * BCI_MSG_SIZE + BCI_MSG_STATUS)
lincan/src/ipci165.c: * ipci165_irq_handler - Interrupt service routine
lincan/src/ipci165.c: *	to chip state structure - @struct canchip_t
lincan/src/ipci165.c:  unsigned long crm_addr   = candev->io_addr;
lincan/src/ipci165.c:    for (i=0 ; i < candev->nr_all_chips ; i++)
lincan/src/ipci165.c:      chip = candev->chip[i];
lincan/src/ipci165.c:      if (chip->flags & CHIP_CONFIGURED)
lincan/src/ipci165.c:        ipci165_irq_chip_handler(candev->chip[i]);
lincan/src/ipci165.c: * ipci165_wakeup_tx - Wakeup TX processing
lincan/src/ipci165.c:  ipci165_irq_sync_activities(obj->hostchip, obj);
lincan/src/ipci165.c: * ipci165_attach_to_chip: - attaches to the chip, setups registers and state
lincan/src/ipci165.c: * ipci165_release_chip: - called before chip structure removal if %CHIP_ATTACHED is set
lincan/src/ipci165.c:/* * * iPC-I 165/PCI Board Functionality * * */
lincan/src/ipci165.c: * ipci165_request_io - Reserve io or memory range for can board
lincan/src/ipci165.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c:  crm_addr   = pci_resource_start(candev->sysdevptr.pcidev,0);
lincan/src/ipci165.c:  dpram_addr = pci_resource_start(candev->sysdevptr.pcidev,2);
lincan/src/ipci165.c:    fix_addr = pci_resource_start(candev->sysdevptr.pcidev,3);
lincan/src/ipci165.c:      if (candev->io_addr == 0)
lincan/src/ipci165.c:        return -EINVAL;
lincan/src/ipci165.c:              candev->io_addr);
lincan/src/ipci165.c:      candev->io_addr = fix_addr;
lincan/src/ipci165.c:    pci_write_config_dword (candev->sysdevptr.pcidev,
lincan/src/ipci165.c:  if(pci_request_region(candev->sysdevptr.pcidev, 2, "kv_ipci165_dpram") == 0)
lincan/src/ipci165.c:    if(pci_request_region(candev->sysdevptr.pcidev, 0, "kv_ipci165_reg") == 0)
lincan/src/ipci165.c:  if(pci_request_regions(candev->sysdevptr.pcidev, "kv_ipci165") == 0)
lincan/src/ipci165.c:      if ((candev->dev_base_addr = (long) ioremap(dpram_addr, 
lincan/src/ipci165.c:           pci_resource_len(candev->sysdevptr.pcidev,2))))
lincan/src/ipci165.c:        DEBUGMSG ("ipci165_request_io: dpram remapped to 0x%lx\n", candev->dev_base_addr);
lincan/src/ipci165.c:        if ((candev->io_addr = (long) ioremap(crm_addr, 
lincan/src/ipci165.c:             pci_resource_len(candev->sysdevptr.pcidev,0))))
lincan/src/ipci165.c:          DEBUGMSG ("ipci165_request_io: crm remapped to 0x%lx\n", candev->io_addr);
lincan/src/ipci165.c:          candev->res_addr=candev->io_addr;
lincan/src/ipci165.c:          for(i=0;i<candev->nr_all_chips;i++)
lincan/src/ipci165.c:            candev->chip[i]->chip_base_addr = candev->dev_base_addr;
lincan/src/ipci165.c:            for(j=0;j<candev->chip[i]->max_objects;j++)
lincan/src/ipci165.c:              candev->chip[i]->msgobj[j]->obj_base_addr = candev->dev_base_addr;
lincan/src/ipci165.c:        iounmap((void*)candev->io_addr);
lincan/src/ipci165.c:      iounmap((void*)candev->dev_base_addr);
lincan/src/ipci165.c:      pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/ipci165.c:    pci_release_region(candev->sysdevptr.pcidev, 2);
lincan/src/ipci165.c:    pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/ipci165.c:  return -ENODEV;
lincan/src/ipci165.c: * ipci165_release_io - Free reserved io memory range
lincan/src/ipci165.c:  for (i = 0 ; i < candev->nr_all_chips ; i++)
lincan/src/ipci165.c:    chip_data = (struct ipci165_chip_t *)candev->chip[i]->chip_data;
lincan/src/ipci165.c:    stop_kthread(&chip_data->restart_thread);
lincan/src/ipci165.c:  iounmap((void*)candev->io_addr);
lincan/src/ipci165.c:  iounmap((void*)candev->dev_base_addr);
lincan/src/ipci165.c:  pci_release_region(candev->sysdevptr.pcidev, 2);
lincan/src/ipci165.c:  pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/ipci165.c:  pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/ipci165.c: * ipci165_download_fw - Download FW into CAN hardware
lincan/src/ipci165.c:  unsigned long dpram_addr = candev->dev_base_addr;
lincan/src/ipci165.c:  return -ENODEV;
lincan/src/ipci165.c:  if (strncmp (mode, "PC-Loader V", 11))
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:  while (fwArray->len)
lincan/src/ipci165.c:    writeb(fwArray->len, dpram_addr + OF_LD_NUM);
lincan/src/ipci165.c:    writel(fwArray->addr, dpram_addr + OF_LD_ADDRESS);
lincan/src/ipci165.c:    /*    writel(cpu_to_le32(fwArray->addr), dpram_addr + OF_LD_ADDRESS); */
lincan/src/ipci165.c:    memcpy_toio(dpram_addr + OF_LD_DATA, fwArray->a_data, fwArray->len);
lincan/src/ipci165.c:    dump_mem((void *)(dpram_addr + OF_LD_SYNC), fwArray->len + 8);
lincan/src/ipci165.c:      if (--attempt == 0)
lincan/src/ipci165.c:        return -ENODEV;
lincan/src/ipci165.c: * ipci165_reset - Hardware reset routine
lincan/src/ipci165.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c:  unsigned long crm_addr = candev->io_addr;
lincan/src/ipci165.c:  if (ipci165_download_fw(candev)) return -ENODEV;
lincan/src/ipci165.c:            candev->sysdevptr.pcidev->irq);
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:    return -ENODEV;
lincan/src/ipci165.c:    candev->nr_all_chips = chips;
lincan/src/ipci165.c:    canchip_done(candev->chip[1]);
lincan/src/ipci165.c:    chip = candev->chip[i];
lincan/src/ipci165.c:    chip_data = (struct ipci165_chip_t *)chip->chip_data;
lincan/src/ipci165.c:    chip_data->kthread.arg = chip;
lincan/src/ipci165.c:    start_kthread(ipci165_kthread, &chip_data->kthread);
lincan/src/ipci165.c: * ipci165_init_hw_data - Initialize hardware cards
lincan/src/ipci165.c:  /* find iPC-I 165 on PCI bus */
lincan/src/ipci165.c:    if(pcidev == NULL) return -ENODEV;
lincan/src/ipci165.c:    return -EIO;
lincan/src/ipci165.c:  candev->sysdevptr.pcidev = pcidev;
lincan/src/ipci165.c:  candev->res_addr=0;
lincan/src/ipci165.c:  candev->nr_82527_chips=0;
lincan/src/ipci165.c:  candev->nr_sja1000_chips=0;
lincan/src/ipci165.c:  candev->nr_all_chips=2; 
lincan/src/ipci165.c:  candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/ipci165.c:  can_spin_lock_init(candev->device_lock);
lincan/src/ipci165.c: * ipci165_init_chip_data - Initialize chips
lincan/src/ipci165.c:  struct canchip_t      *chip = candev->chip[chipnr];
lincan/src/ipci165.c:  chip->chip_type = CHIP_TYPE;
lincan/src/ipci165.c:  chip->chip_base_addr = 0; /* mapping not known yet */
lincan/src/ipci165.c:  chip->clock = 10000000;
lincan/src/ipci165.c:  chip->int_clk_reg = 0x0;
lincan/src/ipci165.c:  chip->int_bus_reg = 0x0;
lincan/src/ipci165.c:  chip->max_objects = 1;
lincan/src/ipci165.c:    chip->chipspecops->irq_handler=ipci165_irq_handler;
lincan/src/ipci165.c:    chip->chip_irq=candev->sysdevptr.pcidev->irq;
lincan/src/ipci165.c:    chip->flags |= CHIP_IRQ_PCI;
lincan/src/ipci165.c:    chip->chipspecops->irq_handler=NULL;
lincan/src/ipci165.c:  chip->chipspecops->irq_handler = NULL;
lincan/src/ipci165.c:  chip->chip_irq = 0;
lincan/src/ipci165.c:  chip->flags |= CHIP_IRQ_CUSTOM;
lincan/src/ipci165.c:  if(!chip_data) return -ENOMEM;
lincan/src/ipci165.c:  chip_data->rx_queue.idx = 0;
lincan/src/ipci165.c:  chip_data->rx_queue.addr = 0;
lincan/src/ipci165.c:  chip_data->tx_queue.idx = 0;
lincan/src/ipci165.c:  chip_data->tx_queue.addr = 0;
lincan/src/ipci165.c:  chip->chip_data = chip_data;
lincan/src/ipci165.c:  chip->chipspecops->attach_to_chip=ipci165_attach_to_chip;
lincan/src/ipci165.c:  chip->chipspecops->release_chip=ipci165_release_chip;
lincan/src/ipci165.c:  chip->chipspecops->chip_config=ipci165_chip_config;
lincan/src/ipci165.c:  chip->chipspecops->baud_rate=ipci165_baud_rate;
lincan/src/ipci165.c:  chip->chipspecops->set_btregs=ipci165_set_btregs;
lincan/src/ipci165.c:  chip->chipspecops->start_chip=ipci165_start_chip;
lincan/src/ipci165.c:  chip->chipspecops->stop_chip=ipci165_stop_chip;
lincan/src/ipci165.c:  chip->chipspecops->pre_read_config=ipci165_pre_read_config;
lincan/src/ipci165.c:  chip->chipspecops->wakeup_tx=ipci165_wakeup_tx;
lincan/src/ipci165.c:  chip->chipspecops->filtch_rq=NULL;
lincan/src/ipci165.c:  chip->chipspecops->irq_accept=NULL;
lincan/src/ipci165.c:  chip->chipspecops->standard_mask=NULL;
lincan/src/ipci165.c:  chip->chipspecops->extended_mask=NULL;
lincan/src/ipci165.c:  chip->chipspecops->message15_mask=NULL;
lincan/src/ipci165.c:  chip->chipspecops->clear_objects=NULL;
lincan/src/ipci165.c:  chip->chipspecops->config_irqs=NULL;
lincan/src/ipci165.c:  chip->chipspecops->pre_write_config=NULL;
lincan/src/ipci165.c:  chip->chipspecops->send_msg=NULL;
lincan/src/ipci165.c:  chip->chipspecops->check_tx_stat=NULL;
lincan/src/ipci165.c:  chip->chipspecops->remote_request=NULL;
lincan/src/ipci165.c:  chip->chipspecops->enable_configuration=NULL;
lincan/src/ipci165.c:  chip->chipspecops->disable_configuration=NULL;
lincan/src/ipci165.c: * ipci165_init_obj_data - Initialize message buffers
lincan/src/ipci165.c:  struct msgobj_t *obj=chip->msgobj[objnr];
lincan/src/ipci165.c:  obj->obj_base_addr = 0; /* not known yet */
lincan/src/ipci165.c:  obj->tx_timeout.function = ipci165_do_tx_timeout;
lincan/src/ipci165.c:  obj->tx_timeout.data = (unsigned long)obj;
lincan/src/ipci165.c: * ipci165_program_irq - Program interrupts
lincan/src/ipci165.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c: * ipci165_register - Register Board Support Functions
lincan/src/ipci165.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/ipci165.c:  hwspecops->request_io = ipci165_request_io;
lincan/src/ipci165.c:  hwspecops->release_io = ipci165_release_io;
lincan/src/ipci165.c:  hwspecops->reset = ipci165_reset;
lincan/src/ipci165.c:  hwspecops->init_hw_data = ipci165_init_hw_data;
lincan/src/ipci165.c:  hwspecops->init_chip_data = ipci165_init_chip_data;
lincan/src/ipci165.c:  hwspecops->init_obj_data = ipci165_init_obj_data;
lincan/src/ipci165.c:  hwspecops->write_register = NULL;
lincan/src/ipci165.c:  hwspecops->read_register = NULL;
lincan/src/ipci165.c:  hwspecops->program_irq = ipci165_program_irq;
lincan/src/ipci165.c:  for (; size > 0; size -= 16)
lincan/src/irq.c: * Linux CAN-bus device driver.
lincan/src/irq.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/irq.c: * This software is released under the GPL-License.
lincan/src/irq.c: * Version lincan-0.3  17 Jun 2004
lincan/src/kthread.c:  kernel_thread((int (*)(void *))kthread->function, (void *)kthread, 0);
lincan/src/kthread.c:    init_MUTEX_LOCKED(&kthread->startstop_sem);
lincan/src/kthread.c:    kthread->function=func;
lincan/src/kthread.c:    kthread->tq.sync = 0;
lincan/src/kthread.c:    INIT_LIST_HEAD(&kthread->tq.list);
lincan/src/kthread.c:    kthread->tq.routine = kthread_launcher;
lincan/src/kthread.c:    kthread->tq.data = kthread;
lincan/src/kthread.c:    schedule_task(&kthread->tq);
lincan/src/kthread.c:    tasklet_init(&kthread->tq, kthread_launcher, (unsigned long)kthread);
lincan/src/kthread.c:    tasklet_schedule(&kthread->tq);
lincan/src/kthread.c:    down(&kthread->startstop_sem);
lincan/src/kthread.c:    if (kthread->thread == NULL)
lincan/src/kthread.c:    init_MUTEX_LOCKED(&kthread->startstop_sem);
lincan/src/kthread.c:    kthread->terminate = 1;
lincan/src/kthread.c:    kill_proc(kthread->thread->pid, SIGKILL, 1);
lincan/src/kthread.c:    down(&kthread->startstop_sem);
lincan/src/kthread.c:    kthread->thread = current;
lincan/src/kthread.c:    kthread->terminate = 0;
lincan/src/kthread.c:    init_waitqueue_head(&kthread->queue);
lincan/src/kthread.c:    siginitsetinv(&current->blocked, sigmask(SIGKILL)|sigmask(SIGINT)|sigmask(SIGTERM));
lincan/src/kthread.c:    sprintf(current->comm, name);
lincan/src/kthread.c:    up(&kthread->startstop_sem);
lincan/src/kthread.c:    kthread->thread = NULL;
lincan/src/kthread.c:    up(&kthread->startstop_sem);
lincan/src/kv_pcican.c:/* kv_pcican.c - support for KVASER PCIcan-S/D/Q cards
lincan/src/kv_pcican.c: * Linux CAN-bus device driver.
lincan/src/kv_pcican.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/kv_pcican.c: * This software is released under the GPL-License.
lincan/src/kv_pcican.c: * Version lincan-0.3  17 Jun 2004
lincan/src/kv_pcican.c:  This means  normal output mode , push-pull and the correct polarity. 
lincan/src/kv_pcican.c:  You will probably also want to set the clock divider value to 0 (meaning divide-by-2),
lincan/src/kv_pcican.c:  the Pelican bit, and the clock-off bit (you have no need for CLKOUT anyway.)
lincan/src/kv_pcican.c:	tmp = inl(candev->dev_base_addr + S5920_INTCSR);
lincan/src/kv_pcican.c:	outl(tmp, candev->dev_base_addr + S5920_INTCSR);
lincan/src/kv_pcican.c:	tmp = inl(candev->dev_base_addr + S5920_INTCSR);
lincan/src/kv_pcican.c:	outl(tmp, candev->dev_base_addr + S5920_INTCSR);
lincan/src/kv_pcican.c:	if(pci_request_region(candev->sysdevptr.pcidev, 0, "kv_pcican_s5920") != 0){
lincan/src/kv_pcican.c:		return -ENODEV;
lincan/src/kv_pcican.c:	}else if(pci_request_region(candev->sysdevptr.pcidev, 1, "kv_pcican_io") != 0){
lincan/src/kv_pcican.c:	}else if(pci_request_region(candev->sysdevptr.pcidev, 2, "kv_pcican_xilinx") != 0){
lincan/src/kv_pcican.c:	if(pci_request_regions(candev->sysdevptr.pcidev, "kv_pcican") != 0){
lincan/src/kv_pcican.c:		return -ENODEV;
lincan/src/kv_pcican.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/kv_pcican.c:	pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/kv_pcican.c:	return -ENODEV;
lincan/src/kv_pcican.c:	pci_release_region(candev->sysdevptr.pcidev, 2);
lincan/src/kv_pcican.c:	pci_release_region(candev->sysdevptr.pcidev, 1);
lincan/src/kv_pcican.c:	pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/kv_pcican.c:	pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/kv_pcican.c:	/* Assert PTADR# - we're in passive mode so the other bits are not important */
lincan/src/kv_pcican.c:	outl(0x80808080L, candev->dev_base_addr + S5920_PTCR);
lincan/src/kv_pcican.c:	for(chip_nr=0;chip_nr<candev->nr_all_chips;chip_nr++){
lincan/src/kv_pcican.c:		if(!candev->chip[chip_nr]) continue;
lincan/src/kv_pcican.c:		chip=candev->chip[chip_nr];
lincan/src/kv_pcican.c:		kv_pcican_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/kv_pcican.c:		cdr=kv_pcican_read_register(chip->chip_base_addr+SJACDR);
lincan/src/kv_pcican.c:		kv_pcican_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/kv_pcican.c:		kv_pcican_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/kv_pcican.c:		kv_pcican_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/kv_pcican.c:		while (kv_pcican_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/kv_pcican.c:			if(!i--) return -ENODEV;
lincan/src/kv_pcican.c:			kv_pcican_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/kv_pcican.c:		cdr=kv_pcican_read_register(chip->chip_base_addr+SJACDR);
lincan/src/kv_pcican.c:		kv_pcican_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/kv_pcican.c:		kv_pcican_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/kv_pcican.c:		kv_pcican_read_register(chip->chip_base_addr+SJAIR);
lincan/src/kv_pcican.c:		if(pcidev == NULL) return -ENODEV;
lincan/src/kv_pcican.c:		return -EIO;
lincan/src/kv_pcican.c:	candev->sysdevptr.pcidev=pcidev;
lincan/src/kv_pcican.c:			return -EIO;
lincan/src/kv_pcican.c:	candev->dev_base_addr=pci_resource_start(pcidev,0); /*S5920*/
lincan/src/kv_pcican.c:	candev->io_addr=pci_resource_start(pcidev,1); /*IO window for SJA1000 chips*/
lincan/src/kv_pcican.c:	candev->res_addr=pci_resource_start(pcidev,2); /*XILINX board wide address*/
lincan/src/kv_pcican.c:	/*candev->flags |= CANDEV_PROGRAMMABLE_IRQ;*/
lincan/src/kv_pcican.c:	if (!strcmp(candev->hwname,"pcican-s")) {
lincan/src/kv_pcican.c:		candev->nr_82527_chips=0;
lincan/src/kv_pcican.c:		candev->nr_sja1000_chips=1;
lincan/src/kv_pcican.c:		candev->nr_all_chips=1;
lincan/src/kv_pcican.c:	if (!strcmp(candev->hwname,"pcican-d")) {
lincan/src/kv_pcican.c:		candev->nr_82527_chips=0;
lincan/src/kv_pcican.c:		candev->nr_sja1000_chips=2;
lincan/src/kv_pcican.c:		candev->nr_all_chips=2;
lincan/src/kv_pcican.c:	if (!strcmp(candev->hwname,"pcican-q")) {
lincan/src/kv_pcican.c:		candev->nr_82527_chips=0;
lincan/src/kv_pcican.c:		candev->nr_sja1000_chips=4;
lincan/src/kv_pcican.c:		candev->nr_all_chips=4;
lincan/src/kv_pcican.c:	if(candev->sysdevptr.pcidev==NULL)
lincan/src/kv_pcican.c:		return -ENODEV;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->chip_irq=candev->sysdevptr.pcidev->irq;
lincan/src/kv_pcican.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/kv_pcican.c:	candev->chip[chipnr]->chip_base_addr=
lincan/src/kv_pcican.c:			candev->io_addr+chipnr*KV_PCICAN_BYTES_PER_CIRCUIT;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->flags = 0;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->sja_ocr_reg = KV_PCICAN_OCR_DEFAULT_STD;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/kv_pcican.c:	candev->chip[chipnr]->flags |= CHIP_IRQ_PCI;
lincan/src/kv_pcican.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/kv_pcican.c:	hwspecops->request_io = kv_pcican_request_io;
lincan/src/kv_pcican.c:	hwspecops->release_io = kv_pcican_release_io;
lincan/src/kv_pcican.c:	hwspecops->reset = kv_pcican_reset;
lincan/src/kv_pcican.c:	hwspecops->init_hw_data = kv_pcican_init_hw_data;
lincan/src/kv_pcican.c:	hwspecops->init_chip_data = kv_pcican_init_chip_data;
lincan/src/kv_pcican.c:	hwspecops->init_obj_data = kv_pcican_init_obj_data;
lincan/src/kv_pcican.c:	hwspecops->write_register = kv_pcican_write_register;
lincan/src/kv_pcican.c:	hwspecops->read_register = kv_pcican_read_register;
lincan/src/kv_pcican.c:	hwspecops->program_irq = kv_pcican_program_irq;
lincan/src/m437.c: * Linux CAN-bus device driver.
lincan/src/m437.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/m437.c: * This software is released under the GPL-License.
lincan/src/m437.c: * Version lincan-0.3  17 Jun 2004
lincan/src/m437.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/m437.c: * m437_request_io: - reserve io or memory range for can board
lincan/src/m437.c: * The function m437_request_io() is used to reserve the io-memory. If your
lincan/src/m437.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/m437.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/m437.c:	if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/m437.c:		CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr);
lincan/src/m437.c:		return -ENODEV;
lincan/src/m437.c:	if ( !( base = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/m437.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/m437.c:		can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/m437.c:		return -ENODEV;
lincan/src/m437.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/m437.c: * m437_elease_io - free reserved io memory range
lincan/src/m437.c: * The function m437_release_io() is used to free reserved io-memory.
lincan/src/m437.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/m437.c:	can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/m437.c: * m437_reset - hardware reset routine
lincan/src/m437.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/m437.c: * m437_init_hw_data - Initialize hardware cards
lincan/src/m437.c: * structure containing information about the installed CAN-board.
lincan/src/m437.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/m437.c:	candev->res_addr=RESET_ADDR;
lincan/src/m437.c:	candev->nr_82527_chips=1;
lincan/src/m437.c:	candev->nr_sja1000_chips=0;
lincan/src/m437.c:        candev->nr_all_chips=1;
lincan/src/m437.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/m437.c: * m437_init_chip_data - Initialize chips
lincan/src/m437.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/m437.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/m437.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/m437.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC | iCPU_CEN;
lincan/src/m437.c:	candev->chip[chipnr]->int_clk_reg = 
lincan/src/m437.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/m437.c: * m437_init_obj_data - Initialize message buffers
lincan/src/m437.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/m437.c: * m437_program_irq - program interrupts
lincan/src/m437.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/m437.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/m437.c: * m437_write_register - Low level write register routine
lincan/src/m437.c: * m437_read_register - Low level read register routine
lincan/src/m437.c:	hwspecops->request_io = m437_request_io;
lincan/src/m437.c:	hwspecops->release_io = m437_release_io;
lincan/src/m437.c:	hwspecops->reset = m437_reset;
lincan/src/m437.c:	hwspecops->init_hw_data = m437_init_hw_data;
lincan/src/m437.c:	hwspecops->init_chip_data = m437_init_chip_data;
lincan/src/m437.c:	hwspecops->init_obj_data = m437_init_obj_data;
lincan/src/m437.c:	hwspecops->write_register = m437_write_register;
lincan/src/m437.c:	hwspecops->read_register = m437_read_register;
lincan/src/m437.c:	hwspecops->program_irq = m437_program_irq;
lincan/src/main.c: * Linux CAN-bus device driver.
lincan/src/main.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/main.c: * This software is released under the GPL-License.
lincan/src/main.c: * Version lincan-0.3  17 Jun 2004
lincan/src/main.c:int minor[MAX_TOT_CHIPS]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/main.c:/*MODULE_PARM(minor, "1-" __MODULE_STRING(MAX_TOT_CHIPS)"i");*/
lincan/src/main.c:MODULE_PARM(minor, "1-" __MODULE_STRING(MAX_TOT_CHIPS_STR)"i");
lincan/src/main.c:MODULE_PARM(baudrate, "1-" __MODULE_STRING(MAX_TOT_CHIPS_STR)"i");
lincan/src/main.c:MODULE_PARM(hw, "1-" __MODULE_STRING(MAX_HW_CARDS)"s");
lincan/src/main.c:MODULE_PARM_DESC(hw,"list of boards types to initialize - virtual,pip5,...");
lincan/src/main.c:int irq[MAX_IRQ]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/main.c:MODULE_PARM(irq, "1-" __MODULE_STRING(MAX_IRQ)"i");
lincan/src/main.c:unsigned long io[MAX_HW_CARDS]={-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/main.c:MODULE_PARM(io, "1-" __MODULE_STRING(MAX_HW_CARDS)"i");
lincan/src/main.c:MODULE_PARM_DESC(processlocal,"select postprocessing/loopback of transmitted messages - "
lincan/src/main.c:int can_rtl_priority=-1;
lincan/src/main.c:MODULE_DESCRIPTION("Universal Linux CAN-bus device driver");
lincan/src/main.c:		return -EINVAL;
lincan/src/main.c:		return -ENODEV;
lincan/src/main.c:		CANMSG("Error registering RT-Linux major number.\n");
lincan/src/main.c:	for (i=0; i<hardware_p->nr_boards; i++) {
lincan/src/main.c:		candev=hardware_p->candevice[i];
lincan/src/main.c:		if (candev->hwspecops->request_io(candev)) 
lincan/src/main.c:		candev->flags|=CANDEV_IO_RESERVED;
lincan/src/main.c:	for (i=0; i<hardware_p->nr_boards; i++) {
lincan/src/main.c:		candev=hardware_p->candevice[i];
lincan/src/main.c:		if (candev->hwspecops->reset(candev)) 
lincan/src/main.c:	can_spin_lock_init(&hardware_p->rtr_lock);
lincan/src/main.c:	hardware_p->rtr_queue=NULL;
lincan/src/main.c:	for (i=0; i<hardware_p->nr_boards; i++) {
lincan/src/main.c:		candev=hardware_p->candevice[i];
lincan/src/main.c:		for(j=0; j<candev->nr_all_chips; j++) {
lincan/src/main.c:			if((chip=candev->chip[j])==NULL)
lincan/src/main.c:			if(chip->chipspecops->attach_to_chip(chip)<0) {
lincan/src/main.c:			chip->flags |= CHIP_ATTACHED;
lincan/src/main.c:		if (candev->flags & CANDEV_PROGRAMMABLE_IRQ)
lincan/src/main.c:			if (candev->hwspecops->program_irq(candev)){
lincan/src/main.c:           		dev_minor=objects_p[i]->minor;
lincan/src/main.c:		return -ENODEV;
lincan/src/main.c:       		dev_minor=objects_p[i]->minor;
lincan/src/modparms.c: * Linux CAN-bus device driver.
lincan/src/modparms.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/modparms.c: * This software is released under the GPL-License.
lincan/src/modparms.c: * Version lincan-0.3  17 Jun 2004
lincan/src/modparms.c:	if ( (hw[0] == NULL) /*| (io[0] == -1)*/ ) {
lincan/src/modparms.c:		return -ENODEV;
lincan/src/modparms.c:			return -EINVAL;
lincan/src/modparms.c:		irq_needed += brp->irqnum;
lincan/src/modparms.c:	while ( (io[io_supplied] != -1) & (io_supplied<MAX_HW_CARDS) )
lincan/src/modparms.c:		return -EINVAL;
lincan/src/modparms.c:	while ( (irq[irq_supplied] != -1) & (irq_supplied<MAX_IRQ) )
lincan/src/modparms.c:		return -EINVAL;
lincan/src/modparms.c:	if (minor[0] != -1) {
lincan/src/modparms.c:		while ((minor[minor_supplied] != -1) & (minor_supplied<MAX_IRQ))
lincan/src/modparms.c:			return -EINVAL;
lincan/src/modparms.c:	DEBUGMSG("Number of boards : %d\n",hardware_p->nr_boards);
lincan/src/modparms.c:	while ( (hw[i] != NULL) & (i<=MAX_HW_CARDS-1) ) {
lincan/src/modparms.c:		DEBUGMSG("Hardware         : %s\n",hardware_p->candevice[i]->hwname);
lincan/src/modparms.c:		DEBUGMSG("IO address       : 0x%lx\n",hardware_p->candevice[i]->io_addr);
lincan/src/modparms.c:		DEBUGMSG("Nr. all chips    : %d\n",hardware_p->candevice[i]->nr_all_chips);
lincan/src/modparms.c:		DEBUGMSG("Nr. of i82527    : %d\n",hardware_p->candevice[i]->nr_82527_chips);
lincan/src/modparms.c:		DEBUGMSG("Nr. of sja1000   : %d\n",hardware_p->candevice[i]->nr_sja1000_chips);
lincan/src/modparms.c:		for (j=0; j<hardware_p->candevice[i]->nr_all_chips; j++) {
lincan/src/modparms.c:			DEBUGMSG("Chip%d type       : %s\n", j+1, hardware_p->candevice[i]->chip[j]->chip_type);
lincan/src/modparms.c:			DEBUGMSG("Chip base        : 0x%lx\n",hardware_p->candevice[i]->chip[j]->chip_base_addr);
lincan/src/modparms.c:			DEBUGMSG("Interrupt        : %d\n",hardware_p->candevice[i]->chip[j]->chip_irq);
lincan/src/modparms.c:			for (k=0; k<hardware_p->candevice[i]->chip[j]->max_objects; k++)
lincan/src/modparms.c:				DEBUGMSG("Obj%d: minor: %d base: 0x%lx\n",k,hardware_p->candevice[i]->chip[j]->msgobj[k]->minor,hardware_p->candevice[i]->chip[j]->msgobj[k]->obj_base_addr);
lincan/src/msmcan.c: * Linux CAN-bus device driver.
lincan/src/msmcan.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/msmcan.c: * This software is released under the GPL-License.
lincan/src/msmcan.c: * Version lincan-0.3  17 Jun 2004
lincan/src/msmcan.c:/* IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/msmcan.c:/* The function template_request_io is used to reserve the io-memory. If your
lincan/src/msmcan.c: * The reserved memory starts at candev->io_addr, wich is the module parameter io.
lincan/src/msmcan.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/msmcan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/msmcan.c:		return -ENODEV;
lincan/src/msmcan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, 
lincan/src/msmcan.c:			 candev->io_addr + IO_RANGE - 1);
lincan/src/msmcan.c: * io-memory. In case you reserved more memory, don't forget to free it here.
lincan/src/msmcan.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/msmcan.c:	struct canchip_t *chip=candev->chip[0];
lincan/src/msmcan.c:	/* outb (1, msmcan_base + candev->res_addr); */
lincan/src/msmcan.c:	/* terrible MSMCAN reset design - best to comment out */
lincan/src/msmcan.c:		msmcan_write_register(iCTL_INI, chip->chip_base_addr+iCTL);
lincan/src/msmcan.c:		msmcan_write_register(iCPU_DSC, chip->chip_base_addr+iCPU);
lincan/src/msmcan.c:		while(!(msmcan_read_register(chip->chip_base_addr+iCPU)&iCPU_CEN)){
lincan/src/msmcan.c:			if((tac-tic)>HZ*2){
lincan/src/msmcan.c:				return -EIO;
lincan/src/msmcan.c:	can_disable_irq(chip->chip_irq);
lincan/src/msmcan.c:	msmcan_write_register(iCTL_INI, chip->chip_base_addr+iCTL);
lincan/src/msmcan.c:	can_enable_irq(chip->chip_irq);
lincan/src/msmcan.c: * structure containing information about the installed CAN-board.
lincan/src/msmcan.c: * RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/msmcan.c:	candev->res_addr=0;
lincan/src/msmcan.c:	candev->nr_82527_chips=1;
lincan/src/msmcan.c:	candev->nr_sja1000_chips=0;
lincan/src/msmcan.c:        candev->nr_all_chips=1;
lincan/src/msmcan.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/msmcan.c: * of the installed chip. It's likely that this is the same as the candev->io_addr
lincan/src/msmcan.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/msmcan.c:	candev->chip[chipnr]->chip_base_addr=
lincan/src/msmcan.c:	    candev->io_addr << 16;
lincan/src/msmcan.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/msmcan.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC | iCPU_CEN;
lincan/src/msmcan.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/msmcan.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/msmcan.c:	chip->msgobj[objnr]->obj_base_addr=
lincan/src/msmcan.c:	    chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/msmcan.c: * not set the candevices_t->flags entry to CANDEV_PROGRAMMABLE_IRQ and leave this
lincan/src/msmcan.c:	hwspecops->request_io = msmcan_request_io;
lincan/src/msmcan.c:	hwspecops->release_io = msmcan_release_io;
lincan/src/msmcan.c:	hwspecops->reset = msmcan_reset;
lincan/src/msmcan.c:	hwspecops->init_hw_data = msmcan_init_hw_data;
lincan/src/msmcan.c:	hwspecops->init_chip_data = msmcan_init_chip_data;
lincan/src/msmcan.c:	hwspecops->init_obj_data = msmcan_init_obj_data;
lincan/src/msmcan.c:	hwspecops->write_register = msmcan_write_register;
lincan/src/msmcan.c:	hwspecops->read_register = msmcan_read_register;
lincan/src/msmcan.c:	hwspecops->program_irq = msmcan_program_irq;
lincan/src/ns_dev_can.c:/* ns_dev_can.c - FPGA version of C_CAN ARM device specific code
lincan/src/ns_dev_can.c: * Linux CAN-bus device driver.
lincan/src/ns_dev_can.c: * Written by Sebastian Stolzenberg email:stolzi@sebastian-stolzenberg.de
lincan/src/ns_dev_can.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/ns_dev_can.c: * Ported to FS Forth-Systeme GmbH A9M9750DEVx development boards
lincan/src/ns_dev_can.c: * This software is released under the GPL-License.
lincan/src/ns_dev_can.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ns_dev_can.c: * ns_dev_request_io: - reserve io or memory range for can board
lincan/src/ns_dev_can.c:	/* Note hard-coded index for the chip number as this 
lincan/src/ns_dev_can.c:	DEBUGMSG("(c%d)ns_dev_request_io (...)\n", candev->chip[0]->chip_idx);
lincan/src/ns_dev_can.c:	if (!can_request_mem_region(candev->io_addr, IO_RANGE, DEVICE_NAME)) {
lincan/src/ns_dev_can.c:		       (unsigned long)candev->io_addr);
lincan/src/ns_dev_can.c:	if (!(candev->dev_base_addr = (long)ioremap(candev->io_addr, IO_RANGE))) {
lincan/src/ns_dev_can.c:		    ("Failed to map IO-memory: 0x%lx - 0x%lx, mapped to 0x%lx\n",
lincan/src/ns_dev_can.c:		     (unsigned long)candev->io_addr,
lincan/src/ns_dev_can.c:		     (unsigned long)candev->io_addr + IO_RANGE - 1,
lincan/src/ns_dev_can.c:		     (unsigned long)candev->dev_base_addr);
lincan/src/ns_dev_can.c:		can_release_mem_region(candev->io_addr, IO_RANGE);
lincan/src/ns_dev_can.c:		return -ENODEV;
lincan/src/ns_dev_can.c:		DEBUGMSG("Mapped IO-memory: 0x%lx - 0x%lx, mapped to 0x%lx\n",
lincan/src/ns_dev_can.c:			 (unsigned long)candev->io_addr,
lincan/src/ns_dev_can.c:			 (unsigned long)candev->io_addr + IO_RANGE - 1,
lincan/src/ns_dev_can.c:			 (unsigned long)candev->dev_base_addr);
lincan/src/ns_dev_can.c:	candev->chip[0]->chip_base_addr = candev->dev_base_addr;
lincan/src/ns_dev_can.c:	candev->chip[0]->chipspecops->start_chip(candev->chip[0]);
lincan/src/ns_dev_can.c: * ns_dev_release_io - free reserved io memory range
lincan/src/ns_dev_can.c: * The function ns_dev_release_io() is used to free reserved io-memory.
lincan/src/ns_dev_can.c:	DEBUGMSG("(c%d)ns_dev_release_io (...)\n", candev->chip[0]->chip_idx);
lincan/src/ns_dev_can.c:	iounmap((void *)candev->dev_base_addr);
lincan/src/ns_dev_can.c:	can_release_mem_region(candev->io_addr, IO_RANGE);
lincan/src/ns_dev_can.c: * ns_dev_reset - hardware reset routine
lincan/src/ns_dev_can.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/ns_dev_can.c:	struct canchip_t *pchip = candev->chip[0];
lincan/src/ns_dev_can.c:	enableTest = pchip->chipspecops->enable_configuration(pchip);
lincan/src/ns_dev_can.c:	disableTest = pchip->chipspecops->disable_configuration(pchip);
lincan/src/ns_dev_can.c:		return -ENODEV;
lincan/src/ns_dev_can.c:		return -ENODEV;
lincan/src/ns_dev_can.c:	//pchip->config_irqs(pchip, CR_MIE | CR_SIE | CR_EIE);
lincan/src/ns_dev_can.c: * ns_dev_hw_data - Initialize hardware cards
lincan/src/ns_dev_can.c: * structure containing information about the installed CAN-board.
lincan/src/ns_dev_can.c:		return -EIO;
lincan/src/ns_dev_can.c:	candev->nr_82527_chips = 0;
lincan/src/ns_dev_can.c:	candev->nr_sja1000_chips = 0;
lincan/src/ns_dev_can.c:	candev->nr_all_chips = NR_C_CAN;
lincan/src/ns_dev_can.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/ns_dev_can.c: * ns_dev_init_chip_data - Initialize chips
lincan/src/ns_dev_can.c:	c_can_fill_chipspecops(candev->chip[chipnr]);
lincan/src/ns_dev_can.c:	candev->chip[chipnr]->max_objects = MAX_MSGOBJS;
lincan/src/ns_dev_can.c:	candev->chip[chipnr]->chip_base_addr = candev->io_addr;
lincan/src/ns_dev_can.c:	candev->chip[chipnr]->clock = C_CAN_CLOCK_INPUT_FREQUENCY;
lincan/src/ns_dev_can.c: * ns_dev_init_obj_data - Initialize message buffers
lincan/src/ns_dev_can.c:	DEBUGMSG("(c%d)calling ns_dev_init_obj_data( ...)\n", chip->chip_idx);
lincan/src/ns_dev_can.c:	chip->msgobj[objnr]->obj_base_addr = 0;
lincan/src/ns_dev_can.c: * ns_dev_write_register - Low level write register routine
lincan/src/ns_dev_can.c: * ns_dev_read_register - Low level read register routine
lincan/src/ns_dev_can.c: * ns_dev_program_irq - program interrupts
lincan/src/ns_dev_can.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/ns_dev_can.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/ns_dev_can.c:	hwspecops->request_io = ns_dev_request_io;
lincan/src/ns_dev_can.c:	hwspecops->release_io = ns_dev_release_io;
lincan/src/ns_dev_can.c:	hwspecops->reset = ns_dev_reset;
lincan/src/ns_dev_can.c:	hwspecops->init_hw_data = ns_dev_init_hw_data;
lincan/src/ns_dev_can.c:	hwspecops->init_chip_data = ns_dev_init_chip_data;
lincan/src/ns_dev_can.c:	hwspecops->init_obj_data = ns_dev_init_obj_data;
lincan/src/ns_dev_can.c:	hwspecops->write_register = ns_dev_write_register;
lincan/src/ns_dev_can.c:	hwspecops->read_register = ns_dev_read_register;
lincan/src/ns_dev_can.c:	hwspecops->program_irq = ns_dev_program_irq;
lincan/src/nsi.c: * Linux CAN-bus device driver.
lincan/src/nsi.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/nsi.c: * This software is released under the GPL-License.
lincan/src/nsi.c: * Version lincan-0.3  17 Jun 2004
lincan/src/nsi.c:int nsican_irq=-1;
lincan/src/nsi.c:/* IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/nsi.c:/* The function template_request_io is used to reserve the io-memory. If your
lincan/src/nsi.c: * The reserved memory starts at candev->io_addr, wich is the module parameter io.
lincan/src/nsi.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/nsi.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/nsi.c:		return -ENODEV;
lincan/src/nsi.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, 
lincan/src/nsi.c:			 candev->io_addr + IO_RANGE - 1);
lincan/src/nsi.c: * io-memory. In case you reserved more memory, don't forget to free it here.
lincan/src/nsi.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/nsi.c:    outb (1, nsican_base + candev->res_addr);
lincan/src/nsi.c:    outb (0, nsican_base + candev->res_addr);
lincan/src/nsi.c:	return -ENODEV;
lincan/src/nsi.c: * structure containing information about the installed CAN-board.
lincan/src/nsi.c: * RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/nsi.c:	candev->res_addr=RESET_ADDR;
lincan/src/nsi.c:	candev->nr_82527_chips=1;
lincan/src/nsi.c:	candev->nr_sja1000_chips=0;
lincan/src/nsi.c:        candev->nr_all_chips=1;
lincan/src/nsi.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/nsi.c: * of the installed chip. It's likely that this is the same as the candev->io_addr
lincan/src/nsi.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/nsi.c:	candev->chip[chipnr]->chip_base_addr=
lincan/src/nsi.c:	    candev->io_addr;
lincan/src/nsi.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/nsi.c:	nsican_irq=candev->chip[chipnr]->chip_irq;	
lincan/src/nsi.c:        nsican_base=candev->chip[chipnr]->chip_base_addr;
lincan/src/nsi.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC;
lincan/src/nsi.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/nsi.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/nsi.c:	chip->msgobj[objnr]->obj_base_addr=
lincan/src/nsi.c:	    chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/nsi.c: * not set the candevices_t->flags entry to CANDEV_PROGRAMMABLE_IRQ and leave this
lincan/src/nsi.c:    outw(address-nsican_base + (256 * data), nsican_base); 
lincan/src/nsi.c:	outb(address-nsican_base, nsican_base);
lincan/src/nsi.c:	hwspecops->request_io = nsi_request_io;
lincan/src/nsi.c:	hwspecops->release_io = nsi_release_io;
lincan/src/nsi.c:	hwspecops->reset = nsi_reset;
lincan/src/nsi.c:	hwspecops->init_hw_data = nsi_init_hw_data;
lincan/src/nsi.c:	hwspecops->init_chip_data = nsi_init_chip_data;
lincan/src/nsi.c:	hwspecops->init_obj_data = nsi_init_obj_data;
lincan/src/nsi.c:	hwspecops->write_register = nsi_write_register;
lincan/src/nsi.c:	hwspecops->read_register = nsi_read_register;
lincan/src/nsi.c:	hwspecops->program_irq = nsi_program_irq;
lincan/src/open.c: * Linux CAN-bus device driver.
lincan/src/open.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/open.c: * This software is released under the GPL-License.
lincan/src/open.c: * Version lincan-0.3  17 Jun 2004
lincan/src/open.c:			((chip=objects_p[MINOR_NR]->hostchip) == NULL) ) {
lincan/src/open.c:		return -ENODEV;
lincan/src/open.c:	atomic_inc(&obj->obj_used);
lincan/src/open.c:	DEBUGMSG("Device %d opened %d times.\n", MINOR_NR, atomic_read(&obj->obj_used));
lincan/src/open.c:	if (chip->flags & CHIP_CONFIGURED) 
lincan/src/open.c:		if (chip->chipspecops->chip_config(chip))
lincan/src/open.c:			chip->flags |= CHIP_CONFIGURED; 
lincan/src/open.c:		if (chip->chipspecops->pre_read_config(chip,obj)<0)
lincan/src/open.c:	canuser->flags=0;
lincan/src/open.c:	canuser->userinfo.fileinfo.file = file;
lincan/src/open.c:	canuser->msgobj = obj;
lincan/src/open.c:	canuser->magic = CAN_USER_MAGIC;
lincan/src/open.c:	file->private_data = canuser;
lincan/src/open.c:	canuser->qends = qends;
lincan/src/open.c:	/*required to synchronize with RT-Linux context*/
lincan/src/open.c:	list_add(&canuser->peers, &obj->obj_users);
lincan/src/open.c:		canuser->qends, obj->qends)<0) goto no_tx_qedge;
lincan/src/open.c:	if(canqueue_connect_edge(canuser->rx_edge0=canque_new_edge_kern(MAX_BUF_LENGTH),
lincan/src/open.c:		obj->qends, canuser->qends)<0) goto no_rx_qedge;
lincan/src/open.c:	canque_edge_decref(canuser->rx_edge0);
lincan/src/open.c:	list_del(&canuser->peers);
lincan/src/open.c:	canuser->qends = NULL;
lincan/src/open.c:	atomic_dec(&obj->obj_used);
lincan/src/open.c:    	return -ENOMEM;
lincan/src/open_rtl.c: * Linux CAN-bus device driver.
lincan/src/open_rtl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/open_rtl.c: * This software is released under the GPL-License.
lincan/src/open_rtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/open_rtl.c:	struct msgobj_t *obj=canuser->msgobj;
lincan/src/open_rtl.c:	if(!obj) return -ENODEV;
lincan/src/open_rtl.c:	chip=obj->hostchip;
lincan/src/open_rtl.c:		if (!(chip->flags & CHIP_CONFIGURED)) {
lincan/src/open_rtl.c:			if (chip->chipspecops->chip_config(chip))
lincan/src/open_rtl.c:				chip->flags |= CHIP_CONFIGURED; 
lincan/src/open_rtl.c:			if (chip->chipspecops->pre_read_config(chip,obj)<0)
lincan/src/open_rtl.c:	qends->ends_flags|=CAN_ENDSF_MEM_RTL;
lincan/src/open_rtl.c:	canuser->qends = qends;
lincan/src/open_rtl.c:	list_add(&canuser->peers, &obj->obj_users);
lincan/src/open_rtl.c:		canuser->qends, obj->qends)<0) goto no_tx_qedge;
lincan/src/open_rtl.c:	if(canqueue_connect_edge(canuser->rx_edge0=canque_new_edge_rtl(MAX_BUF_LENGTH),
lincan/src/open_rtl.c:		obj->qends, canuser->qends)<0) goto no_rx_qedge;
lincan/src/open_rtl.c:	canque_edge_decref(canuser->rx_edge0);
lincan/src/open_rtl.c:	MOD_INC_USE_COUNT;	/*is this enough for RT-Linux context ?*/
lincan/src/open_rtl.c:	list_del(&canuser->peers);
lincan/src/open_rtl.c:	canuser->qends = NULL;
lincan/src/open_rtl.c:    	return -ENOMEM;
lincan/src/open_rtl.c:		return -ENODEV;
lincan/src/open_rtl.c:			((chip=objects_p[minor_nr]->hostchip) == NULL) ) {
lincan/src/open_rtl.c:		return -ENODEV;
lincan/src/open_rtl.c:	atomic_inc(&obj->obj_used);
lincan/src/open_rtl.c:	DEBUGMSG("Device %d opened %d times.\n", minor_nr, atomic_read(&obj->obj_used));
lincan/src/open_rtl.c:		ret=-ENOMEM;
lincan/src/open_rtl.c:	canuser->flags=CANUSER_RTL_CLIENT | CANUSER_RTL_MEM;
lincan/src/open_rtl.c:	canuser->userinfo.rtlinfo.file = fptr;
lincan/src/open_rtl.c:	canuser->msgobj = obj;
lincan/src/open_rtl.c:	canuser->magic = CAN_USER_MAGIC;
lincan/src/open_rtl.c:	/*next line would solve many problems, but RT-Linux lacks this fundamental field */
lincan/src/open_rtl.c:	/*fptr->private_data = canuser;*/
lincan/src/open_rtl.c:	ret=can_open_rtl_common(canuser, fptr->f_flags);
lincan/src/open_rtl.c:	atomic_dec(&obj->obj_used);
lincan/src/oscar.c: * Linux CAN-bus device driver.
lincan/src/oscar.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/oscar.c: * This software is released under the GPL-License.
lincan/src/oscar.c: * Version lincan-0.3  17 Jun 2004
lincan/src/oscar.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/oscar.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/oscar.c:		return -ENODEV;
lincan/src/oscar.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/oscar.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/oscar.c:	struct canchip_t *chip=candev->chip[0];
lincan/src/oscar.c:	oscar_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/oscar.c:	cdr=oscar_read_register(chip->chip_base_addr+SJACDR);
lincan/src/oscar.c:	oscar_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/oscar.c:	oscar_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/oscar.c:	oscar_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/oscar.c:	while (oscar_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/oscar.c:		if(!i--) return -ENODEV;
lincan/src/oscar.c:		oscar_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/oscar.c:	cdr=oscar_read_register(chip->chip_base_addr+SJACDR);
lincan/src/oscar.c:	oscar_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/oscar.c:	oscar_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/oscar.c:    candev->res_addr = 0x0; // RESET address?
lincan/src/oscar.c:    candev->nr_82527_chips = 0;
lincan/src/oscar.c:    candev->nr_sja1000_chips = 1; // We've got a SJA1000 variant
lincan/src/oscar.c:    candev->nr_all_chips= 1;
lincan/src/oscar.c:    candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/oscar.c:    // i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/oscar.c:    // sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/oscar.c:    sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/oscar.c:    candev->chip[chipnr]->chip_base_addr = candev->io_addr;
lincan/src/oscar.c:    candev->chip[chipnr]->clock = 12000000;
lincan/src/oscar.c:    candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP;  // we use an external tranceiver
lincan/src/oscar.c:    candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | sjaOCR_TX0_LH;
lincan/src/oscar.c:    candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/oscar.c:    candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/oscar.c:    candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/oscar.c:    chip->msgobj[objnr]->obj_base_addr = chip->chip_base_addr;
lincan/src/oscar.c:	hwspecops->request_io = oscar_request_io;
lincan/src/oscar.c:	hwspecops->release_io = oscar_release_io;
lincan/src/oscar.c:	hwspecops->reset = oscar_reset;
lincan/src/oscar.c:	hwspecops->init_hw_data = oscar_init_hw_data;
lincan/src/oscar.c:	hwspecops->init_chip_data = oscar_init_chip_data;
lincan/src/oscar.c:	hwspecops->init_obj_data = oscar_init_obj_data;
lincan/src/oscar.c:	hwspecops->write_register = oscar_write_register;
lincan/src/oscar.c:	hwspecops->read_register = oscar_read_register;
lincan/src/oscar.c:	hwspecops->program_irq = oscar_program_irq;
lincan/src/pc_i03.c:/* pc-i03.c
lincan/src/pc_i03.c: * Linux CAN-bus device driver.
lincan/src/pc_i03.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pc_i03.c: * This software is released under the GPL-License.
lincan/src/pc_i03.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pc_i03.c:#include "../include/pc-i03.h"
lincan/src/pc_i03.c: * pc-i03_base_addr is initialized in pc-i03_init_chip_data().
lincan/src/pc_i03.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pc_i03.c:#define IO_RANGE 0x200	// The pc-i03 uses an additional 0x100 bytes reset space
lincan/src/pc_i03.c: * pci03_request_io: - reserve io or memory range for can board
lincan/src/pc_i03.c: * The function pci03_request_io() is used to reserve the io-memory. If your
lincan/src/pc_i03.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pc_i03.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/pc_i03.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/pc_i03.c:		return -ENODEV;
lincan/src/pc_i03.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/pc_i03.c: * pci03_elease_io - free reserved io memory range
lincan/src/pc_i03.c: * The function pci03_release_io() is used to free reserved io-memory.
lincan/src/pc_i03.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/pc_i03.c: * pci03_reset - hardware reset routine
lincan/src/pc_i03.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	DEBUGMSG("Resetting pc-i03 hardware ...\n");
lincan/src/pc_i03.c:		return -ENODEV;
lincan/src/pc_i03.c: * pci03_init_hw_data - Initialize hardware cards
lincan/src/pc_i03.c: * structure containing information about the installed CAN-board.
lincan/src/pc_i03.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	candev->res_addr=RESET_ADDR;
lincan/src/pc_i03.c:	candev->nr_82527_chips=NR_82527;
lincan/src/pc_i03.c:        candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/pc_i03.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/pc_i03.c: * pci03_init_chip_data - Initialize chips
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pc_i03.c:	pci03_base_addr = candev->io_addr;
lincan/src/pc_i03.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/pc_i03.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/pc_i03.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/pc_i03.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | 
lincan/src/pc_i03.c: * pci03_init_obj_data - Initialize message buffers
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/pc_i03.c: * pci03_program_irq - program interrupts
lincan/src/pc_i03.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/pc_i03.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c: * pci03_write_register - Low level write register routine
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	address_to_write = address - pci03_base_addr; // Offset
lincan/src/pc_i03.c: * pci03_read_register - Low level read register routine
lincan/src/pc_i03.c: * File: src/pc-i03.c
lincan/src/pc_i03.c:	address_to_read = address - pci03_base_addr;
lincan/src/pc_i03.c:	hwspecops->request_io = pci03_request_io;
lincan/src/pc_i03.c:	hwspecops->release_io = pci03_release_io;
lincan/src/pc_i03.c:	hwspecops->reset = pci03_reset;
lincan/src/pc_i03.c:	hwspecops->init_hw_data = pci03_init_hw_data;
lincan/src/pc_i03.c:	hwspecops->init_chip_data = pci03_init_chip_data;
lincan/src/pc_i03.c:	hwspecops->init_obj_data = pci03_init_obj_data;
lincan/src/pc_i03.c:	hwspecops->write_register = pci03_write_register;
lincan/src/pc_i03.c:	hwspecops->read_register = pci03_read_register;
lincan/src/pc_i03.c:	hwspecops->program_irq = pci03_program_irq;
lincan/src/pcan_dongle.c:// Copyright (C) 2001,2002,2003,2004  PEAK System-Technik GmbH
lincan/src/pcan_dongle.c:// linux@peak-system.com
lincan/src/pcan_dongle.c:// www.peak-system.com
lincan/src/pcan_dongle.c://                Philipp Baer (philipp.baer@informatik.uni-ulm.de)
lincan/src/pcan_dongle.c:// all parts to handle the interface specific parts of pcan-dongle
lincan/src/pcan_dongle.c:// merge polished between HEAD and kernel-2.6 branch
lincan/src/pcan_dongle.c:// merge finished between HEAD and kernel-2.6 branch
lincan/src/pcan_dongle.c:// renamed PA,PB,PC to _PA_, ... to support (partially) cross-compiling for MIPS
lincan/src/pcan_dongle.c:#define DNG_PORT_SIZE            4  // the address range of the dongle-port
lincan/src/pcan_dongle.c://----------------------------------------------------------------------------
lincan/src/pcan_dongle.c:  u16 _PC_ = (u16)dng->dwPort + 2;
lincan/src/pcan_dongle.c:  u16 _PC_ = (u16)dng->dwPort + 2;
lincan/src/pcan_dongle.c:  u16 _PA_ = (u16)dng->dwPort;
lincan/src/pcan_dongle.c:  u16 _PA_ = (u16)dng->dwPort;
lincan/src/pcan_dongle.c:  u16 _PA_ = (u16)dng->dwPort;
lincan/src/pcan_dongle.c:  if (dng->wInitStep == 3)
lincan/src/pcan_dongle.c:    dng->wInitStep++;
lincan/src/pcan_dongle.c:  if (dng->wInitStep == 4)
lincan/src/pcan_dongle.c:    dng->wInitStep--;
lincan/src/pcan_dongle.c:  switch(dng->wInitStep)
lincan/src/pcan_dongle.c:    case 3: if (dng->wType == HW_DONGLE_SJA)
lincan/src/pcan_dongle.c:              sp_devices--;
lincan/src/pcan_dongle.c:	      epp_devices--;
lincan/src/pcan_dongle.c:            parport_unregister_device(dng->pardev);
lincan/src/pcan_dongle.c:    case 0: dng->wInitStep = 0;
lincan/src/pcan_dongle.c:	u16 wEcr = dng->wEcr;
lincan/src/pcan_dongle.c:	dng->ucOldECRContent = inb(wEcr);
lincan/src/pcan_dongle.c:	outb((dng->ucOldECRContent & 0x1F) | 0x20, wEcr);
lincan/src/pcan_dongle.c:	if (dng->ucOldECRContent == 0xff)
lincan/src/pcan_dongle.c:  u16 wEcr = dng->wEcr;
lincan/src/pcan_dongle.c:  outb(dng->ucOldECRContent, wEcr);
lincan/src/pcan_dongle.c:  DEBUGMSG("%s: pcan_dongle_probe() - PARPORT_SUBSYSTEM\n", DEVICE_NAME);
lincan/src/pcan_dongle.c:  // probe does not probe for the sja1000 device here - this is done at sja1000_open()
lincan/src/pcan_dongle.c:  p = parport_find_base(dng->dwPort);
lincan/src/pcan_dongle.c:    return -ENXIO;
lincan/src/pcan_dongle.c:       dng->pardev = parport_register_device(p, "can", NULL, NULL, 
lincan/src/pcan_dongle.c:                          (PARPORT_IRQ_HANLDER)dng->chip->chipspecops->irq_handler,
lincan/src/pcan_dongle.c:			  0, (void *)dng->chip);
lincan/src/pcan_dongle.c://    DEBUGMSG("datos IRQ: irq_handler=0x%x p=0x%x dng->chip=0x%x dng->pardev->port->irq=0x%x irq_handler2=0x%x\n",
lincan/src/pcan_dongle.c://		dng->chip->chipspecops->irq_handler,
lincan/src/pcan_dongle.c://		p,dng->chip,dng->pardev->port->irq, &sja1000p_irq_handler);
lincan/src/pcan_dongle.c:    if (!dng->pardev)
lincan/src/pcan_dongle.c:      return -ENODEV;
lincan/src/pcan_dongle.c:  result = parport_claim(dng->pardev);
lincan/src/pcan_dongle.c:    if (dng->pardev->port->irq == PARPORT_IRQ_NONE)
lincan/src/pcan_dongle.c:      result = -ENXIO;
lincan/src/pcan_dongle.c:      wPort    = (u16)dng->dwPort;
lincan/src/pcan_dongle.c:     dng->ucOldDataContent     = inb(wPort);
lincan/src/pcan_dongle.c:     dng->ucOldControlContent  = inb(wPort + 2);
lincan/src/pcan_dongle.c:     if (dng->wType == HW_DONGLE_SJA_EPP)
lincan/src/pcan_dongle.c:    _parport_enable_irq(dng); // parport_enable_irq(dng->pardev->port); not working since 2.4.18
lincan/src/pcan_dongle.c:  u16 wPort = (u16)dng->dwPort;
lincan/src/pcan_dongle.c:  _parport_disable_irq(dng); // parport_disable_irq(dng->pardev->port); not working since 2.4.18
lincan/src/pcan_dongle.c:  if (dng->wType == HW_DONGLE_SJA_EPP)
lincan/src/pcan_dongle.c:  outb(dng->ucOldDataContent, wPort);
lincan/src/pcan_dongle.c:  outb(dng->ucOldControlContent, wPort + 2);
lincan/src/pcan_dongle.c:  parport_release(dng->pardev);
lincan/src/pcan_dongle.c:  dng->type = type;
lincan/src/pcan_dongle.c:  dng->wType = (!strncmp(dongle_type, "sp", 4)) ? HW_DONGLE_SJA : HW_DONGLE_SJA_EPP;
lincan/src/pcan_dongle.c:  dng->wInitStep   = 0;  
lincan/src/pcan_dongle.c:      return -ENODEV;
lincan/src/pcan_dongle.c:    dng->dwPort = dng_ports[dng_devices];
lincan/src/pcan_dongle.c:    dng->dwPort = dwPort;
lincan/src/pcan_dongle.c:      return -ENODEV;
lincan/src/pcan_dongle.c:    dng->wIrq   = dng_irqs[dng_devices];    
lincan/src/pcan_dongle.c:    dng->wIrq   = wIrq;    
lincan/src/pcan_dongle.c:  if (dng->wType == HW_DONGLE_SJA)
lincan/src/pcan_dongle.c:	   dng->nMinor        = PCAN_DNG_SP_MINOR_BASE + sp_devices; 
lincan/src/pcan_dongle.c:    	   dng->wEcr = 0; // set to anything
lincan/src/pcan_dongle.c:	    dng->nMinor        = PCAN_DNG_EPP_MINOR_BASE + epp_devices;  
lincan/src/pcan_dongle.c:    	    dng->wEcr = (u16)dng->dwPort + 0x402;
lincan/src/pcan_dongle.c:  if (dng->wType == HW_DONGLE_SJA)
lincan/src/pcan_dongle.c:  dng->wInitStep = 3;
lincan/src/pcan_dongle.c:                               dng->type, dng->nMinor, dng->dwPort, dng->wIrq);
lincan/src/pcan_dongle.c: * template_request_io: - reserve io or memory range for can board
lincan/src/pcan_dongle.c: * The function template_request_io() is used to reserve the io-memory. If your
lincan/src/pcan_dongle.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pcan_dongle.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcan_dongle.c:	dongle_port.chip = candev->chip[0];
lincan/src/pcan_dongle.c: * template_elease_io - free reserved io memory range
lincan/src/pcan_dongle.c: * The function template_release_io() is used to free reserved io-memory.
lincan/src/pcan_dongle.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/pcan_dongle.c: * template_reset - hardware reset routine
lincan/src/pcan_dongle.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcan_dongle.c:	for(chipnr=0;chipnr<candev->nr_sja1000_chips;chipnr++) {
lincan/src/pcan_dongle.c:		chip=candev->chip[chipnr];
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/pcan_dongle.c:	  cdr=pcan_dongle_read_register(chip->chip_base_addr+SJACDR);
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/pcan_dongle.c:	  while (pcan_dongle_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM) {
lincan/src/pcan_dongle.c:		if(!i--) {
lincan/src/pcan_dongle.c:			return -ENODEV;
lincan/src/pcan_dongle.c:		pcan_dongle_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/pcan_dongle.c:	  cdr = pcan_dongle_read_register(chip->chip_base_addr+SJACDR);
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/pcan_dongle.c:	  pcan_dongle_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/pcan_dongle.c: * template_init_hw_data - Initialize hardware cards
lincan/src/pcan_dongle.c: * structure containing information about the installed CAN-board.
lincan/src/pcan_dongle.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/pcan_dongle.c:	candev->res_addr=RESET_ADDR;
lincan/src/pcan_dongle.c:	candev->nr_82527_chips=NR_82527;
lincan/src/pcan_dongle.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/pcan_dongle.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/pcan_dongle.c://	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pcan_dongle.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pcan_dongle.c: * template_init_chip_data - Initialize chips
lincan/src/pcan_dongle.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->chip_type=CHIP_TYPE;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | sjaOCR_TX0_LH;
lincan/src/pcan_dongle.c:	candev->chip[chipnr]->flags |= CHIP_IRQ_CUSTOM;  // I don't want setup call request_irq 
lincan/src/pcan_dongle.c: * template_init_obj_data - Initialize message buffers
lincan/src/pcan_dongle.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/pcan_dongle.c:	chip->msgobj[objnr]->obj_flags=0;
lincan/src/pcan_dongle.c: * template_program_irq - program interrupts
lincan/src/pcan_dongle.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/pcan_dongle.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcan_dongle.c: * template_write_register - Low level write register routine
lincan/src/pcan_dongle.c:   address -= dongle_port.chip->chip_base_addr;  // it's in mutiplexed mode
lincan/src/pcan_dongle.c: * template_read_register - Low level read register routine
lincan/src/pcan_dongle.c:  address -= dongle_port.chip->chip_base_addr;  // it's in mutiplexed mode
lincan/src/pcan_dongle.c:	hwspecops->request_io = pcan_dongle_request_io;
lincan/src/pcan_dongle.c:	hwspecops->release_io = pcan_dongle_release_io;
lincan/src/pcan_dongle.c:	hwspecops->reset = pcan_dongle_reset;
lincan/src/pcan_dongle.c:	hwspecops->init_hw_data = pcan_dongle_init_hw_data;
lincan/src/pcan_dongle.c:	hwspecops->init_chip_data = pcan_dongle_init_chip_data;
lincan/src/pcan_dongle.c:	hwspecops->init_obj_data = pcan_dongle_init_obj_data;
lincan/src/pcan_dongle.c:	hwspecops->write_register = pcan_dongle_write_register;
lincan/src/pcan_dongle.c:	hwspecops->read_register = pcan_dongle_read_register;
lincan/src/pcan_dongle.c:	hwspecops->program_irq = pcan_dongle_program_irq;
lincan/src/pccan.c: * Linux CAN-bus device driver.
lincan/src/pccan.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pccan.c: * This software is released under the GPL-License.
lincan/src/pccan.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pccan.c:	if (!can_request_io_region(candev->io_addr+0x4000,0x20,DEVICE_NAME)) {
lincan/src/pccan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr+0x4000);
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:	else if (!can_request_io_region(candev->io_addr+0x6000,0x04,DEVICE_NAME)) {
lincan/src/pccan.c:		can_release_io_region(candev->io_addr+0x4000,0x20);
lincan/src/pccan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr+0x6000);
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr+0x4000, candev->io_addr+0x4000+0x20-1);
lincan/src/pccan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr+0x6000, candev->io_addr+0x6000+0x04-1);
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:	if (!can_request_io_region(candev->io_addr+0x5000,0x20,DEVICE_NAME)) {
lincan/src/pccan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr+0x5000);
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr+0x5000, candev->io_addr+0x5000+0x20-1);
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:	for(i=0, io_addr=candev->io_addr+0x2000; i<8; i++, io_addr+=0x400) {
lincan/src/pccan.c:			while(i--){
lincan/src/pccan.c:				io_addr-=0x400;
lincan/src/pccan.c:			return -ENODEV;
lincan/src/pccan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", io_addr, io_addr+0x40-1);
lincan/src/pccan.c:	can_release_io_region(candev->io_addr+0x4000,0x20);
lincan/src/pccan.c:	can_release_io_region(candev->io_addr+0x6000,0x04);
lincan/src/pccan.c:	can_release_io_region(candev->io_addr+0x5000,0x20);
lincan/src/pccan.c:	for(i=0, io_addr=candev->io_addr+0x2000; i<8; i++, io_addr+=0x400) {
lincan/src/pccan.c:		outb(0x00,candev->res_addr);
lincan/src/pccan.c:	outb(0x01,candev->res_addr);
lincan/src/pccan.c:	outb(0x00,candev->chip[0]->chip_base_addr+SJACR);
lincan/src/pccan.c:	while ( (inb(candev->chip[0]->chip_base_addr+SJACR) & sjaCR_RR)
lincan/src/pccan.c:		return -ENODEV;
lincan/src/pccan.c:	DEBUGMSG("Resetting pccan-d hardware ...\n");
lincan/src/pccan.c:		outb(0x00,candev->res_addr);
lincan/src/pccan.c:	outb(0x01,candev->res_addr);
lincan/src/pccan.c:	outb(0x00,candev->chip[0]->chip_base_addr+SJACR);
lincan/src/pccan.c:	outb(0x00,candev->chip[1]->chip_base_addr+SJACR);
lincan/src/pccan.c:		while ( (inb(candev->chip[chip_nr]->chip_base_addr +
lincan/src/pccan.c:			return -ENODEV;
lincan/src/pccan.c:		can_disable_irq(candev->chip[i]->chip_irq);
lincan/src/pccan.c:	DEBUGMSG("Resetting pccan-q hardware ...\n");
lincan/src/pccan.c:		outb(0x00,candev->res_addr);
lincan/src/pccan.c:	outb_p(0x01,candev->res_addr);
lincan/src/pccan.c:	outb(0x00,candev->chip[2]->chip_base_addr+SJACR);
lincan/src/pccan.c:	outb(0x00,candev->chip[3]->chip_base_addr+SJACR);
lincan/src/pccan.c:		while( (inb(candev->chip[chip_nr]->chip_base_addr +
lincan/src/pccan.c:			return -ENODEV;
lincan/src/pccan.c:		while( (inb(candev->chip[chip_nr]->chip_base_addr +
lincan/src/pccan.c:			return -ENODEV;
lincan/src/pccan.c:		can_enable_irq(candev->chip[i]->chip_irq);
lincan/src/pccan.c:	candev->res_addr=candev->io_addr+0x6001;
lincan/src/pccan.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pccan.c:	if (!strcmp(candev->hwname,"pccan-q")) {
lincan/src/pccan.c:		candev->nr_82527_chips=2;
lincan/src/pccan.c:		candev->nr_sja1000_chips=2;
lincan/src/pccan.c:		candev->nr_all_chips=4;
lincan/src/pccan.c:	if (!strcmp(candev->hwname,"pccan-f") |
lincan/src/pccan.c:	    !strcmp(candev->hwname,"pccan-s")) {
lincan/src/pccan.c:		candev->nr_82527_chips=0;
lincan/src/pccan.c:		candev->nr_sja1000_chips=1;
lincan/src/pccan.c:		candev->nr_all_chips=1;
lincan/src/pccan.c:	if (!strcmp(candev->hwname,"pccan-d")) {
lincan/src/pccan.c:		candev->nr_82527_chips=0;
lincan/src/pccan.c:		candev->nr_sja1000_chips=2;
lincan/src/pccan.c:		candev->nr_all_chips=2;
lincan/src/pccan.c:	if (!strcmp(candev->hwname,"pccan-q")) {
lincan/src/pccan.c:			i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pccan.c:			candev->chip[chipnr]->flags = CHIP_SEGMENTED;
lincan/src/pccan.c:			candev->chip[chipnr]->int_cpu_reg=iCPU_DSC;
lincan/src/pccan.c:			candev->chip[chipnr]->int_clk_reg=iCLK_SL1;
lincan/src/pccan.c:			candev->chip[chipnr]->int_bus_reg=iBUS_CBY;
lincan/src/pccan.c:			candev->chip[chipnr]->sja_cdr_reg = 0;
lincan/src/pccan.c:			candev->chip[chipnr]->sja_ocr_reg = 0;	
lincan/src/pccan.c:			sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pccan.c:			candev->chip[chipnr]->flags = 0;
lincan/src/pccan.c:			candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/pccan.c:			candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/pccan.c:			candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/pccan.c:			candev->chip[chipnr]->sja_cdr_reg =
lincan/src/pccan.c:			candev->chip[chipnr]->sja_ocr_reg = 
lincan/src/pccan.c:		candev->chip[chipnr]->chip_base_addr=0x1000*chipnr+0x2000+candev->io_addr;
lincan/src/pccan.c:		sja1000_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pccan.c:		candev->chip[chipnr]->chip_base_addr=0x1000*chipnr+0x4000+candev->io_addr;
lincan/src/pccan.c:		candev->chip[chipnr]->flags = 0;
lincan/src/pccan.c:		candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/pccan.c:		candev->chip[chipnr]->int_clk_reg = 0;
lincan/src/pccan.c:		candev->chip[chipnr]->int_bus_reg = 0;
lincan/src/pccan.c:		candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CLK_OFF;
lincan/src/pccan.c:		candev->chip[chipnr]->sja_ocr_reg = 
lincan/src/pccan.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/pccan.c:	if (!strcmp(chip->chip_type,"sja1000")) {
lincan/src/pccan.c:		chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/pccan.c:		chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr+(objnr+1)*0x10+(int)((objnr+1)/4)*0x3c0;
lincan/src/pccan.c:		switch (candev->chip[i]->chip_irq) {
lincan/src/pccan.c:				return -ENODEV;
lincan/src/pccan.c:	outb(irq_reg_value,0x6000+candev->io_addr);
lincan/src/pccan.c:	outb(0x80,0x6000+candev->io_addr+0x02);
lincan/src/pccan.c:	DEBUGMSG("Selected pccan on-board 16 MHz oscillator\n");
lincan/src/pccan.c:	hwspecops->request_io = pccanf_request_io;
lincan/src/pccan.c:	hwspecops->release_io = pccanf_release_io;
lincan/src/pccan.c:	hwspecops->reset = pccanf_reset;
lincan/src/pccan.c:	hwspecops->init_hw_data = pccan_init_hw_data;
lincan/src/pccan.c:	hwspecops->init_chip_data = pccan_init_chip_data;
lincan/src/pccan.c:	hwspecops->init_obj_data = pccan_init_obj_data;
lincan/src/pccan.c:	hwspecops->write_register = pccan_write_register;
lincan/src/pccan.c:	hwspecops->read_register = pccan_read_register;
lincan/src/pccan.c:	hwspecops->program_irq = pccan_program_irq;
lincan/src/pccan.c:	hwspecops->request_io = pccand_request_io;
lincan/src/pccan.c:	hwspecops->release_io = pccand_release_io;
lincan/src/pccan.c:	hwspecops->reset = pccand_reset;
lincan/src/pccan.c:	hwspecops->init_hw_data = pccan_init_hw_data;
lincan/src/pccan.c:	hwspecops->init_chip_data = pccan_init_chip_data;
lincan/src/pccan.c:	hwspecops->init_obj_data = pccan_init_obj_data;
lincan/src/pccan.c:	hwspecops->write_register = pccan_write_register;
lincan/src/pccan.c:	hwspecops->read_register = pccan_read_register;
lincan/src/pccan.c:	hwspecops->program_irq = pccan_program_irq;
lincan/src/pccan.c:	hwspecops->request_io = pccanq_request_io;
lincan/src/pccan.c:	hwspecops->release_io = pccanq_release_io;
lincan/src/pccan.c:	hwspecops->reset = pccanq_reset;
lincan/src/pccan.c:	hwspecops->init_hw_data = pccan_init_hw_data;
lincan/src/pccan.c:	hwspecops->init_chip_data = pccan_init_chip_data;
lincan/src/pccan.c:	hwspecops->init_obj_data = pccan_init_obj_data;
lincan/src/pccan.c:	hwspecops->write_register = pccan_write_register;
lincan/src/pccan.c:	hwspecops->read_register = pccan_read_register;
lincan/src/pccan.c:	hwspecops->program_irq = pccan_program_irq;
lincan/src/pcccan.c: * Linux CAN-bus device driver.
lincan/src/pcccan.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pcccan.c: * This software is released under the GPL-License.
lincan/src/pcccan.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pcccan.c:/* This file contains the low level functions for the pcccan-1 card from Gespac.
lincan/src/pcccan.c:int pcccan_irq=-1;
lincan/src/pcccan.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pcccan.c: * pcccan_request_io: - reserve io or memory range for can board
lincan/src/pcccan.c: * The function pcccan_request_io() is used to reserve the io-memory. If your
lincan/src/pcccan.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pcccan.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcccan.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/pcccan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/pcccan.c:		return -ENODEV;
lincan/src/pcccan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/pcccan.c: * pcccan_elease_io - free reserved io memory range
lincan/src/pcccan.c: * The function pcccan_release_io() is used to free reserved io-memory.
lincan/src/pcccan.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/pcccan.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/pcccan.c: * pcccan_reset - hardware reset routine
lincan/src/pcccan.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcccan.c:	DEBUGMSG("Resetting pcccan-1 hardware ...\n");
lincan/src/pcccan.c:		outb(0x0,candev->res_addr);
lincan/src/pcccan.c:	outb(iCPU,candev->io_addr+0x1);
lincan/src/pcccan.c:	while ( (inb(candev->io_addr+0x2)&0x80) && (i<=15) ) {
lincan/src/pcccan.c:		return -ENODEV;
lincan/src/pcccan.c: * pcccan_init_hw_data - Initialize hardware cards
lincan/src/pcccan.c: * structure containing information about the installed CAN-board.
lincan/src/pcccan.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/pcccan.c:	candev->res_addr=candev->io_addr;
lincan/src/pcccan.c:	candev->nr_82527_chips=NR_82527;
lincan/src/pcccan.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/pcccan.c:        candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/pcccan.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pcccan.c: * pcccan_init_chip_data - Initialize chips
lincan/src/pcccan.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pcccan.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/pcccan.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/pcccan.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC | iCPU_DMC;
lincan/src/pcccan.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1 | iCLK_CD0;
lincan/src/pcccan.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY | iBUS_DR1;
lincan/src/pcccan.c:	candev->chip[chipnr]->sja_cdr_reg = 0;
lincan/src/pcccan.c:	candev->chip[chipnr]->sja_ocr_reg = 0;
lincan/src/pcccan.c:	pcccan_irq=candev->chip[chipnr]->chip_irq;
lincan/src/pcccan.c:	pcccan_base=candev->chip[chipnr]->chip_base_addr;
lincan/src/pcccan.c: * pcccan_init_obj_data - Initialize message buffers
lincan/src/pcccan.c:	chip->msgobj[objnr]->obj_base_addr=(objnr+1)*0x10;
lincan/src/pcccan.c: * pcccan_program_irq - program interrupts
lincan/src/pcccan.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/pcccan.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcccan.c: * pcccan_write_register - Low level write register routine
lincan/src/pcccan.c:	outb(address - pcccan_base, pcccan_base+1);
lincan/src/pcccan.c: * pcccan_read_register - Low level read register routine
lincan/src/pcccan.c:	outb(address - pcccan_base, pcccan_base+1);
lincan/src/pcccan.c:	hwspecops->request_io = pcccan_request_io;
lincan/src/pcccan.c:	hwspecops->release_io = pcccan_release_io;
lincan/src/pcccan.c:	hwspecops->reset = pcccan_reset;
lincan/src/pcccan.c:	hwspecops->init_hw_data = pcccan_init_hw_data;
lincan/src/pcccan.c:	hwspecops->init_chip_data = pcccan_init_chip_data;
lincan/src/pcccan.c:	hwspecops->init_obj_data = pcccan_init_obj_data;
lincan/src/pcccan.c:	hwspecops->write_register = pcccan_write_register;
lincan/src/pcccan.c:	hwspecops->read_register = pcccan_read_register;
lincan/src/pcccan.c:	hwspecops->program_irq = pcccan_program_irq;
lincan/src/pcm3680.c: * Linux CAN-bus device driver.
lincan/src/pcm3680.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pcm3680.c: * This software is released under the GPL-License.
lincan/src/pcm3680.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pcm3680.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pcm3680.c: * template_request_io: - reserve io or memory range for can board
lincan/src/pcm3680.c: * The function template_request_io() is used to reserve the io-memory. If your
lincan/src/pcm3680.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pcm3680.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcm3680.c:	if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME " - pcm3680")) {
lincan/src/pcm3680.c:		CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr);
lincan/src/pcm3680.c:		return -ENODEV;
lincan/src/pcm3680.c:	if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/pcm3680.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/pcm3680.c:		can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/pcm3680.c:		return -ENODEV;
lincan/src/pcm3680.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/pcm3680.c: * template_release_io - free reserved io memory range
lincan/src/pcm3680.c: * The function template_release_io() is used to free reserved io-memory.
lincan/src/pcm3680.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/pcm3680.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/pcm3680.c:	can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/pcm3680.c: * template_reset - hardware reset routine
lincan/src/pcm3680.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcm3680.c:	for(chipnr=0;chipnr<candev->nr_sja1000_chips;chipnr++) {
lincan/src/pcm3680.c:		chip=candev->chip[chipnr];
lincan/src/pcm3680.c:		pcm3680_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/pcm3680.c:		pcm3680_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/pcm3680.c:		pcm3680_write_register(0x01, chip->chip_base_addr + 0x100);
lincan/src/pcm3680.c:		while (pcm3680_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/pcm3680.c:			if(!i--) return -ENODEV;
lincan/src/pcm3680.c:			pcm3680_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/pcm3680.c:		pcm3680_write_register(sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/pcm3680.c:		pcm3680_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/pcm3680.c: * template_init_hw_data - Initialize hardware cards
lincan/src/pcm3680.c: * structure containing information about the installed CAN-board.
lincan/src/pcm3680.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/pcm3680.c:	candev->res_addr=RESET_ADDR;
lincan/src/pcm3680.c:	candev->nr_82527_chips=NR_82527;
lincan/src/pcm3680.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/pcm3680.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/pcm3680.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pcm3680.c: * template_init_chip_data - Initialize chips
lincan/src/pcm3680.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pcm3680.c:	candev->chip[chipnr]->chip_base_addr=
lincan/src/pcm3680.c:			candev->io_addr + 0x200*chipnr;
lincan/src/pcm3680.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/pcm3680.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/pcm3680.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/pcm3680.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/pcm3680.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |
lincan/src/pcm3680.c: * template_init_obj_data - Initialize message buffers
lincan/src/pcm3680.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/pcm3680.c: * template_program_irq - program interrupts
lincan/src/pcm3680.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/pcm3680.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/pcm3680.c: * template_write_register - Low level write register routine
lincan/src/pcm3680.c: * template_read_register - Low level read register routine
lincan/src/pcm3680.c:	hwspecops->request_io = pcm3680_request_io;
lincan/src/pcm3680.c:	hwspecops->release_io = pcm3680_release_io;
lincan/src/pcm3680.c:	hwspecops->reset = pcm3680_reset;
lincan/src/pcm3680.c:	hwspecops->init_hw_data = pcm3680_init_hw_data;
lincan/src/pcm3680.c:	hwspecops->init_chip_data = pcm3680_init_chip_data;
lincan/src/pcm3680.c:	hwspecops->init_obj_data = pcm3680_init_obj_data;
lincan/src/pcm3680.c:	hwspecops->write_register = pcm3680_write_register;
lincan/src/pcm3680.c:	hwspecops->read_register = pcm3680_read_register;
lincan/src/pcm3680.c:	hwspecops->program_irq = pcm3680_program_irq;
lincan/src/pikronisa.c: * Linux CAN-bus device driver.
lincan/src/pikronisa.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pikronisa.c: * This software is released under the GPL-License.
lincan/src/pikronisa.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pikronisa.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pikronisa.c: * pikronisa_request_io: - reserve io or memory range for can board
lincan/src/pikronisa.c: * The function pikronisa_request_io() is used to reserve the io-memory. If your
lincan/src/pikronisa.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/pikronisa.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pikronisa.c:	if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME " - pikronisa")) {
lincan/src/pikronisa.c:		CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr);
lincan/src/pikronisa.c:		return -ENODEV;
lincan/src/pikronisa.c:	if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/pikronisa.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/pikronisa.c:		can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/pikronisa.c:		return -ENODEV;
lincan/src/pikronisa.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/pikronisa.c: * pikronisa_elease_io - free reserved io memory range
lincan/src/pikronisa.c: * The function pikronisa_release_io() is used to free reserved io-memory.
lincan/src/pikronisa.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/pikronisa.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/pikronisa.c:	can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/pikronisa.c: * pikronisa_reset - hardware reset routine
lincan/src/pikronisa.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/pikronisa.c:	struct canchip_t *chip=candev->chip[0];
lincan/src/pikronisa.c:	pikronisa_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/pikronisa.c:	cdr=pikronisa_read_register(chip->chip_base_addr+SJACDR);
lincan/src/pikronisa.c:	pikronisa_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/pikronisa.c:	pikronisa_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/pikronisa.c:	pikronisa_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/pikronisa.c:	while (pikronisa_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/pikronisa.c:		if(!i--) return -ENODEV;
lincan/src/pikronisa.c:		pikronisa_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/pikronisa.c:	cdr=pikronisa_read_register(chip->chip_base_addr+SJACDR);
lincan/src/pikronisa.c:	pikronisa_write_register(cdr|sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/pikronisa.c:	pikronisa_write_register(0, chip->chip_base_addr+SJAIER);
lincan/src/pikronisa.c: * pikronisa_init_hw_data - Initialize hardware cards
lincan/src/pikronisa.c: * structure containing information about the installed CAN-board.
lincan/src/pikronisa.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/pikronisa.c:	candev->res_addr=RESET_ADDR;
lincan/src/pikronisa.c:	candev->nr_82527_chips=0;
lincan/src/pikronisa.c:	candev->nr_sja1000_chips=1;
lincan/src/pikronisa.c:	candev->nr_all_chips=1;
lincan/src/pikronisa.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/pikronisa.c: * pikronisa_init_chip_data - Initialize chips
lincan/src/pikronisa.c:	/*sja1000_fill_chipspecops(candev->chip[chipnr]);*/
lincan/src/pikronisa.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pikronisa.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/pikronisa.c:	candev->chip[chipnr]->clock = 24000000;
lincan/src/pikronisa.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/pikronisa.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/pikronisa.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/pikronisa.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL | sjaOCR_TX0_LH;
lincan/src/pikronisa.c: * pikronisa_init_obj_data - Initialize message buffers
lincan/src/pikronisa.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr;
lincan/src/pikronisa.c: * pikronisa_program_irq - program interrupts
lincan/src/pikronisa.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/pikronisa.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/pikronisa.c: * pikronisa_write_register - Low level write register routine
lincan/src/pikronisa.c: * pikronisa_read_register - Low level read register routine
lincan/src/pikronisa.c:	hwspecops->request_io = pikronisa_request_io;
lincan/src/pikronisa.c:	hwspecops->release_io = pikronisa_release_io;
lincan/src/pikronisa.c:	hwspecops->reset = pikronisa_reset;
lincan/src/pikronisa.c:	hwspecops->init_hw_data = pikronisa_init_hw_data;
lincan/src/pikronisa.c:	hwspecops->init_chip_data = pikronisa_init_chip_data;
lincan/src/pikronisa.c:	hwspecops->init_obj_data = pikronisa_init_obj_data;
lincan/src/pikronisa.c:	hwspecops->write_register = pikronisa_write_register;
lincan/src/pikronisa.c:	hwspecops->read_register = pikronisa_read_register;
lincan/src/pikronisa.c:	hwspecops->program_irq = pikronisa_program_irq;
lincan/src/pip.c: * Linux CAN-bus device driver.
lincan/src/pip.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/pip.c: * This software is released under the GPL-License.
lincan/src/pip.c: * Version lincan-0.3  17 Jun 2004
lincan/src/pip.c:	if ((candev->io_addr != 0x1000) && (candev->io_addr != 0x8000)
lincan/src/pip.c:	    && (candev->io_addr != 0xe000)) {
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:	if (!can_request_io_region(candev->io_addr, 0x100, DEVICE_NAME)) {
lincan/src/pip.c:		CANMSG("Unable to open port: 0x%lx\n", candev->io_addr);
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:		can_release_io_region(candev->io_addr, 0x100);
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n",
lincan/src/pip.c:			 candev->io_addr, candev->io_addr + 0x100 - 1);
lincan/src/pip.c:		DEBUGMSG("Registered IO-memory : 0x%x - 0x%x\n",
lincan/src/pip.c:	can_release_io_region(candev->io_addr, 0x100);
lincan/src/pip.c:	DEBUGMSG("Resetting %s hardware ...\n", candev->hwname);
lincan/src/pip.c:		outb(0x01, candev->res_addr);
lincan/src/pip.c:	outb(0x0, candev->res_addr);
lincan/src/pip.c:	while ((inb(candev->io_addr + iCPU) & iCPU_RST) && (i <= 15)) {
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:	candev->res_addr = PIP_CANCTRL_REG;
lincan/src/pip.c:	candev->nr_82527_chips = 1;
lincan/src/pip.c:	candev->nr_sja1000_chips = 0;
lincan/src/pip.c:	candev->nr_all_chips = 1;
lincan/src/pip.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/pip.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/pip.c:	candev->chip[chipnr]->chip_base_addr = candev->io_addr;
lincan/src/pip.c:	candev->chip[chipnr]->clock = 8000000;
lincan/src/pip.c:	candev->chip[chipnr]->int_cpu_reg = 0;
lincan/src/pip.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/pip.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/pip.c:	candev->chip[chipnr]->sja_cdr_reg = 0;
lincan/src/pip.c:	candev->chip[chipnr]->sja_ocr_reg = 0;
lincan/src/pip.c:	chip->msgobj[objnr]->obj_base_addr =
lincan/src/pip.c:	    chip->chip_base_addr + (objnr + 1) * 0x10;
lincan/src/pip.c:	outb(0x01, candev->res_addr);
lincan/src/pip.c:	if (strcmp(candev->hwname, "pip5") == 0) {
lincan/src/pip.c:	} else if (strcmp(candev->hwname, "pip6") == 0) {
lincan/src/pip.c:	} else if (strcmp(candev->hwname, "pip7") == 0) {
lincan/src/pip.c:	} else if (strcmp(candev->hwname, "pip8") == 0) {
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:	if ((candev->chip[0]->chip_irq < 1)
lincan/src/pip.c:	    || (candev->chip[0]->chip_irq > 15)) {
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:	if (((0x01 << (candev->chip[0]->chip_irq - 1)) & irq_mask) == 0) {
lincan/src/pip.c:		       candev->chip[0]->chip_irq);
lincan/src/pip.c:		return -ENODEV;
lincan/src/pip.c:	switch (candev->io_addr) {
lincan/src/pip.c:			return -ENODEV;
lincan/src/pip.c:	can_reg = (candev->chip[0]->chip_irq << 4) | can_addr;
lincan/src/pip.c:	outb((candev->chip[0]->chip_irq << 4) | can_addr, PIP_CANRES_REG);
lincan/src/pip.c:	/* re-enable the chip */
lincan/src/pip.c:	outb(0x00, candev->res_addr);
lincan/src/pip.c:	hwspecops->request_io = pip_request_io;
lincan/src/pip.c:	hwspecops->release_io = pip_release_io;
lincan/src/pip.c:	hwspecops->reset = pip_reset;
lincan/src/pip.c:	hwspecops->init_hw_data = pip_init_hw_data;
lincan/src/pip.c:	hwspecops->init_chip_data = pip_init_chip_data;
lincan/src/pip.c:	hwspecops->init_obj_data = pip_init_obj_data;
lincan/src/pip.c:	hwspecops->write_register = pip_write_register;
lincan/src/pip.c:	hwspecops->read_register = pip_read_register;
lincan/src/pip.c:	hwspecops->program_irq = pip_program_irq;
lincan/src/proc.c: * Linux CAN-bus device driver.
lincan/src/proc.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/proc.c: * This software is released under the GPL-License.
lincan/src/proc.c: * Version lincan-0.3  17 Jun 2004
lincan/src/proc.c:	new_entry->low_ino = 0;
lincan/src/proc.c:	new_entry->namelen = namelen;
lincan/src/proc.c:	new_entry->name = namestore;
lincan/src/proc.c:	new_entry->mode = mode;
lincan/src/proc.c:	new_entry->nlink = 0;
lincan/src/proc.c:	new_entry->fill_inode = can_fill_inode;
lincan/src/proc.c:	new_entry->parent = parent;
lincan/src/proc.c:		proc_unregister(parent, del->low_ino);
lincan/src/proc.c:	else return -ENODEV;
lincan/src/proc.c:	char *link_dest = (char*)ent->data;
lincan/src/proc.c:	entry->readlink_proc = can_proc_readlink;
lincan/src/proc.c:	entry->data = dest;
lincan/src/proc.c:	if(!del) return -ENODEV;
lincan/src/proc.c:	remove_proc_entry(del->name,parent);
lincan/src/proc.c:	base->can_proc_entry = can_create_proc_entry("can", S_IFDIR | S_IRUGO | 
lincan/src/proc.c:	if (base->can_proc_entry == NULL)
lincan/src/proc.c:		return -ENODEV;
lincan/src/proc.c:	for (board=0; board<hardware_p->nr_boards; board++) {
lincan/src/proc.c:		candev=hardware_p->candevice[board];
lincan/src/proc.c:		return -ENODEV;
lincan/src/proc.c:	if (can_remove_proc_entry(base->can_proc_entry, &proc_root)) 
lincan/src/proc.c:		return -ENODEV;
lincan/src/proc.c:	for (i=0; i < candev->nr_all_chips; i++) {
lincan/src/proc.c:		base->channel[cc] = (struct channelproc_t *)
lincan/src/proc.c:		if (base->channel[cc] == NULL)
lincan/src/proc.c:			return -ENOMEM;
lincan/src/proc.c:		sprintf(base->channel[cc]->ch_name, "channel%d",cc);
lincan/src/proc.c:		base->channel[cc]->ch_entry = can_create_proc_entry(
lincan/src/proc.c:						base->channel[cc]->ch_name,
lincan/src/proc.c:						base->can_proc_entry);
lincan/src/proc.c:		if (base->channel[cc]->ch_entry == NULL)
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:		cc--;
lincan/src/proc.c:		if(!base->channel[cc]) continue;
lincan/src/proc.c:			return -ENODEV; 
lincan/src/proc.c:		/* name: base->channel[cc]->ch_name */
lincan/src/proc.c:		if (can_remove_proc_entry(base->channel[cc]->ch_entry,
lincan/src/proc.c:							base->can_proc_entry))
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:		can_checked_free(base->channel[cc]);
lincan/src/proc.c:		base->channel[cc] = NULL;
lincan/src/proc.c:	max_objects=chips_p[chip_nr]->max_objects;
lincan/src/proc.c:		base->channel[chip_nr]->object[i] = (struct objectproc_t *)
lincan/src/proc.c:		if (base->channel[chip_nr]->object[i] == NULL)
lincan/src/proc.c:			return -ENOMEM;
lincan/src/proc.c:		sprintf(base->channel[chip_nr]->object[i]->obj_name,"object%d",i);
lincan/src/proc.c:		sprintf(base->channel[chip_nr]->object[i]->lnk_name,"dev");
lincan/src/proc.c:		base->channel[chip_nr]->object[i]->obj_entry = can_create_proc_entry(
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->obj_name,
lincan/src/proc.c:				base->channel[chip_nr]->ch_entry);
lincan/src/proc.c:		if (base->channel[chip_nr]->object[i]->obj_entry == NULL)
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:		sprintf(base->channel[chip_nr]->object[i]->lnk_dev,"/dev/can%d",
lincan/src/proc.c:			chips_p[chip_nr]->msgobj[i]->minor);
lincan/src/proc.c:		base->channel[chip_nr]->object[i]->lnk = can_proc_symlink(
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->lnk_name,
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->obj_entry,
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->lnk_dev);
lincan/src/proc.c:		if (base->channel[chip_nr]->object[i]->lnk == NULL)
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:	obj=chips_p[chip_nr]->max_objects;
lincan/src/proc.c:		if(!base->channel[chip_nr]->object[i]) continue;
lincan/src/proc.c:		/* name: base->channel[chip_nr]->object[i]->lnk_name */
lincan/src/proc.c:		if (can_remove_proc_entry( base->channel[chip_nr]->object[i]->lnk,
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->obj_entry))	
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:		/* name: base->channel[chip_nr]->object[i]->obj_name */
lincan/src/proc.c:				base->channel[chip_nr]->object[i]->obj_entry,
lincan/src/proc.c:				base->channel[chip_nr]->ch_entry))
lincan/src/proc.c:			return -ENODEV;
lincan/src/proc.c:		can_checked_free(base->channel[chip_nr]->object[i]);
lincan/src/proc.c:		base->channel[chip_nr]->object[i]=NULL;
lincan/src/read.c: * Linux CAN-bus device driver.
lincan/src/read.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/read.c: * This software is released under the GPL-License.
lincan/src/read.c: * Version lincan-0.3  17 Jun 2004
lincan/src/read.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/read.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/read.c:		return -ENODEV;
lincan/src/read.c:	qends = canuser->qends;
lincan/src/read.c:		if (file->f_flags & O_NONBLOCK) {
lincan/src/read.c:			return -EAGAIN;
lincan/src/read.c:				return -EINTR;
lincan/src/read.c:			return -EIO;
lincan/src/read.c:	ret = copy_to_user(buffer, &slot->msg, sizeof(struct canmsg_t));
lincan/src/read.c:	bytes_to_copy = length-sizeof(struct canmsg_t);
lincan/src/read.c:	if(ret)	return -EFAULT;
lincan/src/read.c:		ret = copy_to_user(buffer, &slot->msg, sizeof(struct canmsg_t));
lincan/src/read.c:		bytes_to_copy -= sizeof(struct canmsg_t);
lincan/src/read.c:		if(ret)	return -EFAULT;
lincan/src/read.c:	return length-bytes_to_copy;
lincan/src/read_rtl.c: * Linux CAN-bus device driver.
lincan/src/read_rtl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/read_rtl.c: * This software is released under the GPL-License.
lincan/src/read_rtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/read_rtl.c:			return -EAGAIN;
lincan/src/read_rtl.c:			if (ret==-1) {
lincan/src/read_rtl.c:				return -EINTR;
lincan/src/read_rtl.c:			return -EIO;
lincan/src/read_rtl.c:	*(msg_buff++)=slot->msg;
lincan/src/read_rtl.c:	bytes_to_copy = length-sizeof(struct canmsg_t);
lincan/src/read_rtl.c:		*(msg_buff++)=slot->msg;
lincan/src/read_rtl.c:		bytes_to_copy -= sizeof(struct canmsg_t);
lincan/src/read_rtl.c:	return length-bytes_to_copy;
lincan/src/read_rtl.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/read_rtl.c:		return -ENODEV;
lincan/src/read_rtl.c:	qends = canuser->qends;
lincan/src/read_rtl.c:	/*if (((struct canmsg_t *)buffer)->flags & MSG_RTR)
lincan/src/read_rtl.c:		ret = can_std_read_rtl(qends, fptr->f_flags & O_NONBLOCK,
lincan/src/select.c: * Header file for the Linux CAN-bus driver.
lincan/src/select.c: * Added by Pavel Pisa - OCERA team member
lincan/src/select.c: * This software is released under the GPL-License.
lincan/src/select.c: * Version lincan-0.3  17 Jun 2004
lincan/src/select.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/select.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/select.c:		return -ENODEV;
lincan/src/select.c:	obj = canuser->msgobj;
lincan/src/select.c:	qends = canuser->qends;
lincan/src/select.c:        if (file->f_mode & FMODE_READ) {
lincan/src/select.c:                poll_wait(file, &qends->endinfo.fileinfo.readq, wait);
lincan/src/select.c:		for(i=CANQUEUE_PRIO_NR;--i>=0;) {
lincan/src/select.c:			if(!list_empty(&qends->active[i]))
lincan/src/select.c:        if ((file->f_mode & FMODE_WRITE) && !(file->f_flags & O_SYNC)) {
lincan/src/select.c:                poll_wait(file, &qends->endinfo.fileinfo.writeq, wait);
lincan/src/select.c:			if(canque_fifo_test_fl(&edge->fifo,FULL))
lincan/src/select.c:        if ((file->f_mode & FMODE_WRITE) && (file->f_flags & O_SYNC)) {
lincan/src/select.c:                poll_wait(file, &qends->endinfo.fileinfo.emptyq, wait);
lincan/src/select.c:			if(!canque_fifo_test_fl(&edge->fifo,EMPTY))
lincan/src/setup.c: * Linux CAN-bus device driver.
lincan/src/setup.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/setup.c: * This software is released under the GPL-License.
lincan/src/setup.c: * Version lincan-0.3  17 Jun 2004
lincan/src/setup.c: * can_checked_malloc - memory allocation with registering of requested blocks
lincan/src/setup.c:	mem_new->next=mem_head;
lincan/src/setup.c:	mem_new->address=address_p;
lincan/src/setup.c:	mem_new->size=size;
lincan/src/setup.c: * can_checked_free - free memory allocated by  can_checked_malloc()
lincan/src/setup.c:	for(mem_pptr = &mem_head; (mem_del = *mem_pptr); mem_pptr = &mem_del->next) {
lincan/src/setup.c:		if (mem_del->address != address_p)
lincan/src/setup.c:		*mem_pptr=mem_del->next;
lincan/src/setup.c:	return -1;
lincan/src/setup.c: * can_del_mem_list - check for stale memory allocations at driver finalization
lincan/src/setup.c:		CANMSG("can_del_mem_list: no entries on the list - OK\n");
lincan/src/setup.c:		mem_head=mem->next;
lincan/src/setup.c:			mem->address, (int)mem->size);
lincan/src/setup.c:		kfree(mem->address);
lincan/src/setup.c: * can_request_io_region - request IO space region
lincan/src/setup.c: * can_release_io_region - release IO space region
lincan/src/setup.c: * can_request_mem_region - request memory space region
lincan/src/setup.c: * can_release_mem_region - release memory space region
lincan/src/setup.c: * can_base_addr_fixup - relocates board physical memory addresses to the CPU accessible ones
lincan/src/setup.c:	offs=new_base-candev->dev_base_addr;
lincan/src/setup.c:	candev->dev_base_addr=new_base;
lincan/src/setup.c:	for(i=0;i<candev->nr_all_chips;i++){
lincan/src/setup.c:		candev->chip[i]->chip_base_addr += offs;
lincan/src/setup.c:		for(j=0;j<candev->chip[i]->max_objects;j++)
lincan/src/setup.c:			candev->chip[i]->msgobj[j]->obj_base_addr += offs;
lincan/src/setup.c: * can_check_dev_taken - checks if bus device description is already taken by driver
lincan/src/setup.c:	for (board_nr=hardware_p->nr_boards; board_nr--; ) {
lincan/src/setup.c:		if((candev=hardware_p->candevice[board_nr])==NULL)
lincan/src/setup.c:		boarddev=candev->sysdevptr.anydev;
lincan/src/setup.c: * register_obj_struct - registers message object into global array
lincan/src/setup.c: * @minorbase: wanted minor number, if (-1) automatically selected
lincan/src/setup.c:			obj->minor=i;
lincan/src/setup.c:	obj->minor=-1;
lincan/src/setup.c:	return -1;
lincan/src/setup.c: * register_chip_struct - registers chip into global array
lincan/src/setup.c: * @minorbase: wanted minor number base, if (-1) automatically selected
lincan/src/setup.c:	return -1;
lincan/src/setup.c: * init_hw_struct - initializes driver hardware description structures
lincan/src/setup.c:	hardware_p->nr_boards=0;
lincan/src/setup.c:		hardware_p->nr_boards++;
lincan/src/setup.c:			return -ENODEV;
lincan/src/setup.c: * init_device_struct - initializes single CAN device/board
lincan/src/setup.c:	int irqsig=-1;
lincan/src/setup.c:		return -ENOMEM;
lincan/src/setup.c:	hardware_p->candevice[card]=candev;
lincan/src/setup.c:	candev->candev_idx=card;
lincan/src/setup.c:	candev->hwname=hw[card];
lincan/src/setup.c:	candev->io_addr=io[card];
lincan/src/setup.c:	candev->dev_base_addr=io[card];
lincan/src/setup.c:	candev->hwspecops=(struct hwspecops_t *)can_checked_malloc(sizeof(struct hwspecops_t));
lincan/src/setup.c:	if (candev->hwspecops==NULL)
lincan/src/setup.c:	memset(candev->hwspecops, 0, sizeof(struct hwspecops_t));
lincan/src/setup.c:	if (candev->hwspecops->init_hw_data(candev))
lincan/src/setup.c:	for (chipnr=0; chipnr < candev->nr_all_chips; chipnr++) {
lincan/src/setup.c:	for (chipnr=0; chipnr < candev->nr_all_chips; chipnr++) {
lincan/src/setup.c:		struct canchip_t *chip=candev->chip[chipnr];
lincan/src/setup.c:		for (objnr=0; objnr<chip->max_objects; objnr++) {
lincan/src/setup.c:			register_obj_struct(chip->msgobj[objnr], m);
lincan/src/setup.c:	*chan_param_idx_p += candev->nr_all_chips;
lincan/src/setup.c:	ret=-ENODEV;
lincan/src/setup.c:	ret=-ENOMEM;
lincan/src/setup.c:	hardware_p->candevice[card]=NULL;
lincan/src/setup.c: * init_chip_struct - initializes one CAN chip structure
lincan/src/setup.c: * @irq: chip IRQ number or (-1) if not appropriate
lincan/src/setup.c:	candev->chip[chipnr]=(struct canchip_t *)can_checked_malloc(sizeof(struct canchip_t));
lincan/src/setup.c:	if ((chip=candev->chip[chipnr])==NULL)
lincan/src/setup.c:		return -ENOMEM;
lincan/src/setup.c:	chip->write_register=candev->hwspecops->write_register;
lincan/src/setup.c:	chip->read_register=candev->hwspecops->read_register;
lincan/src/setup.c:	chip->chipspecops=can_checked_malloc(sizeof(struct chipspecops_t));
lincan/src/setup.c:	if (chip->chipspecops==NULL)
lincan/src/setup.c:		return -ENOMEM;
lincan/src/setup.c:	memset(chip->chipspecops,0,sizeof(struct chipspecops_t));
lincan/src/setup.c:	chip->chip_idx=chipnr;
lincan/src/setup.c:	chip->hostdevice=candev;
lincan/src/setup.c:	chip->chip_irq=irq;
lincan/src/setup.c:	chip->baudrate=baudrate;
lincan/src/setup.c:	chip->flags=0x0;
lincan/src/setup.c:	if(candev->hwspecops->init_chip_data(candev,chipnr)<0)
lincan/src/setup.c:		return -ENODEV;
lincan/src/setup.c:	for (objnr=0; objnr<chip->max_objects; objnr++) {
lincan/src/setup.c: * init_obj_struct - initializes one CAN message object structure
lincan/src/setup.c:	hostchip->msgobj[objnr]=obj;
lincan/src/setup.c:		return -ENOMEM;
lincan/src/setup.c:	obj->minor=-1;
lincan/src/setup.c:	atomic_set(&obj->obj_used,0);
lincan/src/setup.c:	INIT_LIST_HEAD(&obj->obj_users);
lincan/src/setup.c:	init_timer(&obj->tx_timeout);
lincan/src/setup.c:	if(qends == NULL) return -ENOMEM;
lincan/src/setup.c:	obj->hostchip=hostchip;
lincan/src/setup.c:	obj->object=objnr+1;
lincan/src/setup.c:	obj->qends=qends;
lincan/src/setup.c:	obj->tx_qedge=NULL;
lincan/src/setup.c:	obj->tx_slot=NULL;
lincan/src/setup.c:	obj->obj_flags = 0x0;
lincan/src/setup.c:	ret=candev->hwspecops->init_obj_data(hostchip,objnr);
lincan/src/setup.c: * init_hwspecops - finds and initializes board/device specific operations
lincan/src/setup.c:	brp = boardtype_find(candev->hwname);
lincan/src/setup.c:		CANMSG("Sorry, hardware \"%s\" is currently not supported.\n",candev->hwname);
lincan/src/setup.c:		return -EINVAL;
lincan/src/setup.c:		*irqnum_p=brp->irqnum;
lincan/src/setup.c:	brp->board_register(candev->hwspecops);
lincan/src/setup.c: * can_default_irq_dispatch - the first level interrupt dispatch handler
lincan/src/setup.c: *	to chip state structure - @struct canchip_t
lincan/src/setup.c:	retval=chip->chipspecops->irq_handler(irq, chip);
lincan/src/setup.c: * can_chip_setup_irq - attaches chip to the system interrupt processing
lincan/src/setup.c:		return -1;
lincan/src/setup.c:	if(!chip->chipspecops->irq_handler)
lincan/src/setup.c:	if(chip->flags & CHIP_IRQ_CUSTOM)
lincan/src/setup.c:	if ((chip->flags & CHIP_IRQ_VME) == 0) {
lincan/src/setup.c:		if (request_irq(chip->chip_irq,can_default_irq_dispatch,SA_SHIRQ,DEVICE_NAME,chip)) {
lincan/src/setup.c:			DEBUGMSG("Could not register interrupt %d\n",chip->chip_irq);
lincan/src/setup.c:			return -1;
lincan/src/setup.c:			DEBUGMSG("Registered interrupt %d\n",chip->chip_irq);
lincan/src/setup.c:			chip->flags |= CHIP_IRQ_SETUP;
lincan/src/setup.c:		if (chip->chip_irq < 1 || chip->chip_irq > 255) {
lincan/src/setup.c:			return -EINVAL;
lincan/src/setup.c:		request_vmeirq(chip->chip_irq, can_default_irq_dispatch, chip);
lincan/src/setup.c:		DEBUGMSG("Registered VME interrupt vector %d\n",chip->chip_irq);
lincan/src/setup.c:		chip->flags |= CHIP_IRQ_SETUP;
lincan/src/setup.c: * can_chip_free_irq - unregisters chip interrupt handler from the system
lincan/src/setup.c:	if((chip->flags & CHIP_IRQ_SETUP) && (chip->chip_irq>=0)) {
lincan/src/setup.c:		if(chip->flags & CHIP_IRQ_CUSTOM)
lincan/src/setup.c:		if ((chip->flags & CHIP_IRQ_VME) == 0)
lincan/src/setup.c:			free_irq(chip->chip_irq, chip);
lincan/src/setup.c:			free_vmeirq(chip->chip_irq);
lincan/src/setup.c:			chip->flags &= ~CHIP_IRQ_SETUP;
lincan/src/sja1000.c: * Linux CAN-bus device driver.
lincan/src/sja1000.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/sja1000.c: * This software is released under the GPL-License.
lincan/src/sja1000.c: * Version lincan-0.3  17 Jun 2004
lincan/src/sja1000.c:	can_disable_irq(chip->chip_irq);
lincan/src/sja1000.c:		can_enable_irq(chip->chip_irq);
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:	can_enable_irq(chip->chip_irq);
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:	can_write_reg(chip,chip->sja_cdr_reg,SJACDR); 
lincan/src/sja1000.c:	can_write_reg(chip,chip->sja_ocr_reg,SJAOCR); 
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:	if (!chip->baudrate)
lincan/src/sja1000.c:		chip->baudrate=1000000;
lincan/src/sja1000.c:	if (sja1000_baud_rate(chip,chip->baudrate,chip->clock,0,75,0))
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:	/* The acceptance code bits (SJAACR bits 0-7) and the eight most 
lincan/src/sja1000.c:	 * acceptance mask bits (SJAAMR bits 0-7).
lincan/src/sja1000.c: * param sjw synchronization jump width (0-3) prescaled clock cycles
lincan/src/sja1000.c: * param sampl_pt sample point in % (0-100) sets (TSEG1+2)/(TSEG1+TSEG2+3) ratio
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:		error = rate - clock/(brp*(1+tseg/2));
lincan/src/sja1000.c:			error = -error;
lincan/src/sja1000.c:			best_brp = brp-1;
lincan/src/sja1000.c:		return -EINVAL;
lincan/src/sja1000.c:	tseg2 = best_tseg-(sampl_pt*(best_tseg+1))/100;
lincan/src/sja1000.c:	tseg1 = best_tseg-tseg2-2;
lincan/src/sja1000.c:		tseg2 = best_tseg-tseg1-2;
lincan/src/sja1000.c:					(100*(best_tseg-tseg2)/(best_tseg+1)));
lincan/src/sja1000.c:			return -EIO;
lincan/src/sja1000.c:	len = msg->length;
lincan/src/sja1000.c:	id = (msg->id<<5) | ((msg->flags&MSG_RTR)?sjaID0_RTR:0) | len;
lincan/src/sja1000.c:		can_write_reg(chip, msg->data[i], SJATXDAT0+i);
lincan/src/sja1000.c:		return -ENODEV;
lincan/src/sja1000.c:	return -ENOSYS;
lincan/src/sja1000.c:	return -ENOSYS;
lincan/src/sja1000.c:	return -ENOSYS;
lincan/src/sja1000.c:	return -ENOSYS;
lincan/src/sja1000.c:	struct msgobj_t *obj=chip->msgobj[0];
lincan/src/sja1000.c:		if(!loop_cnt--) {
lincan/src/sja1000.c:			obj->ret=-1;
lincan/src/sja1000.c:			if(obj->tx_slot){
lincan/src/sja1000.c:				canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_BUS);
lincan/src/sja1000.c:				/*canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000.c:				obj->tx_slot=NULL;*/
lincan/src/sja1000.c:		obj->rx_msg.length = len = id & 0x0f;
lincan/src/sja1000.c:		obj->rx_msg.flags = id&sjaID0_RTR ? MSG_RTR : 0;
lincan/src/sja1000.c:		obj->rx_msg.cob = 0;
lincan/src/sja1000.c:		obj->rx_msg.id = id>>5;
lincan/src/sja1000.c:			obj->rx_msg.data[i]=can_read_reg(chip, SJARXDAT0 + i);
lincan/src/sja1000.c:		can_filltimestamp(&obj->rx_msg.timestamp);
lincan/src/sja1000.c:		canque_filter_msg2edges(obj->qends, &obj->rx_msg);
lincan/src/sja1000.c:	if(obj->tx_slot){
lincan/src/sja1000.c:			can_filltimestamp(&obj->tx_slot->msg.timestamp);
lincan/src/sja1000.c:			obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/sja1000.c:			canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/sja1000.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000.c:		obj->tx_slot=NULL;
lincan/src/sja1000.c:	cmd=canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot);
lincan/src/sja1000.c:	if (chip->chipspecops->pre_write_config(chip, obj, &obj->tx_slot->msg)) {
lincan/src/sja1000.c:		obj->ret = -1;
lincan/src/sja1000.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_PREP);
lincan/src/sja1000.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000.c:		obj->tx_slot=NULL;
lincan/src/sja1000.c:	if (chip->chipspecops->send_msg(chip, obj, &obj->tx_slot->msg)) {
lincan/src/sja1000.c:		obj->ret = -1;
lincan/src/sja1000.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_SEND);
lincan/src/sja1000.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000.c:		obj->tx_slot=NULL;
lincan/src/sja1000.c: * sja1000_wakeup_tx: - wakeups TX processing
lincan/src/sja1000.c:	chipspecops->chip_config = sja1000_chip_config;
lincan/src/sja1000.c:	chipspecops->baud_rate = sja1000_baud_rate;
lincan/src/sja1000.c:	chipspecops->standard_mask = sja1000_standard_mask;
lincan/src/sja1000.c:	chipspecops->extended_mask = sja1000_extended_mask;
lincan/src/sja1000.c:	chipspecops->message15_mask = sja1000_extended_mask;
lincan/src/sja1000.c:	chipspecops->clear_objects = sja1000_clear_objects;
lincan/src/sja1000.c:	chipspecops->config_irqs = sja1000_config_irqs;
lincan/src/sja1000.c:	chipspecops->pre_read_config = sja1000_pre_read_config;
lincan/src/sja1000.c:	chipspecops->pre_write_config = sja1000_pre_write_config;
lincan/src/sja1000.c:	chipspecops->send_msg = sja1000_send_msg;
lincan/src/sja1000.c:	chipspecops->check_tx_stat = sja1000_check_tx_stat;
lincan/src/sja1000.c:	chipspecops->wakeup_tx=sja1000_wakeup_tx;
lincan/src/sja1000.c:	chipspecops->remote_request = sja1000_remote_request;
lincan/src/sja1000.c:	chipspecops->enable_configuration = sja1000_enable_configuration;
lincan/src/sja1000.c:	chipspecops->disable_configuration = sja1000_disable_configuration;
lincan/src/sja1000.c:	chipspecops->set_btregs = sja1000_set_btregs;
lincan/src/sja1000.c:	chipspecops->attach_to_chip=sja1000_attach_to_chip;
lincan/src/sja1000.c:	chipspecops->release_chip=sja1000_release_chip;
lincan/src/sja1000.c:	chipspecops->start_chip = sja1000_start_chip;
lincan/src/sja1000.c:	chipspecops->stop_chip = sja1000_stop_chip;
lincan/src/sja1000.c:	chipspecops->irq_handler = sja1000_irq_handler;
lincan/src/sja1000.c:	chipspecops->irq_handler = NULL;
lincan/src/sja1000.c:	chip->chip_type="sja1000";
lincan/src/sja1000.c:	chip->max_objects=1;
lincan/src/sja1000.c:	sja1000_register(chip->chipspecops);
lincan/src/sja1000p.c: * Linux CAN-bus device driver.
lincan/src/sja1000p.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/sja1000p.c: * This software is released under the GPL-License.
lincan/src/sja1000p.c: * Version lincan-0.3  17 Jun 2004
lincan/src/sja1000p.c: * sja1000p_enable_configuration - enable chip configuration mode
lincan/src/sja1000p.c:	can_disable_irq(chip->chip_irq);
lincan/src/sja1000p.c:		can_enable_irq(chip->chip_irq);
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c: * sja1000p_disable_configuration - disable chip configuration mode
lincan/src/sja1000p.c:// could be as long as 11*128 bit times after buss-off
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c:	can_enable_irq(chip->chip_irq);
lincan/src/sja1000p.c: * sja1000p_chip_config: - can chip configuration
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c:	can_write_reg(chip,sjaCDR_PELICAN|chip->sja_cdr_reg,SJACDR); 
lincan/src/sja1000p.c:	can_write_reg(chip,chip->sja_ocr_reg,SJAOCR); 
lincan/src/sja1000p.c:			return -ENODEV;
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c:	if (!chip->baudrate)
lincan/src/sja1000p.c:		chip->baudrate=1000000;
lincan/src/sja1000p.c:	if (sja1000p_baud_rate(chip,chip->baudrate,chip->clock,0,75,0))
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c: * sja1000p_extended_mask: - setup of extended mask for message filtering
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c:	for(i=SJA_PeliCAN_AC_LEN; --i>=0;) {
lincan/src/sja1000p.c: * sja1000p_baud_rate: - set communication parameters.
lincan/src/sja1000p.c: * @sjw: synchronization jump width (0-3) prescaled clock cycles
lincan/src/sja1000p.c: * @sampl_pt: sample point in % (0-100) sets (TSEG1+1)/(TSEG1+TSEG2+2) ratio
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c:		error = rate - clock/(brp*(1+tseg/2));
lincan/src/sja1000p.c:			error = -error;
lincan/src/sja1000p.c:			best_brp = brp-1;
lincan/src/sja1000p.c:		return -EINVAL;
lincan/src/sja1000p.c:	tseg2 = best_tseg-(sampl_pt*(best_tseg+1))/100;
lincan/src/sja1000p.c:	tseg1 = best_tseg-tseg2-2;
lincan/src/sja1000p.c:		tseg2 = best_tseg-tseg1-2;
lincan/src/sja1000p.c:					(100*(best_tseg-tseg2)/(best_tseg+1)));
lincan/src/sja1000p.c: * sja1000p_read: - reads and distributes one or more received messages
lincan/src/sja1000p.c:			obj->rx_msg.id =
lincan/src/sja1000p.c:			obj->rx_msg.id =
lincan/src/sja1000p.c:		obj->rx_msg.flags =
lincan/src/sja1000p.c:		obj->rx_msg.length = len;
lincan/src/sja1000p.c:			obj->rx_msg.data[i]=can_read_reg(chip,datastart+i);
lincan/src/sja1000p.c:		can_filltimestamp(&obj->rx_msg.timestamp);
lincan/src/sja1000p.c:		canque_filter_msg2edges(obj->qends, &obj->rx_msg);
lincan/src/sja1000p.c: * sja1000p_pre_read_config: - prepares message object for message reception
lincan/src/sja1000p.c:		DEBUGMSG("sja1000p_pre_read_config bus-off recover 0x%x\n",status);
lincan/src/sja1000p.c: * sja1000p_pre_write_config: - prepares message object for message transmission
lincan/src/sja1000p.c:		DEBUGMSG("sja1000p_pre_write_config bus-off recover 0x%x\n",status);
lincan/src/sja1000p.c:			return -EIO;
lincan/src/sja1000p.c:	len = msg->length;
lincan/src/sja1000p.c:	can_write_reg(chip, ((msg->flags&MSG_EXT)?sjaFRM_FF:0) |
lincan/src/sja1000p.c:		((msg->flags & MSG_RTR) ? sjaFRM_RTR : 0) | len, SJAFRM);
lincan/src/sja1000p.c:	if(msg->flags&MSG_EXT) {
lincan/src/sja1000p.c:		id=msg->id<<3;
lincan/src/sja1000p.c:			can_write_reg(chip, msg->data[i], SJADATE+i);
lincan/src/sja1000p.c:		id=msg->id<<5;
lincan/src/sja1000p.c:			can_write_reg(chip, msg->data[i], SJADATS+i);
lincan/src/sja1000p.c: * sja1000p_send_msg: - initiate message transmission
lincan/src/sja1000p.c: * sja1000p_check_tx_stat: - checks state of transmission engine
lincan/src/sja1000p.c: * sja1000p_set_btregs: -  configures bitrate registers
lincan/src/sja1000p.c:		return -ENODEV;
lincan/src/sja1000p.c: * sja1000p_start_chip: -  starts chip message processing
lincan/src/sja1000p.c: * sja1000p_stop_chip: -  stops chip message processing
lincan/src/sja1000p.c: * sja1000p_attach_to_chip: - attaches to the chip, setups registers and state
lincan/src/sja1000p.c: * sja1000p_release_chip: - called before chip structure removal if %CHIP_ATTACHED is set
lincan/src/sja1000p.c: * sja1000p_remote_request: - configures message object and asks for RTR message
lincan/src/sja1000p.c:	return -ENOSYS;
lincan/src/sja1000p.c: * sja1000p_standard_mask: - setup of mask for message filtering
lincan/src/sja1000p.c:	return -ENOSYS;
lincan/src/sja1000p.c: * sja1000p_clear_objects: - clears state of all message object residing in chip
lincan/src/sja1000p.c:	return -ENOSYS;
lincan/src/sja1000p.c: * sja1000p_config_irqs: - tunes chip hardware interrupt delivery
lincan/src/sja1000p.c:	return -ENOSYS;
lincan/src/sja1000p.c: * sja1000p_irq_write_handler: - part of ISR code responsible for transmit events
lincan/src/sja1000p.c:	if(obj->tx_slot){
lincan/src/sja1000p.c:			can_filltimestamp(&obj->tx_slot->msg.timestamp);
lincan/src/sja1000p.c:			obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/sja1000p.c:			canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/sja1000p.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000p.c:		obj->tx_slot=NULL;
lincan/src/sja1000p.c:	cmd=canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot);
lincan/src/sja1000p.c:	if (chip->chipspecops->pre_write_config(chip, obj, &obj->tx_slot->msg)) {
lincan/src/sja1000p.c:		obj->ret = -1;
lincan/src/sja1000p.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_PREP);
lincan/src/sja1000p.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000p.c:		obj->tx_slot=NULL;
lincan/src/sja1000p.c:	if (chip->chipspecops->send_msg(chip, obj, &obj->tx_slot->msg)) {
lincan/src/sja1000p.c:		obj->ret = -1;
lincan/src/sja1000p.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_SEND);
lincan/src/sja1000p.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000p.c:		obj->tx_slot=NULL;
lincan/src/sja1000p.c: * sja1000p_irq_handler: - interrupt service routine
lincan/src/sja1000p.c:	struct msgobj_t *obj=chip->msgobj[0];
lincan/src/sja1000p.c:	if(!(chip->flags&CHIP_CONFIGURED)) {
lincan/src/sja1000p.c:		CANMSG("sja1000p_irq_handler: called for non-configured device, irq_register 0x%02x\n", irq_register);
lincan/src/sja1000p.c:		if(!loop_cnt--) {
lincan/src/sja1000p.c:			obj->ret = 0;
lincan/src/sja1000p.c:			obj->ret = 0;
lincan/src/sja1000p.c:		obj->ret=-1;
lincan/src/sja1000p.c:				obj->ret= -ENXIO;
lincan/src/sja1000p.c:				/* no such device or address - no ACK received */
lincan/src/sja1000p.c:			if(obj->tx_retry_cnt++>MAX_RETR) {
lincan/src/sja1000p.c:				obj->tx_retry_cnt = 0;
lincan/src/sja1000p.c:				CANMSG("bus-off, resetting sja1000p\n");
lincan/src/sja1000p.c:			if(obj->tx_slot){
lincan/src/sja1000p.c:				canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_BUS);
lincan/src/sja1000p.c:				/*canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/sja1000p.c:				obj->tx_slot=NULL;*/
lincan/src/sja1000p.c:			obj->tx_retry_cnt=0;
lincan/src/sja1000p.c: * sja1000p_wakeup_tx: - wakeups TX processing
lincan/src/sja1000p.c:			obj->tx_retry_cnt=0;
lincan/src/sja1000p.c:	chipspecops->chip_config=sja1000p_chip_config;
lincan/src/sja1000p.c:	chipspecops->baud_rate=sja1000p_baud_rate;
lincan/src/sja1000p.c:	chipspecops->standard_mask=sja1000p_standard_mask;
lincan/src/sja1000p.c:	chipspecops->extended_mask=sja1000p_extended_mask;
lincan/src/sja1000p.c:	chipspecops->message15_mask=sja1000p_extended_mask;
lincan/src/sja1000p.c:	chipspecops->clear_objects=sja1000p_clear_objects;
lincan/src/sja1000p.c:	chipspecops->config_irqs=sja1000p_config_irqs;
lincan/src/sja1000p.c:	chipspecops->pre_read_config=sja1000p_pre_read_config;
lincan/src/sja1000p.c:	chipspecops->pre_write_config=sja1000p_pre_write_config;
lincan/src/sja1000p.c:	chipspecops->send_msg=sja1000p_send_msg;
lincan/src/sja1000p.c:	chipspecops->check_tx_stat=sja1000p_check_tx_stat;
lincan/src/sja1000p.c:	chipspecops->wakeup_tx=sja1000p_wakeup_tx;
lincan/src/sja1000p.c:	chipspecops->remote_request=sja1000p_remote_request;
lincan/src/sja1000p.c:	chipspecops->enable_configuration=sja1000p_enable_configuration;
lincan/src/sja1000p.c:	chipspecops->disable_configuration=sja1000p_disable_configuration;
lincan/src/sja1000p.c:	chipspecops->attach_to_chip=sja1000p_attach_to_chip;
lincan/src/sja1000p.c:	chipspecops->release_chip=sja1000p_release_chip;
lincan/src/sja1000p.c:	chipspecops->set_btregs=sja1000p_set_btregs;
lincan/src/sja1000p.c:	chipspecops->start_chip=sja1000p_start_chip;
lincan/src/sja1000p.c:	chipspecops->stop_chip=sja1000p_stop_chip;
lincan/src/sja1000p.c:	chipspecops->irq_handler=sja1000p_irq_handler;
lincan/src/sja1000p.c:	chipspecops->irq_accept=NULL;
lincan/src/sja1000p.c: * sja1000p_fill_chipspecops - fills chip specific operations
lincan/src/sja1000p.c:	chip->chip_type="sja1000p";
lincan/src/sja1000p.c:	chip->max_objects=1;
lincan/src/sja1000p.c:	sja1000p_register(chip->chipspecops);
lincan/src/smartcan.c: * Linux CAN-bus device driver.
lincan/src/smartcan.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/smartcan.c: * This software is released under the GPL-License.
lincan/src/smartcan.c: * Version lincan-0.3  17 Jun 2004
lincan/src/smartcan.c:int smartcan_irq=-1;
lincan/src/smartcan.c:	if (!can_request_io_region(candev->io_addr,0x04,DEVICE_NAME)) {
lincan/src/smartcan.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/smartcan.c:		return -ENODEV;
lincan/src/smartcan.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + 0x04 - 1);
lincan/src/smartcan.c:	can_release_io_region(candev->io_addr,0x04);
lincan/src/smartcan.c:	outb(0x00,candev->res_addr);
lincan/src/smartcan.c:		outb(0x01,candev->res_addr);
lincan/src/smartcan.c:	outb(0x00,candev->res_addr); 
lincan/src/smartcan.c:	outb(candev->io_addr+iCPU,candev->io_addr);
lincan/src/smartcan.c:	while ( (inb(candev->io_addr+1)&0x80) && (i<=15) ) {
lincan/src/smartcan.c:		return -ENODEV;
lincan/src/smartcan.c:	candev->res_addr=candev->io_addr+0x02;
lincan/src/smartcan.c:	candev->nr_82527_chips=1;
lincan/src/smartcan.c:	candev->nr_sja1000_chips=0;
lincan/src/smartcan.c:	candev->nr_all_chips=1;
lincan/src/smartcan.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/smartcan.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/smartcan.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/smartcan.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC;
lincan/src/smartcan.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/smartcan.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/smartcan.c:	candev->chip[chipnr]->sja_cdr_reg = 0;
lincan/src/smartcan.c:	candev->chip[chipnr]->sja_ocr_reg = 0;
lincan/src/smartcan.c:	smartcan_irq=candev->chip[chipnr]->chip_irq;
lincan/src/smartcan.c:	smartcan_base=candev->chip[chipnr]->chip_base_addr;
lincan/src/smartcan.c:	chip->msgobj[objnr]->obj_base_addr=(objnr+1)*0x10;
lincan/src/smartcan.c:	outb(address-smartcan_base,smartcan_base);
lincan/src/smartcan.c:	outb(address-smartcan_base,smartcan_base);
lincan/src/smartcan.c:	hwspecops->request_io = smartcan_request_io;
lincan/src/smartcan.c:	hwspecops->release_io = smartcan_release_io;
lincan/src/smartcan.c:	hwspecops->reset = smartcan_reset;
lincan/src/smartcan.c:	hwspecops->init_hw_data = smartcan_init_hw_data;
lincan/src/smartcan.c:	hwspecops->init_chip_data = smartcan_init_chip_data;
lincan/src/smartcan.c:	hwspecops->init_obj_data = smartcan_init_obj_data;
lincan/src/smartcan.c:	hwspecops->write_register = smartcan_write_register;
lincan/src/smartcan.c:	hwspecops->read_register = smartcan_read_register;
lincan/src/smartcan.c:	hwspecops->program_irq = smartcan_program_irq;
lincan/src/ssv.c: * Linux CAN-bus device driver.
lincan/src/ssv.c: * This software is released under the GPL-License.
lincan/src/ssv.c: * Version lincan-0.3  17 Jun 2004
lincan/src/ssv.c:int ssvcan_irq[2]={-1,-1};
lincan/src/ssv.c:/* IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/ssv.c:/* The function template_request_io is used to reserve the io-memory. If your
lincan/src/ssv.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/ssv.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/ssv.c:		return -ENODEV;
lincan/src/ssv.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, 
lincan/src/ssv.c:			 candev->io_addr + IO_RANGE - 1);
lincan/src/ssv.c: * io-memory. In case you reserved more memory, don't forget to free it here.
lincan/src/ssv.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/ssv.c:	return -ENODEV;
lincan/src/ssv.c:	return -ENODEV;
lincan/src/ssv.c: * structure containing information about the installed CAN-board.
lincan/src/ssv.c: * RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/ssv.c:    candev->res_addr=RESET_ADDR;
lincan/src/ssv.c:    candev->nr_82527_chips=NR_82527;
lincan/src/ssv.c:    candev->nr_sja1000_chips=0;
lincan/src/ssv.c:    candev->nr_all_chips=NR_82527;
lincan/src/ssv.c:    candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/ssv.c:    i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/ssv.c:    candev->chip[chipnr]->chip_base_addr=
lincan/src/ssv.c:	candev->io_addr+0x100*chipnr;
lincan/src/ssv.c:    candev->chip[chipnr]->clock = 16000000;
lincan/src/ssv.c:    ssvcan_irq[chipnr]=candev->chip[chipnr]->chip_irq;
lincan/src/ssv.c:    ssvcan_base=candev->io_addr;
lincan/src/ssv.c:    candev->chip[chipnr]->int_cpu_reg = iCPU_DSC;
lincan/src/ssv.c:    candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/ssv.c:    candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/ssv.c:    chip->msgobj[objnr]->obj_base_addr=
lincan/src/ssv.c:        chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/ssv.c: * not set the candevices_t->flags entry to CANDEV_PROGRAMMABLE_IRQ and leave this
lincan/src/ssv.c:    if((address-ssvcan_base)<0x100)
lincan/src/ssv.c:	outw(address-ssvcan_base + (256 * data), ssvcan_base);
lincan/src/ssv.c:	outw(address-ssvcan_base-0x100 + (256 * data), ssvcan_base+0x02);
lincan/src/ssv.c:    if((address-ssvcan_base)<0x100)
lincan/src/ssv.c:	outb(address-ssvcan_base, ssvcan_base);
lincan/src/ssv.c:	outb(address-ssvcan_base-0x100, ssvcan_base+0x02);
lincan/src/ssv.c:    hwspecops->request_io = ssv_request_io;
lincan/src/ssv.c:    hwspecops->release_io = ssv_release_io;
lincan/src/ssv.c:    hwspecops->reset = ssv_reset;
lincan/src/ssv.c:    hwspecops->init_hw_data = ssv_init_hw_data;
lincan/src/ssv.c:    hwspecops->init_chip_data = ssv_init_chip_data;
lincan/src/ssv.c:    hwspecops->init_obj_data = ssv_init_obj_data;
lincan/src/ssv.c:    hwspecops->write_register = ssv_write_register;
lincan/src/ssv.c:    hwspecops->read_register = ssv_read_register;
lincan/src/ssv.c:    hwspecops->program_irq = ssv_program_irq;
lincan/src/template.c: * Linux CAN-bus device driver.
lincan/src/template.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/template.c: * This software is released under the GPL-License.
lincan/src/template.c: * Version lincan-0.3  17 Jun 2004
lincan/src/template.c: * IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/template.c: * template_request_io: - reserve io or memory range for can board
lincan/src/template.c: * The function template_request_io() is used to reserve the io-memory. If your
lincan/src/template.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/template.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/template.c:	if (!can_request_io_region(candev->io_addr,IO_RANGE,DEVICE_NAME)) {
lincan/src/template.c:		CANMSG("Unable to open port: 0x%lx\n",candev->io_addr);
lincan/src/template.c:		return -ENODEV;
lincan/src/template.c:		DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/template.c: * template_release_io - free reserved io memory range
lincan/src/template.c: * The function template_release_io() is used to free reserved io-memory.
lincan/src/template.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/template.c:	can_release_io_region(candev->io_addr,IO_RANGE);
lincan/src/template.c: * template_reset - hardware reset routine
lincan/src/template.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/template.c: * template_init_hw_data - Initialize hardware cards
lincan/src/template.c: * structure containing information about the installed CAN-board.
lincan/src/template.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/template.c:	candev->res_addr=RESET_ADDR;
lincan/src/template.c:	candev->nr_82527_chips=NR_82527;
lincan/src/template.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/template.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/template.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/template.c: * template_init_chip_data - Initialize chips
lincan/src/template.c:	i82527_fill_chipspecops(candev->chip[chipnr]);
lincan/src/template.c:	/*sja1000_fill_chipspecops(candev->chip[chipnr]);*/
lincan/src/template.c:	/*sja1000p_fill_chipspecops(candev->chip[chipnr]);*/
lincan/src/template.c:	candev->chip[chipnr]->chip_base_addr=candev->io_addr;
lincan/src/template.c:	candev->chip[chipnr]->clock = 16000000;
lincan/src/template.c:	candev->chip[chipnr]->int_cpu_reg = iCPU_DSC;
lincan/src/template.c:	candev->chip[chipnr]->int_clk_reg = iCLK_SL1;
lincan/src/template.c:	candev->chip[chipnr]->int_bus_reg = iBUS_CBY;
lincan/src/template.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/template.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |
lincan/src/template.c: * template_init_obj_data - Initialize message buffers
lincan/src/template.c:	chip->msgobj[objnr]->obj_base_addr=chip->chip_base_addr+(objnr+1)*0x10;
lincan/src/template.c: * template_program_irq - program interrupts
lincan/src/template.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and 
lincan/src/template.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/template.c: * template_write_register - Low level write register routine
lincan/src/template.c: * template_read_register - Low level read register routine
lincan/src/template.c:	hwspecops->request_io = template_request_io;
lincan/src/template.c:	hwspecops->release_io = template_release_io;
lincan/src/template.c:	hwspecops->reset = template_reset;
lincan/src/template.c:	hwspecops->init_hw_data = template_init_hw_data;
lincan/src/template.c:	hwspecops->init_chip_data = template_init_chip_data;
lincan/src/template.c:	hwspecops->init_obj_data = template_init_obj_data;
lincan/src/template.c:	hwspecops->write_register = template_write_register;
lincan/src/template.c:	hwspecops->read_register = template_read_register;
lincan/src/template.c:	hwspecops->program_irq = template_program_irq;
lincan/src/tscan1.c: * Linux CAN-bus device driver.
lincan/src/tscan1.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/tscan1.c: * This software is released under the GPL-License.
lincan/src/tscan1.c: * Version lincan-0.3  17 Jun 2004
lincan/src/tscan1.c:short clock[MAX_HW_CARDS]={-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/tscan1.c:MODULE_PARM(clock, "1-" __MODULE_STRING(MAX_HW_CARDS)"i");
lincan/src/tscan1.c:long canio[MAX_HW_CARDS]={-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/tscan1.c:MODULE_PARM(canio, "1-" __MODULE_STRING(MAX_HW_CARDS)"i");
lincan/src/tscan1.c:long remap_io_addr[MAX_HW_CARDS]={-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/tscan1.c:long remap_can_addr[MAX_HW_CARDS]={-1,-1,-1,-1,-1,-1,-1,-1};
lincan/src/tscan1.c: * tscan1_request_io: - reserve io or memory range for can board
lincan/src/tscan1.c: * The function tscan1_request_io() is used to reserve the io-memory. If your
lincan/src/tscan1.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/tscan1.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/tscan1.c:	remap_io_addr[candev->candev_idx] = tscan1_getmappedaddr(candev->io_addr);
lincan/src/tscan1.c:	remap_can_io_addr = tscan1_getmappedaddr(canio[candev->candev_idx]);
lincan/src/tscan1.c:	candev->dev_base_addr = remap_can_io_addr;
lincan/src/tscan1.c:	candev->chip[0]->chip_base_addr = remap_can_io_addr;
lincan/src/tscan1.c:	remap_can_addr[candev->candev_idx] = remap_can_io_addr;
lincan/src/tscan1.c:	DEBUGMSG("IO-mem for %s: 0x%lx - 0x%lx mapped to 0x%lx\n",
lincan/src/tscan1.c:		candev->hwname, candev->io_addr,
lincan/src/tscan1.c:		candev->io_addr + TSXXX_IO_RANGE - 1, remap_io_addr[candev->candev_idx]);
lincan/src/tscan1.c:	DEBUGMSG("CAN-IO-mem for %s: 0x%lx - 0x%lx mapped to 0x%lx\n",
lincan/src/tscan1.c:		candev->hwname, canio[candev->candev_idx],
lincan/src/tscan1.c:		canio[candev->candev_idx] + TSXXX_CAN_RANGE - 1, candev->dev_base_addr);
lincan/src/tscan1.c: * tscan1_release_io - free reserved io memory range
lincan/src/tscan1.c: * The function tscan1_release_io() is used to free reserved io-memory.
lincan/src/tscan1.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/tscan1.c: * tscan1_reset - hardware reset routine
lincan/src/tscan1.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/tscan1.c:	DEBUGMSG("Resetting %s hardware ...\n", candev->hwname);
lincan/src/tscan1.c:	for(chipnr=0;chipnr<candev->nr_sja1000_chips;chipnr++) {
lincan/src/tscan1.c:		chip=candev->chip[chipnr];
lincan/src/tscan1.c:		tscan1_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/tscan1.c:		tscan1_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/tscan1.c:		while (tscan1_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/tscan1.c:			if(!i--) return -ENODEV;
lincan/src/tscan1.c:			tscan1_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/tscan1.c:		tscan1_write_register(sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/tscan1.c:		tscan1_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/tscan1.c: * tscan1_init_hw_data - Initialize hardware cards
lincan/src/tscan1.c: * structure containing information about the installed CAN-board.
lincan/src/tscan1.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/tscan1.c:	candev->io_addr = -1;
lincan/src/tscan1.c:	if (!strcmp(hw[candev->candev_idx],"tscan1"))
lincan/src/tscan1.c:		DEBUGMSG("Scanning bus for TS-CAN1 boards...\n");
lincan/src/tscan1.c:				if (io[candev->candev_idx]!=-1 && io[candev->candev_idx]!=tsxxx_base_io)
lincan/src/tscan1.c:				io[candev->candev_idx] = tsxxx_base_io;
lincan/src/tscan1.c:				candev->io_addr = tsxxx_base_io;
lincan/src/tscan1.c:				candev->hwname="tscan1";
lincan/src/tscan1.c:				DEBUGMSG("TS-CAN1 board was found at 0x%lx for driver %d/%s\n", tsxxx_base_io,
lincan/src/tscan1.c:					candev->candev_idx, candev->hwname);
lincan/src/tscan1.c:	if (!strcmp(hw[candev->candev_idx],"ts7kv"))
lincan/src/tscan1.c:		DEBUGMSG("Scanning bus for TS-7KV boards...\n");
lincan/src/tscan1.c:			tsxxx_base_io = TS7KV_BASE_IO + (i-4)*TSXXX_IO_RANGE;
lincan/src/tscan1.c:				if (io[candev->candev_idx]!=-1 && io[candev->candev_idx]!=tsxxx_base_io)
lincan/src/tscan1.c:				io[candev->candev_idx] = tsxxx_base_io;
lincan/src/tscan1.c:				candev->io_addr = tsxxx_base_io;
lincan/src/tscan1.c:				candev->hwname="ts7kv";
lincan/src/tscan1.c:				DEBUGMSG("TS-7KV board was found at 0x%lx for driver %d/%s\n",
lincan/src/tscan1.c:					tsxxx_base_io,	candev->candev_idx, candev->hwname);
lincan/src/tscan1.c:	if (candev->io_addr==-1) {
lincan/src/tscan1.c:		DEBUGMSG("No board was found for driver %d/%s.\n", candev->candev_idx, candev->hwname);
lincan/src/tscan1.c:		return -1;
lincan/src/tscan1.c:	if (!strcmp(candev->hwname,"tscan1"))
lincan/src/tscan1.c:		if (clock[candev->candev_idx] == -1)
lincan/src/tscan1.c:			clock[candev->candev_idx] = 16000;
lincan/src/tscan1.c:		if (irq[candev->candev_idx] == -1)
lincan/src/tscan1.c:			irq[candev->candev_idx]=0;
lincan/src/tscan1.c:			if (jmp&0x10 && jmp&0x20) irq[candev->candev_idx]=TSXXX_IRQ5;
lincan/src/tscan1.c:			else if (jmp&0x10) irq[candev->candev_idx]=TSXXX_IRQ6;
lincan/src/tscan1.c:			else if (jmp&0x20) irq[candev->candev_idx]=TSXXX_IRQ7;
lincan/src/tscan1.c:		if (canio[candev->candev_idx] == -1)
lincan/src/tscan1.c:			switch(candev->io_addr) {
lincan/src/tscan1.c:					canio[candev->candev_idx] = 0x180; break;
lincan/src/tscan1.c:					canio[candev->candev_idx] = 0x1A0; break;
lincan/src/tscan1.c:					canio[candev->candev_idx] = 0x240; break;
lincan/src/tscan1.c:					canio[candev->candev_idx] = 0x280; break;
lincan/src/tscan1.c:		switch(canio[candev->candev_idx]) {
lincan/src/tscan1.c:	else if (!strcmp(candev->hwname,"ts7kv"))
lincan/src/tscan1.c:		if (clock[candev->candev_idx] == -1)
lincan/src/tscan1.c:			clock[candev->candev_idx] = 24000;
lincan/src/tscan1.c:		if (irq[candev->candev_idx] == -1)
lincan/src/tscan1.c:			irq[candev->candev_idx]=0;
lincan/src/tscan1.c:			if (jmp&0x10) irq[candev->candev_idx]=TSXXX_IRQ6;
lincan/src/tscan1.c:			if (jmp&0x20) irq[candev->candev_idx]=TSXXX_IRQ7;
lincan/src/tscan1.c:		canio[candev->candev_idx] = ((candev->io_addr>>3)&0x03)*0x20;
lincan/src/tscan1.c:	if (baudrate[candev->candev_idx] == -1)
lincan/src/tscan1.c:		baudrate[candev->candev_idx] = 1000;
lincan/src/tscan1.c:	io[candev->candev_idx] += TSXXX_BASE_IO;
lincan/src/tscan1.c:	candev->io_addr = io[candev->candev_idx];
lincan/src/tscan1.c:	canio[candev->candev_idx] += TSXXX_BASE_IO;
lincan/src/tscan1.c:		canio[candev->candev_idx], candev->candev_idx, candev->hwname);
lincan/src/tscan1.c:	candev->res_addr=RESET_ADDR;
lincan/src/tscan1.c:	candev->nr_82527_chips=NR_82527;
lincan/src/tscan1.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/tscan1.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/tscan1.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/tscan1.c: * tscan1_init_chip_data - Initialize chips
lincan/src/tscan1.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/tscan1.c:	candev->chip[chipnr]->clock = clock[candev->candev_idx]*1000;
lincan/src/tscan1.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/tscan1.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/tscan1.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/tscan1.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |	sjaOCR_TX0_LH;
lincan/src/tscan1.c:	candev->chip[chipnr]->chip_base_addr = candev->io_addr;
lincan/src/tscan1.c: * tscan1_init_obj_data - Initialize message buffers
lincan/src/tscan1.c:	chip->msgobj[objnr]->obj_base_addr = chip->chip_base_addr;
lincan/src/tscan1.c: * tscan1_program_irq - program interrupts
lincan/src/tscan1.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and
lincan/src/tscan1.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/tscan1.c: * tscan1_write_register - Low level write register routine
lincan/src/tscan1.c:	signed short nwinbak=-1;
lincan/src/tscan1.c:	if (nwinbak!=-1) {
lincan/src/tscan1.c: * tscan1_read_register - Low level read register routine
lincan/src/tscan1.c:	signed short nwinbak=-1;
lincan/src/tscan1.c:	if (nwinbak!=-1) {
lincan/src/tscan1.c:	hwspecops->request_io = tscan1_request_io;
lincan/src/tscan1.c:	hwspecops->release_io = tscan1_release_io;
lincan/src/tscan1.c:	hwspecops->reset = tscan1_reset;
lincan/src/tscan1.c:	hwspecops->init_hw_data = tscan1_init_hw_data;
lincan/src/tscan1.c:	hwspecops->init_chip_data = tscan1_init_chip_data;
lincan/src/tscan1.c:	hwspecops->init_obj_data = tscan1_init_obj_data;
lincan/src/tscan1.c:	hwspecops->write_register = tscan1_write_register;
lincan/src/tscan1.c:	hwspecops->read_register = tscan1_read_register;
lincan/src/tscan1.c:	hwspecops->program_irq = tscan1_program_irq;
lincan/src/tscan1.c:		if ( remap_can_addr[i]!=-1 &&
lincan/src/tscan1.c:	return -1;
lincan/src/tscan1.c:	if (!strcmp(hardware_p->candevice[candev_idx]->hwname,"tscan1")) {
lincan/src/tscan1.c:		while ((offset_addr - remap_can_addr[candev_idx]) > 0x1f) {
lincan/src/tscan1.c:			offset_addr -= 0x20;
lincan/src/tscan1.c:			hardware_p->candevice[candev_idx]->hwname,
lincan/src/tscan1.c:	else if (!strcmp(hardware_p->candevice[candev_idx]->hwname,"ts7kv")) {
lincan/src/tscan1.c:		while ((offset_addr - remap_can_addr[candev_idx]) > 0x1d) {
lincan/src/tscan1.c:			offset_addr -= 0x10;
lincan/src/tscan1.c:				hardware_p->candevice[candev_idx]->hwname,
lincan/src/tscan1.c:		if ( 0x10 == ((*nwinbak)&0xF0) )	*nwinbak = -1;
lincan/src/unican.c: * Linux CAN-bus device driver.
lincan/src/unican.c: * Written for new CAN driver version by Pavel Pisa - OCERA team member
lincan/src/unican.c: * This software is released under the GPL-License.
lincan/src/unican.c: * Version lincan-0.3  17 Jun 2004
lincan/src/unican.c: * unican_chip_config: - can chip configuration
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:        if (chip->baudrate == 0)
lincan/src/unican.c:                chip->baudrate=1000000;
lincan/src/unican.c:	ret = chip->chipspecops->baud_rate(chip,chip->baudrate,chip->clock,0,75,0);
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c: * unican_extended_mask: - setup of extended mask for message filtering
lincan/src/unican.c: * unican_baud_rate: - set communication parameters.
lincan/src/unican.c: * @sjw: synchronization jump width (0-3) prescaled clock cycles
lincan/src/unican.c: * @sampl_pt: sample point in % (0-100) sets (TSEG1+1)/(TSEG1+TSEG2+2) ratio
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:		default: return -EINVAL;
lincan/src/unican.c:	if(ret == CL2_COMMAND_BUSY) return -EBUSY;
lincan/src/unican.c:	if(ret != CL2_OK) return -EINVAL;
lincan/src/unican.c: * unican_read: - reads and distributes one or more received messages
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:		ptr16 = (__u16*)chipext->rxBufPtr;
lincan/src/unican.c:		obj->rx_msg.id = ((__u32)(u & 0xFF00 )) << 16;
lincan/src/unican.c:		obj->rx_msg.id |= ((__u32)( u & 0x00FF )) << 16;
lincan/src/unican.c:		obj->rx_msg.id |= (__u32)( u & 0xFF00 );
lincan/src/unican.c:		obj->rx_msg.id |= (__u32)( u & 0x00FF );
lincan/src/unican.c:			obj->rx_msg.id >>= 3;
lincan/src/unican.c:			obj->rx_msg.flags = MSG_EXT;
lincan/src/unican.c:			obj->rx_msg.id >>= 21;
lincan/src/unican.c:			obj->rx_msg.flags = 0;
lincan/src/unican.c:			obj->rx_msg.flags |= MSG_RTR;*/
lincan/src/unican.c:		obj->rx_msg.length = ( (u >> 4) & 0x000F );
lincan/src/unican.c:		if(obj->rx_msg.length > CAN_MSG_LENGTH) obj->rx_msg.length = CAN_MSG_LENGTH;
lincan/src/unican.c:		for ( i = 0; i < obj->rx_msg.length; ) {
lincan/src/unican.c:			obj->rx_msg.data[i++] = (__u8)( u );
lincan/src/unican.c:			obj->rx_msg.data[i++] = (__u8)( u >> 8 );
lincan/src/unican.c:		if ( obj->rx_msg.length & 0x01 ) {	/* odd */
lincan/src/unican.c:		unican_writew(0x000,(__u16*)chipext->rxBufPtr);
lincan/src/unican.c:		obj->rx_msg.timestamp.tv_sec = 0;
lincan/src/unican.c:		obj->rx_msg.timestamp.tv_usec = timestamp;
lincan/src/unican.c:		obj->rx_msg.timestamp = timestamp;
lincan/src/unican.c:		/* increment rx-buffer pointer */
lincan/src/unican.c:		if ( (chipext->rxBufBase + chipext->rxBufSize*16 ) <= (chipext->rxBufPtr += 16) ) {
lincan/src/unican.c:			chipext->rxBufPtr = chipext->rxBufBase;
lincan/src/unican.c:		canque_filter_msg2edges(obj->qends, &obj->rx_msg);
lincan/src/unican.c: * unican_pre_read_config: - prepares message object for message reception
lincan/src/unican.c: * unican_pre_write_config: - prepares message object for message transmission
lincan/src/unican.c: * unican_send_msg: - initiate message transmission
lincan/src/unican.c: * unican_check_tx_stat: - checks state of transmission engine
lincan/src/unican.c: * unican_set_btregs: -  configures bitrate registers
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:	if(ret == CL2_COMMAND_BUSY) return -EBUSY;
lincan/src/unican.c:	if(ret != CL2_OK) return -EINVAL;
lincan/src/unican.c: * unican_stop_chip: -  starts chip message processing
lincan/src/unican.c: * unican_stop_chip: -  stops chip message processing
lincan/src/unican.c: * unican_attach_to_chip: - attaches to the chip, setups registers and state
lincan/src/unican.c: * unican_release_chip: - called before chip structure removal if %CHIP_ATTACHED is set
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c: * unican_remote_request: - configures message object and asks for RTR message
lincan/src/unican.c:	return -ENOSYS;
lincan/src/unican.c: * unican_standard_mask: - setup of mask for message filtering
lincan/src/unican.c:	return -ENOSYS;
lincan/src/unican.c: * unican_clear_objects: - clears state of all message object residing in chip
lincan/src/unican.c:	return -ENOSYS;
lincan/src/unican.c: * unican_config_irqs: - tunes chip hardware interrupt delivery
lincan/src/unican.c:	return -ENOSYS;
lincan/src/unican.c: * unican_irq_write_handler: - part of ISR code responsible for transmit events
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:	__u16 *ptr16 = (__u16*)chipext->rxBufPtr;
lincan/src/unican.c:	if(obj->tx_slot){
lincan/src/unican.c:			obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/unican.c:			canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/unican.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/unican.c:		obj->tx_slot=NULL;
lincan/src/unican.c:	if ( chipext->asyncTxBufSize==0 ) {
lincan/src/unican.c:		canque_notify_inends(obj->tx_qedge, CANQUEUE_NOTIFY_ERRTX_PREP);
lincan/src/unican.c:		ptr16 = (__u16*)chipext->asyncTxBufPtr;
lincan/src/unican.c:		cmd=canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot);
lincan/src/unican.c:		cobid = obj->tx_slot->msg.id;
lincan/src/unican.c:		if ( (obj->tx_slot->msg.flags & MSG_EXT) ) {	/* 2.0B frame */
lincan/src/unican.c:		len = obj->tx_slot->msg.length;
lincan/src/unican.c:   		if ( !(obj->tx_slot->msg.flags & MSG_RTR) ) 
lincan/src/unican.c:   		if ( obj->tx_slot->msg.flags & MSG_EXT ) 
lincan/src/unican.c:		for ( i = 0; i < len-1; )	{
lincan/src/unican.c:			u = obj->tx_slot->msg.data[i++];
lincan/src/unican.c:			u |= ((__u16)obj->tx_slot->msg.data[i]<<8); i++;
lincan/src/unican.c:			u = obj->tx_slot->msg.data[i++];
lincan/src/unican.c:		unican_writew(u,(__u16*)chipext->asyncTxBufPtr);
lincan/src/unican.c:		if ( (chipext->asyncTxBufBase + chipext->asyncTxBufSize*16) <= 
lincan/src/unican.c:						(chipext->asyncTxBufPtr += 16) ) {
lincan/src/unican.c:			chipext->asyncTxBufPtr = chipext->asyncTxBufBase;
lincan/src/unican.c:			obj->tx_slot->msg.flags |= MSG_LOCAL;
lincan/src/unican.c:			canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/unican.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/unican.c:		obj->tx_slot=NULL;
lincan/src/unican.c:		if(can_msgobj_test_fl(obj,FILTCH_REQUEST) && !obj->tx_slot)
lincan/src/unican.c: * unican_irq_handler: - interrupt service routine
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:	struct msgobj_t *obj=chip->msgobj[0];
lincan/src/unican.c:	if(!(chip->flags&CHIP_CONFIGURED)) {
lincan/src/unican.c:		CANMSG("unican_irq_handler: called for non-configured device\n");
lincan/src/unican.c: * unican_irq_accept: - fast irq accept routine, blocks further interrupts
lincan/src/unican.c:	sCAN_CARD *chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c: * unican_wakeup_tx: - wakeups TX processing
lincan/src/unican.c: * unican_request_io: - reserve io or memory range for can board
lincan/src/unican.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/unican.c:	if (!can_request_mem_region(candev->io_addr,IO_RANGE,DEVICE_NAME " - unican")) {
lincan/src/unican.c:		CANMSG("Unable to request IO-memory: 0x%lx\n",candev->io_addr);
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:	if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/unican.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/unican.c:		can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/unican.c: * unican_elease_io - free reserved io memory range
lincan/src/unican.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/unican.c:	can_release_mem_region(candev->io_addr,IO_RANGE);
lincan/src/unican.c: * unican_reset - hardware reset routine
lincan/src/unican.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/unican.c:	struct canchip_t *chip = candev->chip[0];
lincan/src/unican.c:	if(chip->chip_data == NULL) {
lincan/src/unican.c:		chip->chip_data = can_checked_malloc(sizeof(sCAN_CARD));
lincan/src/unican.c:		if(!chip->chip_data) return -ENOMEM;
lincan/src/unican.c:		memset(chip->chip_data,0,sizeof(sCAN_CARD));
lincan/src/unican.c:		ret = cl2_init_card(chip->chip_data,(void*)chip->chip_base_addr,chip->chip_irq);
lincan/src/unican.c:			return -ENODEV;
lincan/src/unican.c:	chipext = (sCAN_CARD *)chip->chip_data;
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c: * unican_init_hw_data - Initialize hardware cards
lincan/src/unican.c:	candev->res_addr=0;
lincan/src/unican.c:	candev->nr_82527_chips=0;
lincan/src/unican.c:	candev->nr_sja1000_chips=0;
lincan/src/unican.c:	candev->nr_all_chips=1;
lincan/src/unican.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/unican.c: * unican_init_chip_data - Initialize chips
lincan/src/unican.c:	struct canchip_t *chip = candev->chip[chipnr];
lincan/src/unican.c:	chip->chip_type = "unican";
lincan/src/unican.c:	chip->chip_base_addr = 0;
lincan/src/unican.c:	chip->clock = 10000000;
lincan/src/unican.c:	chip->int_clk_reg = 0x0;
lincan/src/unican.c:	chip->int_bus_reg = 0x0;
lincan/src/unican.c:	chip->max_objects = 1;
lincan/src/unican.c:	chip->chip_base_addr=candev->io_addr;
lincan/src/unican.c:	chip->chipspecops->chip_config=unican_chip_config;
lincan/src/unican.c:	chip->chipspecops->baud_rate=unican_baud_rate;
lincan/src/unican.c:	chip->chipspecops->standard_mask=unican_standard_mask;
lincan/src/unican.c:	chip->chipspecops->extended_mask=unican_extended_mask;
lincan/src/unican.c:	chip->chipspecops->message15_mask=unican_extended_mask;
lincan/src/unican.c:	chip->chipspecops->clear_objects=unican_clear_objects;
lincan/src/unican.c:	chip->chipspecops->config_irqs=unican_config_irqs;
lincan/src/unican.c:	chip->chipspecops->pre_read_config=unican_pre_read_config;
lincan/src/unican.c:	chip->chipspecops->pre_write_config=unican_pre_write_config;
lincan/src/unican.c:	chip->chipspecops->send_msg=unican_send_msg;
lincan/src/unican.c:	chip->chipspecops->check_tx_stat=unican_check_tx_stat;
lincan/src/unican.c:	chip->chipspecops->wakeup_tx=unican_wakeup_tx;
lincan/src/unican.c:	chip->chipspecops->remote_request=unican_remote_request;
lincan/src/unican.c:	chip->chipspecops->enable_configuration=unican_enable_configuration;
lincan/src/unican.c:	chip->chipspecops->disable_configuration=unican_disable_configuration;
lincan/src/unican.c:	chip->chipspecops->set_btregs=unican_set_btregs;
lincan/src/unican.c:	chip->chipspecops->attach_to_chip=unican_attach_to_chip;
lincan/src/unican.c:	chip->chipspecops->release_chip=unican_release_chip;
lincan/src/unican.c:	chip->chipspecops->start_chip=unican_start_chip;
lincan/src/unican.c:	chip->chipspecops->stop_chip=unican_stop_chip;
lincan/src/unican.c:	chip->chipspecops->irq_handler=unican_irq_handler;
lincan/src/unican.c:	chip->chipspecops->irq_accept=unican_irq_accept;
lincan/src/unican.c: * unican_init_obj_data - Initialize message buffers
lincan/src/unican.c:	struct msgobj_t *obj=chip->msgobj[objnr];
lincan/src/unican.c:	obj->obj_base_addr=chip->chip_base_addr;
lincan/src/unican.c:	/*obj->tx_timeout.function=unican_do_tx_timeout;
lincan/src/unican.c:	obj->tx_timeout.data=(unsigned long)obj;*/
lincan/src/unican.c: * unican_program_irq - program interrupts
lincan/src/unican.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/unican.c:	hwspecops->request_io = unican_request_io;
lincan/src/unican.c:	hwspecops->release_io = unican_release_io;
lincan/src/unican.c:	hwspecops->reset = unican_reset;
lincan/src/unican.c:	hwspecops->init_hw_data = unican_init_hw_data;
lincan/src/unican.c:	hwspecops->init_chip_data = unican_init_chip_data;
lincan/src/unican.c:	hwspecops->init_obj_data = unican_init_obj_data;
lincan/src/unican.c:	hwspecops->write_register = NULL;
lincan/src/unican.c:	hwspecops->read_register = NULL;
lincan/src/unican.c:	hwspecops->program_irq = unican_program_irq;
lincan/src/unican.c:	if(pci_request_region(candev->sysdevptr.pcidev, 0, "unican_pci") != 0){
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:	if(pci_request_regions(candev->sysdevptr.pcidev, "kv_pcican") != 0){
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:	candev->dev_base_addr=pci_resource_start(candev->sysdevptr.pcidev,0);
lincan/src/unican.c:	candev->io_addr=candev->dev_base_addr;
lincan/src/unican.c:	candev->res_addr=candev->dev_base_addr;
lincan/src/unican.c:	if ( !( remap_addr = (long) ioremap( candev->io_addr, IO_RANGE ) ) ) {
lincan/src/unican.c:		CANMSG("Unable to access I/O memory at: 0x%lx\n", candev->io_addr);
lincan/src/unican.c:		pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/unican.c:		pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/unican.c:		return -ENODEV;
lincan/src/unican.c:	DEBUGMSG("Registered IO-memory: 0x%lx - 0x%lx\n", candev->io_addr, candev->io_addr + IO_RANGE - 1);
lincan/src/unican.c:		candev->dev_base_addr, candev->chip[0]->chip_base_addr);
lincan/src/unican.c:	iounmap((void*)candev->dev_base_addr);
lincan/src/unican.c:	pci_release_region(candev->sysdevptr.pcidev, 0);
lincan/src/unican.c:	pci_release_regions(candev->sysdevptr.pcidev);
lincan/src/unican.c:		if(pcidev == NULL) return -ENODEV;
lincan/src/unican.c:		return -EIO;
lincan/src/unican.c:	candev->sysdevptr.pcidev=pcidev;
lincan/src/unican.c:		return -EIO;
lincan/src/unican.c:	candev->dev_base_addr=pci_resource_start(pcidev,0);
lincan/src/unican.c:	candev->io_addr=candev->dev_base_addr;
lincan/src/unican.c:	candev->res_addr=candev->dev_base_addr;
lincan/src/unican.c:	/*candev->flags |= CANDEV_PROGRAMMABLE_IRQ;*/
lincan/src/unican.c:	candev->nr_82527_chips=0;
lincan/src/unican.c:	candev->nr_sja1000_chips=0;
lincan/src/unican.c:	candev->nr_all_chips=1;
lincan/src/unican.c:	candev->chip[chipnr]->chip_irq=candev->sysdevptr.pcidev->irq;
lincan/src/unican.c:	candev->chip[chipnr]->flags |= CHIP_IRQ_PCI;
lincan/src/unican.c:	hwspecops->request_io = unican_pci_request_io;
lincan/src/unican.c:	hwspecops->release_io = unican_pci_release_io;
lincan/src/unican.c:	hwspecops->reset = unican_reset;
lincan/src/unican.c:	hwspecops->init_hw_data = unican_pci_init_hw_data;
lincan/src/unican.c:	hwspecops->init_chip_data = unican_pci_init_chip_data;
lincan/src/unican.c:	hwspecops->init_obj_data = unican_init_obj_data;
lincan/src/unican.c:	hwspecops->write_register = NULL;
lincan/src/unican.c:	hwspecops->read_register = NULL;
lincan/src/unican.c:	hwspecops->program_irq = unican_program_irq;
lincan/src/unican_cl2.c:Cl2.C - PCAN and VCAN cards hardware access library
lincan/src/unican_cl2.c:12.12.2000, J.B., cl2_receive_data - time stamp for even number of bytes corr.
lincan/src/unican_cl2.c:26.8.1998 - cl2_buf_size - corrected, new function return code CL2_BAD_PARAM
lincan/src/unican_cl2.c:            cl2_clr_async_buffer - corrected
lincan/src/unican_cl2.c:* cl2_init_card - initialize card to default parameters
lincan/src/unican_cl2.c:*   CL2_OK - command completed succesfuly
lincan/src/unican_cl2.c:   card->intNumber = intNumber;
lincan/src/unican_cl2.c:   card->baseAddressPtr = (U8*)baseAddress;
lincan/src/unican_cl2.c:   card->rxBufBase = card->baseAddressPtr + CL2_RX_BUFFER_DEFAULT;
lincan/src/unican_cl2.c:   card->asyncTxBufBase = card->baseAddressPtr + CL2_ASYNC_BUFFER_DEFAULT;
lincan/src/unican_cl2.c:   card->syncTxBufBase = card->baseAddressPtr + CL2_SYNC_BUFFER_DEFAULT;
lincan/src/unican_cl2.c:   card->rxBufPtr = card->rxBufBase;
lincan/src/unican_cl2.c:   card->asyncTxBufPtr = card->asyncTxBufBase;
lincan/src/unican_cl2.c:   card->syncTxBufPtr = card->syncTxBufBase;
lincan/src/unican_cl2.c:   card->commandRegister = card->baseAddressPtr+CL2_COMMAND_REGISTER;
lincan/src/unican_cl2.c:   card->dataPtr = card->baseAddressPtr + CL2_DATA_BUFFER;
lincan/src/unican_cl2.c:   card->rxBufSize = CL2_RX_BUFFER_SIZE;
lincan/src/unican_cl2.c:   card->syncTxBufSize = CL2_TX_SYNC_BUFFER_SIZE;
lincan/src/unican_cl2.c:   card->asyncTxBufSize = CL2_TX_ASYNC_BUFFER_SIZE;
lincan/src/unican_cl2.c:   card->status = 0;
lincan/src/unican_cl2.c:   for ( i = 0; i < 10; i++ ) card->rtrSub[i] = 0xFFFFFFFFL;
lincan/src/unican_cl2.c:* cl2_test_card - test card
lincan/src/unican_cl2.c:*   CL2_OK - card is present and working properly
lincan/src/unican_cl2.c:*   CL2_HW_FAILURE - card not found or card error
lincan/src/unican_cl2.c:   /* timeout for card testing - 1000 read cycles */
lincan/src/unican_cl2.c:     tmpWord = unican_readw(card->baseAddressPtr);
lincan/src/unican_cl2.c:     /*printk("cl2_test_card: %08lx %04x\n", (long)card->baseAddressPtr, tmpWord);*/
lincan/src/unican_cl2.c:* cl2_reset_card - reset card
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:   unican_writew(0x0000, card->baseAddressPtr + CL2_RESET_REGISTER);
lincan/src/unican_cl2.c:* cl2_get_version - read card version
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:   *version = unican_readw(card->baseAddressPtr + CL2_VERSION_REGISTER);
lincan/src/unican_cl2.c:* cl2_gen_interrupt - request for interrupt
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:   unican_writew(0x0000, card->baseAddressPtr + CL2_GEN_INT_REGISTER);
lincan/src/unican_cl2.c:* cl2_start_it - start inhibit time
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:   unican_writew(0x0000, card->baseAddressPtr + CL2_START_IT_REGISTER);
lincan/src/unican_cl2.c:* cl2_clear_interrupt - clear interrupt
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:   unican_writew(0x0000, card->baseAddressPtr + CL2_CLEAR_INT_REGISTER);
lincan/src/unican_cl2.c:* cl2_int_mode - set interrupt mode
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(mode, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_INT_MODE + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_iit_mode - inhibit interrupt time mode
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   BOOLEAN1 onoff              /* IIT mode - TRUE=on, FALSE=off */
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID ) return
lincan/src/unican_cl2.c:   unican_writew((U16)onoff, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_IIT_MODE + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_sync_mode - sync mode
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   BOOLEAN1 onoff              /* Sync mode - TRUE=on, FALSE=off */
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)onoff, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_SYNC_MODE + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_rtr_mode - rtr mode
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   BOOLEAN1 onoff              /* RTR mode - TRUE=on, FALSE=off */
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)onoff, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_RTR_MODE + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_buf_size - size of synchronous queue
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfully
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter (bufSize>64)
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(bufSize, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_BUF_SIZE + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:   card->syncTxBufSize = bufSize;
lincan/src/unican_cl2.c:   card->asyncTxBufSize = 64 - bufSize;
lincan/src/unican_cl2.c:   card->syncTxBufPtr = card->syncTxBufBase;
lincan/src/unican_cl2.c:   card->asyncTxBufPtr = card->asyncTxBufBase = card->syncTxBufBase+bufSize*16;
lincan/src/unican_cl2.c:* cl2_set_iit - set value of inhibit interrupt time
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(iit, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_SET_IIT + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_start_firmware - start firmware
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_START_FIRMWARE + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_rec_mode - set receive mode
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   BOOLEAN1 mode              /* Mode - TRUE=ext, FALSE=std */
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)mode, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_REC_MODE + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_clr_rx_buffer - clear RX buffer
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   card->rxBufPtr = card->rxBufBase;
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_CLR_RX_BUFFER + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_clr_sync_buffer - clear synchronous buffer
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   card->syncTxBufPtr = card->syncTxBufBase;
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_CLR_SYNC_BUFFER + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_clr_async_buffer - clear asynchronous buffer
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   card->asyncTxBufPtr = card->syncTxBufBase + card->syncTxBufSize*16;
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_CLR_ASYNC_BUFFER + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_send_time_sync - send time synchronization
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SEND_TIME_SYNC + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_time_cobid - set time COB-ID
lincan/src/unican_cl2.c:* Command sets the COB-ID for high resolution synchronization
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   U32 COBID                  /* HRS frame COB-ID */
lincan/src/unican_cl2.c:   U16 *ptr = (U16 *)card->dataPtr;
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_TIME_COBID + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_receive_limit - set limit for receive signaling
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(limit, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_RECEIVE_LIMIT + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_download_rtr_list - download rtr list
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:   U16 *ptrTmp = (U16*)card->dataPtr;
lincan/src/unican_cl2.c:   sRTR_FRAME *ptrRTR = rtrList->data;
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID ) return
lincan/src/unican_cl2.c:   if ( rtrList->nb > 64 ) return CL2_BAD_PARAM;
lincan/src/unican_cl2.c:   *ptrTmp++ = (U16)rtrList->nb;
lincan/src/unican_cl2.c:   for ( i = 0; i < rtrList->nb; i++ )
lincan/src/unican_cl2.c:   if ( ptrRTR->period < ptrRTR->subperiod ) return CL2_BAD_PARAM;
lincan/src/unican_cl2.c:   if ( ptrRTR->subperiod == 0 ) ptrRTR->subperiod = 1;
lincan/src/unican_cl2.c:   tmpU16 = (ptrRTR->period & 0x00FF) + ((ptrRTR->subperiod & 0x00FF)<<8);
lincan/src/unican_cl2.c:   COBID = ptrRTR->cob_id;
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_DOWNLOAD_RTR_LIST + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_subscribe_rtr - subscribe RTR frame
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:   U16 *ptrU16 = (U16*)card->dataPtr;
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   card->rtrSub[RTRnumber] = canMessage->COB_ID;
lincan/src/unican_cl2.c:   COBID = canMessage->COB_ID;
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SUBSCRIBE_RTR + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_desubscribe_rtr - desubscribe rtr frame
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:     if ( card->rtrSub[i] == canMessage->COB_ID )
lincan/src/unican_cl2.c:       card->rtrSub[i] = 0xFFFFFFFFL;
lincan/src/unican_cl2.c:   unican_writew(i, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_DESUBSCRIBE_RTR + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_sync_cobid - set COB-ID
lincan/src/unican_cl2.c:* Command sets COB-ID of SYNC frame. In active SYNC mode, the SYNC
lincan/src/unican_cl2.c:* frame with this COB-ID is periodically sent with period defined
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   U32 COBID                  /* COB-ID */
lincan/src/unican_cl2.c:   U16 *ptr = (U16 *)card->dataPtr;
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(((U16)cmCL2_SET_COBID + CL2_COMMAND_VALID), card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_sync_period - set SYNC period
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)period, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_SYNC_PERIOD + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_sync_window - set SYNC window
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)window, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_SYNC_WINDOW + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_set_bitrate - set CAN bit-rate
lincan/src/unican_cl2.c:* Command switches the bus bit-rate. There are some predefined
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previous command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew(bitrate, card->dataPtr);
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_SET_BITRATE + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_bus_reset - resets CAN controller
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_COMMAND_BUSY - previously command not completed
lincan/src/unican_cl2.c:   if ( unican_readw(card->commandRegister) & CL2_COMMAND_VALID )
lincan/src/unican_cl2.c:   unican_writew((U16)cmCL2_BUS_RESET + CL2_COMMAND_VALID, card->commandRegister);
lincan/src/unican_cl2.c:* cl2_send_sync - sends synchronous frame
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_HW_QUEUE_FULL - synchronous send buffer is full
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:*   CL2_HW_FAILURE - error in HW configuration
lincan/src/unican_cl2.c:   U16 *ptrU16 = (U16*)card->syncTxBufPtr;
lincan/src/unican_cl2.c:   if ( card->syncTxBufSize==0 ) return CL2_HW_FAILURE;
lincan/src/unican_cl2.c:   if ( message->dataLength > 8 ) return CL2_BAD_PARAM;
lincan/src/unican_cl2.c:   cobid = message->COB_ID;
lincan/src/unican_cl2.c:   if ( (message->dataType & CL2_EXT_FRAME) || (cobid & CL2_TMP_EXHIGH) )
lincan/src/unican_cl2.c:   tmpU16 = (((U16)message->dataLength) << 12) + (cobidL & 0x00FF);
lincan/src/unican_cl2.c:   if ( !(message->dataType & CL2_REMOTE_FRAME) ) tmpU16 |= CL2_TMP_RF;
lincan/src/unican_cl2.c:   if ( (message->dataType & CL2_EXT_FRAME) ||
lincan/src/unican_cl2.c:        (message->COB_ID & CL2_TMP_EXHIGH) )
lincan/src/unican_cl2.c:   for ( i = 0; i < message->dataLength; )
lincan/src/unican_cl2.c:      tmpU16 = (U16)message->data[i]; i++;
lincan/src/unican_cl2.c:      if ( i == message->dataLength )
lincan/src/unican_cl2.c:         tmpU16 |= ((message->timeStamp & 0x00FF)<<8);
lincan/src/unican_cl2.c:         tmpU16 |= ((U16)message->data[i]<<8); i++;
lincan/src/unican_cl2.c:      tmpU16 = (message->timeStamp>>8) & 0x00FF;
lincan/src/unican_cl2.c:      *ptrU16 = message->timeStamp;
lincan/src/unican_cl2.c:   unican_writew(tmpU16, card->syncTxBufPtr);
lincan/src/unican_cl2.c:   if ( (card->syncTxBufBase + card->syncTxBufSize*16) <=
lincan/src/unican_cl2.c:        (card->syncTxBufPtr += 16) )
lincan/src/unican_cl2.c:     card->syncTxBufPtr = card->syncTxBufBase;
lincan/src/unican_cl2.c:* cl2_send_async - sends asynchronous frame
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_HW_QUEUE_FULL - asynchronous buffer full
lincan/src/unican_cl2.c:*   CL2_HW_FAILURE - error in HW configuration
lincan/src/unican_cl2.c:*   CL2_BAD_PARAM - bad command parameter
lincan/src/unican_cl2.c:   U16 *ptrU16 = (U16*)card->asyncTxBufPtr;
lincan/src/unican_cl2.c:   if ( card->asyncTxBufSize==0 ) return CL2_HW_FAILURE;
lincan/src/unican_cl2.c:   if ( message->dataLength > 8 ) return CL2_BAD_PARAM;
lincan/src/unican_cl2.c:   cobid = message->COB_ID;
lincan/src/unican_cl2.c:   if ( (message->dataType & CL2_EXT_FRAME) || (cobid & CL2_TMP_EXHIGH) )
lincan/src/unican_cl2.c:   tmpU16 = (((U16)message->dataLength) << 12) + (cobidL & 0x00FF);
lincan/src/unican_cl2.c:   if ( !(message->dataType & CL2_REMOTE_FRAME) ) tmpU16 |= CL2_TMP_RF;
lincan/src/unican_cl2.c:   if ( (message->dataType & CL2_EXT_FRAME) ||
lincan/src/unican_cl2.c:        (message->COB_ID & CL2_TMP_EXHIGH ) )
lincan/src/unican_cl2.c:   for ( i = 0; i < message->dataLength; )
lincan/src/unican_cl2.c:      tmpU16 = (U16)message->data[i]; i++;
lincan/src/unican_cl2.c:      if ( i == message->dataLength )
lincan/src/unican_cl2.c:         tmpU16 |= ((message->timeStamp & 0x00FF)<<8);
lincan/src/unican_cl2.c:         tmpU16 |= ((U16)message->data[i]<<8); i++;
lincan/src/unican_cl2.c:      tmpU16 = (message->timeStamp>>8) & 0x00FF;
lincan/src/unican_cl2.c:      *ptrU16 = message->timeStamp;
lincan/src/unican_cl2.c:   unican_writew(tmpU16, card->asyncTxBufPtr);
lincan/src/unican_cl2.c:   if ( (card->asyncTxBufBase + card->asyncTxBufSize*16) <=
lincan/src/unican_cl2.c:        (card->asyncTxBufPtr += 16) )
lincan/src/unican_cl2.c:      card->asyncTxBufPtr = card->asyncTxBufBase;
lincan/src/unican_cl2.c:* cl2_get_status - reads card status
lincan/src/unican_cl2.c:*   CL2_OK - command completed successfuly
lincan/src/unican_cl2.c:*   CL2_NO_REQUEST - status is not valid
lincan/src/unican_cl2.c:   ptr = (U16*)(card->baseAddressPtr + CL2_STATUS_REGISTER);
lincan/src/unican_cl2.c:      card->status = *status;
lincan/src/unican_cl2.c:* cl2_get_error - reads card error
lincan/src/unican_cl2.c:*   Cl2_OK - command completed successfuly
lincan/src/unican_cl2.c:   ptr = (U16*)(card->baseAddressPtr + CL2_ERROR_REGISTER);
lincan/src/unican_cl2.c:   card->error |= *error;
lincan/src/unican_cl2.c:* cl2_receive_data - reads received frame
lincan/src/unican_cl2.c:*   CL2_OK - command commpleted successfuly
lincan/src/unican_cl2.c:*   CL2_NO_REQUEST - there is no new message
lincan/src/unican_cl2.c:   U16 *ptrU16 = (U16*)card->rxBufPtr;
lincan/src/unican_cl2.c:   canMessage->COB_ID = ((U32)(tmpU16 & 0xFF00 )) << 16;
lincan/src/unican_cl2.c:   canMessage->COB_ID |= ((U32)( tmpU16 & 0x00FF )) << 16;
lincan/src/unican_cl2.c:   canMessage->COB_ID |= (U32)( tmpU16 & 0xFF00 );
lincan/src/unican_cl2.c:   canMessage->COB_ID |= (U32)( tmpU16 & 0x00FF );
lincan/src/unican_cl2.c:   canMessage->dataType = (U8)(( tmpU16 & 0xFF00 ) >> 8);
lincan/src/unican_cl2.c:   if ( canMessage->dataType & CL2_EXT_FRAME )
lincan/src/unican_cl2.c:     canMessage->COB_ID >>= 3;
lincan/src/unican_cl2.c:     /* canMessage->COB_ID |= CL2_TMP_EXHIGH; */
lincan/src/unican_cl2.c:     canMessage->COB_ID >>= 21;
lincan/src/unican_cl2.c:   canMessage->dataLength = (U8)( (tmpU16 >> 12) & 0x000F );
lincan/src/unican_cl2.c:   /* if ( !(tmpU16 & CL2_TMP_RF) ) canMessage->dataType |= CL2_REMOTE_FRAME; */
lincan/src/unican_cl2.c:   for ( i = 0; i < canMessage->dataLength; )
lincan/src/unican_cl2.c:      canMessage->data[i++] = (U8)( tmpU16 );
lincan/src/unican_cl2.c:      canMessage->data[i++] = (U8)( tmpU16 >> 8 );
lincan/src/unican_cl2.c:   if ( canMessage->dataLength & 0x01 )
lincan/src/unican_cl2.c:      canMessage->timeStamp = ( (*ptrU16 & 0x00FF) | (tmpU16 & 0xFF00) );
lincan/src/unican_cl2.c:      canMessage->timeStamp = *ptrU16 << 8 | *ptrU16 >> 8;
lincan/src/unican_cl2.c:   unican_writew(0x0000, card->rxBufPtr);
lincan/src/unican_cl2.c:   /* increment rx-buffer pointer */
lincan/src/unican_cl2.c:   if ( (card->rxBufBase + card->rxBufSize*16 ) <= (card->rxBufPtr += 16) )
lincan/src/unican_cl2.c:      card->rxBufPtr = card->rxBufBase;
lincan/src/unican_vme.c: * Linux CAN-bus device driver.
lincan/src/unican_vme.c: * Written for new CAN driver version by Pavel Pisa - OCERA team member
lincan/src/unican_vme.c: * This software is released under the GPL-License.
lincan/src/unican_vme.c: * Version lincan-0.3  17 Jun 2004
lincan/src/unican_vme.c: * unican_vme_init_hw_data - Initialize hardware cards
lincan/src/unican_vme.c:	struct canchip_t *chip = candev->chip[0];
lincan/src/unican_vme.c:		unican_writew(chip->chip_irq, chip->chip_base_addr+CL2_VME_INT_VECTOR);
lincan/src/unican_vme.c: * unican_vme_init_chip_data - Initialize chips
lincan/src/unican_vme.c:	struct canchip_t *chip = candev->chip[chipnr];
lincan/src/unican_vme.c:	chip->flags |= CHIP_IRQ_VME;
lincan/src/unican_vme.c:	/*chip->chipspecops->irq_handler=unican_irq_handler;*/
lincan/src/unican_vme.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ;
lincan/src/unican_vme.c:	hwspecops->init_hw_data = unican_vme_init_hw_data;
lincan/src/unican_vme.c:	hwspecops->init_chip_data = unican_vme_init_chip_data;
lincan/src/unican_vme.c:	hwspecops->request_io = unican_request_io;
lincan/src/unican_vme.c:	hwspecops->reset = unican_vme_reset;
lincan/src/unican_vme.c:	hwspecops->release_io = unican_release_io;
lincan/src/virtual.c: * Linux CAN-bus device driver.
lincan/src/virtual.c: * Written for new CAN driver version by Pavel Pisa - OCERA team member
lincan/src/virtual.c: * This software is released under the GPL-License.
lincan/src/virtual.c: * Version lincan-0.3  17 Jun 2004
lincan/src/virtual.c:	latency=obj->hostchip->baudrate;
lincan/src/virtual.c: * virtual_chip_config: - can chip configuration
lincan/src/virtual.c: * virtual_extended_mask: - setup of extended mask for message filtering
lincan/src/virtual.c: * virtual_baud_rate: - set communication parameters.
lincan/src/virtual.c: * @sjw: synchronization jump width (0-3) prescaled clock cycles
lincan/src/virtual.c: * @sampl_pt: sample point in % (0-100) sets (TSEG1+1)/(TSEG1+TSEG2+2) ratio
lincan/src/virtual.c: * virtual_read: - reads and distributes one or more received messages
lincan/src/virtual.c: * virtual_pre_read_config: - prepares message object for message reception
lincan/src/virtual.c: * virtual_pre_write_config: - prepares message object for message transmission
lincan/src/virtual.c: * virtual_send_msg: - initiate message transmission
lincan/src/virtual.c: * virtual_check_tx_stat: - checks state of transmission engine
lincan/src/virtual.c: * virtual_set_btregs: -  configures bitrate registers
lincan/src/virtual.c: * virtual_stop_chip: -  starts chip message processing
lincan/src/virtual.c: * virtual_stop_chip: -  stops chip message processing
lincan/src/virtual.c: * virtual_attach_to_chip: - attaches to the chip, setups registers and state
lincan/src/virtual.c: * virtual_release_chip: - called before chip structure removal if %CHIP_ATTACHED is set
lincan/src/virtual.c: * virtual_remote_request: - configures message object and asks for RTR message
lincan/src/virtual.c:	return -ENOSYS;
lincan/src/virtual.c: * virtual_standard_mask: - setup of mask for message filtering
lincan/src/virtual.c:	return -ENOSYS;
lincan/src/virtual.c: * virtual_clear_objects: - clears state of all message object residing in chip
lincan/src/virtual.c:	return -ENOSYS;
lincan/src/virtual.c: * virtual_config_irqs: - tunes chip hardware interrupt delivery
lincan/src/virtual.c:	return -ENOSYS;
lincan/src/virtual.c: * virtual_irq_write_handler: - part of ISR code responsible for transmit events
lincan/src/virtual.c: * virtual_irq_handler: - interrupt service routine
lincan/src/virtual.c: *	to chip state structure - @struct canchip_t
lincan/src/virtual.c:		cmd=canque_test_outslot(obj->qends, &obj->tx_qedge, &obj->tx_slot);
lincan/src/virtual.c:			mod_timer(&obj->tx_timeout,
lincan/src/virtual.c:	if(obj->tx_slot) {
lincan/src/virtual.c:		can_filltimestamp(&obj->tx_slot->msg.timestamp);
lincan/src/virtual.c:		canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg);
lincan/src/virtual.c:		canque_free_outslot(obj->qends, obj->tx_qedge, obj->tx_slot);
lincan/src/virtual.c:		obj->tx_slot=NULL;
lincan/src/virtual.c: * virtual_wakeup_tx: - wakeups TX processing
lincan/src/virtual.c:		while((cmd=canque_test_outslot(obj->qends, &qedge, &slot)) >= 0){
lincan/src/virtual.c:				can_filltimestamp(&slot->msg.timestamp);
lincan/src/virtual.c:				canque_filter_msg2edges(obj->qends, &slot->msg);
lincan/src/virtual.c:			canque_free_outslot(obj->qends, qedge, slot);
lincan/src/virtual.c: * virtual_request_io: - reserve io or memory range for can board
lincan/src/virtual.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/virtual.c: * virtual_elease_io - free reserved io memory range
lincan/src/virtual.c: * virtual_reset - hardware reset routine
lincan/src/virtual.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/virtual.c: * virtual_init_hw_data - Initialize hardware cards
lincan/src/virtual.c:	candev->res_addr=0;
lincan/src/virtual.c:	candev->nr_82527_chips=0;
lincan/src/virtual.c:	candev->nr_sja1000_chips=0;
lincan/src/virtual.c:	candev->nr_all_chips=1;
lincan/src/virtual.c:	candev->flags |= CANDEV_PROGRAMMABLE_IRQ*0;
lincan/src/virtual.c: * virtual_init_chip_data - Initialize chips
lincan/src/virtual.c:	struct canchip_t *chip = candev->chip[chipnr];
lincan/src/virtual.c:	chip->chip_type = CHIP_TYPE;
lincan/src/virtual.c:	chip->chip_base_addr = 0;
lincan/src/virtual.c:	chip->clock = 10000000;
lincan/src/virtual.c:	chip->int_clk_reg = 0x0;
lincan/src/virtual.c:	chip->int_bus_reg = 0x0;
lincan/src/virtual.c:	chip->max_objects = 1;
lincan/src/virtual.c:	chip->chipspecops->chip_config=virtual_chip_config;
lincan/src/virtual.c:	chip->chipspecops->baud_rate=virtual_baud_rate;
lincan/src/virtual.c:	chip->chipspecops->standard_mask=virtual_standard_mask;
lincan/src/virtual.c:	chip->chipspecops->extended_mask=virtual_extended_mask;
lincan/src/virtual.c:	chip->chipspecops->message15_mask=virtual_extended_mask;
lincan/src/virtual.c:	chip->chipspecops->clear_objects=virtual_clear_objects;
lincan/src/virtual.c:	chip->chipspecops->config_irqs=virtual_config_irqs;
lincan/src/virtual.c:	chip->chipspecops->pre_read_config=virtual_pre_read_config;
lincan/src/virtual.c:	chip->chipspecops->pre_write_config=virtual_pre_write_config;
lincan/src/virtual.c:	chip->chipspecops->send_msg=virtual_send_msg;
lincan/src/virtual.c:	chip->chipspecops->check_tx_stat=virtual_check_tx_stat;
lincan/src/virtual.c:	chip->chipspecops->wakeup_tx=virtual_wakeup_tx;
lincan/src/virtual.c:	chip->chipspecops->remote_request=virtual_remote_request;
lincan/src/virtual.c:	chip->chipspecops->enable_configuration=virtual_enable_configuration;
lincan/src/virtual.c:	chip->chipspecops->disable_configuration=virtual_disable_configuration;
lincan/src/virtual.c:	chip->chipspecops->attach_to_chip=virtual_attach_to_chip;
lincan/src/virtual.c:	chip->chipspecops->release_chip=virtual_release_chip;
lincan/src/virtual.c:	chip->chipspecops->set_btregs=virtual_set_btregs;
lincan/src/virtual.c:	chip->chipspecops->start_chip=virtual_start_chip;
lincan/src/virtual.c:	chip->chipspecops->stop_chip=virtual_stop_chip;
lincan/src/virtual.c:	chip->chipspecops->irq_handler=NULL;
lincan/src/virtual.c:	chip->chipspecops->irq_accept=NULL;
lincan/src/virtual.c: * virtual_init_obj_data - Initialize message buffers
lincan/src/virtual.c:	struct msgobj_t *obj=chip->msgobj[objnr];
lincan/src/virtual.c:	obj->obj_base_addr=chip->chip_base_addr;
lincan/src/virtual.c:	obj->tx_timeout.function=virtual_do_tx_timeout;
lincan/src/virtual.c:	obj->tx_timeout.data=(unsigned long)obj;
lincan/src/virtual.c: * virtual_program_irq - program interrupts
lincan/src/virtual.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/virtual.c:	hwspecops->request_io = virtual_request_io;
lincan/src/virtual.c:	hwspecops->release_io = virtual_release_io;
lincan/src/virtual.c:	hwspecops->reset = virtual_reset;
lincan/src/virtual.c:	hwspecops->init_hw_data = virtual_init_hw_data;
lincan/src/virtual.c:	hwspecops->init_chip_data = virtual_init_chip_data;
lincan/src/virtual.c:	hwspecops->init_obj_data = virtual_init_obj_data;
lincan/src/virtual.c:	hwspecops->write_register = NULL;
lincan/src/virtual.c:	hwspecops->read_register = NULL;
lincan/src/virtual.c:	hwspecops->program_irq = virtual_program_irq;
lincan/src/write.c: * Linux CAN-bus device driver.
lincan/src/write.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/write.c: * This software is released under the GPL-License.
lincan/src/write.c: * Version lincan-0.3  17 Jun 2004
lincan/src/write.c:	struct canuser_t *canuser = (struct canuser_t*)(file->private_data);
lincan/src/write.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/write.c:		return -ENODEV;
lincan/src/write.c:		return -1;
lincan/src/write.c:		return -1;
lincan/src/write.c:	obj = canuser->msgobj;
lincan/src/write.c:		return -1;
lincan/src/write.c:	qends = canuser->qends;
lincan/src/write.c:	if(ret)	return -EFAULT;
lincan/src/write.c:		if(ret < -1)
lincan/src/write.c:			return -EIO;
lincan/src/write.c:		if (file->f_flags & O_NONBLOCK)
lincan/src/write.c:			return -EAGAIN;
lincan/src/write.c:				return -EINTR;
lincan/src/write.c:			return -EIO;
lincan/src/write.c:	slot->msg=msg_buff;
lincan/src/write.c:	bytes_to_copy = length-sizeof(struct canmsg_t);
lincan/src/write.c:		bytes_to_copy -= sizeof(struct canmsg_t);
lincan/src/write.c:		if(ret)	return -EFAULT;
lincan/src/write.c:		slot->msg=msg_buff;
lincan/src/write.c:        if(file->f_flags & O_SYNC) {
lincan/src/write.c:	return length-bytes_to_copy;
lincan/src/write_rtl.c: * Linux CAN-bus device driver.
lincan/src/write_rtl.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/write_rtl.c: * This software is released under the GPL-License.
lincan/src/write_rtl.c: * Version lincan-0.3  17 Jun 2004
lincan/src/write_rtl.c:	if(!canuser || (canuser->magic != CAN_USER_MAGIC)){
lincan/src/write_rtl.c:		return -ENODEV;
lincan/src/write_rtl.c:		return -1;
lincan/src/write_rtl.c:	qends = canuser->qends;
lincan/src/write_rtl.c:	msg_flags=msg_buff->flags;
lincan/src/write_rtl.c:	if (msg_buff->id & ~0x7ffl & MSG_ID_MASK ) msg_flags |= MSG_EXT;
lincan/src/write_rtl.c:			0, msg_buff->id, 0))<0){
lincan/src/write_rtl.c:		if(ret < -1)
lincan/src/write_rtl.c:			return -EIO;
lincan/src/write_rtl.c:		if (fptr->f_flags & O_NONBLOCK)
lincan/src/write_rtl.c:			return -EAGAIN;
lincan/src/write_rtl.c:						0, msg_buff->id, 0);
lincan/src/write_rtl.c:		if (ret == -1)
lincan/src/write_rtl.c:			return -EINTR;
lincan/src/write_rtl.c:			return -EIO;
lincan/src/write_rtl.c:	slot->msg=*(msg_buff++);
lincan/src/write_rtl.c:	slot->msg.flags=msg_flags;
lincan/src/write_rtl.c:	bytes_to_copy = length-sizeof(struct canmsg_t);
lincan/src/write_rtl.c:		bytes_to_copy -= sizeof(struct canmsg_t);
lincan/src/write_rtl.c:		msg_flags=msg_buff->flags;
lincan/src/write_rtl.c:		if (msg_buff->id & ~0x7ffl & MSG_ID_MASK ) msg_flags |= MSG_EXT;
lincan/src/write_rtl.c:			0, msg_buff->id, 0) < 0) break;
lincan/src/write_rtl.c:		slot->msg=*(msg_buff++);
lincan/src/write_rtl.c:		slot->msg.flags=msg_flags;
lincan/src/write_rtl.c:        if(fptr->f_flags & O_SYNC) {
lincan/src/write_rtl.c:	return length-bytes_to_copy;
lincan/src/tsdmx.c: * Linux CAN-bus device driver.
lincan/src/tsdmx.c: * Rewritten for new CAN queues by Pavel Pisa - OCERA team member
lincan/src/tsdmx.c: * This software is released under the GPL-License.
lincan/src/tsdmx.c: * Version lincan-0.3  17 Jun 2004
lincan/src/tsdmx.c:#include <asm-arm/arch-ep93xx/regmap.h>
lincan/src/tsdmx.c: * ts732_request_io: - reserve io or memory range for can board
lincan/src/tsdmx.c: * The function ts732_request_io() is used to reserve the io-memory. If your
lincan/src/tsdmx.c: * %IO_RANGE is the io-memory range that gets reserved, please adjust according
lincan/src/tsdmx.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/tsdmx.c:	candev->io_addr = base_addr;
lincan/src/tsdmx.c:	candev->dev_base_addr = base_addr;
lincan/src/tsdmx.c:	candev->chip[0]->chip_base_addr = base_addr;
lincan/src/tsdmx.c:	printk("can.o: TS-DMX CAN phy addr 0x%lx mapped to 0x%lx\n",
lincan/src/tsdmx.c: * ts732_release_io - free reserved io memory range
lincan/src/tsdmx.c: * The function ts732_release_io() is used to free reserved io-memory.
lincan/src/tsdmx.c: * IO_RANGE is the io-memory range that gets released, please adjust according
lincan/src/tsdmx.c:    __iounmap((unsigned long *) candev->io_addr);
lincan/src/tsdmx.c: * ts732_reset - hardware reset routine
lincan/src/tsdmx.c: * Return Value: The function returns zero on success or %-ENODEV on failure
lincan/src/tsdmx.c:	DEBUGMSG("Resetting %s hardware ...\n", candev->hwname);
lincan/src/tsdmx.c:	for(chipnr=0;chipnr<candev->nr_sja1000_chips;chipnr++) {
lincan/src/tsdmx.c:		chip=candev->chip[chipnr];
lincan/src/tsdmx.c:		tsdmx_write_register(sjaMOD_RM, chip->chip_base_addr+SJAMOD);
lincan/src/tsdmx.c:		tsdmx_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/tsdmx.c:		while (tsdmx_read_register(chip->chip_base_addr+SJAMOD)&sjaMOD_RM){
lincan/src/tsdmx.c:			if(!i--) return -ENODEV;
lincan/src/tsdmx.c:			tsdmx_write_register(0, chip->chip_base_addr+SJAMOD);
lincan/src/tsdmx.c:		tsdmx_write_register(sjaCDR_PELICAN, chip->chip_base_addr+SJACDR);
lincan/src/tsdmx.c:		tsdmx_write_register(0x00, chip->chip_base_addr + SJAIER);
lincan/src/tsdmx.c: * ts732_init_hw_data - Initialize hardware cards
lincan/src/tsdmx.c: * structure containing information about the installed CAN-board.
lincan/src/tsdmx.c: * %RESET_ADDR represents the io-address of the hardware reset register.
lincan/src/tsdmx.c:	if (baudrate[candev->candev_idx] == -1) baudrate[candev->candev_idx] = 500;
lincan/src/tsdmx.c:	irq[candev->candev_idx] = TSDMX_IRQ;
lincan/src/tsdmx.c:	candev->res_addr=RESET_ADDR;
lincan/src/tsdmx.c:	candev->nr_82527_chips=NR_82527;
lincan/src/tsdmx.c:	candev->nr_sja1000_chips=NR_SJA1000;
lincan/src/tsdmx.c:	candev->nr_all_chips=NR_82527+NR_SJA1000;
lincan/src/tsdmx.c:	candev->flags &= ~CANDEV_PROGRAMMABLE_IRQ;
lincan/src/tsdmx.c: * ts732_init_chip_data - Initialize chips
lincan/src/tsdmx.c:	sja1000p_fill_chipspecops(candev->chip[chipnr]);
lincan/src/tsdmx.c:	candev->hwname="tsdmx";
lincan/src/tsdmx.c:	irq[candev->candev_idx] = TSDMX_IRQ;
lincan/src/tsdmx.c:	//candev->chip[chipnr]->chip_base_addr = TSDMX_BASE_ADDR + TSDMX_CAN_IO1; ///?
lincan/src/tsdmx.c:	candev->chip[chipnr]->clock = TSDMX_CLOCK*1000;
lincan/src/tsdmx.c:	candev->chip[chipnr]->int_clk_reg = 0x0;
lincan/src/tsdmx.c:	candev->chip[chipnr]->int_bus_reg = 0x0;
lincan/src/tsdmx.c:	candev->chip[chipnr]->sja_cdr_reg = sjaCDR_CBP | sjaCDR_CLK_OFF;
lincan/src/tsdmx.c:	candev->chip[chipnr]->sja_ocr_reg = sjaOCR_MODE_NORMAL |	sjaOCR_TX0_LH;
lincan/src/tsdmx.c: * ts732_init_obj_data - Initialize message buffers
lincan/src/tsdmx.c:	chip->msgobj[objnr]->obj_base_addr = chip->chip_base_addr;
lincan/src/tsdmx.c: * ts732_program_irq - program interrupts
lincan/src/tsdmx.c: * you should not set the @candevices_t->flags entry to %CANDEV_PROGRAMMABLE_IRQ and
lincan/src/tsdmx.c: * Return value: The function returns zero on success or %-ENODEV on failure
lincan/src/tsdmx.c: * ts732_write_register - Low level write register routine
lincan/src/tsdmx.c: * ts732_read_register - Low level read register routine
lincan/src/tsdmx.c:	hwspecops->request_io = tsdmx_request_io;
lincan/src/tsdmx.c:	hwspecops->release_io = tsdmx_release_io;
lincan/src/tsdmx.c:	hwspecops->reset = tsdmx_reset;
lincan/src/tsdmx.c:	hwspecops->init_hw_data = tsdmx_init_hw_data;
lincan/src/tsdmx.c:	hwspecops->init_chip_data = tsdmx_init_chip_data;
lincan/src/tsdmx.c:	hwspecops->init_obj_data = tsdmx_init_obj_data;
lincan/src/tsdmx.c:	hwspecops->write_register = tsdmx_write_register;
lincan/src/tsdmx.c:	hwspecops->read_register = tsdmx_read_register;
lincan/src/tsdmx.c:	hwspecops->program_irq = tsdmx_program_irq;
lincan/utils/CVS/Repository:ts-7200/dist/ocera_comm_can/lincan/utils
lincan/utils/CVS/Entries:/can-proxy.c/1.1.1.1/Thu Oct  6 19:31:08 2005//
lincan/utils/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
lincan/utils/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
lincan/utils/Makefile.omk:INCLUDES = -I $(srcdir)/../include
lincan/utils/Makefile.omk:can_proxy_SOURCES = can-proxy.c
lincan/utils/Makefile.omk:# RT-Linux version of build
lincan/utils/Makefile.std:# Makefile for the Linux CAN-bus driver.
lincan/utils/Makefile.std:# This software is released under the GPL-License.
lincan/utils/Makefile.std:CFLAGS = -I../include -O2 -Wall
lincan/utils/Makefile.std:.PHONY: check-dir include-pass library-pass binary-pass utils-pass kernel-pass
lincan/utils/Makefile.std:utils-pass: utils
lincan/utils/Makefile.std:	$(CC) $(CFLAGS) $(CPPFLAGS) -w -E -M *.c $(MORE_C_FILES) > .depend
lincan/utils/Makefile.std:utils: rxtx sendburst readburst send can-proxy
lincan/utils/Makefile.std:	rm -f rxtx sendburst readburst send can-proxy *.o .depend
lincan/utils/Makefile.std:-include .depend
lincan/utils/README:README for the rxtx sample program to use with the Linux CAN-bus driver.
lincan/utils/README:This software is released under the GPL-License.
lincan/utils/can-proxy.c:/** @file				can-proxy.c
lincan/utils/can-proxy.c: Description: 		gateway CAN-UDP.
lincan/utils/can-proxy.c://-----------------------------------------------------------------------------
lincan/utils/can-proxy.c://-----------------------------------------------------------------------------
lincan/utils/can-proxy.c:#define MSG_CAN_UNKNOWN -1
lincan/utils/can-proxy.c:	return (tmNow=TM_HZ*(tvNow.tv_sec-tsStarted) + (TM_HZ*tvNow.tv_usec)/1000000);
lincan/utils/can-proxy.c:	for(iLength = strlen(str)-1; iLength >=0; iLength --) {
lincan/utils/can-proxy.c:	@param fd       - file descriptor for connection
lincan/utils/can-proxy.c:	@param msg      - pointer to message to be written
lincan/utils/can-proxy.c:	@param size     - size of message
lincan/utils/can-proxy.c:	@param fd       - file descriptor for connection
lincan/utils/can-proxy.c:	@param msg      - pointer to message to be read
lincan/utils/can-proxy.c:	@param size     - size of message
lincan/utils/can-proxy.c:	// setting recvaddr is required for non-connected sockets
lincan/utils/can-proxy.c:	printf("can-proxy options:\n"
lincan/utils/can-proxy.c:	"-i	: intercative (send CAN packets typed by user)\n"
lincan/utils/can-proxy.c:	"-o file.log : log all traffic to a file\n"
lincan/utils/can-proxy.c:	"-p port : send CAN packets arriving at UDP port\n"
lincan/utils/can-proxy.c:	"-c	: use select() for CAN (driver can-0.7.1-pi3.4 or newer)\n"
lincan/utils/can-proxy.c:	"-q	: quiet\n"
lincan/utils/can-proxy.c:	"-h	: this help\n"
lincan/utils/can-proxy.c:	"UDP arriving at specified port causes can-proxy to forward all CAN\n"
lincan/utils/can-proxy.c:	"traffic back to the sender, establishing bi-directional communication.\n");
lincan/utils/can-proxy.c:	@param argc, char * argv[]	- command line options
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	fdNet = fdCanDev = fdIn = -1;
lincan/utils/can-proxy.c:			fdCanDev = open(optarg,O_RDWR/*|O_NONBLOCK - select supported*/);
lincan/utils/can-proxy.c:		fprintf(stderr, "can-proxy v0.7.1-pi3.5 (C) 2002 BFAD GmbH http://www.getembedded.de/ (GPL) \n");
lincan/utils/can-proxy.c:		ERR("1.CAN-PROXY main fdCanDev not valid:%d, exiting", fdCanDev);
lincan/utils/can-proxy.c:		if(gettime()-time0 < SleepUntil) {
lincan/utils/can-proxy.c:	@param dir	- direction
lincan/utils/can-proxy.c:	@param fout - file descriptor for output
lincan/utils/can-proxy.c:	@param msg	- CanMsgPerma
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	t = gettime()-time0;
lincan/utils/can-proxy.c:	if(msg->length < 0)
lincan/utils/can-proxy.c:		msg->length = 0;
lincan/utils/can-proxy.c:	if(msg->length > 8)
lincan/utils/can-proxy.c:		msg->length = 8;
lincan/utils/can-proxy.c:		dir, gettime()-time0, msg->id, msg->length);
lincan/utils/can-proxy.c:	for(i=0; i< msg->length; i++) {
lincan/utils/can-proxy.c:		fprintf(stdout, " %02x",  msg->data[i]);
lincan/utils/can-proxy.c:		dir, gettime()-time0, msg->id, msg->length);
lincan/utils/can-proxy.c:	for(i=0; i< msg->length; i++) {
lincan/utils/can-proxy.c:		fprintf(fout, " %02x",  msg->data[i]);
lincan/utils/can-proxy.c:	@param msg	- CanMsgPerma
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	msg->flags = MSG_EXT;
lincan/utils/can-proxy.c:	msg->cob = 0;
lincan/utils/can-proxy.c:	@param msg	- CanMsgPerma
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	msg->flags = 0;
lincan/utils/can-proxy.c:	msg->cob = 0;
lincan/utils/can-proxy.c:	if(ret == 0 || (ret == -1 && errno == EAGAIN)) {
lincan/utils/can-proxy.c:		return -EAGAIN;
lincan/utils/can-proxy.c:	@param buf	- string buffer
lincan/utils/can-proxy.c:	@param val	- alias value
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:		return -1;
lincan/utils/can-proxy.c:	return -1;
lincan/utils/can-proxy.c:	@param buf	- 
lincan/utils/can-proxy.c:	@param msg	- CanMsgPerma
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	val = msg->id;
lincan/utils/can-proxy.c:	msg->id = val;
lincan/utils/can-proxy.c:	val = msg->length;
lincan/utils/can-proxy.c:	msg->length = val;
lincan/utils/can-proxy.c:		val = msg->data[i];
lincan/utils/can-proxy.c:		msg->data[i] = val;
lincan/utils/can-proxy.c:	@param fd	- file descriptor
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	@param buf	- string buffer, 1.char tells about what is to be done:	
lincan/utils/can-proxy.c:								 w - write 
lincan/utils/can-proxy.c:								 s - sleep
lincan/utils/can-proxy.c:								 a - assign (simple aliasing mechanism)
lincan/utils/can-proxy.c:								 r - reset timer
lincan/utils/can-proxy.c:								 l - lock the bus
lincan/utils/can-proxy.c:								 q - quit application
lincan/utils/can-proxy.c:	@return  0					- OK
lincan/utils/can-proxy.c:			-1					- ERROR */
lincan/utils/can-proxy.c:	buf[LINE_L-1] = '\0';
lincan/utils/can-proxy.c:		DMSG("1.CAN-PROXY ReadCommand received QUIT command, exiting");
lincan/utils/can-proxy.c:		printf("TIME %8.3f\n", gettime()-time0);
lincan/utils/can-proxy.c:		SleepUntil = gettime()-time0 + usSleep/1000000.0;
lincan/utils/readburst.c:	while ((ret=select(FD_SETSIZE,&set, NULL, NULL,&timeout))==-1
lincan/utils/readburst.c:          &&errno==-EINTR);
lincan/utils/readburst.c:/*--- handler on SIGINT signal : the program quit with CTL-C ---*/
lincan/utils/readburst.c:  printf("  -d, --device  <name>     name of CAN device [/dev/can0]\n");
lincan/utils/readburst.c:  printf("  -m, --mask  <num>        CAN filter mask\n");
lincan/utils/readburst.c:  printf("  -i, --id  <num>          CAN filter message ID\n");
lincan/utils/readburst.c:  printf("  -f, --flags <num>        CAN filter flags\n");
lincan/utils/readburst.c:  printf("  -w, --wait <num>         number of seconds to wait in select call\n");
lincan/utils/readburst.c:  printf("  -p, --prefix <str>       string prefix for output\n");
lincan/utils/readburst.c:  printf("  -q, --query              query driver features\n");
lincan/utils/readburst.c:  printf("  -V, --version            show version\n");
lincan/utils/readburst.c:  printf("  -h, --help               this usage screen\n");
lincan/utils/readburst.c:	/*------- register handler on SIGINT signal -------*/
lincan/utils/readburst.c:	/*---------------------------------------*/	
lincan/utils/readburst_rtl.c:MODULE_DESCRIPTION("readburst_rtl: receiver of CAN messages for RT-Linux interface to LinCAN driver");
lincan/utils/readburst_rtl.c:	while ((ret=select(FD_SETSIZE,&set, NULL, NULL,&timeout))==-1
lincan/utils/readburst_rtl.c:          &&errno==-EINTR);
lincan/utils/readburst_rtl.c:		return -1;	
lincan/utils/rxtx.c:		return -1;
lincan/utils/rxtx.c:		return -1;
lincan/utils/send.c:		return -1;
lincan/utils/send.c:		return -1;
lincan/utils/sendburst.c:  printf("  -d, --device  <name>     name of CAN device [/dev/can0]\n");
lincan/utils/sendburst.c:  printf("  -i, --id  <num>          ID of generated messages\n");
lincan/utils/sendburst.c:  printf("  -f, --flags <num>        CAN filter flags\n");
lincan/utils/sendburst.c:  printf("  -s, --sync               open in synchronous mode\n");
lincan/utils/sendburst.c:  printf("  -w, --wait <num>         number of seconds to wait between messages\n");
lincan/utils/sendburst.c:  printf("  -b, --block <num>        number of messages in  block\n");
lincan/utils/sendburst.c:  printf("  -c, --count <num>        number of sent blocks of messages\n");
lincan/utils/sendburst.c:  printf("  -p, --prefix <str>       string prefix for output\n");
lincan/utils/sendburst.c:  printf("  -V, --version            show version\n");
lincan/utils/sendburst.c:  printf("  -h, --help               this usage screen\n");
lincan/utils/sendburst.c:			if(!--count) break;
lincan/utils/sendburst_rtl.c:MODULE_DESCRIPTION("sendburst_rtl: generatot of CAN messages for RT-Linux interface to LinCAN driver");
lincan/utils/sendburst_rtl.c:		return -1;
lincan/utils/sendburst_rtl.c:			if(!--count) break;
Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
Makefile.rules:#  Makefile.rules - OCERA make framework common project rules -*- makefile -*-
Makefile.rules:#  (C) Copyright 2003 by Pavel Pisa - OCERA team member
Makefile.rules:# lib_LIBRARIES    .. list of the user-space libraries
Makefile.rules:# shared_LIBRARIES .. list of the user-space shared libraries
Makefile.rules:# kernel_LIBRARIES .. list of the kernel-space libraries
Makefile.rules:# rtlinux_LIBRARIES.. list of the RT-Linux kernel-space libraries
Makefile.rules:# include_HEADERS  .. list of the user-space public header files
Makefile.rules:# kernel_HEADERS   .. list of the kernel-space public header files
Makefile.rules:# rtlinux_HEADERS  .. list of the RT-Linux kernel-space public header files
Makefile.rules:# rtlinux_MODULES  .. list of RT-Linux the kernel side modules/applications
Makefile.rules:# INCLUDES         .. additional include directories and defines for user-space
Makefile.rules:# kernel_INCLUDES  .. additional include directories and defines for kernel-space
Makefile.rules:# rtlinux_INCLUDES .. additional include directories and defines for RT-Linux
Makefile.rules:# RTL_DIR          .. location of RT-Linux sources
Makefile.rules:# Hack to check RT-Linux rules
Makefile.rules:#LINUX_DIR := /home/cvs/ocera/ocera-build/kernel/linux
Makefile.rules:#RTL_DIR := /home/cvs/ocera/ocera-build/kernel/rtlinux
Makefile.rules:#OCERA_DIR := $(shell ( cd -L $(MAKERULES_DIR)/../../.. ; pwd -L ) )
Makefile.rules:-include $(MAKERULES_DIR)/OCERA_TOP_DIR
Makefile.rules:SOURCES_DIR := $(shell ( pwd -L ) )
Makefile.rules:KERN_MODPOST_DIR := $(BUILD_DIR)/kern-modpost
Makefile.rules:KERN_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include-kern
Makefile.rules:KERN_LIB_DIR     := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib-kern
Makefile.rules:KERN_MODPOST_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern-modpost
Makefile.rules:USER_UTILS_DIR   := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
Makefile.rules:ifneq ($(wildcard $(CONFIG_FILE)-default),)
Makefile.rules:-include $(CONFIG_FILE)-default
Makefile.rules:$(warning Please, run "make default-config" first)
Makefile.rules:LINUX_VERSION=$(shell uname -r)
Makefile.rules:#CFLAGS += -ggdb
Makefile.rules:CFLAGS += -O2 
Makefile.rules:CFLAGS += -Wall
Makefile.rules:#CXXFLAGS += -ggdb
Makefile.rules:CXXFLAGS += -O2
Makefile.rules:CXXFLAGS += -Wall
Makefile.rules:CPPFLAGS  += -I $(USER_INCLUDE_DIR)
Makefile.rules:LOADLIBES += -L$(USER_LIB_DIR) 
Makefile.rules:LOADLIBES += $(lib_LOADLIBES:%=-l%)
Makefile.rules:SOLIB_PICFLAGS += -shared -fpic
Makefile.rules:override BACK2TOP_DIR := $(shell echo $(RELATIVE_DIR)/ | sed -e 's_//_/_g' -e 's_/\./_/_g' -e 's_^\./__g'  -e 's_\([^/][^/]*\)_.._g' -e 's_/$$__')
Makefile.rules:.PHONY: default dep subdirs clean clean-custom cleandepend default-config
Makefile.rules:.PHONY: check-make-ver check-dir include-pass library-pass binary-pass utils-pass
Makefile.rules:.PHONY: kernel-lib-pass kernel-pass kernel-mod-pass kernel-modpost-pass default-config-pass
Makefile.rules:.PHONY: check-dir-local include-pass-local library-pass-local binary-pass-local 
Makefile.rules:.PHONY: utils-pass-local kernel-lib-pass-local kernel-mod-pass-local kernel-modpost-pass-local
Makefile.rules:.PHONY: default-config-pass-local
Makefile.rules:include-pass: check-dir
Makefile.rules:library-pass: include-pass
Makefile.rules:binary-pass utils-pass: library-pass
Makefile.rules:kernel-lib-pass: include-pass
Makefile.rules:kernel-mod-pass: kernel-lib-pass
Makefile.rules:kernel-modpost-pass: kernel-mod-pass
Makefile.rules:kernel-pass: kernel-mod-pass kernel-modpost-pass
Makefile.rules:  CPHEADER_FLAGS += -v
Makefile.rules:default: check-make-ver check-dir include-pass library-pass binary-pass utils-pass kernel-lib-pass kernel-pass
Makefile.rules:	[ -d $(1) ] || mkdir -p $(1) || exit 1
Makefile.rules:$(LOCAL_CONFIG_H) : $(wildcard $(CONFIG_FILE)) $(wildcard $(CONFIG_FILE)-default)
Makefile.rules:	@( $(foreach x, $(shell echo $(default_CONFIG) | sed -e 's/\<\([^ ]*\)=[^ ]\>/\1/g' ), \
Makefile.rules:		sed -n -e 's/^\(.*\)\.[ym]$$/#define \1 1/p' \
Makefile.rules:	@if cmp --quiet "$(LOCAL_CONFIG_H).tmp" "$(LOCAL_CONFIG_H)" ; then \
Makefile.rules:check-make-ver:
Makefile.rules:	@GOOD_MAKE_VERSION=`echo $(MAKE_VERSION) | sed -n -e 's/^[4-9]\..*\|^3\.9[0-9].*\|^3\.8[1-9].*/y/p'` ; \
Makefile.rules:# User-space rules and templates to compile programs, libraries etc.
Makefile.rules:#	$(CC) -o $@ $(LCFLAGS) -c $<
Makefile.rules:	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -DOMK_FOR_USER
Makefile.rules:	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -DOMK_FOR_USER
Makefile.rules:CC_MAJOR_VERSION := $(shell $(CC) -dumpversion | sed -e 's/\([^.]\)\..*/\1/')
Makefile.rules:CC_DEPFLAGS = -Wp,-MD,"$@.d.tmp"
Makefile.rules:CC_DEPFLAGS = -MT $@ -MD -MP -MF "$@.d.tmp"
Makefile.rules:	$(Q) if $$(c_o_COMPILE) $$(CC_DEPFLAGS) $(3) -o $$@ -c $$< ; \
Makefile.rules:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules:	$(Q) if $$(cc_o_COMPILE) $$(CC_DEPFLAGS) $(3) -o $$@ -c $$< ; \
Makefile.rules:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules:	$(Q) $$(shell if [ -z "$$(filter %.cc,$$($(1)_SOURCES:%.cxx=%.cc))" ] ; then echo $$(CC) ; else echo $$(CXX) ; fi) \
Makefile.rules:	  $$($(1)_OBJS) $$($(1)_LIBS:%=-l%) $$(LOADLIBES) $$(LDFLAGS) -Wl,-Map,$(USER_OBJS_DIR)/$(1).exe.map -o $(2)/$(1)
Makefile.rules:	@sed -n -e 's/^LOAD \(.*\)$$$$/  \1  \\/p' $(USER_OBJS_DIR)/$(1).exe.map  >>$(USER_OBJS_DIR)/$(1).exe.d
Makefile.rules:	$(Q) $(LD) --shared --soname=lib$(1).so -o $$@ $$^
Makefile.rules:library-pass-local: $(lib_LIBRARIES:%=$(USER_LIB_DIR)/lib%.a) $(shared_LIBRARIES:%=$(USER_LIB_DIR)/lib%.so)
Makefile.rules:binary-pass-local: $(bin_PROGRAMS:%=$(USER_BIN_DIR)/%)
Makefile.rules:utils-pass-local: $(utils_PROGRAMS:%=$(USER_UTILS_DIR)/%)
Makefile.rules:-include $(USER_OBJS_DIR)/*.d
Makefile.rules:# Kernel-space rules and templates to compile modules, libraries etc.
Makefile.rules:kern_GCCLIB_DIR=$(shell LANG=C LC_ALL=C LC_MESSAGES=C $(CC) -print-search-dirs | sed -n -e 's/^install: \(.*\)$$/\1/p' )
Makefile.rules:INCLUDES := -I $(KERN_INCLUDE_DIR) $(INCLUDE) $(rtlinux_INCLUDES) $(kernel_INCLUDES)
Makefile.rules:#-DEXPORT_NO_SYMBOLS
Makefile.rules:c_o_kern_COMPILE = $(KERN_CC) -idirafter $(kern_GCCLIB_DIR)/include $(INCLUDES)  $(CFLAGS) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB -nostdinc
Makefile.rules:cc_o_kern_COMPILE = $(CXX) $(INCLUDES) $(CXXFLAGS) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB
Makefile.rules:kernel_INCLUDES += -idirafter $(LINUX_SRC)/include/linux
Makefile.rules:kern_GCCLIB_DIR=$(shell LANG=C LC_ALL=C LC_MESSAGES=C $(LINUX_CC) -print-search-dirs | sed -n -e 's/^install: \(.*\)$$/\1/p' )
Makefile.rules:KERN_CC = echo KERN_CC not defined - compilation skipped
Makefile.rules:c_o_kern_COMPILE = $(KERN_CC) $(kernel_INCLUDES) -idirafter $(kern_GCCLIB_DIR)/include $(LINUX_CPPFLAGS) $(LINUX_CFLAGS) $(LINUX_CFLAGS_MODULE) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB -nostdinc
Makefile.rules:cc_o_kern_COMPILE = $(KERN_CC) $(kernel_INCLUDES) -idirafter $(kern_GCCLIB_DIR)/include $(LINUX_CPPFLAGS) $(LINUX_CFLAGS) $(LINUX_CFLAGS_MODULE) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB
Makefile.rules:KERN_ARCH = echo KERN_ARCH not defined - skipped
Makefile.rules:KERN_LD = echo KERN_LD  not defined - skipped
Makefile.rules:KERN_LOADLIBES += -L$(KERN_LIB_DIR) 
Makefile.rules:KERN_LOADLIBES += $(rtlinux_LOADLIBES:%=-l%)
Makefile.rules:KERN_LOADLIBES += $(kernel_LOADLIBES:%=-l%)
Makefile.rules:kern_CC_MAJOR_VERSION := $(shell $(KERN_CC) -dumpversion | sed -e 's/\([^.]\)\..*/\1/')
Makefile.rules:kern_CC_DEPFLAGS = -Wp,-MD,"$@.d.tmp"
Makefile.rules:kern_CC_DEPFLAGS = -MT $@ -MD -MP -MF "$@.d.tmp"
Makefile.rules:	$(Q) if $$(c_o_kern_COMPILE) $$(kern_CC_DEPFLAGS) $(3) -DKBUILD_BASENAME=$(notdir $(basename $(1))) \
Makefile.rules:	-o $$@ -c $$< ; \
Makefile.rules:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules:	$(Q) if $$(cc_o_kern_COMPILE) $$(kern_CC_DEPFLAGS) $(3) -DKBUILD_BASENAME=$(notdir $(basename $(1))) \
Makefile.rules:	-o $$@ -c $$< ; \
Makefile.rules:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules:#$(eval $(call COMPILE_c_o_kern_template,$(1).mod.c,$(1).mod.o,-DKBUILD_MODNAME=$(1)))
Makefile.rules:	$(Q) $$(KERN_LD) $$(KERN_LDFLAGS) -r $$($(1)_OBJS) -L$$(kern_GCCLIB_DIR) $$($(1)_LIBS:%=-l%) $$(KERN_LOADLIBES) -Map $(KERN_OBJS_DIR)/$(1).mod.map -o $$@
Makefile.rules:	@sed -n -e 's/^LOAD \(.*\)$$$$/  \1  \\/p' $(KERN_OBJS_DIR)/$(1).mod.map  >>$(KERN_OBJS_DIR)/$(1).mod.d
Makefile.rules:	  echo $(1) >>$(KERN_MODPOST_DIR)/module-changes ; \
Makefile.rules:kernel-lib-pass-local: $(kernel_LIBRARIES:%=$(KERN_LIB_DIR)/lib%.a)
Makefile.rules:kernel-mod-pass-local: $(kernel_MODULES:%=$(KERN_MODULES_LINK_DIR)/%$(KERN_LINK_SUFFIX))
Makefile.rules:kernel-mod-pass-local: $(rtlinux_MODULES:%=$(KERN_MODULES_LINK_DIR)/%$(KERN_LINK_SUFFIX))
Makefile.rules:kernel-lib-pass-local: $(rtlinux_LIBRARIES:%=$(KERN_LIB_DIR)/lib%.a)
Makefile.rules:	$(Q) $$(cc_o_kern_COMPILE) -DKBUILD_BASENAME=$(1) -DKBUILD_MODNAME=$(1) -o $(1).mod.o -c $(1).mod.c
Makefile.rules:	$(Q) $$(KERN_LD) $$(KERN_LDFLAGS) $(1)$(KERN_LINK_SUFFIX) $(1).mod.o -r -o $$@
Makefile.rules:kernel-modpost-versions: $(wildcard $(LINUX_DIR)/Module.symvers)
Makefile.rules:	@echo  >$(KERN_MODPOST_DIR)/modpost-running
Makefile.rules:	@rm -f $(KERN_MODPOST_DIR)/module-changes
Makefile.rules:	$(Q) $(KERN_MODPOST) $(MODULES_LIST:%=%$(KERN_LINK_SUFFIX)) $(^:%=-i %)
Makefile.rules:$(MODULES_LIST:%=%.mod.c) : kernel-modpost-versions
Makefile.rules:kernel-modpost-pass-local: $(MODULES_LIST:%=$(KERN_MODULES_DIR)/%$(KERN_EXE_SUFFIX))
Makefile.rules:	@rm -f $(KERN_MODPOST_DIR)/modpost-running
Makefile.rules:-include $(KERN_OBJS_DIR)/*.d
Makefile.rules:kernel-lib-pass:
Makefile.rules:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(KERN_OBJS_DIR)/$(dir) \
Makefile.rules:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules:	+@if [ -n "$(kernel_LIBRARIES)$(rtlinux_LIBRARIES)" ] ; \
Makefile.rules:	    $(MAKE) --no-print-directory -C $(KERN_OBJS_DIR) \
Makefile.rules:		-f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y $(@:%=%-local) ; \
Makefile.rules:kernel-mod-pass:
Makefile.rules:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(KERN_OBJS_DIR)/$(dir) \
Makefile.rules:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules:	+@if [ -n "$(kernel_MODULES)$(rtlinux_MODULES)" ] ; \
Makefile.rules:	    $(MAKE) --no-print-directory -C $(KERN_OBJS_DIR) \
Makefile.rules:		-f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y $(@:%=%-local) ; \
Makefile.rules:kernel-modpost-pass:
Makefile.rules:	+@if [ -e "$(KERN_MODPOST_DIR)/module-changes" -o -e "$(KERN_MODPOST_DIR)/modpost-running" ] ; \
Makefile.rules:	    $(MAKE) --no-print-directory -C $(KERN_MODPOST_DIR) \
Makefile.rules:	       -f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y KERN_MODPOST_PASS=y $(@:%=%-local) ; \
Makefile.rules:library-pass binary-pass utils-pass:
Makefile.rules:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(USER_OBJS_DIR)/$(dir) \
Makefile.rules:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules:		if [ "$@" != "binary-pass" ] ; then exit 0 ; fi ; \
Makefile.rules:		if [ ! -e $(SOURCES_DIR)/$(dir)/Makefile ] ; then  \
Makefile.rules:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(SOURCES_DIR)/$(dir) \
Makefile.rules:		-f $(SOURCES_DIR)/$(dir)/Makefile || exit 1 ;)
Makefile.rules:	@$(MAKE) --no-print-directory -C $(USER_OBJS_DIR) \
Makefile.rules:		-f $(SOURCES_DIR)/Makefile USER_RULE_TEMPLATES=y $(@:%=%-local)
Makefile.rules:dep clean install check-dir include-pass default-config-pass:
Makefile.rules:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(USER_OBJS_DIR)/$(dir) \
Makefile.rules:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules:	@$(MAKE) --no-print-directory -C $(USER_OBJS_DIR) \
Makefile.rules:		-f $(SOURCES_DIR)/Makefile $(@:%=%-local)
Makefile.rules:dep-local:
Makefile.rules:check-dir-local:
Makefile.rules:install-local:
Makefile.rules:default-config:
Makefile.rules:	@echo "# Start of OMK config file" > "$(CONFIG_FILE)-default"
Makefile.rules:	@echo "# This file should not be altered manually" >> "$(CONFIG_FILE)-default"
Makefile.rules:	@echo "# Overrides should be stored in file $(notdir $(CONFIG_FILE))" >> "$(CONFIG_FILE)-default"
Makefile.rules:	@echo >> "$(CONFIG_FILE)-default"
Makefile.rules:	@$(MAKE) --no-print-directory -C $(MAKERULES_DIR) \
Makefile.rules:		-f $(MAKERULES_DIR)/Makefile default-config-pass
Makefile.rules:default-config-pass-local:
Makefile.rules:	@echo "# Config for $(RELATIVE_DIR)" >> "$(CONFIG_FILE)-default"
Makefile.rules:		sed -e 's/^.*=x$$/#\0/' >> "$(CONFIG_FILE)-default" ; )
Makefile.rules:include-pass-local:
Makefile.rules:	@$(foreach f, $(include_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(notdir $(f)) \
Makefile.rules:	@$(foreach f, $(nobase_include_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(f) \
Makefile.rules:	   || ( mkdir -p $(USER_INCLUDE_DIR)/$(dir $(f)) && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(f) ) || exit 1 ; )
Makefile.rules:	   srcfname=`echo '$(f)' | sed -e 's/^\(.*\)->.*$$/\1/'` ; destfname=`echo '$(f)' | sed -e 's/^.*->\(.*\)$$/\1/'` ; \
Makefile.rules:	   cmp --quiet $(SOURCES_DIR)/$${srcfname} $(USER_INCLUDE_DIR)/$${destfname} \
Makefile.rules:	   || ( mkdir -p `dirname $(USER_INCLUDE_DIR)/$${destfname}` && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$${srcfname} $(USER_INCLUDE_DIR)/$${destfname} ) || exit 1 ; )
Makefile.rules:# Kernel and RT-Linux stuff
Makefile.rules:	@$(foreach f, $(kernel_HEADERS) $(rtlinux_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(notdir $(f)) \
Makefile.rules:	@$(foreach f, $(nobase_kernel_HEADERS) $(nobase_rtlinux_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(f) \
Makefile.rules:	   || ( mkdir -p $(KERN_INCLUDE_DIR)/$(dir $(f)) && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(f) ) || exit 1 ; )
Makefile.rules:	   srcfname=`echo '$(f)' | sed -e 's/^\(.*\)->.*$$/\1/'` ; destfname=`echo '$(f)' | sed -e 's/^.*->\(.*\)$$/\1/'` ; \
Makefile.rules:	   cmp --quiet $(SOURCES_DIR)/$${srcfname} $(KERN_INCLUDE_DIR)/$${destfname} \
Makefile.rules:	   || ( mkdir -p `dirname $(KERN_INCLUDE_DIR)/$${destfname}` && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$${srcfname} $(KERN_INCLUDE_DIR)/$${destfname} ) || exit 1 ; )
Makefile.rules:# User-space static libraries and applications object files
Makefile.rules:# User-space shared libraries object files
Makefile.rules:clean-local: clean-custom
Makefile.rules:	@rm -f $(KERN_OBJS_DIR)/*.o $(USER_OBJS_DIR)/*.o $(USER_OBJS_DIR)/*.lo \
Makefile.rules:	@if [ -e $(KERN_LIB_DIR)/kernel.mk ] ; then \
Makefile.rules:	    touch -t 200001010101 $(KERN_LIB_DIR)/kernel.mk ; \
Makefile.rules-ocera:#  Makefile.rules - OCERA make framework common project rules -*- makefile -*-
Makefile.rules-ocera:#  (C) Copyright 2003 by Pavel Pisa - OCERA team member
Makefile.rules-ocera:# lib_LIBRARIES    .. list of the user-space libraries
Makefile.rules-ocera:# shared_LIBRARIES .. list of the user-space shared libraries
Makefile.rules-ocera:# kernel_LIBRARIES .. list of the kernel-space libraries
Makefile.rules-ocera:# rtlinux_LIBRARIES.. list of the RT-Linux kernel-space libraries
Makefile.rules-ocera:# include_HEADERS  .. list of the user-space public header files
Makefile.rules-ocera:# kernel_HEADERS   .. list of the kernel-space public header files
Makefile.rules-ocera:# rtlinux_HEADERS  .. list of the RT-Linux kernel-space public header files
Makefile.rules-ocera:# rtlinux_MODULES  .. list of RT-Linux the kernel side modules/applications
Makefile.rules-ocera:# INCLUDES         .. additional include directories and defines for user-space
Makefile.rules-ocera:# kernel_INCLUDES  .. additional include directories and defines for kernel-space
Makefile.rules-ocera:# rtlinux_INCLUDES .. additional include directories and defines for RT-Linux
Makefile.rules-ocera:# RTL_DIR          .. location of RT-Linux sources
Makefile.rules-ocera:# Hack to check RT-Linux rules
Makefile.rules-ocera:#LINUX_DIR := /home/cvs/ocera/ocera-build/kernel/linux
Makefile.rules-ocera:#RTL_DIR := /home/cvs/ocera/ocera-build/kernel/rtlinux
Makefile.rules-ocera:#OCERA_DIR := $(shell ( cd -L $(MAKERULES_DIR)/../../.. ; pwd -L ) )
Makefile.rules-ocera:-include $(MAKERULES_DIR)/OCERA_TOP_DIR
Makefile.rules-ocera:SOURCES_DIR := $(shell ( pwd -L ) )
Makefile.rules-ocera:KERN_MODPOST_DIR := $(BUILD_DIR)/kern-modpost
Makefile.rules-ocera:KERN_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include-kern
Makefile.rules-ocera:KERN_LIB_DIR     := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib-kern
Makefile.rules-ocera:KERN_MODPOST_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern-modpost
Makefile.rules-ocera:USER_UTILS_DIR   := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
Makefile.rules-ocera:ifneq ($(wildcard $(CONFIG_FILE)-default),)
Makefile.rules-ocera:-include $(CONFIG_FILE)-default
Makefile.rules-ocera:$(warning Please, run "make default-config" first)
Makefile.rules-ocera:LINUX_VERSION=$(shell uname -r)
Makefile.rules-ocera:#CFLAGS += -ggdb
Makefile.rules-ocera:CFLAGS += -O2 
Makefile.rules-ocera:CFLAGS += -Wall
Makefile.rules-ocera:#CXXFLAGS += -ggdb
Makefile.rules-ocera:CXXFLAGS += -O2
Makefile.rules-ocera:CXXFLAGS += -Wall
Makefile.rules-ocera:CPPFLAGS  += -I $(USER_INCLUDE_DIR)
Makefile.rules-ocera:LOADLIBES += -L$(USER_LIB_DIR) 
Makefile.rules-ocera:LOADLIBES += $(lib_LOADLIBES:%=-l%)
Makefile.rules-ocera:SOLIB_PICFLAGS += -shared -fpic
Makefile.rules-ocera:override BACK2TOP_DIR := $(shell echo $(RELATIVE_DIR)/ | sed -e 's_//_/_g' -e 's_/\./_/_g' -e 's_^\./__g'  -e 's_\([^/][^/]*\)_.._g' -e 's_/$$__')
Makefile.rules-ocera:.PHONY: default dep subdirs clean clean-custom cleandepend default-config
Makefile.rules-ocera:.PHONY: check-make-ver check-dir include-pass library-pass binary-pass utils-pass
Makefile.rules-ocera:.PHONY: kernel-lib-pass kernel-pass kernel-mod-pass kernel-modpost-pass default-config-pass
Makefile.rules-ocera:.PHONY: check-dir-local include-pass-local library-pass-local binary-pass-local 
Makefile.rules-ocera:.PHONY: utils-pass-local kernel-lib-pass-local kernel-mod-pass-local kernel-modpost-pass-local
Makefile.rules-ocera:.PHONY: default-config-pass-local
Makefile.rules-ocera:include-pass: check-dir
Makefile.rules-ocera:library-pass: include-pass
Makefile.rules-ocera:binary-pass utils-pass: library-pass
Makefile.rules-ocera:kernel-lib-pass: include-pass
Makefile.rules-ocera:kernel-mod-pass: kernel-lib-pass
Makefile.rules-ocera:kernel-modpost-pass: kernel-mod-pass
Makefile.rules-ocera:kernel-pass: kernel-mod-pass kernel-modpost-pass
Makefile.rules-ocera:  CPHEADER_FLAGS += -v
Makefile.rules-ocera:default: check-make-ver check-dir include-pass library-pass binary-pass utils-pass kernel-lib-pass kernel-pass
Makefile.rules-ocera:	[ -d $(1) ] || mkdir -p $(1) || exit 1
Makefile.rules-ocera:$(LOCAL_CONFIG_H) : $(wildcard $(CONFIG_FILE)) $(wildcard $(CONFIG_FILE)-default)
Makefile.rules-ocera:	@( $(foreach x, $(shell echo $(default_CONFIG) | sed -e 's/\<\([^ ]*\)=[^ ]\>/\1/g' ), \
Makefile.rules-ocera:		sed -n -e 's/^\(.*\)\.[ym]$$/#define \1 1/p' \
Makefile.rules-ocera:	@if cmp --quiet "$(LOCAL_CONFIG_H).tmp" "$(LOCAL_CONFIG_H)" ; then \
Makefile.rules-ocera:check-make-ver:
Makefile.rules-ocera:	@GOOD_MAKE_VERSION=`echo $(MAKE_VERSION) | sed -n -e 's/^[4-9]\..*\|^3\.9[0-9].*\|^3\.8[1-9].*/y/p'` ; \
Makefile.rules-ocera:# User-space rules and templates to compile programs, libraries etc.
Makefile.rules-ocera:#	$(CC) -o $@ $(LCFLAGS) -c $<
Makefile.rules-ocera:	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -DOMK_FOR_USER
Makefile.rules-ocera:	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -DOMK_FOR_USER
Makefile.rules-ocera:CC_MAJOR_VERSION := $(shell $(CC) -dumpversion | sed -e 's/\([^.]\)\..*/\1/')
Makefile.rules-ocera:CC_DEPFLAGS = -Wp,-MD,"$@.d.tmp"
Makefile.rules-ocera:CC_DEPFLAGS = -MT $@ -MD -MP -MF "$@.d.tmp"
Makefile.rules-ocera:	$(Q) if $$(c_o_COMPILE) $$(CC_DEPFLAGS) $(3) -o $$@ -c $$< ; \
Makefile.rules-ocera:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules-ocera:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules-ocera:	$(Q) if $$(cc_o_COMPILE) $$(CC_DEPFLAGS) $(3) -o $$@ -c $$< ; \
Makefile.rules-ocera:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules-ocera:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules-ocera:	$(Q) $$(shell if [ -z "$$(filter %.cc,$$($(1)_SOURCES:%.cxx=%.cc))" ] ; then echo $$(CC) ; else echo $$(CXX) ; fi) \
Makefile.rules-ocera:	  $$($(1)_OBJS) $$($(1)_LIBS:%=-l%) $$(LOADLIBES) $$(LDFLAGS) -Wl,-Map,$(USER_OBJS_DIR)/$(1).exe.map -o $(2)/$(1)
Makefile.rules-ocera:	@sed -n -e 's/^LOAD \(.*\)$$$$/  \1  \\/p' $(USER_OBJS_DIR)/$(1).exe.map  >>$(USER_OBJS_DIR)/$(1).exe.d
Makefile.rules-ocera:	$(Q) $(LD) --shared --soname=lib$(1).so -o $$@ $$^
Makefile.rules-ocera:library-pass-local: $(lib_LIBRARIES:%=$(USER_LIB_DIR)/lib%.a) $(shared_LIBRARIES:%=$(USER_LIB_DIR)/lib%.so)
Makefile.rules-ocera:binary-pass-local: $(bin_PROGRAMS:%=$(USER_BIN_DIR)/%)
Makefile.rules-ocera:utils-pass-local: $(utils_PROGRAMS:%=$(USER_UTILS_DIR)/%)
Makefile.rules-ocera:-include $(USER_OBJS_DIR)/*.d
Makefile.rules-ocera:# Kernel-space rules and templates to compile modules, libraries etc.
Makefile.rules-ocera:kern_GCCLIB_DIR=$(shell LANG=C LC_ALL=C LC_MESSAGES=C $(CC) -print-search-dirs | sed -n -e 's/^install: \(.*\)$$/\1/p' )
Makefile.rules-ocera:INCLUDES := -I $(KERN_INCLUDE_DIR) $(INCLUDE) $(rtlinux_INCLUDES) $(kernel_INCLUDES)
Makefile.rules-ocera:#-DEXPORT_NO_SYMBOLS
Makefile.rules-ocera:c_o_kern_COMPILE = $(KERN_CC) -idirafter $(kern_GCCLIB_DIR)/include $(INCLUDES)  $(CFLAGS) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB -nostdinc
Makefile.rules-ocera:cc_o_kern_COMPILE = $(CXX) $(INCLUDES) $(CXXFLAGS) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB
Makefile.rules-ocera:kernel_INCLUDES += -idirafter $(LINUX_SRC)/include/linux
Makefile.rules-ocera:kern_GCCLIB_DIR=$(shell LANG=C LC_ALL=C LC_MESSAGES=C $(LINUX_CC) -print-search-dirs | sed -n -e 's/^install: \(.*\)$$/\1/p' )
Makefile.rules-ocera:KERN_CC = echo KERN_CC not defined - compilation skipped
Makefile.rules-ocera:c_o_kern_COMPILE = $(KERN_CC) $(kernel_INCLUDES) -idirafter $(kern_GCCLIB_DIR)/include $(LINUX_CPPFLAGS) $(LINUX_CFLAGS) $(LINUX_CFLAGS_MODULE) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB -nostdinc
Makefile.rules-ocera:cc_o_kern_COMPILE = $(KERN_CC) $(kernel_INCLUDES) -idirafter $(kern_GCCLIB_DIR)/include $(LINUX_CPPFLAGS) $(LINUX_CFLAGS) $(LINUX_CFLAGS_MODULE) -DOMK_FOR_KERNEL -DEXPORT_SYMTAB
Makefile.rules-ocera:KERN_ARCH = echo KERN_ARCH not defined - skipped
Makefile.rules-ocera:KERN_LD = echo KERN_LD  not defined - skipped
Makefile.rules-ocera:KERN_LOADLIBES += -L$(KERN_LIB_DIR) 
Makefile.rules-ocera:KERN_LOADLIBES += $(rtlinux_LOADLIBES:%=-l%)
Makefile.rules-ocera:KERN_LOADLIBES += $(kernel_LOADLIBES:%=-l%)
Makefile.rules-ocera:kern_CC_MAJOR_VERSION := $(shell $(KERN_CC) -dumpversion | sed -e 's/\([^.]\)\..*/\1/')
Makefile.rules-ocera:kern_CC_DEPFLAGS = -Wp,-MD,"$@.d.tmp"
Makefile.rules-ocera:kern_CC_DEPFLAGS = -MT $@ -MD -MP -MF "$@.d.tmp"
Makefile.rules-ocera:	$(Q) if $$(c_o_kern_COMPILE) $$(kern_CC_DEPFLAGS) $(3) -DKBUILD_BASENAME=$(notdir $(basename $(1))) \
Makefile.rules-ocera:	-o $$@ -c $$< ; \
Makefile.rules-ocera:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules-ocera:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules-ocera:	$(Q) if $$(cc_o_kern_COMPILE) $$(kern_CC_DEPFLAGS) $(3) -DKBUILD_BASENAME=$(notdir $(basename $(1))) \
Makefile.rules-ocera:	-o $$@ -c $$< ; \
Makefile.rules-ocera:	then mv -f "$$@.d.tmp" "$$@.d" ; \
Makefile.rules-ocera:	else rm -f "$$@.d.tmp" ; exit 1; \
Makefile.rules-ocera:#$(eval $(call COMPILE_c_o_kern_template,$(1).mod.c,$(1).mod.o,-DKBUILD_MODNAME=$(1)))
Makefile.rules-ocera:	$(Q) $$(KERN_LD) $$(KERN_LDFLAGS) -r $$($(1)_OBJS) -L$$(kern_GCCLIB_DIR) $$($(1)_LIBS:%=-l%) $$(KERN_LOADLIBES) -Map $(KERN_OBJS_DIR)/$(1).mod.map -o $$@
Makefile.rules-ocera:	@sed -n -e 's/^LOAD \(.*\)$$$$/  \1  \\/p' $(KERN_OBJS_DIR)/$(1).mod.map  >>$(KERN_OBJS_DIR)/$(1).mod.d
Makefile.rules-ocera:	  echo $(1) >>$(KERN_MODPOST_DIR)/module-changes ; \
Makefile.rules-ocera:kernel-lib-pass-local: $(kernel_LIBRARIES:%=$(KERN_LIB_DIR)/lib%.a)
Makefile.rules-ocera:kernel-mod-pass-local: $(kernel_MODULES:%=$(KERN_MODULES_LINK_DIR)/%$(KERN_LINK_SUFFIX))
Makefile.rules-ocera:kernel-mod-pass-local: $(rtlinux_MODULES:%=$(KERN_MODULES_LINK_DIR)/%$(KERN_LINK_SUFFIX))
Makefile.rules-ocera:kernel-lib-pass-local: $(rtlinux_LIBRARIES:%=$(KERN_LIB_DIR)/lib%.a)
Makefile.rules-ocera:	$(Q) $$(cc_o_kern_COMPILE) -DKBUILD_BASENAME=$(1) -DKBUILD_MODNAME=$(1) -o $(1).mod.o -c $(1).mod.c
Makefile.rules-ocera:	$(Q) $$(KERN_LD) $$(KERN_LDFLAGS) $(1)$(KERN_LINK_SUFFIX) $(1).mod.o -r -o $$@
Makefile.rules-ocera:kernel-modpost-versions: $(wildcard $(LINUX_DIR)/Module.symvers)
Makefile.rules-ocera:	@echo  >$(KERN_MODPOST_DIR)/modpost-running
Makefile.rules-ocera:	@rm -f $(KERN_MODPOST_DIR)/module-changes
Makefile.rules-ocera:	$(Q) $(KERN_MODPOST) $(MODULES_LIST:%=%$(KERN_LINK_SUFFIX)) $(^:%=-i %)
Makefile.rules-ocera:$(MODULES_LIST:%=%.mod.c) : kernel-modpost-versions
Makefile.rules-ocera:kernel-modpost-pass-local: $(MODULES_LIST:%=$(KERN_MODULES_DIR)/%$(KERN_EXE_SUFFIX))
Makefile.rules-ocera:	@rm -f $(KERN_MODPOST_DIR)/modpost-running
Makefile.rules-ocera:-include $(KERN_OBJS_DIR)/*.d
Makefile.rules-ocera:kernel-lib-pass:
Makefile.rules-ocera:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(KERN_OBJS_DIR)/$(dir) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules-ocera:	+@if [ -n "$(kernel_LIBRARIES)$(rtlinux_LIBRARIES)" ] ; \
Makefile.rules-ocera:	    $(MAKE) --no-print-directory -C $(KERN_OBJS_DIR) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y $(@:%=%-local) ; \
Makefile.rules-ocera:kernel-mod-pass:
Makefile.rules-ocera:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(KERN_OBJS_DIR)/$(dir) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules-ocera:	+@if [ -n "$(kernel_MODULES)$(rtlinux_MODULES)" ] ; \
Makefile.rules-ocera:	    $(MAKE) --no-print-directory -C $(KERN_OBJS_DIR) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y $(@:%=%-local) ; \
Makefile.rules-ocera:kernel-modpost-pass:
Makefile.rules-ocera:	+@if [ -e "$(KERN_MODPOST_DIR)/module-changes" -o -e "$(KERN_MODPOST_DIR)/modpost-running" ] ; \
Makefile.rules-ocera:	    $(MAKE) --no-print-directory -C $(KERN_MODPOST_DIR) \
Makefile.rules-ocera:	       -f $(SOURCES_DIR)/Makefile KERN_RULE_TEMPLATES=y KERN_MODPOST_PASS=y $(@:%=%-local) ; \
Makefile.rules-ocera:library-pass binary-pass utils-pass:
Makefile.rules-ocera:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(USER_OBJS_DIR)/$(dir) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules-ocera:		if [ "$@" != "binary-pass" ] ; then exit 0 ; fi ; \
Makefile.rules-ocera:		if [ ! -e $(SOURCES_DIR)/$(dir)/Makefile ] ; then  \
Makefile.rules-ocera:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(SOURCES_DIR)/$(dir) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/$(dir)/Makefile || exit 1 ;)
Makefile.rules-ocera:	@$(MAKE) --no-print-directory -C $(USER_OBJS_DIR) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/Makefile USER_RULE_TEMPLATES=y $(@:%=%-local)
Makefile.rules-ocera:dep clean install check-dir include-pass default-config-pass:
Makefile.rules-ocera:		RELATIVE_DIR=$(RELATIVE_DIR)/$(dir) -C $(USER_OBJS_DIR)/$(dir) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/$(dir)/Makefile $@ || exit 1 ;)
Makefile.rules-ocera:	@$(MAKE) --no-print-directory -C $(USER_OBJS_DIR) \
Makefile.rules-ocera:		-f $(SOURCES_DIR)/Makefile $(@:%=%-local)
Makefile.rules-ocera:dep-local:
Makefile.rules-ocera:check-dir-local:
Makefile.rules-ocera:install-local:
Makefile.rules-ocera:default-config:
Makefile.rules-ocera:	@echo "# Start of OMK config file" > "$(CONFIG_FILE)-default"
Makefile.rules-ocera:	@echo "# This file should not be altered manually" >> "$(CONFIG_FILE)-default"
Makefile.rules-ocera:	@echo "# Overrides should be stored in file $(notdir $(CONFIG_FILE))" >> "$(CONFIG_FILE)-default"
Makefile.rules-ocera:	@echo >> "$(CONFIG_FILE)-default"
Makefile.rules-ocera:	@$(MAKE) --no-print-directory -C $(MAKERULES_DIR) \
Makefile.rules-ocera:		-f $(MAKERULES_DIR)/Makefile default-config-pass
Makefile.rules-ocera:default-config-pass-local:
Makefile.rules-ocera:	@echo "# Config for $(RELATIVE_DIR)" >> "$(CONFIG_FILE)-default"
Makefile.rules-ocera:		sed -e 's/^.*=x$$/#\0/' >> "$(CONFIG_FILE)-default" ; )
Makefile.rules-ocera:include-pass-local:
Makefile.rules-ocera:	@$(foreach f, $(include_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(notdir $(f)) \
Makefile.rules-ocera:	@$(foreach f, $(nobase_include_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(f) \
Makefile.rules-ocera:	   || ( mkdir -p $(USER_INCLUDE_DIR)/$(dir $(f)) && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$(f) $(USER_INCLUDE_DIR)/$(f) ) || exit 1 ; )
Makefile.rules-ocera:	   srcfname=`echo '$(f)' | sed -e 's/^\(.*\)->.*$$/\1/'` ; destfname=`echo '$(f)' | sed -e 's/^.*->\(.*\)$$/\1/'` ; \
Makefile.rules-ocera:	   cmp --quiet $(SOURCES_DIR)/$${srcfname} $(USER_INCLUDE_DIR)/$${destfname} \
Makefile.rules-ocera:	   || ( mkdir -p `dirname $(USER_INCLUDE_DIR)/$${destfname}` && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$${srcfname} $(USER_INCLUDE_DIR)/$${destfname} ) || exit 1 ; )
Makefile.rules-ocera:# Kernel and RT-Linux stuff
Makefile.rules-ocera:	@$(foreach f, $(kernel_HEADERS) $(rtlinux_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(notdir $(f)) \
Makefile.rules-ocera:	@$(foreach f, $(nobase_kernel_HEADERS) $(nobase_rtlinux_HEADERS), cmp --quiet $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(f) \
Makefile.rules-ocera:	   || ( mkdir -p $(KERN_INCLUDE_DIR)/$(dir $(f)) && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$(f) $(KERN_INCLUDE_DIR)/$(f) ) || exit 1 ; )
Makefile.rules-ocera:	   srcfname=`echo '$(f)' | sed -e 's/^\(.*\)->.*$$/\1/'` ; destfname=`echo '$(f)' | sed -e 's/^.*->\(.*\)$$/\1/'` ; \
Makefile.rules-ocera:	   cmp --quiet $(SOURCES_DIR)/$${srcfname} $(KERN_INCLUDE_DIR)/$${destfname} \
Makefile.rules-ocera:	   || ( mkdir -p `dirname $(KERN_INCLUDE_DIR)/$${destfname}` && cp $(CPHEADER_FLAGS) $(SOURCES_DIR)/$${srcfname} $(KERN_INCLUDE_DIR)/$${destfname} ) || exit 1 ; )
Makefile.rules-ocera:# User-space static libraries and applications object files
Makefile.rules-ocera:# User-space shared libraries object files
Makefile.rules-ocera:clean-local: clean-custom
Makefile.rules-ocera:	@rm -f $(KERN_OBJS_DIR)/*.o $(USER_OBJS_DIR)/*.o $(USER_OBJS_DIR)/*.lo \
Makefile.rules-ocera:	@if [ -e $(KERN_LIB_DIR)/kernel.mk ] ; then \
Makefile.rules-ocera:	    touch -t 200001010101 $(KERN_LIB_DIR)/kernel.mk ; \
OCERA_TOP_DIR-ocera:OCERA_DIR := $(shell ( cd -L $(MAKERULES_DIR)/../../.. ; pwd -L ) )
README.makerules:  http://paulandlesley.org/make/make-3.81beta1.tar.bz2
README.makerules:  http://cmp.felk.cvut.cz/~pisa/can/make-3.81beta1.tar.gz
README.makerules: - central Makefile.rules for most of subcomponents and components
README.makerules: - the rules in more spread Makefiles are way to the hell,
README.makerules:  (update for different kernel, RT-Linux etc would be nightmare in other case)
README.makerules: - make system should allow to freely move with cross-dependant components
README.makerules:  (I hate somethink like -I../../sched/rtlshwq/include in CAN makefiles
README.makerules: - make system should be able to compile mutually cross-dependant libraries
README.makerules: - make system has to enable compilation out of OCERA full source tree
README.makerules: - compile should be able to do all above work without need to install
README.makerules: - because we use some libraries for RT-Linux build and userspace
README.makerules: - the build system should allow to call make for particular source
README.makerules: - make system should enable to build out of sources tree
README.makerules: - it would be good, if there would be possibility to make from read-only
README.makerules: - make system should store results of build in some separate directory
README.makerules: - Makefiles in sources directories should be simple
README.makerules: - it would require deep revision of all OCERA CVS contents and agreement
README.makerules: - this system is not well prepared for dual compilation for Linux
README.makerules:   and RT-Linux sub-targets. It would mean many changes in default
README.makerules:   to rebuild GCC tool chain for something like i586-elf-rtlinux.
README.makerules:for RT-Linux and Linux kernel related stuff
README.makerules:# lib_LIBRARIES    .. list of the user-space libraries
README.makerules:# shared_LIBRARIES .. list of the user-space shared libraries
README.makerules:# kernel_LIBRARIES .. list of the kernel-space libraries
README.makerules:# rtlinux_LIBRARIES.. list of the RT-Linux kernel-space libraries
README.makerules:# include_HEADERS  .. list of the user-space header files
README.makerules:# kernel_HEADERS   .. list of the kernel-space  header files
README.makerules:# rtlinux_HEADERS  .. list of the RT-Linux kernel-space  header files
README.makerules:# rtlinux_MODULES  .. list of RT-Linux the kernel side modules/applications
README.makerules:# INCLUDES         .. additional include directories and defines for user-space
README.makerules:# kernel_INCLUDES  .. additional include directories and defines for kernel-space
README.makerules:# rtlinux_INCLUDES .. additional include directories and defines for RT-Linux
README.makerules:	this is used for separation of build sub-trees in OCERA environment
README.makerules:        directory to store intermediate files for kernel-space targets
README.makerules:        directory to store intermediate files for user-space targets
README.makerules:        on user-space include path
README.makerules:        same for user-pace libraries
README.makerules:USER_UTILS_DIR   := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
README.makerules:KERN_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include-kern
README.makerules:        on kernel-space include path
README.makerules:KERN_LIB_DIR     := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib-kern
README.makerules:        same for kernel-pace libraries
README.makerules:        builded modules for Linux kernel or RT-Linux system
README.makerules:default-config .. generates config.omk-default or xxx-default configuration file
README.makerules:check-dir      .. checks and creates required build directories
README.makerules:include-pass   .. copyes header files to USER_INCLUDE_DIR and KERN_INCLUDE_DIR
README.makerules:library-pass   .. builds objects in USER_BUILD_DIR/<relative path> and creates
README.makerules:binary-pass and utils-pass .. links respective binaries
README.makerules:kernel-lib-pass .. builds libraries for kernel space targets
README.makerules:kernel-pass    .. builds kernel modules
README.makerules:and targets cross-dependencies.
README.makerules: - the system is not as fast as we would like
README.makerules: - it lacks Autoconf and configure extensive support for many systems
README.makerules: - it does not contain support for checking existence of target libraries
README.makerules: - it is heavily dependant on GNU MAKE program. But it would not be big
README.makerules:   MAKE with them to be able to work in non-friendly systems
README.makerules: - the key drawback is dependence on recent MAKE version 3.80 and better
README.makerules:I use Slackware-9.2 and it contains latest released version 
README.makerules:I have put together package similar to release. Only ./configure --prefix=...
README.makerules:  http://paulandlesley.org/make/make-3.81beta1.tar.bz2
README.makerules:  http://cmp.felk.cvut.cz/~pisa/can/make-3.81beta1.tar.gz
README.makerules:I do not expect, that Debian would be more up-to-date or contain fixes
README.makerules:  http://cmp.felk.cvut.cz/~pisa/can/ocera-can-031212.tar.gz
README.makerules:The code should build for user-space with new make on most of Linux distros
README.makerules:If you want to test compile for RT-Linux targets, line
README.makerules:#RTL_DIR := /home/cvs/ocera/ocera-build/kernel/rtlinux
README.makerules:to point RT-Linux directory containing "rtl.mk".
README.makerules:There is only one library ("ulutrtl") and test utility compiled for RT-Linux
README.makerules:#OCERA_DIR := $(shell ( cd -L $(MAKERULES_DIR)/../../.. ; pwd -L ) )
README.makerules:The OMK system has integrated rules (default-config) to build default configuration
README.makerules:file. The file is named "config.omk-default" for the stand-alone compilation.
README.makerules:The name corresponds to OCERA config + "-default" if OCERA_DIR is defined.
switch2standalone:if [ ! -e Makefile.rules-ocera ] ; then
switch2standalone:  cp Makefile.rules Makefile.rules-ocera
switch2standalone:if [ -e OCERA_TOP_DIR ] ; then
switch2standalone:  mv -f OCERA_TOP_DIR OCERA_TOP_DIR-ocera
switch2standalone:#sed -e 's/^OCERA_DIR := /#OCERA_DIR := /' <Makefile.rules-ocera >Makefile.rules
switch2standalone:# Prepare "config.omk-default" file, user overrides should go into "config.omk"
switch2standalone:make default-config
switch2standalone:echo 'and add modified lines from "config.omk-default" file into it'
switch2standalone:echo 'check by "make --version" command' 
test-can-in-konsole:# Parameter "--script" is required when konsole has been started.
test-can-in-konsole:#   konsole --script
test-can-in-konsole:#CAN_SRC_DIR=~/ocera/ocera-pc104/components/comm/can
test-can-in-konsole:#CAN_BIN_DIR=~/ocera/ocera-pc104/target-i386/usr/bin
test-can-in-konsole:#CAN_UTILS_DIR=~/ocera/ocera-pc104/target-i386/usr/bin
test-can-in-konsole:if [ -z "$CAN_BIN_DIR" ] ; then
test-can-in-konsole:  MAKERULES_DIR=$( cd `dirname $0` ; old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$old_pwd" == `pwd`  ] ; \
test-can-in-konsole:   then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd )
test-can-in-konsole:  CAN_UTILS_DIR="$MAKERULES_DIR/_compiled/bin-utils"
test-can-in-konsole:if [ -z "$CAN_SRC_DIR" ] ; then
test-can-in-konsole:if [ -z "$(lsmod | grep '^lincan' )" ] ; then
test-can-in-konsole:  if [ $? -ne 0 ] ; then
test-can-in-konsole:    su -c "insmod $CAN_MODULES_DIR/lincan.*o hw=virtual io=0"
test-can-in-konsole:    if [ $? -ne 0 ] ; then
test-can-in-konsole:if [ -n "$KONSOLE_DCOP" ] ; then
test-can-in-konsole:  #DCOPRef(konsole-9272,konsole)
test-can-in-konsole:  konsole=$(echo "$KONSOLE_DCOP" | sed -n 's/DCOPRef(\([^,]*\),konsole)/\1/p')
test-can-in-konsole:  konsole=$(dcopstart konsole-script)
test-can-in-konsole:echo "INVOKING: cd $CAN_BIN_DIR ; ./canblaster -g 15"
test-can-in-konsole:dcop $konsole $session sendSession "cd $CAN_BIN_DIR ; ./canblaster -g 15"
test-can-in-konsole:echo "INVOKING: cd $CAN_BIN_DIR ; ./canslave -g 15 -e $CAN_SRC_DIR/nascan.eds -s $CAN_SRC_DIR/nascan.hds"
test-can-in-konsole:dcop $konsole $session sendSession "cd $CAN_BIN_DIR ; ./canslave -g 15 -e $CAN_SRC_DIR/candev/nascan.eds -s $CAN_SRC_DIR/candev/nascan.hds"
utils/CVS/Repository:ts-7200/dist/ocera_comm_can/utils
utils/flib/CVS/Repository:ts-7200/dist/ocera_comm_can/utils/flib
utils/flib/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
utils/flib/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
utils/flib/fexception.cc://------------------------------------------------------------
utils/flib/fexception.cc://------------------------------------------------------------
utils/flib/fexception.cc://------------------------------------------------------------
utils/flib/fexception.h://---------------------------------------------------------------------
utils/flib/fexception.h://---------------------------------------------------------------------
utils/flib/flist_def.h:            merge_cnt  = (x12 > x1)? x12-x1: 0;
utils/flib/flist_def.h:            merge_cnt += (x22 > x2)? x22-x2: 0;
utils/flib/flist_def.h://---------------------------------------------------------------------------
utils/flib/flist_def.h:// - pouzivat FVector pouze pro jednoduche typy (int, char atd.) a pointery
utils/flib/flist_def.h:// - pro slozitejsi objekty pouzivat FList, ktery si uchovava pointery na
utils/flib/flist_def.h://---------------------------------------------------------------------------
utils/flib/flist_def.h://---------------------------------------------------------------------
utils/flib/flist_def.h:        Remove(ix, Cnt() - ix);
utils/flib/flist_def.h:    /** @return pointer to the ix-th item of FVector */
utils/flib/flist_def.h:        this->RemoveAll();
utils/flib/flist_def.h:        this->setCapacity(0);
utils/flib/flist_def.h://	void RemoveRest(unsigned int ix) {Remove(ix, Cnt() - ix);}
utils/flib/flist_def.h:    /// vraci ix-ty prvek FListu (ktery je pointer, samozrejme)
utils/flib/flist_def.h:        return *this->Pointer(ix);
utils/flib/flist_def.h:    /// vraci referenci na ix-ty prvek FListu (ktery je pointer, samozrejme)
utils/flib/flist_def.h:    /// vraci referenci na objekt na ktery ukazuje ix-ty prvek FListu
utils/flib/flist_def.h:        this->RemoveAll();
utils/flib/flist_def.h://---------------------------------------------------------------------
utils/flib/flist_def.h://--------------------------------------------------------------
utils/flib/flist_def.h://--------------------------------------------------------------
utils/flib/flist_def.h://--------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:        throw FVectorException("IncrRefCnt() - RefCnt==INT_MAX.");
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:        throw FVectorException("DecrRefCnt() - RefCnt==0, implementation error.");
utils/flib/flist_impl.h:    fRefCnt--;
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:/// vraci ukazatel na ix-ty prvek FVectoru
utils/flib/flist_impl.h:        throw FVectorException("item(%u) - index out of range!", ix);
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:        throw FVectorException("FVector<T>::setCapacity(%u) - RefCnt() != 1.", newcnt);
utils/flib/flist_impl.h:        throw FVectorException("FVector<T>::setCapacity(%u) - realloc() failed.", newcnt);
utils/flib/flist_impl.h://--------------------------------------------------------------
utils/flib/flist_impl.h:        throw FVectorException("FVector<T>::setCnt(%u) - RefCnt() != 1", newcnt);
utils/flib/flist_impl.h:// ----------------------------------------------------------------------
utils/flib/flist_impl.h://--------------------------------------------------------------
utils/flib/flist_impl.h:	if(before_ix < 0) before_ix = Cnt() - before_ix;	// append
utils/flib/flist_impl.h:    for(flist_ix_t ui=Cnt()-1; ui>before_ix; ui--) vector[ui] = vector[ui - 1];
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:    flist_ix_t L = 0, H = Cnt()-1, M;
utils/flib/flist_impl.h:            while(M > 0 && vector[M-1] == key) M--;
utils/flib/flist_impl.h:            // a kdyz je M==0 pak M-1 je 0xFFFFFFFF
utils/flib/flist_impl.h:            H = M - 1;
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:    if(start_ix < 0) start_ix = Cnt() - start_ix;
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:    flist_ix_t oldcnt = this->Cnt();
utils/flib/flist_impl.h:        for(flist_ix_t u=oldcnt; u<this->Cnt(); u++) this->vector[u] = NULL;
utils/flib/flist_impl.h://        for(unsigned u=oldcnt; u<this->Cnt(); u++) this->vector[u] = new T;
utils/flib/flist_impl.h:            T *o = this->vector[i];
utils/flib/flist_impl.h:                this->vector[i] = NULL;
utils/flib/flist_impl.h:// ----------------------------------------------------------------------
utils/flib/flist_impl.h:    if(ix < 0) ix = this->Cnt() - ix;
utils/flib/flist_impl.h:    if(DeleteOnRemove()) for(flist_ix_t ix2 = ix; ix2<ix+cnt && ix2<this->Cnt(); ix2++) {
utils/flib/flist_impl.h:        T* item = this->vector[ix2];
utils/flib/flist_impl.h:        fprintf(stderr, "<4>FList: FList<T>::Remove - Delete on remove %p\n", item);
utils/flib/flist_impl.h:    fprintf(stderr, "<4>FList: FList<T>::Remove - EXIT\n");
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:    flist_ix_t L = 0, H = this->Cnt()-1, M;
utils/flib/flist_impl.h:    if(this->Cnt()==0) return FEOFLIST;
utils/flib/flist_impl.h:            while(M > 0 && (*this)[M-1] == key) M--;
utils/flib/flist_impl.h:            // a kdyz je M==0 pak M-1 je 0xFFFFFFFF
utils/flib/flist_impl.h:            H = M - 1;
utils/flib/flist_impl.h://---------------------------------------------------------------------------
utils/flib/flist_impl.h:    if(start_ix < 0) start_ix = this->Cnt() - start_ix;
utils/flib/flist_impl.h:    for(flist_ix_t u=start_ix; u<this->Cnt(); u++) {
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://                                                                                  !\" $%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~
utils/flib/fstring.cc:static const unsigned char TO_LOWER_TBL_CZ[]=    "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~szlaszlraaalcceeidnooouutr ";
utils/flib/fstring.cc:static const unsigned char TO_UPPER_TBL_CZ[]=    "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~LDOOUT ";
utils/flib/fstring.cc:static const unsigned char TO_7BIT_TBL[] =       "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~SSTZzsstzzLASZlasllzRAAAALCCCEEEEIIDDNNOOOORUUUUYTraaaalccceeeeiiddnnooooruuuuyt ";
utils/flib/fstring.cc:static const unsigned char TO_7BIT_LOWER_TBL[] = "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~sstzzsstzzlaszlasllzraaaalccceeeeiiddnnooooruuuuytraaaalccceeeeiiddnnooooruuuuyt ";
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://                                               "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~
utils/flib/fstring.cc:static const unsigned char CZ_SORT_TBL[]=        "\0                                !\"#$%&'()*+,-./0123456789:;<=>?@ABCEGHIJLMNOPQSTUVXZ\\]^_`acdefghABCEGHIJLMNOPQSTUVXZ\\]^_`aijklY[bY[bAADGGGLFRSSW\\\\\\`AADGGGLFRSSW\\\\\\`";
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:            for(i=0; i<token_len && s[i] && s+i-str<len; i++) {
utils/flib/fstring.cc:                if(!p[i] && (!s[i] || s+i-str>=len)) {
utils/flib/fstring.cc:            if(*s && s-str<len) s++;
utils/flib/fstring.cc:    return s - str;
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(len1 == 0) return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        if((pc1 - (byte*)str1) >= len1 || c1 == 0) {
utils/flib/fstring.cc:            if((pc2 - (byte*)str2) >= len2 || c2 == 0) return 0;
utils/flib/fstring.cc:            else        return -1;
utils/flib/fstring.cc:        if((pc2 - (byte*)str2) >= len2 || c2 == 0) return 1;
utils/flib/fstring.cc:        if(c1 < c2) return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:      if((pc1 - (byte*)str1) >= len1 || c1 == 0) {
utils/flib/fstring.cc:        if((pc2 - (byte*)str2) >= len2 || c2 == 0) return 0;
utils/flib/fstring.cc:        else        return -1;
utils/flib/fstring.cc:      if((pc2 - (byte*)str2) >= len2 || c2 == 0) return 1;
utils/flib/fstring.cc:      if(c1 < c2) return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:      if((pc1 - (byte*)str1) >= len1 || *pc1 == 0) {
utils/flib/fstring.cc:        if((pc2 - (byte*)str2) >= len2 || *pc2 == 0) return 0;
utils/flib/fstring.cc:        else          return -1;
utils/flib/fstring.cc:      if((pc2 - (byte*)str2) >= len2 || *pc2 == 0) return 1;
utils/flib/fstring.cc:      if(*pc1 < *pc2) return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(shift && !ctrl && !alt) k += 'a' - 'A';
utils/flib/fstring.cc:    if(shift && !ctrl && !alt) k = SHIFT_NUMS[k-'0'];
utils/flib/fstring.cc:  else if(k>=0x60 && k<=0x6E) k = k - 0x60 + '0';    //num keypad
utils/flib/fstring.cc:  else if(k==0xBD) k = '-';
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:int fieldstart = -1;
utils/flib/fstring.cc:      fieldstart = pc - str;
utils/flib/fstring.cc:  return -(i+1);
utils/flib/fstring.cc://-------------------------------------------------------
utils/flib/fstring.cc:    data->IncrRefCnt();
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    fLength = data->Cnt();
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    data->DecrRefCnt();
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:            ((FString*)this)->ZeroTermStr = pc;
utils/flib/fstring.cc:            // ((FString*)this)->ZeroTermStr proto, abych mohl zmenit const pointer this
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        setLen(Len() - 1); // zkratim string na puvodni delku
utils/flib/fstring.cc:            data->Append('\0');
utils/flib/fstring.cc:            throw FStringException("CStr() - internal data inconsistency.");
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        data->DecrRefCnt();
utils/flib/fstring.cc:        byte *o = data->Vector();
utils/flib/fstring.cc:        data->setLen(Len());
utils/flib/fstring.cc:            byte *n = data->Vector();
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        data->setLen(new_len);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(l <= BuffLen() - Offset()) fLength = l;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    fstr.data->IncrRefCnt();
utils/flib/fstring.cc:    data->DecrRefCnt();
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://        throw FStringException("operator[%i] - index out of range Len()==%i", index, Len());
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    int i = (backward)? l-1: 0;
utils/flib/fstring.cc:    int dir = (backward)? -1: 1;
utils/flib/fstring.cc:        if(pc[i] == findchar) count--;
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        for(i=j; i<Len() && (*this)[i]==str[i-j]; i++);
utils/flib/fstring.cc:        if(!str[i-j]) count--;
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        for(i=j; i<Len() && toupper((*this)[i])==toupper(str[i-j]); i++);
utils/flib/fstring.cc:        if(!str[i-j]) count--;
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        if(c == close_bracket) opens--;
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    fs.fLength = end - start;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(j < pattern.Len()) return -(i + 1);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if((*this)[ix] == '+' || (*this)[ix] == '-') {sgn = true; ix++;}
utils/flib/fstring.cc:    if(ix == 1 && sgn) ix = 0;  // + nebo - neni cislo
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    getRef(-1) = c;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    data->setCapacity(newcapacity);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    for(pc=(unsigned char*)str, pd=(unsigned char*)str; *pc && (pc-str) < len; pc++) {
utils/flib/fstring.cc:    fs.setLen(pd - str);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    FString fs = this->Trim();
utils/flib/fstring.cc:    while(*pc2 && (pc2-str)<len) {
utils/flib/fstring.cc:            while(*pc2 && *pc2 <= ' ' && (pc2-str)<len) pc2++;
utils/flib/fstring.cc:    fs.setLen(pc1 - str);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    fs.fLength -= i;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    for(i=fs.Len(); i>0 && fs.Buff()[fs.Offset() + i - 1]<=' '; i--);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(newlen < l) {fs = fs.Slice(l-newlen); return fs;}
utils/flib/fstring.cc:    int ni = newlen-1;
utils/flib/fstring.cc:	for(int i=l-1; i>=0; i--) pc[ni--] = pc[i];
utils/flib/fstring.cc:	for(; ni>=0; ni--) pc[ni] = padchar;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:	int l = (newlen - Len()) / 2;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        int l = UnCryptStr(fs.Str(), StrBuff(), Len()-1);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(n<0) setUInt(-n);
utils/flib/fstring.cc:    if(n<0) *this = "-" + *this;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    pc2 = buff + l - 1;
utils/flib/fstring.cc:      pc1++; pc2--;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    if(val < 0) {neg = true; val = -val;}
utils/flib/fstring.cc://    double epsilon = 5 * pow10(-(dec + 1));
utils/flib/fstring.cc:        fs = "0." + FString::Rep('0', -decpos) + fs;
utils/flib/fstring.cc:        fs += FString::Rep('0', decpos - fs.Len()) + ".";
utils/flib/fstring.cc:    if(neg) fs = "-" + fs;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://-------------------------------- friends ----------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:            b = c/16; EscBuff[2] = (b < 0x0A)? b + '0': b - 0x0A + 'A';
utils/flib/fstring.cc:            b = c%16; EscBuff[3] = (b < 0x0A)? b + '0': b - 0x0A + 'A';
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:            b = (byte)(c < 'A')? c - '0': c - 'A' + 0x0A;
utils/flib/fstring.cc:            b += (byte)(c < 'A')? c - '0': c - 'A' + 0x0A;
utils/flib/fstring.cc:    return pc - (byte*)str;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:            fs += (b1 < 0x0A)? b1 + '0': b1 - 0x0A + 'A';
utils/flib/fstring.cc:            fs += (b1 < 0x0A)? b1 + '0': b1 - 0x0A + 'A';
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:    return -1;
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:                        if(fs[-1] == q) fs.Slice(1, -1);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        if(quote) if(fs[0] == quote && fs[-1] == quote) fs = fs.Slice(1, -1);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.cc:        if(!str_src) sl->Append(FStringTable::dummyStr);
utils/flib/fstring.cc:        else         sl->Append((*str_src)[u]);
utils/flib/fstring.cc://---------------------------------------------------------------------------
utils/flib/fstring.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h:/// nalezne pro ch jeho 7-mi bitovou representaci
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h:/// vraci pocet znaku str, kterse shoduji s pattern nebo -1
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h:/// Funkce Str() upravi string tak, aby to byl c-string ukonceny 0 a vraci ukazatel
utils/flib/fstring_def.h:        int RefCnt() const {return data->RefCnt();}
utils/flib/fstring_def.h:        byte* Buff() const {return data->Vector();}
utils/flib/fstring_def.h:            return (char*)data->Vector();
utils/flib/fstring_def.h:        /// upravi maximalne citlive string tak, aby to byl c-string ukonceny 0 a vraci ukazatel
utils/flib/fstring_def.h:        int BuffLen() const {return data->Cnt();}
utils/flib/fstring_def.h:        int Capacity() const {return data->Capacity();}
utils/flib/fstring_def.h:        void Shrink() {if(data) data->Shrink();}
utils/flib/fstring_def.h:        /// returns index of n-th occurence of c or -1 if not found
utils/flib/fstring_def.h:        /// returns index of n-th occurence of str or -1 if not found
utils/flib/fstring_def.h:        /// returns index of n-th occurence of str or -1 if not found
utils/flib/fstring_def.h:         * ie. '!~~\!' matches nonblanks-blanks-! 'hello !', 'sorry   !' 
utils/flib/fstring_def.h:         * or negative value (number of partially matched chars from str - 1) 
utils/flib/fstring_def.h:         * @return this->Slice(0, len)
utils/flib/fstring_def.h:        /// vrati string vznikly opakovanim c cnt-krat
utils/flib/fstring_def.h:        /// neni-li specifikovan row, bere se posledni radek
utils/flib/fstring_def.h:            if(((unsigned)row) == FEOFLIST && RowCnt() > 0) row = RowCnt() - 1;
utils/flib/fstring_def.h:            if(row == FEOFLIST) return (*this)[RowCnt() - 1][col].Str();
utils/flib/fstring_def.h:            if(row == FEOFLIST) return (*this)[RowCnt() - 1][col];
utils/flib/fstring_def.h:            if(row == FEOFLIST) return (*this)[RowCnt() - 1][col].toInt();
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_def.h: *      'abcdef' - string, ktery se tam vepise
utils/flib/fstring_def.h: *       n - cislo radku
utils/flib/fstring_def.h: *       f - aktualni sloupec
utils/flib/fstring_def.h: *       s - zmen aktualni sloupec (SKIP) napr. %s, %+5s, %-2s, %1s
utils/flib/fstring_def.h: * ve tvaru <[befor char][after char]>, napr. <=-> vyrobi caru z '=' pred
utils/flib/fstring_def.h: * a caru z '-' za zformatovanymi radky, < -> resp <- > vyrobi caru pouze pred resp. za
utils/flib/fstring_def.h:                    fss = FString(u-startrow+1);
utils/flib/fstring_def.h:                    if(padc == '-') col -= width;
utils/flib/fstring_def.h://---------------------------------------------------------------------------
utils/flib/fstring_exc.h://---------------------------------------------------------------------------
utils/flib/fstring_exc.h://---------------------------------------------------------------------------
utils/flib/teststring.cc:    for(int i=0; i<100; i++) v.Append(50-i);
utils/flib/teststring.cc:    fs = fs.Slice(0, -2);
utils/flib/teststring.cc:    printf("\nSTRING TEST - concatenation\n");
utils/flib/teststring.cc:    printf("------------------------------------------------------------------\n");
utils/flib/teststring.cc:        for(int i=0; i<sl.Cnt(); i++) printf("FString list test: sl[-%02i] == '%s'\n", i, sl[-i].Str());
utils/rdln/CVS/Repository:ts-7200/dist/ocera_comm_can/utils/rdln
utils/rdln/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
utils/rdln/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
utils/rdln/README:just type: rdln testclient -a 147.32.84.158
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c:// copy max n-1 chars append '\0'
utils/rdln/cfstring.c:	if(n-- <= 0) return dest;
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c:		pc--;
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c:	if(!*p) return s - str;
utils/rdln/cfstring.c:	return -(s - str);
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.c:// len(-2147483648) = 11
utils/rdln/cfstring.c:	else if(str[i] == '-') {
utils/rdln/cfstring.c:		sign = -1;
utils/rdln/cfstring.c:	for(nlen = 0; nbuff[nlen]; nlen++) val = 10*val + (nbuff[nlen] - '0');
utils/rdln/cfstring.c://-----------------------------------------------------------------
utils/rdln/cfstring.h:// copy max n-1 chars append '\0'
utils/rdln/cfstring.h:// return the length of the pattern or -1
utils/rdln/rdln.c://--------------------------------------------------------------------
utils/rdln/rdln.c://--------------------------------------------------------------------
utils/rdln/rdln.c:			"\t-h\tthis help screen\n"
utils/rdln/rdln.c:			"\t-g n\tsets the log level to n (LOG_FATAL=0, LOG_ERR, LOG_MSG, LOG_INF, LOG_DEB=4)\n"
utils/rdln/rdln.c://--------------------------------------------------------------------
utils/rdln/rdln.c:// -------------- log levels ------------------
utils/rdln/rdln.c://--------------------------------------------------------------------
utils/rdln/rdln.c://-----------------------------------------------------------------------------
utils/rdln/rdln.c://--------------------------------------------------------------------
utils/rdln/rdln.c://-----------------------------------------------------------------------------
utils/rdln/rdln.c:		*pfd = -1;
utils/rdln/rdln.c:		int n = read(fd, rdln_buff, RDLN_BUFF_LEN-1);
utils/rdln/rdln.c:		if(argv[cmdix][0] == '-') {
utils/rdln/rdln.c:					mylog(LOG_ERR, "ERROR: invalid option -%c\n", *pc);
utils/rdln/rdln.c:	strncpyf(rdln_prompt, argv[cmdix], RDLN_PROMPT_LEN-1);
utils/rdln/rdln.c:	if(fork_result == (pid_t)-1) {
utils/rdln/rdln.c:		for(exitus = -1; exitus == -1;) {
utils/rdln/rdln.c:				case -1:
utils/rdln/rdln.c://-----------------------------------------------------------------------------
utils/rdln/rdln.c://-----------------------------------------------------------------------------
utils/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
utils/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
utils/scripts/CVS/Repository:ts-7200/dist/ocera_comm_can/utils/scripts
utils/scripts/CVS/Entries:/cpickle-canmsgs/1.1.1.1/Thu Oct  6 19:31:08 2005//
utils/scripts/CVS/Entries:/kernel-doc/1.1.1.1/Thu Oct  6 19:31:08 2005//
utils/scripts/cpickle-canmsgs:if [ -z "$JAVA_HOME" ] ; then
utils/scripts/cpickle-canmsgs:mkdir -p cpickle
utils/scripts/cpickle-canmsgs:# -ea - enble assertions
utils/scripts/cpickle-canmsgs:$JAVA -ea \
utils/scripts/cpickle-canmsgs:  -cp $LIB_DIR/cpickle.jar:$LIB_DIR/canmonitor.jar \
utils/scripts/cpickle-canmsgs:  -c \
utils/scripts/diff4cvs.py:diff_command = "diff --brief -r"
utils/scripts/diff4cvs.py:#diff_command = "diff --brief -r -x CVS -x _build -x _compiled -x %s" % diff_dir
utils/scripts/diff4cvs.py:    #print 'cp:', src, '-->', dst
utils/scripts/diff4cvs.py:        if o_verbose: print 'copy file:', src, '-->', dst
utils/scripts/diff4cvs.py:          -v more verbose output 
utils/scripts/diff4cvs.py:          -X "wildcard1,wildcard2, ..." 
utils/scripts/diff4cvs.py:             default is -X "CVS,_*"
utils/scripts/diff4cvs.py:          -x "wildcard1,wildcard2, ..." 
utils/scripts/diff4cvs.py:             stronger than -i option
utils/scripts/diff4cvs.py:             default is -x "*~"
utils/scripts/diff4cvs.py:          -i "wildcard1,wildcard2, ..." 
utils/scripts/diff4cvs.py:             default is -i "*"'''
utils/scripts/diff4cvs.py:        if a == '-h':
utils/scripts/diff4cvs.py:        elif a == '-v':
utils/scripts/diff4cvs.py:        elif a == '-X':
utils/scripts/diff4cvs.py:        elif a == '-x':
utils/scripts/diff4cvs.py:        elif a == '-i':
utils/scripts/diff4cvs.py:        ss += ' -x "' + s + '"'
utils/scripts/diff4cvs.py:        #print 'copy:', src, '->', dst
utils/scripts/kernel-doc:#!/usr/bin/perl -w
utils/scripts/kernel-doc:# w.o. 03-11-2000: added the '-filelist' option.
utils/scripts/kernel-doc:# 18/01/2001 - 	Cleanups
utils/scripts/kernel-doc:# -- huggie@earth.li
utils/scripts/kernel-doc:# 27/06/2001 -  Allowed whitespace after initial "/**" and
utils/scripts/kernel-doc:# -- Christian Kreibich <ck@whoop.org>
utils/scripts/kernel-doc:# 	- add perldoc documentation
utils/scripts/kernel-doc:# 	- Look more closely at some of the scarier bits :)
utils/scripts/kernel-doc:# 26/05/2001 - 	Support for separate source and object trees.
utils/scripts/kernel-doc:# 23/09/2001 - Added support for typedefs, structs, enums and unions
utils/scripts/kernel-doc:# -- Tim Jansen <tim@tjansen.de>
utils/scripts/kernel-doc:# style of gnome comments (+minor extensions - see below).
utils/scripts/kernel-doc:# kerneldoc [ -docbook | -html | -text | -man ]
utils/scripts/kernel-doc:#           [ -function funcname [ -function funcname ...] ] c file(s)s > outputfile
utils/scripts/kernel-doc:#           [ -nofunction funcname [ -function funcname ...] ] c file(s)s > outputfile
utils/scripts/kernel-doc:#  Set output format using one of -docbook -html -text or -man.  Default is man.
utils/scripts/kernel-doc:#  -function funcname
utils/scripts/kernel-doc:#  -nofunction funcname
utils/scripts/kernel-doc:#	other functions are ignored. Cannot be used with -function together
utils/scripts/kernel-doc:#	(yes thats a bug - perl hackers can fix it 8))
utils/scripts/kernel-doc:#  c files - list of 'c' files to process
utils/scripts/kernel-doc:#  * function_name(:)? (- short description)?
utils/scripts/kernel-doc:#  * my_function - does my stuff
utils/scripts/kernel-doc:#  * my_function - does my stuff
utils/scripts/kernel-doc:#  * struct my_struct - short description
utils/scripts/kernel-doc:# Example-sections should contain the string EXAMPLE so that they are marked 
utils/scripts/kernel-doc:#  * user_function - function that can only be called in user context
utils/scripts/kernel-doc:# 'funcname()' - function
utils/scripts/kernel-doc:# '$ENVVAR' - environmental variable
utils/scripts/kernel-doc:# '&struct_name' - name of a structure (up to two words including 'struct')
utils/scripts/kernel-doc:# '@parameter' - name of a parameter
utils/scripts/kernel-doc:# '%CONST' - name of a constant.
utils/scripts/kernel-doc:my $type_constant = '\%([-_\w]+)';
utils/scripts/kernel-doc:# text-mode
utils/scripts/kernel-doc:    print "Usage: $0 [ -v ] [ -docbook | -html | -text | -man ]\n";
utils/scripts/kernel-doc:    print "         [ -sgmlreferencetitle title ]\n";
utils/scripts/kernel-doc:    print "         [ -function funcname [ -function funcname ...] ]\n";
utils/scripts/kernel-doc:    print "         [ -nofunction funcname [ -nofunction funcname ...] ]\n";
utils/scripts/kernel-doc:    print "         [ -no-dummy-per-file ]\n";
utils/scripts/kernel-doc:if ($#ARGV==-1) {
utils/scripts/kernel-doc:# docbook v3.1 requires a non-zero sequence of RefEntry's; see:
utils/scripts/kernel-doc:# http://www.oasis-open.org/docbook/documentation/reference/html/refentry.html
utils/scripts/kernel-doc:# 0 - normal code
utils/scripts/kernel-doc:# 1 - looking for function name
utils/scripts/kernel-doc:# 2 - scanning field start.
utils/scripts/kernel-doc:# 3 - scanning prototype.
utils/scripts/kernel-doc:# 4 - documentation block
utils/scripts/kernel-doc:my $undescribed = "-- undescribed --";
utils/scripts/kernel-doc:while ($ARGV[0] =~ m/^-(.*)/) {
utils/scripts/kernel-doc:    if ($cmd eq "-html") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-man") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-text") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-docbook") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-gnome") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-module") { # not needed for sgml, inherits from calling document
utils/scripts/kernel-doc:    } elsif ($cmd eq "-sgmlreferencetitle") { # valid XML document
utils/scripts/kernel-doc:    } elsif ($cmd eq "-no-dummy-per-file") {
utils/scripts/kernel-doc:    } elsif ($cmd eq "-function") { # to only output specific functions
utils/scripts/kernel-doc:    } elsif ($cmd eq "-nofunction") { # to only output specific functions
utils/scripts/kernel-doc:    } elsif ($cmd eq "-v") {
utils/scripts/kernel-doc:    } elsif (($cmd eq "-h") || ($cmd eq "--help")) {
utils/scripts/kernel-doc:    } elsif ($cmd eq '-filelist') {
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:    $id = "API-".$args{'function'};
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:		# pointer-to-function
utils/scripts/kernel-doc:    $id = "API-struct-".$args{'struct'};
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:    $id = "API-enum-".$args{'enum'};
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:    $id = "API-typedef-".$args{'typedef'};
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:    $id = $args{'module'}."-".$args{'function'};
utils/scripts/kernel-doc:    $id =~ s/[^A-Za-z0-9]/-/g;
utils/scripts/kernel-doc:		# pointer-to-function
utils/scripts/kernel-doc:    print $args{'function'}." \\- ".$args{'purpose'}."\n";
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:    print "enum ".$args{'enum'}." \\- ".$args{'purpose'}."\n";
utils/scripts/kernel-doc:    print $args{'type'}." ".$args{'struct'}." \\- ".$args{'purpose'}."\n";
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:    print "typedef ".$args{'typedef'}." \\- ".$args{'purpose'}."\n";
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:	print "    -> ";
utils/scripts/kernel-doc:# generic output function - calls the right one based
utils/scripts/kernel-doc:	    # pointer-to-function
utils/scripts/kernel-doc:    $prototype =~ s/__attribute__ \(\([a-z,]*\)\)//;
utils/scripts/kernel-doc:    # - parport_register_device (function pointer parameters)
utils/scripts/kernel-doc:    # - atomic_set (macro)
utils/scripts/kernel-doc:    # - pci_match_device (long return type)
utils/scripts/kernel-doc:    if ($prototype =~ m/^()([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s+\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^()([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
utils/scripts/kernel-doc:	$prototype =~ m/^(\w+\s+\w+\s+\w+\s*\*)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/)  {
utils/scripts/kernel-doc:	print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
utils/scripts/kernel-doc:	    ($2 eq '}') && $brcount--;
utils/scripts/kernel-doc:		if (/\s*([\w\s]+?)\s*-/) {
utils/scripts/kernel-doc:		if (/-(.*)/) {
utils/scripts/kernel-doc:		" - I thought it was a doc line\n";
utils/scripts/kernel-doc:		# miguel-style comment kludge, look for blank lines after
utils/scripts/kernel-doc:		# i dont know - bad line?  ignore.
utils/scripts/tmpl2sgml:		system "$KERNELDOC -docbook $srcfile";
utils/suiut/CVS/Repository:ts-7200/dist/ocera_comm_can/utils/suiut
utils/suiut/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
utils/suiut/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
utils/suiut/Makefile.omk:# RT-Linux version of build
utils/suiut/Makefile.omk:rtlinux_INCLUDES = -DUL_WITH_RTL_MALLOC
utils/suiut/sui_dievc.h: *   - MPL - Mozilla Public License
utils/suiut/sui_dievc.h: *   - GPL - GNU Public License
utils/suiut/sui_dievc.h: *   - LGPL - Lesser GNU Public License
utils/suiut/sui_dievc.h: *   - and other licenses added by project originators
utils/suiut/sui_dievc.h: * Code can be modified and re-distributed under any combination
utils/suiut/sui_dinfo.c: *   - MPL - Mozilla Public License
utils/suiut/sui_dinfo.c: *   - GPL - GNU Public License
utils/suiut/sui_dinfo.c: *   - LGPL - Lesser GNU Public License
utils/suiut/sui_dinfo.c: *   - and other licenses added by project originators
utils/suiut/sui_dinfo.c: * Code can be modified and re-distributed under any combination
utils/suiut/sui_dinfo.c: * sui_dinfo_inc_refcnt - Increase reference count of DINFO
utils/suiut/sui_dinfo.c:  if( datai->refcnt >= 0) datai->refcnt++;
utils/suiut/sui_dinfo.c: * sui_dinfo_dec_refcnt - Decrease reference count of DINFO
utils/suiut/sui_dinfo.c:  if(datai->refcnt>0) datai->refcnt--;
utils/suiut/sui_dinfo.c:  if(!datai->refcnt) {
utils/suiut/sui_dinfo.c:    if(datai->hevent) {
utils/suiut/sui_dinfo.c:      if( datai->evmask & SUEV_COMMAND) {
utils/suiut/sui_dinfo.c:        datai->hevent(datai,&event);
utils/suiut/sui_dinfo.c:    if(datai->tx_hub != NULL){
utils/suiut/sui_dinfo.c:      evc_tx_hub_done(datai->tx_hub);
utils/suiut/sui_dinfo.c:      free(datai->tx_hub);
utils/suiut/sui_dinfo.c:      datai->tx_hub=NULL;
utils/suiut/sui_dinfo.c:    if(datai->hevent) {
utils/suiut/sui_dinfo.c:      if( datai->evmask & SUEV_FREE) {
utils/suiut/sui_dinfo.c:        datai->hevent(datai,&event);
utils/suiut/sui_dinfo.c: * sui_create_dinfo - Creates new dynamic DINFO
utils/suiut/sui_dinfo.c:  di->ptr = adata;
utils/suiut/sui_dinfo.c:  di->fdigits = afdig;
utils/suiut/sui_dinfo.c:  di->minval = amin;
utils/suiut/sui_dinfo.c:  di->maxval = amax;
utils/suiut/sui_dinfo.c:  di->info = ainfo;
utils/suiut/sui_dinfo.c:  di->rdval = rd;
utils/suiut/sui_dinfo.c:  di->wrval = wr;
utils/suiut/sui_dinfo.c: * sui_create_dinfo_int - Creates DINFO for signed integer or fixed point data
utils/suiut/sui_dinfo.c: * @aidxsize: Allowed range of indexes form 0 to @aidxsize-1, if zero,
utils/suiut/sui_dinfo.c:      dinfo->idxsize=aidxsize;
utils/suiut/sui_dinfo.c:      dinfo->tinfo = type;
utils/suiut/sui_dinfo.c: * sui_create_dinfo_uint - Creates DINFO for unsigned integer or fixed point data
utils/suiut/sui_dinfo.c: * @aidxsize: Allowed range of indexes form 0 to @aidxsize-1, if zero,
utils/suiut/sui_dinfo.c:      dinfo->idxsize=aidxsize;
utils/suiut/sui_dinfo.c:      dinfo->tinfo = type;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(long*)buf=*((long*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((long*)datai->ptr+idx)=*(long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(long*)buf=*((int*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((int*)datai->ptr+idx)=*(long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(long*)buf=*((short*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((short*)datai->ptr+idx)=(short)*(long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(long *)buf = *((char *)(datai->ptr)+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((char*)datai->ptr+idx)=(char)*(long*)buf;
utils/suiut/sui_dinfo.c:/*----------------*/
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(unsigned long*)buf=*((unsigned long*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((unsigned long*)datai->ptr+idx)=*(unsigned long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(unsigned long*)buf=*((unsigned int*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((unsigned int*)datai->ptr+idx)=*(unsigned long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(unsigned long*)buf=*((unsigned short*)datai->ptr+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((unsigned short*)datai->ptr+idx)=(short)*(unsigned long*)buf;
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *(long *)buf = *((unsigned char *)(datai->ptr)+idx);
utils/suiut/sui_dinfo.c:  if(datai->idxsize&&(idx>=datai->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo.c:  *((unsigned char*)datai->ptr+idx)=(char)*(unsigned long*)buf;
utils/suiut/sui_dinfo.c: * sui_rd_long - Reads long integer data from specified DINFO
utils/suiut/sui_dinfo.c:  if(!datai->rdval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo.c:  if(datai->tinfo == SUDI_TINFO_DBUFF) {
utils/suiut/sui_dinfo.c:  return datai->rdval( datai, idx, buf);
utils/suiut/sui_dinfo.c: * sui_wr_long - Writes long integer data to specifies DINFO
utils/suiut/sui_dinfo.c:  if(!datai->wrval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo.c:  if(datai->tinfo == SUDI_TINFO_DBUFF) {
utils/suiut/sui_dinfo.c:  return datai->wrval( datai, idx, buf);
utils/suiut/sui_dinfo.c:  if(link->dead){
utils/suiut/sui_dinfo.c:    if(link->standalone && link->dst.standalone.weakptr){
utils/suiut/sui_dinfo.c:      *link->dst.standalone.weakptr=NULL;
utils/suiut/sui_dinfo.c:      link->dst.standalone.weakptr=NULL;
utils/suiut/sui_dinfo.c:  if(link->standalone){
utils/suiut/sui_dinfo.c:    fnc=(sui_dinfo_propagate_event_fnc_t*) link->dst.standalone.rx_fnc;
utils/suiut/sui_dinfo.c:    context=link->dst.standalone.context;
utils/suiut/sui_dinfo.c:    if(!link->dst.multi.hub) return 0;
utils/suiut/sui_dinfo.c:    fnc=(sui_dinfo_propagate_event_fnc_t*) link->dst.multi.hub->rx_fnc;
utils/suiut/sui_dinfo.c:    context=link->dst.multi.hub->context;
utils/suiut/sui_dinfo.c:  if(!datai->tx_hub) return;
utils/suiut/sui_dinfo.c:  evc_tx_hub_emit(datai->tx_hub, &event);
utils/suiut/sui_dinfo.c:  if(!link)  return -1;
utils/suiut/sui_dinfo.c:  if(!dst && !link->standalone) return -1;
utils/suiut/sui_dinfo.c:  if(!datai->tx_hub){
utils/suiut/sui_dinfo.c:    if(!hub) return -1;
utils/suiut/sui_dinfo.c:    datai->tx_hub=hub;
utils/suiut/sui_dinfo.c:  prop=link->propagate;
utils/suiut/sui_dinfo.c:  if(link->standalone){
utils/suiut/sui_dinfo.c:    return evc_link_connect_standalone(link, datai->tx_hub, prop);
utils/suiut/sui_dinfo.c:    return evc_link_connect(link, datai->tx_hub, dst, prop);
utils/suiut/sui_dinfo.c:  if(datai->hevent) datai->hevent(datai, event);
utils/suiut/sui_dinfo.c:    sui_dinfo_evc_link_to(datai, (evc_link_t*)event->u_ud()message.ptr, 
utils/suiut/sui_dinfo.c:  	   (evc_rx_hub_t*)event->u_ud()message.info);
utils/suiut/sui_dinfo.c:    event->what=SUEV_NOTHING;
utils/suiut/sui_dinfo.c:    event->u_ud()message.ptr=datai;
utils/suiut/sui_dinfo.c:  link->propagate=prop;
utils/suiut/sui_dinfo.c:  if(!datai->hevent){
utils/suiut/sui_dinfo.c:  if(!link) return -1;
utils/suiut/sui_dinfo.c:  link->dst.standalone.weakptr=(void**)weakptr;
utils/suiut/sui_dinfo.c:  link->propagate=NULL;
utils/suiut/sui_dinfo.c:  if(datai->tx_hub) return 0;
utils/suiut/sui_dinfo.c:  return evc_tx_hub_eol_weakptr(datai->tx_hub, (void **)weakptr);
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(!dfrom->rdval) return SUDI_DATA_ERR;
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:  val*=((sui_dinfo_scale_t*)dinfo)->multiply;
utils/suiut/sui_dinfo.c:  val/=((sui_dinfo_scale_t*)dinfo)->divide;
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(!dfrom->wrval) return SUDI_DATA_ERR;
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:  val*=((sui_dinfo_scale_t*)dinfo)->divide;
utils/suiut/sui_dinfo.c:  val/=((sui_dinfo_scale_t*)dinfo)->multiply;
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  dinfo->fdigits=dfrom->fdigits;
utils/suiut/sui_dinfo.c:  val=dfrom->minval;
utils/suiut/sui_dinfo.c:  val*=((sui_dinfo_scale_t*)dinfo)->multiply;
utils/suiut/sui_dinfo.c:  val/=((sui_dinfo_scale_t*)dinfo)->divide;
utils/suiut/sui_dinfo.c:  dinfo->minval=val;
utils/suiut/sui_dinfo.c:  val=dfrom->maxval;
utils/suiut/sui_dinfo.c:  val*=((sui_dinfo_scale_t*)dinfo)->multiply;
utils/suiut/sui_dinfo.c:  val/=((sui_dinfo_scale_t*)dinfo)->divide;
utils/suiut/sui_dinfo.c:  dinfo->maxval=val;
utils/suiut/sui_dinfo.c: * dinfo_scale_proxy - Creates value scale proxy DINFO
utils/suiut/sui_dinfo.c:  dinfo->ptr=dfrom;
utils/suiut/sui_dinfo.c:  dinfo->info=ainfo;
utils/suiut/sui_dinfo.c:  dinfo->idxsize=dfrom->idxsize;
utils/suiut/sui_dinfo.c:  ((sui_dinfo_scale_t*)dinfo)->multiply=amultiply;
utils/suiut/sui_dinfo.c:  ((sui_dinfo_scale_t*)dinfo)->divide=adivide;
utils/suiut/sui_dinfo.c:  dinfo->rdval=sui_scale_rdval;
utils/suiut/sui_dinfo.c:  dinfo->wrval=sui_scale_wrval;
utils/suiut/sui_dinfo.c:  dinfo->hevent=dinfo_simple_proxy_hevent;
utils/suiut/sui_dinfo.c:  dinfo->evmask=(short)(SUEV_COMMAND | SUEV_FREE);
utils/suiut/sui_dinfo.c:  switch(event->what){
utils/suiut/sui_dinfo.c:      if(event->u_ud()message.command==SUCM_EVC_LINK_TO){
utils/suiut/sui_dinfo.c:        if(dinfo->ptr)
utils/suiut/sui_dinfo.c:          sui_dinfo_pass_hevent_link_to((sui_dinfo_t*)(dinfo->ptr),event);
utils/suiut/sui_dinfo.c:      if(event->u_ud()message.command==SUCM_DONE){
utils/suiut/sui_dinfo.c:        if(dinfo->ptr)
utils/suiut/sui_dinfo.c:          sui_dinfo_dec_refcnt((sui_dinfo_t*)(dinfo->ptr));
utils/suiut/sui_dinfo.c:	dinfo->ptr=NULL;
utils/suiut/sui_dinfo.c:        dinfo->evmask&=(short)SUEV_FREE;
utils/suiut/sui_dinfo.c:      if(dinfo->ptr)
utils/suiut/sui_dinfo.c:        sui_dinfo_dec_refcnt((sui_dinfo_t*)(dinfo->ptr));
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(!dfrom->rdval) return SUDI_DATA_ERR;
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:  return dfrom->rdval(dfrom, indx, buf);
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(!dfrom->wrval) return SUDI_DATA_ERR;
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:  return dfrom->wrval(dfrom, indx, buf);
utils/suiut/sui_dinfo.c: * dinfo_simple_proxy - Creates simple proxy DINFO
utils/suiut/sui_dinfo.c:  dinfo=sui_create_dinfo(dfrom, dfrom->fdigits, dfrom->minval, dfrom->maxval,
utils/suiut/sui_dinfo.c:  dinfo->idxsize=dfrom->idxsize;
utils/suiut/sui_dinfo.c:  dinfo->hevent=dinfo_simple_proxy_hevent;
utils/suiut/sui_dinfo.c:  dinfo->evmask=(short)(SUEV_COMMAND | SUEV_FREE);
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:      *(long*)buf=dfrom->info; break;
utils/suiut/sui_dinfo.c:      *(long*)buf=dfrom->minval; break;
utils/suiut/sui_dinfo.c:      *(long*)buf=dfrom->maxval; break;
utils/suiut/sui_dinfo.c:      *(long*)buf=dfrom->fdigits; break;
utils/suiut/sui_dinfo.c:      *(long*)buf=dfrom->tinfo; break;
utils/suiut/sui_dinfo.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dinfo.c:  if(dinfo->info) indx=dinfo->info;
utils/suiut/sui_dinfo.c:      dfrom->info=*(long*)buf; break;
utils/suiut/sui_dinfo.c:      dfrom->minval=*(long*)buf; break;
utils/suiut/sui_dinfo.c:      dfrom->maxval=*(long*)buf; break;
utils/suiut/sui_dinfo.c:      dfrom->fdigits=*(long*)buf; break;
utils/suiut/sui_dinfo.c:    fdig=dfrom->fdigits;
utils/suiut/sui_dinfo.c:  dinfo->hevent=dinfo_simple_proxy_hevent;
utils/suiut/sui_dinfo.c:  dinfo->evmask=(short)(SUEV_COMMAND | SUEV_FREE);
utils/suiut/sui_dinfo.h: *   - MPL - Mozilla Public License
utils/suiut/sui_dinfo.h: *   - GPL - GNU Public License
utils/suiut/sui_dinfo.h: *   - LGPL - Lesser GNU Public License
utils/suiut/sui_dinfo.h: *   - and other licenses added by project originators
utils/suiut/sui_dinfo.h: * Code can be modified and re-distributed under any combination
utils/suiut/sui_dinfo.h:  #define SUI_STATIC (-2)  /* static reference counter */
utils/suiut/sui_dinfo.h:  if(datai->tx_hub)
utils/suiut/sui_dinfo_dbuff.c:// -------------- log levels ------------------
utils/suiut/sui_dinfo_dbuff.c://------------- LOG SUPPORT -----------------
utils/suiut/sui_dinfo_dbuff.c://-------------------------------------------
utils/suiut/sui_dinfo_dbuff.c:    ul_dbuff_t *db = (ul_dbuff_t*)di->ptr;
utils/suiut/sui_dinfo_dbuff.c:    if(di->idxsize && (idx >= di->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo_dbuff.c:    ul_dbuff_cpy(dbuf, db->data, db->len);
utils/suiut/sui_dinfo_dbuff.c:    ul_dbuff_t *db = (ul_dbuff_t*)di->ptr;
utils/suiut/sui_dinfo_dbuff.c:    if(di->idxsize && (idx >= di->idxsize)) return SUDI_DATA_EINDX;
utils/suiut/sui_dinfo_dbuff.c:    ul_dbuff_cpy(db, dbuf->data, dbuf->len);
utils/suiut/sui_dinfo_dbuff.c://------------------------------------------------------------------------
utils/suiut/sui_dinfo_dbuff.c:  if(!di->rdval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:  if(!(di->tinfo & SUDI_TINFO_DBUFF)) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:  return di->rdval(di, idx, dbuf);
utils/suiut/sui_dinfo_dbuff.c://------------------------------------------------------------------------
utils/suiut/sui_dinfo_dbuff.c:  if(!di->wrval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:  if(!(di->tinfo & SUDI_TINFO_DBUFF)) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:  return di->wrval(di, idx, dbuf);
utils/suiut/sui_dinfo_dbuff.c://------------------------------------------------------------------------
utils/suiut/sui_dinfo_dbuff.c:    if(!di->rdval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:    if(!(di->tinfo & SUDI_TINFO_DBUFF)) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:    ret = di->rdval(di, idx, &db);
utils/suiut/sui_dinfo_dbuff.c://------------------------------------------------------------------------
utils/suiut/sui_dinfo_dbuff.c:    if(!di->wrval) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:    if(!(di->tinfo & SUDI_TINFO_DBUFF)) return SUDI_DATA_EPERM;
utils/suiut/sui_dinfo_dbuff.c:    ret = di->wrval(di, idx, &db);
utils/suiut/sui_dinfo_dbuff.c:        dinfo->idxsize = aidxsize;
utils/suiut/sui_dinfo_dbuff.c:        dinfo->tinfo = SUDI_TINFO_DBUFF;
utils/suiut/sui_dinfo_dbuff.h: * sui_create_dinfo_dbuff - Creates DINFO for &ul_dbuff structure
utils/suiut/sui_dinfo_dbuff.h: * @aidxsize: Allowed range of indexes form 0 to @aidxsize-1, if zero then no check
utils/suiut/sui_dinfo_dbuff.h: * sui_dinfo_dbuff_rd_dbuff - Reads &ul_dbuff data from specified DINFO
utils/suiut/sui_dinfo_dbuff.h: * sui_dinfo_dbuff_wr_dbuff - Writes &ul_dbuff data to specifies DINFO
utils/suiut/sui_dinfo_dbuff.h: * sui_dinfo_dbuff_rd_long - Reads long integer data from specified dbuff DINFO
utils/suiut/sui_dinfo_dbuff.h: * sui_dinfo_dbuff_wr_long - Writes long integer data to specified dbuff DINFO
utils/suiut/sui_dinfochk.c:  sui_dinfo_t *calling_dinfo = (sui_dinfo_t*)(event->u_u.message.ptr);
utils/suiut/sui_dinfochk.c:  printf("\tsui_rd_long(%p) returned %li\n", event->u_u.message.ptr, val);
utils/suiut/sui_dtrans.c:  if( par->refcnt >= 0) par->refcnt++;
utils/suiut/sui_dtrans.c:  if(par->refcnt>0) par->refcnt--;
utils/suiut/sui_dtrans.c:  if(!par->refcnt) {
utils/suiut/sui_dtrans.c:  else if(ll<0) ll-=labs(div)/2;
utils/suiut/sui_dtrans.c:  if(ll<-(long long)max2)
utils/suiut/sui_dtrans.c:  if(ll<-(long long)max2)
utils/suiut/sui_dtrans.c:  if(mul<0){sig=1; umul=-mul;}
utils/suiut/sui_dtrans.c:  if((val<=(long)maxd) && (val>=-(long)maxd)){
utils/suiut/sui_dtrans.c:    if(val<0) { val=-val; sig^=1; }
utils/suiut/sui_dtrans.c:    if(div<0) { div=-div; sig^=1; }
utils/suiut/sui_dtrans.c:      val=-val;
utils/suiut/sui_dtrans.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dtrans.c:  if(!dfrom->rdval) return SUDI_DATA_ERR;
utils/suiut/sui_dtrans.c:  par=(sui_lintrans_par_t*)dinfo->info;
utils/suiut/sui_dtrans.c:  ret=sui_lintrans_mul_div(&val,val,par->multiply,par->divide);
utils/suiut/sui_dtrans.c:  val+=par->offset;
utils/suiut/sui_dtrans.c:  if(val>dinfo->maxval)
utils/suiut/sui_dtrans.c:    val=dinfo->maxval;
utils/suiut/sui_dtrans.c:  if(val<dinfo->minval)
utils/suiut/sui_dtrans.c:    val=dinfo->minval;
utils/suiut/sui_dtrans.c:  sui_dinfo_t *dfrom=(sui_dinfo_t*)(dinfo->ptr);
utils/suiut/sui_dtrans.c:  if(!dfrom->wrval) return SUDI_DATA_ERR;
utils/suiut/sui_dtrans.c:  par=(sui_lintrans_par_t*)dinfo->info;
utils/suiut/sui_dtrans.c:  val-=par->offset;
utils/suiut/sui_dtrans.c:  ret=sui_lintrans_mul_div(&val,val,par->divide,par->multiply);
utils/suiut/sui_dtrans.c:  switch(event->what){
utils/suiut/sui_dtrans.c:      if(event->u_ud()message.command!=SUCM_DONE) break;
utils/suiut/sui_dtrans.c:      if(dinfo->info)
utils/suiut/sui_dtrans.c:        sui_lintrans_par_dec_refcnt((sui_lintrans_par_t*)dinfo->info);
utils/suiut/sui_dtrans.c:      dinfo->info=0;
utils/suiut/sui_dtrans.c:  dinfo->hevent=dinfo_lintrans_proxy_hevent;
utils/suiut/sui_dtrans.c:  dinfo->evmask=SUEV_COMMAND | SUEV_FREE;
utils/suiut/sui_dtree.c: * sui_dtree_lookup - Find dinfo in the named dinfo database
utils/suiut/sui_dtree.c:         if(!dir->lookup) return SUI_DTREE_ERROR;
utils/suiut/sui_dtree.c:         res=dir->lookup(dir, p, &consumed, &dir, datai);
utils/suiut/sui_dtree.h:#define SUI_DTREE_NOPATH -1
utils/suiut/sui_dtree.h:#define SUI_DTREE_ERROR  -2
utils/suiut/sui_dtreemem.c:    // -------------- log levels ------------------
utils/suiut/sui_dtreemem.c:    mylog(LOG_DEB, "comparing '%s' and '%s' - ret: %i\n", *pa, *pb, ret);
utils/suiut/sui_dtreemem.c://------------------------------------------------------------
utils/suiut/sui_dtreemem.c:    node->name = _name;
utils/suiut/sui_dtreemem.c:    node->node_type = _type;
utils/suiut/sui_dtreemem.c:    node->ptr.datai = NULL;
utils/suiut/sui_dtreemem.c:    node->dll_handle = 0;
utils/suiut/sui_dtreemem.c:    //node->dll_working_thread = 0;
utils/suiut/sui_dtreemem.c:    if(node->dll_handle) {
utils/suiut/sui_dtreemem.c:        cleanup_module = dlsym(node->dll_handle, "cleanup_module");
utils/suiut/sui_dtreemem.c:            mylog(LOG_DEB, "Calling cleanup_module() for node '%s'\n", node->name);
utils/suiut/sui_dtreemem.c:        dlclose(node->dll_handle);
utils/suiut/sui_dtreemem.c://------------------------------------------------------------
utils/suiut/sui_dtreemem.c:    dir->dir.lookup = sui_dtree_mem_lookup;
utils/suiut/sui_dtreemem.c:        if(node->destructor) node->destructor(node);
utils/suiut/sui_dtreemem.c:        if(node->node_type & SUI_DTREE_ALLOCATED_FLAG) {
utils/suiut/sui_dtreemem.c://------------------------------------------------------------
utils/suiut/sui_dtreemem.c: * sui_dtree_mem_lookup - Find dinfo in the named dinfo database
utils/suiut/sui_dtreemem.c:            mylogcont(LOG_DEB, "ERROR - %s\n", error);
utils/suiut/sui_dtreemem.c:            if(!memnode->name) {
utils/suiut/sui_dtreemem.c:            if(strcmp(memnode->name, dll_name.data)) {
utils/suiut/sui_dtreemem.c:                mylog(LOG_ERR, "ERROR loaded node has diferent name '%s' than library '%s'\n", memnode->name, dll_name.data);
utils/suiut/sui_dtreemem.c:            memnode->dll_handle = handle; // needed for dlclose()
utils/suiut/sui_dtreemem.c:            mylog(LOG_INF, "Node '%s' added to dir\n", memnode->name);
utils/suiut/sui_dtreemem.c:        *consumed = strlen(memnode->name);
utils/suiut/sui_dtreemem.c:    if(memnode->node_type==SUI_DTREE_ISDIR){
utils/suiut/sui_dtreemem.c:        if(found_dir) *found_dir = memnode->ptr.dir;
utils/suiut/sui_dtreemem.c:    if(memnode->node_type!=SUI_DTREE_ISDINFO) {
utils/suiut/sui_dtreemem.c:    if(datai) *datai=memnode->ptr.datai;
utils/suiut/sui_dtreemem.h: * struct sui_dtree_memdir_t - Ancestor of &sui_dtree_dir_t which containing &sui_dtree_memnode_t GAVL list .
utils/suiut/sui_dtreemem.h: * struct sui_dtree_memnode_t - structure representing single node in memtree.
utils/suiut/sui_event.h: *   - MPL - Mozilla Public License
utils/suiut/sui_event.h: *   - GPL - GNU Public License
utils/suiut/sui_event.h: *   - LGPL - Lesser GNU Public License
utils/suiut/sui_event.h: *   - and other licenses added by project originators
utils/suiut/sui_event.h: * Code can be modified and re-distributed under any combination
utils/suiut/sui_event.h: * struct sui_event - Common suitk event structure
utils/suiut/sui_event.h: * enum event_code - Code of SUITK events ['SUEV_' prefix]
utils/suiut/sui_event.h: * enum command_event - Command codes for command event ['SUCM_' prefix]
utils/suiut/sui_event.h: * @SUCM_DONE: Done widget - decrement reference counter, deallocate widget data.
utils/suiut/sui_internal.h: *   - MPL - Mozilla Public License
utils/suiut/sui_internal.h: *   - GPL - GNU Public License
utils/suiut/sui_internal.h: *   - LGPL - Lesser GNU Public License
utils/suiut/sui_internal.h: *   - and other licenses added by project originators
utils/suiut/sui_internal.h: * Code can be modified and re-distributed under any combination
utils/ulut/CVS/Repository:ts-7200/dist/ocera_comm_can/utils/ulut
utils/ulut/Makefile:MAKERULES_DIR := $(shell ( old_pwd="" ;  while [ ! -e Makefile.rules ] ; do if [ "$$old_pwd" == `pwd`  ] ; then exit 1 ; else old_pwd=`pwd` ; cd -L .. 2>/dev/null ; fi ; done ; pwd ) )
utils/ulut/Makefile:	@echo -e "\nThe Makefile.rules has not been found in this or partent directory\n"
utils/ulut/Makefile.omk:# RT-Linux version of build
utils/ulut/Makefile.omk:rtlinux_INCLUDES = -DUL_WITH_RTL_MALLOC
utils/ulut/Makefile.omk:# Linux-kernel version of build
utils/ulut/ul_dbufbase.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_dbufbase.c:  ul_dbufbase.c	- dynamicaly allocated buffer
utils/ulut/ul_dbufbase.c:  (C) Copyright 2001-2004 by Pavel Pisa - Originator
utils/ulut/ul_dbufbase.c:  (C) Copyright 2003-2004 by Frantisek Vacek - Originator
utils/ulut/ul_dbufbase.c:    - GPL - GNU General Public License
utils/ulut/ul_dbufbase.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_dbufbase.c:    - MPL - Mozilla Public License
utils/ulut/ul_dbufbase.c:    - and other licenses added by project originators
utils/ulut/ul_dbufbase.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_dbufbase.c://-----------------------------------------------------------------
utils/ulut/ul_dbufbase.c: * ul_dbuff_init - init memory allocated for dynamic buffer 
utils/ulut/ul_dbufbase.c:    buf->capacity = UL_DBUFF_SLEN;
utils/ulut/ul_dbufbase.c:    buf->data = buf->sbuff;
utils/ulut/ul_dbufbase.c:    buf->len = 0;
utils/ulut/ul_dbufbase.c:    buf->flags = flags;
utils/ulut/ul_dbufbase.c:    return buf->capacity;
utils/ulut/ul_dbufbase.c://-----------------------------------------------------------------
utils/ulut/ul_dbufbase.c: * ul_dbuff_destroy - frees all resources allocated by buf 
utils/ulut/ul_dbufbase.c://-----------------------------------------------------------------
utils/ulut/ul_dbufbase.c: * ul_dbuff_prep - sets a new len and capacity of the buffer
utils/ulut/ul_dbufbase.c:    if(buf->flags & UL_DBUFF_IS_STATIC) {
utils/ulut/ul_dbufbase.c:        if(!buf->data || !buf->capacity) {
utils/ulut/ul_dbufbase.c:            buf->capacity = sizeof(buf->sbuff);
utils/ulut/ul_dbufbase.c:            buf->data = buf->sbuff;
utils/ulut/ul_dbufbase.c:        if(new_len > buf->capacity) {
utils/ulut/ul_dbufbase.c:            buf->len=0;
utils/ulut/ul_dbufbase.c:            if(new_len != buf->capacity){
utils/ulut/ul_dbufbase.c:                if((buf->data) && (buf->data != &(buf->sbuff[0]))) {
utils/ulut/ul_dbufbase.c:                    free(buf->data);
utils/ulut/ul_dbufbase.c:                buf->data=malloc(new_len);
utils/ulut/ul_dbufbase.c:                if(!buf->data){
utils/ulut/ul_dbufbase.c:                    buf->capacity=0;
utils/ulut/ul_dbufbase.c:                    buf->len=0;
utils/ulut/ul_dbufbase.c:                buf->capacity=new_len;
utils/ulut/ul_dbufbase.c:            if((buf->data) && (buf->data != &(buf->sbuff[0]))) {
utils/ulut/ul_dbufbase.c:                free(buf->data);
utils/ulut/ul_dbufbase.c:                buf->data = &(buf->sbuff[0]);
utils/ulut/ul_dbufbase.c:            buf->capacity=UL_DBUFF_SLEN;
utils/ulut/ul_dbufbase.c:    buf->len = new_len;
utils/ulut/ul_dbufbase.c:    memset(buf->data,0,new_len);
utils/ulut/ul_dbufbase.c:    return buf->len;
utils/ulut/ul_dbuff.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_dbuff.h:  ul_dbuff.c	- dynamic buffer
utils/ulut/ul_dbuff.h:  (C) Copyright 2001-2004 by Pavel Pisa - Originator
utils/ulut/ul_dbuff.h:  (C) Copyright 2003-2004 by Frantisek Vacek - Originator
utils/ulut/ul_dbuff.h:    - GPL - GNU General Public License
utils/ulut/ul_dbuff.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_dbuff.h:    - MPL - Mozilla Public License
utils/ulut/ul_dbuff.h:    - and other licenses added by project originators
utils/ulut/ul_dbuff.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_dbuff.h: * struct ul_dbuff - Generic Buffer for Dynamic Data
utils/ulut/ul_dbuff.h: * ul_dbuff_ltrim - removes all white spaces from left of dbuff.
utils/ulut/ul_dbuff.h: * ul_dbuff_rtrim - removes all white spaces from right of dbuff.
utils/ulut/ul_dbuff.h: * ul_dbuff_trim - removes all white spaces from left and right of dbuff.
utils/ulut/ul_dbufflog.c:    vca_log("dbuff", log_level, "len=%li capacity=%li\n", buf->len, buf->capacity);
utils/ulut/ul_dbufflog.c:    for(i=0; i<buf->len; i++) {
utils/ulut/ul_dbufflog.c:        char c = buf->data[i];
utils/ulut/ul_dbufflog.c:    for(i=0; i<buf->len; i++) {
utils/ulut/ul_dbufflog.c:        char c = buf->data[i];
utils/ulut/ul_dbufflog.h: * ul_dbuff_log_hex - writes content of dbuff to log
utils/ulut/ul_dbufmore.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_dbufmore.c:  ul_dbufmore.c	- more functions for dynamically allocated buffer
utils/ulut/ul_dbufmore.c:  (C) Copyright 2001-2004 by Pavel Pisa - Originator
utils/ulut/ul_dbufmore.c:  (C) Copyright 2003-2004 by Frantisek Vacek - Originator
utils/ulut/ul_dbufmore.c:    - GPL - GNU General Public License
utils/ulut/ul_dbufmore.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_dbufmore.c:    - MPL - Mozilla Public License
utils/ulut/ul_dbufmore.c:    - and other licenses added by project originators
utils/ulut/ul_dbufmore.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_set_capacity - change capacity of buffer to at least @new_capacity
utils/ulut/ul_dbufmore.c:    int old_capacity = buf->capacity;
utils/ulut/ul_dbufmore.c:    if(buf->flags & UL_DBUFF_IS_STATIC) {
utils/ulut/ul_dbufmore.c:        if(!buf->data || !buf->capacity) {
utils/ulut/ul_dbufmore.c:            buf->capacity = sizeof(buf->sbuff);
utils/ulut/ul_dbufmore.c:            buf->data = buf->sbuff;
utils/ulut/ul_dbufmore.c:            if((buf->data) && (buf->data != buf->sbuff)) {
utils/ulut/ul_dbufmore.c:                // dynamic storage -> static
utils/ulut/ul_dbufmore.c:                unsigned long c = buf->capacity;
utils/ulut/ul_dbufmore.c:                if(c > sizeof(buf->sbuff)) c = sizeof(buf->sbuff);
utils/ulut/ul_dbufmore.c:                memcpy(buf->sbuff, buf->data, c);
utils/ulut/ul_dbufmore.c:                free(buf->data);
utils/ulut/ul_dbufmore.c:            buf->capacity = sizeof(buf->sbuff);
utils/ulut/ul_dbufmore.c:            buf->data = buf->sbuff;
utils/ulut/ul_dbufmore.c:        else if(new_capacity != buf->capacity) {
utils/ulut/ul_dbufmore.c:            if(buf->data == buf->sbuff) {
utils/ulut/ul_dbufmore.c:                // static storage -> dynamic
utils/ulut/ul_dbufmore.c:                buf->data = malloc((size_t)new_capacity);
utils/ulut/ul_dbufmore.c:                if(buf->data != NULL) {
utils/ulut/ul_dbufmore.c:                    memcpy(buf->data, buf->sbuff, buf->capacity);
utils/ulut/ul_dbufmore.c:                    buf->capacity = new_capacity;
utils/ulut/ul_dbufmore.c:                    buf->capacity = 0;
utils/ulut/ul_dbufmore.c:                // dynamic storage -> dynamic
utils/ulut/ul_dbufmore.c:                new_data = realloc(buf->data, (size_t)new_capacity);
utils/ulut/ul_dbufmore.c:                if(buf->data != NULL) {
utils/ulut/ul_dbufmore.c:                    buf->capacity = new_capacity;
utils/ulut/ul_dbufmore.c:                    buf->data = new_data;
utils/ulut/ul_dbufmore.c:    if(buf->len > buf->capacity) buf->len = buf->capacity;
utils/ulut/ul_dbufmore.c:    vca_log("dbuff", LOG_DEB, "capacity changed from %d to %ld, required %d\n", old_capacity, buf->capacity, new_capacity);
utils/ulut/ul_dbufmore.c:    return buf->capacity;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_set_len - sets a new len of the buffer, change the capacity if neccessary 
utils/ulut/ul_dbufmore.c:    if(new_len > buf->capacity) {
utils/ulut/ul_dbufmore.c:    if(new_len > buf->capacity) {
utils/ulut/ul_dbufmore.c:        buf->data = buf->sbuff;
utils/ulut/ul_dbufmore.c:        strncpy(buf->data, "set_len ERROR", buf->capacity);
utils/ulut/ul_dbufmore.c:        new_len = buf->capacity;
utils/ulut/ul_dbufmore.c:    buf->len = new_len;
utils/ulut/ul_dbufmore.c:    return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cpy - copies bytes to buffer and change its capacity if neccessary like memset
utils/ulut/ul_dbufmore.c:    memset(buf->data, b, buf->len);
utils/ulut/ul_dbufmore.c:    return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cpy - copies bytes to buffer and change its capacity if neccessary 
utils/ulut/ul_dbufmore.c:    memcpy(buf->data, b, buf->len);
utils/ulut/ul_dbufmore.c:    return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cat - appends bytes at end of buffer and change its capacity if neccessary 
utils/ulut/ul_dbufmore.c:    unsigned long old_len = buf->len;
utils/ulut/ul_dbufmore.c:        memcpy(buf->data + old_len, b, n);
utils/ulut/ul_dbufmore.c:        vca_log("dbuff", LOG_DEB, "ul_dbuff_cat: set_len(%lu) error, old_len == %lu\n, act len == %lu\n", new_len, old_len, buf->len);
utils/ulut/ul_dbufmore.c:    return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_strcat - appends str at dhe end of buffer and change its capacity if neccessary 
utils/ulut/ul_dbufmore.c:    if(buf->len > 0) vca_log("dbuff", LOG_DEB, "ul_dbuff_strcat: '%s' + '%s'\n", buf->data, str);
utils/ulut/ul_dbufmore.c:    if(buf->len > 0 && buf->data[buf->len-1] == '\0') { 
utils/ulut/ul_dbufmore.c:        vca_log("dbuff", LOG_DEB, "ul_dbuff_strcat: terminating zero found at %ld, after '%c'\n", buf->len-1, buf->data[buf->len - 2]);
utils/ulut/ul_dbufmore.c:        ul_dbuff_set_len(buf, buf->len - 1);
utils/ulut/ul_dbufmore.c:    if(buf->len > 0 && buf->data[buf->len-1] != '\0') {
utils/ulut/ul_dbufmore.c:        vca_log("dbuff", LOG_ERR, "ul_dbuff_strcat: terminating zero not found at %ld, found '%c'\n", buf->len-1, buf->data[buf->len-1]);
utils/ulut/ul_dbufmore.c:    vca_log("dbuff", LOG_DEB, "ul_dbuff_strcat: returning '%s'\n", buf->data);
utils/ulut/ul_dbufmore.c:    return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_strcpy - copy str to the buffer and change its capacity if neccessary 
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_append_byte - appends byte at dhe end of buffer and change its capacity if neccessary 
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_ltrim - remove all white space characters from the left 
utils/ulut/ul_dbufmore.c:	byte *pb = buf->data;
utils/ulut/ul_dbufmore.c:	for(i=0; pb[i]<=' ' && i<buf->len; i++);
utils/ulut/ul_dbufmore.c:		for(j=i, i=0; j<buf->len; j++, i++) pb[i] = pb[j];
utils/ulut/ul_dbufmore.c:        buf->len = i;
utils/ulut/ul_dbufmore.c:	return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_rtrim - remove all white space characters from the right
utils/ulut/ul_dbufmore.c:    int i = buf->len - 1;
utils/ulut/ul_dbufmore.c:    unsigned char *pb = buf->data;
utils/ulut/ul_dbufmore.c:    if(i < 0) return buf->len;
utils/ulut/ul_dbufmore.c:    for(; i>=0; i--) {
utils/ulut/ul_dbufmore.c:            buf->len = i;
utils/ulut/ul_dbufmore.c:	return buf->len;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_trim - remove all white space characters from the right and from the left 
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cpos - searches string for char 
utils/ulut/ul_dbufmore.c:    unsigned char *bytes = buf->data;
utils/ulut/ul_dbufmore.c:    for(ret = 0; ret < buf->len; ret++) {
utils/ulut/ul_dbufmore.c:    if(ret >= buf->len) ret = -1;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_str_cpos - searches string for char 
utils/ulut/ul_dbufmore.c:    if(!str[ret]) ret = -1;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_str_pos - searches string for substring
utils/ulut/ul_dbufmore.c:    return -1;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_str_ncpy - copies string to the buffer
utils/ulut/ul_dbufmore.c:    if(!to || !from) return -1;
utils/ulut/ul_dbufmore.c:    if(buff_size <= 0) return -2;
utils/ulut/ul_dbufmore.c:    for(i=0; i<buff_size-1 && from[i]; i++) to[i] = from[i];
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cut_pos - cut first @n bytes from @fromdb and copies it to @todb.
utils/ulut/ul_dbufmore.c:    if(n < 0) n = fromdb->len + n;
utils/ulut/ul_dbufmore.c:    if(n > fromdb->len) n = fromdb->len;
utils/ulut/ul_dbufmore.c:    newlen = fromdb->len - n;
utils/ulut/ul_dbufmore.c:    ul_dbuff_cpy(todb, fromdb->data, n);
utils/ulut/ul_dbufmore.c:    memmove(fromdb->data, fromdb->data + n, fromdb->len - n);
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cut - cuts bytes before delimiter + delimiter char from @fromdb and copies tham to the @todb
utils/ulut/ul_dbufmore.c:    if(pos < 0) pos = -1;
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_dbufmore.c: * ul_dbuff_cut_token - cuts not whitespaces from %fromdb to %todb.
utils/ulut/ul_dbufmore.c:    const unsigned char *pc = (unsigned char*)fromdb->data;
utils/ulut/ul_dbufmore.c:    for(pos=0; pc[pos]>0 && pc[pos]<=' ' && pos<fromdb->len; pos++);
utils/ulut/ul_dbufmore.c:    for(; pc[pos]>' ' && pos<fromdb->len; pos++);
utils/ulut/ul_dbufmore.c://-----------------------------------------------------------------
utils/ulut/ul_evcbase.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_evcbase.c:  ul_evcbase.c	- event connectors
utils/ulut/ul_evcbase.c:  (C) Copyright 2001-2003 by Pavel Pisa - Originator
utils/ulut/ul_evcbase.c:    - GPL - GNU General Public License
utils/ulut/ul_evcbase.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_evcbase.c:    - MPL - Mozilla Public License
utils/ulut/ul_evcbase.c:    - and other licenses added by project originators
utils/ulut/ul_evcbase.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_evcbase.c: * evc_link_init - Initialize Event Connector Link
utils/ulut/ul_evcbase.c: * evc_link_new - Allocates New Event Connector Link
utils/ulut/ul_evcbase.c:  link->malloced=1;
utils/ulut/ul_evcbase.c: * evc_link_connect - Connects Link between Two Hubs
utils/ulut/ul_evcbase.c: * @link:	pointer to the non-connected initialized link
utils/ulut/ul_evcbase.c:  if(!link || !src || !dst || !prop) return -1;
utils/ulut/ul_evcbase.c:  if(link->standalone) return -1;
utils/ulut/ul_evcbase.c:  link->delete_pend=0;
utils/ulut/ul_evcbase.c:  link->propagate=prop;
utils/ulut/ul_evcbase.c:  link->src.hub=src;
utils/ulut/ul_evcbase.c:  link->dst.multi.hub=dst;
utils/ulut/ul_evcbase.c:  link_ready=link->ready;
utils/ulut/ul_evcbase.c:  link->ready=1;
utils/ulut/ul_evcbase.c: * evc_link_init_standalone - Initialize Standalone Link
utils/ulut/ul_evcbase.c:  link->standalone=1;
utils/ulut/ul_evcbase.c:  link->dst.standalone.rx_fnc=rx_fnc;
utils/ulut/ul_evcbase.c:  link->dst.standalone.context=context;
utils/ulut/ul_evcbase.c: * evc_link_new_standalone - Allocates New Standalone Link
utils/ulut/ul_evcbase.c:  link->malloced=1;
utils/ulut/ul_evcbase.c: * evc_link_connect_standalone - Connects Standalone Link to Source Hubs
utils/ulut/ul_evcbase.c: * @link:	pointer to the non-connected initialized link
utils/ulut/ul_evcbase.c:  if(!link || !src || !prop) return -1;
utils/ulut/ul_evcbase.c:  if(!link->standalone) return -1;
utils/ulut/ul_evcbase.c:  link->delete_pend=0;
utils/ulut/ul_evcbase.c:  link->propagate=prop;
utils/ulut/ul_evcbase.c:  link->src.hub=src;
utils/ulut/ul_evcbase.c:  link_ready=link->ready;
utils/ulut/ul_evcbase.c:  link->ready=1;
utils/ulut/ul_evcbase.c:  link->src.hub=NULL;
utils/ulut/ul_evcbase.c:  if(!link->standalone){
utils/ulut/ul_evcbase.c:    link->dst.multi.hub=NULL;
utils/ulut/ul_evcbase.c:  link->delete_pend=0;
utils/ulut/ul_evcbase.c: * evc_link_delete - Deletes Link from Hubs Lists
utils/ulut/ul_evcbase.c:  link->delete_pend=1;
utils/ulut/ul_evcbase.c:  if(!link->taken){
utils/ulut/ul_evcbase.c:  if(link->ready){
utils/ulut/ul_evcbase.c:    link->ready=0;
utils/ulut/ul_evcbase.c: * evc_link_dispose - Disposes Link
utils/ulut/ul_evcbase.c:  if(!link->dead){
utils/ulut/ul_evcbase.c:    link->dead=1;
utils/ulut/ul_evcbase.c:    if(!link->propagate(link,0)){
utils/ulut/ul_evcbase.c:      if(link->malloced) free(link);
utils/ulut/ul_evcbase.c:      else if(link->refcnt>0) link->refcnt--;
utils/ulut/ul_evcbase.c: * evc_tx_hub_init - Initializes Event Transmition Hub
utils/ulut/ul_evcbase.c: * evc_tx_hub_done - Initializes Event Transmition Hub
utils/ulut/ul_evcbase.c:    link->src.hub=NULL;
utils/ulut/ul_evcbase.c:  if(link->dead || link->blocked || link->delete_pend) return 1;
utils/ulut/ul_evcbase.c:  if(!link->recursive && link->taken) return 1;
utils/ulut/ul_evcbase.c: * evc_tx_hub_propagate - Propagate Event to Links Destinations
utils/ulut/ul_evcbase.c:  link->taken++;		/*prevents delete of the link from the hub*/
utils/ulut/ul_evcbase.c:    link->propagate(link, args);
utils/ulut/ul_evcbase.c:    if(link->src.hub == hub){	/*check for correct hub relation*/
utils/ulut/ul_evcbase.c:          next->taken++;	/*prevents delete of the link from the hub*/
utils/ulut/ul_evcbase.c:    if(!(--link->taken)){
utils/ulut/ul_evcbase.c:      if(link->delete_pend)
utils/ulut/ul_evcbase.c: * evc_tx_hub_emit - Emits Event to Hub
utils/ulut/ul_evcbase.c:    if(link->standalone && (link->dst.standalone.weakptr==weakptr)){
utils/ulut/ul_evcbase.c:      link->dst.standalone.weakptr=NULL;
utils/ulut/ul_evcbase.c: * evc_rx_hub_init - Initializes Event Receiption Hub
utils/ulut/ul_evcbase.c:  hub->rx_fnc=rx_fnc;
utils/ulut/ul_evcbase.c:  hub->context=context;
utils/ulut/ul_evcbase.c: * evc_rx_hub_disconnect_all - Disconnect Receiption Hub from All Sources
utils/ulut/ul_evcbase.c:    link->dst.multi.hub=NULL;
utils/ulut/ul_evcbase.c: * evc_rx_hub_done - Finalize Event Receiption Hub
utils/ulut/ul_evcbase.c:  if(link->dead){
utils/ulut/ul_evcbase.c:    if(link->standalone && link->dst.standalone.weakptr){
utils/ulut/ul_evcbase.c:      *link->dst.standalone.weakptr=NULL;
utils/ulut/ul_evcbase.c:      link->dst.standalone.weakptr=NULL;
utils/ulut/ul_evcbase.c:  if(link->standalone){
utils/ulut/ul_evcbase.c:    fnc=(evc_fnc_propagate_i_p_l*)link->dst.standalone.rx_fnc;
utils/ulut/ul_evcbase.c:    context=link->dst.standalone.context;
utils/ulut/ul_evcbase.c:    if(!link->dst.multi.hub) return 0;
utils/ulut/ul_evcbase.c:    fnc=(evc_fnc_propagate_i_p_l*)link->dst.multi.hub->rx_fnc;
utils/ulut/ul_evcbase.c:    context=link->dst.multi.hub->context;
utils/ulut/ul_evcbase.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_evcbase.h:  ul_evcbase.h	- event connectors
utils/ulut/ul_evcbase.h:  (C) Copyright 2001-2003 by Pavel Pisa - Originator
utils/ulut/ul_evcbase.h:    - GPL - GNU General Public License
utils/ulut/ul_evcbase.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_evcbase.h:    - MPL - Mozilla Public License
utils/ulut/ul_evcbase.h:    - and other licenses added by project originators
utils/ulut/ul_evcbase.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_evcbase.h: * struct evc_link - Event Connector Link
utils/ulut/ul_evcbase.h: * @ready:	link is ready and has purpose to live - it connects
utils/ulut/ul_evcbase.h: * struct evc_tx_hub - Event Transmit Hub
utils/ulut/ul_evcbase.h: * struct evc_rx_hub -  Event Receiving Hub
utils/ulut/ul_evcbase.h: * evc_link_inc_refcnt - Increment Link Reference Count
utils/ulut/ul_evcbase.h:  if(link->refcnt >= 0) link->refcnt++;
utils/ulut/ul_evcbase.h: * evc_link_dec_refcnt - Decrement Link Reference Count
utils/ulut/ul_evcbase.h: * Special handlink can be achieved if propagate() returns non-zero
utils/ulut/ul_evcbase.h:  if(link->refcnt > 0) link->refcnt--;
utils/ulut/ul_evcbase.h:  if(!link->refcnt) evc_link_dispose(link);
utils/ulut/ul_gavl.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavl.c:  ul_gavl.c	- generic AVL tree
utils/ulut/ul_gavl.c:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_gavl.c:    - GPL - GNU General Public License
utils/ulut/ul_gavl.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavl.c:    - MPL - Mozilla Public License
utils/ulut/ul_gavl.c:    - and other licenses added by project originators
utils/ulut/ul_gavl.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavl.c: * gavl_first_node - Returns First Node of GAVL Tree
utils/ulut/ul_gavl.c:  gavl_node_t *n=root->root_node;
utils/ulut/ul_gavl.c:  while(n->left)
utils/ulut/ul_gavl.c:    n=n->left;
utils/ulut/ul_gavl.c: * gavl_last_node - Returns Last Node of GAVL Tree
utils/ulut/ul_gavl.c:  gavl_node_t *n=root->root_node;
utils/ulut/ul_gavl.c:  while(n->right)
utils/ulut/ul_gavl.c:    n=n->right;
utils/ulut/ul_gavl.c: * gavl_is_empty - Check for Empty GAVL Tree
utils/ulut/ul_gavl.c: * Return Value: returns non-zero value if there is no node in the tree
utils/ulut/ul_gavl.c:  return !root->root_node;
utils/ulut/ul_gavl.c: * gavl_search_node - Search for Node or Place for Node by Key
utils/ulut/ul_gavl.c: *        reworded - index points at first item with higher 
utils/ulut/ul_gavl.c:  n=p=root->root_node;
utils/ulut/ul_gavl.c:    /*If external int than equivalent to cmp=*(int*)(n)-*(int*)key;*/
utils/ulut/ul_gavl.c:    cmp=root->cmp_fnc(gavl_node2key(root,n),key);
utils/ulut/ul_gavl.c:      n=n->left;
utils/ulut/ul_gavl.c:      n=n->right;
utils/ulut/ul_gavl.c:    while((n=p->left)){
utils/ulut/ul_gavl.c:      cmp=root->cmp_fnc(gavl_node2key(root,n),key);
utils/ulut/ul_gavl.c:	while((n=n->right)){
utils/ulut/ul_gavl.c:	  cmp=root->cmp_fnc(gavl_node2key(root,n),key);
utils/ulut/ul_gavl.c: * gavl_find - Find Item for Provided Key
utils/ulut/ul_gavl.c: * gavl_find_first - Find the First Item with Provided Key Value
utils/ulut/ul_gavl.c: * gavl_find_after - Find the First Item with Higher Key Value
utils/ulut/ul_gavl.c: * gavl_insert_node_at - Insert Existing Node to Already Computed Place into GAVL Tree 
utils/ulut/ul_gavl.c:  return gavl_insert_primitive_at(&root->root_node, node, where, leftright);
utils/ulut/ul_gavl.c: * gavl_insert_node - Insert Existing Node into GAVL Tree 
utils/ulut/ul_gavl.c:  if((mode!=GAVL_FAFTER) && !cmp) return -1;
utils/ulut/ul_gavl.c:  return gavl_insert_primitive_at(&root->root_node, node, where, cmp);
utils/ulut/ul_gavl.c: * gavl_insert - Insert New Item into GAVL Tree 
utils/ulut/ul_gavl.c:  cmp=gavl_search_node(root, (char*)item+root->key_offs,
utils/ulut/ul_gavl.c:  if((mode!=GAVL_FAFTER) && !cmp) return -1;
utils/ulut/ul_gavl.c:  if(root->node_offs<0){
utils/ulut/ul_gavl.c:    if(!n2add) return -1;
utils/ulut/ul_gavl.c:    n2add=(gavl_node_t*)((char*)item+root->node_offs);
utils/ulut/ul_gavl.c:  return gavl_insert_primitive_at(&root->root_node, n2add, where, cmp);
utils/ulut/ul_gavl.c: * gavl_delete_node - Deletes/Unlinks Node from GAVL Tree 
utils/ulut/ul_gavl.c:  return gavl_delete_primitive(&root->root_node, node);
utils/ulut/ul_gavl.c: * gavl_delete - Delete/Unlink Item from GAVL Tree 
utils/ulut/ul_gavl.c:  if(!item) return -1;
utils/ulut/ul_gavl.c:  if(root->node_offs>=0){
utils/ulut/ul_gavl.c:    n=(gavl_node_t*)((char*)item+root->node_offs);
utils/ulut/ul_gavl.c:    for(p=n; p->parent; p=p->parent);
utils/ulut/ul_gavl.c:    if(p!=root->root_node)
utils/ulut/ul_gavl.c:      return -1;
utils/ulut/ul_gavl.c:    if(!gavl_search_node(root, (char*)item+root->key_offs, GAVL_FFIRST, &n))
utils/ulut/ul_gavl.c:      return -1;
utils/ulut/ul_gavl.c:      if(!n) return -1;
utils/ulut/ul_gavl.c:      if(root->cmp_fnc(gavl_node2key(root,n),(char*)item+root->key_offs))
utils/ulut/ul_gavl.c:	return -1;
utils/ulut/ul_gavl.c:  ret=gavl_delete_primitive(&root->root_node, n);
utils/ulut/ul_gavl.c:  if(root->node_offs<0)
utils/ulut/ul_gavl.c: * gavl_delete_and_next_node - Delete/Unlink Item from GAVL Tree 
utils/ulut/ul_gavl.c:  if(node->left) return NULL;
utils/ulut/ul_gavl.c:  if((n=node->parent)){
utils/ulut/ul_gavl.c:    if(n->left==node) np=&n->left;
utils/ulut/ul_gavl.c:    else np=&n->right;
utils/ulut/ul_gavl.c:  } else if(node==root->root_node) {
utils/ulut/ul_gavl.c:    np=&root->root_node;
utils/ulut/ul_gavl.c:  if((n=node->right)){
utils/ulut/ul_gavl.c:    n->parent=node->parent;
utils/ulut/ul_gavl.c:    while(n->left) n=n->left;
utils/ulut/ul_gavl.c:    if(!node->parent){
utils/ulut/ul_gavl.c:    if(node->parent->left!=node) return NULL;
utils/ulut/ul_gavl.c:    n=node->parent;
utils/ulut/ul_gavl.c:  node->left=node->right=NULL;
utils/ulut/ul_gavl.c:  node->parent=NULL;
utils/ulut/ul_gavl.c:  if (*(int*)a<*(int*)b) return -1;
utils/ulut/ul_gavl.c:  if (*(long*)a<*(long*)b) return -1;
utils/ulut/ul_gavl.c:  if (*(void**)a<*(void**)b) return -1;
utils/ulut/ul_gavl.c:  while((p=node->parent)&&adj){
utils/ulut/ul_gavl.c:    if(p->left==node){
utils/ulut/ul_gavl.c:      hdiff=p->hdiff;
utils/ulut/ul_gavl.c:      p->hdiff=hdiff+adj;
utils/ulut/ul_gavl.c:	if(adj<-hdiff) adj=-hdiff;
utils/ulut/ul_gavl.c:      hdiff=p->hdiff;
utils/ulut/ul_gavl.c:      p->hdiff=hdiff-adj;
utils/ulut/ul_gavl.c:	  if((adj-=hdiff)<=0) break;
utils/ulut/ul_gavl.c:/* Partial balance - reduces number of nodes with hdiff >1 or <-1 */
utils/ulut/ul_gavl.c:  while(p->left) p=p->left;
utils/ulut/ul_gavl.c:    if((n=p->right)){
utils/ulut/ul_gavl.c:      while(n->left) n=n->left;
utils/ulut/ul_gavl.c:        n=p->parent;
utils/ulut/ul_gavl.c:          if((p->hdiff>1)||((p->hdiff<-1))){
utils/ulut/ul_gavl.c:	if(n->right!=p){
utils/ulut/ul_gavl.c:          if((p->hdiff>1)||((p->hdiff<-1))){
utils/ulut/ul_gavl.c:	    if(gavl_balance_one(&n->left))
utils/ulut/ul_gavl.c:	      gavl_adjust_hdiff(n->left,-1);
utils/ulut/ul_gavl.c:        if((p->hdiff>1)||((p->hdiff<-1))){
utils/ulut/ul_gavl.c:	  if(gavl_balance_one(&n->right))
utils/ulut/ul_gavl.c:            gavl_adjust_hdiff(n->right,-1);
utils/ulut/ul_gavl.c:  if(!root->root_node) return 0;
utils/ulut/ul_gavl.c:      n1->hdiff=1;
utils/ulut/ul_gavl.c:	if(s->left && !s->right){
utils/ulut/ul_gavl.c:	  s->right=n1; n1->parent=s;
utils/ulut/ul_gavl.c:	  s=n1; height--;
utils/ulut/ul_gavl.c:	  n1->hdiff=1;
utils/ulut/ul_gavl.c:	} else if(!s->parent || (s->parent->hdiff>s->hdiff+1)){
utils/ulut/ul_gavl.c:	  n1->left=s; 
utils/ulut/ul_gavl.c:	  n1->parent=s->parent;
utils/ulut/ul_gavl.c:	  if(s->parent) s->parent->right=n1;
utils/ulut/ul_gavl.c:	  s->parent=n1;
utils/ulut/ul_gavl.c:	  n1->hdiff=s->hdiff+1;
utils/ulut/ul_gavl.c:	if(s->parent->hdiff<s->hdiff+1) s->parent->hdiff=s->hdiff+1;
utils/ulut/ul_gavl.c:	s=s->parent;
utils/ulut/ul_gavl.c:  while(s->parent){
utils/ulut/ul_gavl.c:    if(s->parent->hdiff<s->hdiff+1) s->parent->hdiff=s->hdiff+1;
utils/ulut/ul_gavl.c:    s=s->parent;
utils/ulut/ul_gavl.c:  root->root_node=s;
utils/ulut/ul_gavl.c:    if(!n1->right) n1->hdiff=0; 
utils/ulut/ul_gavl.c:    else n1->hdiff=-n1->right->hdiff;
utils/ulut/ul_gavl.c:    if(n1->left){
utils/ulut/ul_gavl.c:      n1->hdiff+=n1->left->hdiff;
utils/ulut/ul_gavl.c:      n1=n1->left;
utils/ulut/ul_gavl.c:      n2=n1->right;
utils/ulut/ul_gavl.c:	n1=n1->parent;
utils/ulut/ul_gavl.c:	  if(n1->left==n2) {np=&n1->left; n2=n1->right;}
utils/ulut/ul_gavl.c:	  else {np=&n1->right; n2=NULL;}
utils/ulut/ul_gavl.c:      for(n1=s;n1->right;n1=n1->right);
utils/ulut/ul_gavl.c:	n1=n1->parent;
utils/ulut/ul_gavl.c:	if(n1) np=&n1->right;
utils/ulut/ul_gavl.c:	hdiff=(*np)->hdiff;
utils/ulut/ul_gavl.c:	(*np)->hdiff+=adj;
utils/ulut/ul_gavl.c:          if(adj>-hdiff) adj=-hdiff;
utils/ulut/ul_gavl.c:	while((*np)->hdiff>1){
utils/ulut/ul_gavl.c:  root->root_node=s;
utils/ulut/ul_gavl.c: * gavl_cut_first - Cut First Item from Tree 
utils/ulut/ul_gavl.c:  if(!(n=gavl_cut_first_primitive(&root->root_node)))
utils/ulut/ul_gavl.c:  if(root->node_offs<0)
utils/ulut/ul_gavl.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavl.h:  ul_gavl.h	- generic AVL tree
utils/ulut/ul_gavl.h:  (C) Copyright 2001 by Pavel Pisa - Originator
utils/ulut/ul_gavl.h:    - GPL - GNU General Public License
utils/ulut/ul_gavl.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavl.h:    - MPL - Mozilla Public License
utils/ulut/ul_gavl.h:    - and other licenses added by project originators
utils/ulut/ul_gavl.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavl.h:   with hdiff out of range <-1,0,+1>, else unbalanced tree
utils/ulut/ul_gavl.h: * struct gavl_node - Structure Representing Node of Generic AVL Tree
utils/ulut/ul_gavl.h: * struct gavl_root - Structure Representing Root of Generic AVL Tree
utils/ulut/ul_gavl.h:          reworded - index points at first item with higher 
utils/ulut/ul_gavl.h: * gavl_node2item - Conversion from GAVL Tree Node to User Defined Item
utils/ulut/ul_gavl.h:  if(root->node_offs<0) return *(void**)(node+1);
utils/ulut/ul_gavl.h:  return (void*)((char*)node-root->node_offs);
utils/ulut/ul_gavl.h: * gavl_node2item_safe - Conversion from GAVL Tree Node to User Defined Item
utils/ulut/ul_gavl.h: * gavl_node2key - Conversion from GAVL Tree Node to Ordering Key
utils/ulut/ul_gavl.h:  return (void*)(p+root->key_offs);
utils/ulut/ul_gavl.h:  return gavl_node2item_safe(it->container,it->node);
utils/ulut/ul_gavl.h:  it->container=container;
utils/ulut/ul_gavl.h:  it->node=gavl_first_node(container);
utils/ulut/ul_gavl.h:  it->container=container;
utils/ulut/ul_gavl.h:  it->node=gavl_last_node(container);
utils/ulut/ul_gavl.h:  if(it->node) it->node=gavl_next_node(it->node);
utils/ulut/ul_gavl.h:  else it->node=gavl_first_node(it->container);
utils/ulut/ul_gavl.h:  if(it->node) it->node=gavl_prev_node(it->node);
utils/ulut/ul_gavl.h:  else it->node=gavl_last_node(it->container);
utils/ulut/ul_gavl.h:  return !it->node;
utils/ulut/ul_gavl.h:  if(!(n=it->node)) return;
utils/ulut/ul_gavl.h:  it->node=gavl_next_node(it->node);
utils/ulut/ul_gavl.h:  gavl_delete_node(it->container,n);
utils/ulut/ul_gavl.h:  it->container=container;
utils/ulut/ul_gavl.h:  return (it->node=gavl_find_first_node(container, key))!=0;
utils/ulut/ul_gavl.h:  it->container=container;
utils/ulut/ul_gavl.h:  return (it->node=gavl_find_first_node(container, key))!=0;
utils/ulut/ul_gavl.h:  it->container=container;
utils/ulut/ul_gavl.h:  return (it->node=gavl_find_after_node(container, key))!=0;
utils/ulut/ul_gavl.h:   be used in C99 non-conformant C compiler */
utils/ulut/ul_gavl.h:/* Partial balance - reduces number of nodes with hdiff >1 or <-1,
utils/ulut/ul_gavl.h:   => hdiff is in range <-1,0,1> */
utils/ulut/ul_gavl.h:  {return (cust_item_t*)((char*)node-(long)&((cust_item_t*)0)->cust_item_node);}\
utils/ulut/ul_gavl.h:  { return &(cust_prefix##_node2item(root, node)->cust_item_key);}\
utils/ulut/ul_gavl.h:  item->cust_item_node.parent=NULL;\
utils/ulut/ul_gavl.h:  gavl_node_t *n=gavl_next_node(&item->cust_item_node);\
utils/ulut/ul_gavl.h:  gavl_node_t *n=gavl_prev_node(&item->cust_item_node);\
utils/ulut/ul_gavl.h:  return !root->cust_root_node;\
utils/ulut/ul_gavl.h:  gavl_node_t *n=gavl_cut_first_primitive(&root->cust_root_node);\
utils/ulut/ul_gavlchk.c:  check->depth++;
utils/ulut/ul_gavlchk.c:  if(node->parent!=parent) check->err|=GAVL_ERR_PARENT;
utils/ulut/ul_gavlchk.c:  lh=gavl_hdiff_check_recurse(node->left, node, check);
utils/ulut/ul_gavlchk.c:  if(check->node_fnc)
utils/ulut/ul_gavlchk.c:    check->err|=check->node_fnc(node, check);
utils/ulut/ul_gavlchk.c:  rh=gavl_hdiff_check_recurse(node->right, node, check);
utils/ulut/ul_gavlchk.c:  check->count++;
utils/ulut/ul_gavlchk.c:    if(!(check->mode&GAVL_CHECK_NOBAL)){
utils/ulut/ul_gavlchk.c:      check->err|=GAVL_ERR_BALANCE;
utils/ulut/ul_gavlchk.c:  if(node->hdiff!=lh-rh){
utils/ulut/ul_gavlchk.c:    check->err|=GAVL_ERR_HDIFF;
utils/ulut/ul_gavlchk.c:  if(check->err && !check->node) check->node=node;
utils/ulut/ul_gavlchk.c:  check->depth--;
utils/ulut/ul_gavlchk.c:    h=gavl_hdiff_check_recurse(node, node->parent,&check);
utils/ulut/ul_gavlchk.c:/* GAVL_CUST_NODE_INT_DEC - standard custom tree with internal node */
utils/ulut/ul_gavlchk.c:/* GAVL_FLES_INT_DEC      - tree with enhanced first last access speed  */
utils/ulut/ul_gavlchk.c:  if (*a<*b) return -1;
utils/ulut/ul_gavlchk.c:/* GAVL_CUST_NODE_INT_IMP - version with strict ordering */
utils/ulut/ul_gavlchk.c:/* GAVL_CUST_NODE_INT_REP_IMP - version without strict ordering */
utils/ulut/ul_gavlchk.c:/* GAVL_FLES_INT_IMP      - tree with enhanced first last access speed  */
utils/ulut/ul_gavlchk.c:	root->my_first_val=cust2_first(root)->my_val,
utils/ulut/ul_gavlchk.c:	root->my_last_val=cust2_first(root)->my_val, 
utils/ulut/ul_gavlchk.c:    item->my_val=i;
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gavlchk.c:    gavl_cust_for_each_after(cust2, &cust2_root, &item->my_val, item2)
utils/ulut/ul_gavlchk.c:      printf(" %d",item2->my_val);
utils/ulut/ul_gavlchk.c:  printf("Custom tree cust2 delete 1-90:\n");
utils/ulut/ul_gavlchk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    item->my_val=i;
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gavlchk.c:    for(cust2_find_after_it(&cust2_root, &item->my_val, &it2);
utils/ulut/ul_gavlchk.c:      printf(" %d",item->my_val);
utils/ulut/ul_gavlchk.c:  printf("Custom tree cust2 delete 1-90:\n");
utils/ulut/ul_gavlchk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    item->my_val=i;
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gavlchk.c:    ul_for_each_after_it(cust2, &cust2_root, &item->my_val, it2){
utils/ulut/ul_gavlchk.c:      printf(" %d",item->my_val);
utils/ulut/ul_gavlchk.c:  printf("Custom tree cust2 delete 1-90:\n");
utils/ulut/ul_gavlchk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gavlchk.c:  sec=stop->tv_sec-start->tv_sec;
utils/ulut/ul_gavlchk.c:  usec=stop->tv_usec-start->tv_usec;
utils/ulut/ul_gavlchk.c:    usec-=1000000;
utils/ulut/ul_gavlchk.c:    sec--;
utils/ulut/ul_gavlchk.c:      if(item->my_val!=i)
utils/ulut/ul_gavlchk.c:  /*tt_root.node_offs = -1;*/
utils/ulut/ul_gavlchk.c:      if(item->my_val!=i)
utils/ulut/ul_gavlchk.c:  .node_offs = -1,
utils/ulut/ul_gavlchk.c:    lh=gavl_print_tree1(root, node->left,lev+1, node, mode);
utils/ulut/ul_gavlchk.c:      printf(">%d  %d\n",val,node->hdiff);
utils/ulut/ul_gavlchk.c:    if(node->parent!=parent) printf("Parent error\n");
utils/ulut/ul_gavlchk.c:    rh=gavl_print_tree1(root, node->right,lev+1, node, mode);
utils/ulut/ul_gavlchk.c:        printf("Balance error for value %d, lh %d, rd %d, hdiff %d\n",val,lh,rh,node->hdiff);
utils/ulut/ul_gavlchk.c:    if(node->hdiff!=lh-rh){
utils/ulut/ul_gavlchk.c:      printf("HDIFF error for value %d, lh %d, rd %d, hdiff %d\n",val,lh,rh,node->hdiff);
utils/ulut/ul_gavlchk.c:      ret=-1;
utils/ulut/ul_gavlchk.c:  ret=gavl_print_tree1(root, root->root_node, 0, NULL, 0xc0);
utils/ulut/ul_gavlchk.c:  int val, prev=-INT_MAX;
utils/ulut/ul_gavlchk.c:  int val, prev=-INT_MAX;
utils/ulut/ul_gavlchk.c:    val=item1->val;
utils/ulut/ul_gavlchk.c:      printf(" %d",item2->val);
utils/ulut/ul_gavlchk.c:	  item->val=val;
utils/ulut/ul_gavlchk.c:	  while(n--){
utils/ulut/ul_gavlchk.c:	    item->val=val;
utils/ulut/ul_gavlchk.c:	  node->hdiff=i; i--;
utils/ulut/ul_gavlchk.c:	  node->right=node2; if(node2) node2->parent=node;
utils/ulut/ul_gavlchk.c:	  node->hdiff=i; i++;
utils/ulut/ul_gavlchk.c:	  node->left=node2; if(node2) node2->parent=node;
utils/ulut/ul_gavlchk.c:	    if(node1->hdiff>0) node1=node1->left;
utils/ulut/ul_gavlchk.c:	    else node1=node1->right;
utils/ulut/ul_gavlchk.c:          gavl_adjust_hdiff(node,-i);
utils/ulut/ul_gavlchk.c:	  if(!node->parent) test_gavl1.root_node=NULL;
utils/ulut/ul_gavlchk.c:	  else if(node==node->parent->left) node->parent->left=NULL;
utils/ulut/ul_gavlchk.c:	  else node->parent->right=NULL;
utils/ulut/ul_gavlcust.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavlcust.h:  ul_gavlcust.h  - custom GAVL trees for unique keys
utils/ulut/ul_gavlcust.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_gavlcust.h:    - GPL - GNU General Public License
utils/ulut/ul_gavlcust.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavlcust.h:    - MPL - Mozilla Public License
utils/ulut/ul_gavlcust.h:    - and other licenses added by project originators
utils/ulut/ul_gavlcust.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavlcust.h: * GAVL_CUST_NODE_INT_IMP - Implementation of new custom tree with internal node
utils/ulut/ul_gavlcust.h: * The macro %GAVL_CUST_NODE_INT_IMP builds implementations for non-inlined
utils/ulut/ul_gavlcust.h:  root->cust_root_node=NULL;\
utils/ulut/ul_gavlcust.h:  n=p=root->cust_root_node;\
utils/ulut/ul_gavlcust.h:      n=n->left;\
utils/ulut/ul_gavlcust.h:      n=n->right;\
utils/ulut/ul_gavlcust.h:  cmp=cust_prefix##_search_node(root, &item->cust_item_key, &where);\
utils/ulut/ul_gavlcust.h:  if(!cmp) return -1;\
utils/ulut/ul_gavlcust.h:  n2add=&item->cust_item_node;\
utils/ulut/ul_gavlcust.h:  return gavl_insert_primitive_at(&root->cust_root_node, n2add, where, cmp);\
utils/ulut/ul_gavlcust.h:  return gavl_delete_primitive(&root->cust_root_node, node);\
utils/ulut/ul_gavlcust.h:  if(!item) return -1;\
utils/ulut/ul_gavlcust.h:  /*if(cust_prefix##_search_node(root, &item->cust_item_key, &n))*/\
utils/ulut/ul_gavlcust.h:  n=&item->cust_item_node;\
utils/ulut/ul_gavlcust.h:  for(p=n; p->parent; p=p->parent);\
utils/ulut/ul_gavlcust.h:  if(p!=root->cust_root_node)\
utils/ulut/ul_gavlcust.h:    return -1;\
utils/ulut/ul_gavlcust.h:  ret=gavl_delete_primitive(&root->cust_root_node, n);\
utils/ulut/ul_gavlcust.h:  gavl_node_t *n=root->cust_root_node;\
utils/ulut/ul_gavlcust.h:  while(n->left)\
utils/ulut/ul_gavlcust.h:    n=n->left;\
utils/ulut/ul_gavlcust.h:  gavl_node_t *n=root->cust_root_node;\
utils/ulut/ul_gavlcust.h:  while(n->right)\
utils/ulut/ul_gavlcust.h:    n=n->right;\
utils/ulut/ul_gavlflesint.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavlflesint.h:  ul_gavlflesint.h  - custom trees with allowed repeat of keys
utils/ulut/ul_gavlflesint.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_gavlflesint.h:    - GPL - GNU General Public License
utils/ulut/ul_gavlflesint.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavlflesint.h:    - MPL - Mozilla Public License
utils/ulut/ul_gavlflesint.h:    - and other licenses added by project originators
utils/ulut/ul_gavlflesint.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavlflesint.h:  {return (cust_item_t*)((char*)node-(long)&((cust_item_t*)0)->cust_item_node);}\
utils/ulut/ul_gavlflesint.h:  { return &(cust_prefix##_node2item(root, node)->cust_item_key);}\
utils/ulut/ul_gavlflesint.h:  item->cust_item_node.parent=NULL;\
utils/ulut/ul_gavlflesint.h:  return root->cust_root_field.first;\
utils/ulut/ul_gavlflesint.h:  return root->cust_root_field.last;\
utils/ulut/ul_gavlflesint.h:  gavl_node_t *n=gavl_next_node(&item->cust_item_node);\
utils/ulut/ul_gavlflesint.h:  gavl_node_t *n=gavl_prev_node(&item->cust_item_node);\
utils/ulut/ul_gavlflesint.h:  return !root->cust_root_field.root;\
utils/ulut/ul_gavlflesint.h: * GAVL_FLES_INT_IMP - Implementation of new custom tree with fast first/last functions
utils/ulut/ul_gavlflesint.h: * The macro %GAVL_CUST_NODE_INT_REP_IMP builds implementations for non-inlined
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.root=NULL;\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.first=NULL;\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.last=NULL;\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.count=0;\
utils/ulut/ul_gavlflesint.h:  n=p=root->cust_root_field.root;\
utils/ulut/ul_gavlflesint.h:      n=n->left;\
utils/ulut/ul_gavlflesint.h:      n=n->right;\
utils/ulut/ul_gavlflesint.h:    while((n=p->left)){\
utils/ulut/ul_gavlflesint.h:        while((n=n->right)){\
utils/ulut/ul_gavlflesint.h:  cmp=cust_prefix##_search_node4(root, &item->cust_item_key, &where, cust_ins_fl);\
utils/ulut/ul_gavlflesint.h:  if(!cmp && !(cust_ins_fl&GAVL_FAFTER)) return -1;\
utils/ulut/ul_gavlflesint.h:  n2add=&item->cust_item_node;\
utils/ulut/ul_gavlflesint.h:  if(!root->cust_root_field.root){\
utils/ulut/ul_gavlflesint.h:    root->cust_root_field.first=root->cust_root_field.last=n2add;\
utils/ulut/ul_gavlflesint.h:  }else if((cmp>0)&&(where==root->cust_root_field.first)){\
utils/ulut/ul_gavlflesint.h:    root->cust_root_field.first=n2add;\
utils/ulut/ul_gavlflesint.h:  }else if((cmp<=0)&&(where==root->cust_root_field.last)){\
utils/ulut/ul_gavlflesint.h:    root->cust_root_field.last=n2add;\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.count++;\
utils/ulut/ul_gavlflesint.h:  return gavl_insert_primitive_at(&root->cust_root_field.root, n2add, where, cmp);\
utils/ulut/ul_gavlflesint.h:  for(p=node; p->parent; p=p->parent);\
utils/ulut/ul_gavlflesint.h:  if(p!=root->cust_root_field.root)\
utils/ulut/ul_gavlflesint.h:    return -1;\
utils/ulut/ul_gavlflesint.h:  if(root->cust_root_field.first==node){\
utils/ulut/ul_gavlflesint.h:    if(root->cust_root_field.last==node){\
utils/ulut/ul_gavlflesint.h:      root->cust_root_field.first=root->cust_root_field.last=NULL;\
utils/ulut/ul_gavlflesint.h:      root->cust_root_field.first=gavl_next_node(node);\
utils/ulut/ul_gavlflesint.h:  }else if(root->cust_root_field.last==node){\
utils/ulut/ul_gavlflesint.h:    root->cust_root_field.last=gavl_prev_node(node);\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.count--;\
utils/ulut/ul_gavlflesint.h:  return gavl_delete_primitive(&root->cust_root_field.root, node);\
utils/ulut/ul_gavlflesint.h:  if(!item) return -1;\
utils/ulut/ul_gavlflesint.h:  n=&item->cust_item_node;\
utils/ulut/ul_gavlflesint.h:  gavl_node_t **np=&root->cust_root_field.root;\
utils/ulut/ul_gavlflesint.h:  if(!(n=root->cust_root_field.first))\
utils/ulut/ul_gavlflesint.h:  if(n->parent) np=&n->parent->left;\
utils/ulut/ul_gavlflesint.h:  if((*np=n->right)){\
utils/ulut/ul_gavlflesint.h:    p=n->right;\
utils/ulut/ul_gavlflesint.h:    p->parent=n->parent;\
utils/ulut/ul_gavlflesint.h:    while(p->left) p=p->left;\
utils/ulut/ul_gavlflesint.h:    root->cust_root_field.first=p;\
utils/ulut/ul_gavlflesint.h:    if(!(root->cust_root_field.first=n->parent)){\
utils/ulut/ul_gavlflesint.h:      root->cust_root_field.last=n->parent;\
utils/ulut/ul_gavlflesint.h:  for(p=n->parent;p;p=p->parent)\
utils/ulut/ul_gavlflesint.h:    if(p->hdiff++<0) break;\
utils/ulut/ul_gavlflesint.h:  n->parent=n->left=n->right=NULL;\
utils/ulut/ul_gavlflesint.h:  root->cust_root_field.count--;\
utils/ulut/ul_gavlprim.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavlprim.c:  ul_gavlprim.c	- primitives for generic AVL tree
utils/ulut/ul_gavlprim.c:  (C) Copyright 2003 by Pavel Pisa - Originator
utils/ulut/ul_gavlprim.c:    - GPL - GNU General Public License
utils/ulut/ul_gavlprim.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavlprim.c:    - MPL - Mozilla Public License
utils/ulut/ul_gavlprim.c:    - and other licenses added by project originators
utils/ulut/ul_gavlprim.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavlprim.c: * gavl_next_node - Returns Next Node of GAVL Tree
utils/ulut/ul_gavlprim.c:  if((n=node->right)){
utils/ulut/ul_gavlprim.c:    while(n->left) n=n->left;
utils/ulut/ul_gavlprim.c:    while((n=node->parent)){
utils/ulut/ul_gavlprim.c:      if(n->right!=node) break;
utils/ulut/ul_gavlprim.c: * gavl_prev_node - Returns Previous Node of GAVL Tree
utils/ulut/ul_gavlprim.c:  if((n=node->left)){
utils/ulut/ul_gavlprim.c:    while(n->right) n=n->right;
utils/ulut/ul_gavlprim.c:    while((n=node->parent)){
utils/ulut/ul_gavlprim.c:      if(n->left!=node) break;
utils/ulut/ul_gavlprim.c: * gavl_balance_one - Balance One Node to Enhance Balance Factor
utils/ulut/ul_gavlprim.c:  parent=(*subtree)->parent;
utils/ulut/ul_gavlprim.c:  shdiff=(*subtree)->hdiff;
utils/ulut/ul_gavlprim.c:    n=(*subtree)->left;
utils/ulut/ul_gavlprim.c:    if (n->hdiff>=0) {
utils/ulut/ul_gavlprim.c:      /* ds1=ds-dn-1; */
utils/ulut/ul_gavlprim.c:      /* if(ds>dn) dn1=dn-1; else dn1=ds-2; */
utils/ulut/ul_gavlprim.c:      (*subtree)->hdiff=shdiff-n->hdiff-1;
utils/ulut/ul_gavlprim.c:      ret=n->hdiff>0;
utils/ulut/ul_gavlprim.c:      if(shdiff<=n->hdiff)
utils/ulut/ul_gavlprim.c:	n->hdiff=shdiff-2;
utils/ulut/ul_gavlprim.c:	n->hdiff--;
utils/ulut/ul_gavlprim.c:      p=n->right;
utils/ulut/ul_gavlprim.c:      n->right=*subtree; (*subtree)->parent=n;
utils/ulut/ul_gavlprim.c:      (*subtree)->left=p; if(p) p->parent=*subtree;
utils/ulut/ul_gavlprim.c:      *subtree=n; n->parent=parent;
utils/ulut/ul_gavlprim.c:      p=n->right;
utils/ulut/ul_gavlprim.c:      shdiff-=2;
utils/ulut/ul_gavlprim.c:      if(p->hdiff>=0){
utils/ulut/ul_gavlprim.c:        /* ds1=ds-2-dp; dn1=dn+1; dp1=min(dp;ds-2); */
utils/ulut/ul_gavlprim.c:        (*subtree)->hdiff=shdiff-p->hdiff;
utils/ulut/ul_gavlprim.c:	n->hdiff++;
utils/ulut/ul_gavlprim.c:	p->hdiff=0;
utils/ulut/ul_gavlprim.c:	if (p->hdiff>shdiff) p->hdiff=shdiff;
utils/ulut/ul_gavlprim.c:        /* ds1=ds-2; dn1=dn+1-dp; dp1=max(dn+1;dp); */
utils/ulut/ul_gavlprim.c:        (*subtree)->hdiff=shdiff;
utils/ulut/ul_gavlprim.c:	shdiff=n->hdiff; /* shdiff reused for nhdiff */
utils/ulut/ul_gavlprim.c:	n->hdiff=shdiff+1-p->hdiff;
utils/ulut/ul_gavlprim.c:	p->hdiff=0;
utils/ulut/ul_gavlprim.c:	if (p->hdiff<=shdiff) p->hdiff=shdiff+1;
utils/ulut/ul_gavlprim.c:      n->right=p->left; if(p->left) p->left->parent=n;
utils/ulut/ul_gavlprim.c:      (*subtree)->left=p->right; if(p->right) p->right->parent=*subtree;
utils/ulut/ul_gavlprim.c:      p->left=n; n->parent=p;
utils/ulut/ul_gavlprim.c:      p->right=*subtree; (*subtree)->parent=p;
utils/ulut/ul_gavlprim.c:      *subtree=p; p->parent=parent;
utils/ulut/ul_gavlprim.c:  else if (shdiff<-1)
utils/ulut/ul_gavlprim.c:    n=(*subtree)->right;
utils/ulut/ul_gavlprim.c:    if (n->hdiff<=0) {
utils/ulut/ul_gavlprim.c:      /* ds1=ds-dn+1; */
utils/ulut/ul_gavlprim.c:      (*subtree)->hdiff=shdiff-n->hdiff+1;
utils/ulut/ul_gavlprim.c:      ret=n->hdiff<0;
utils/ulut/ul_gavlprim.c:      if(shdiff>=n->hdiff)
utils/ulut/ul_gavlprim.c:	n->hdiff=shdiff+2;
utils/ulut/ul_gavlprim.c:	n->hdiff++;
utils/ulut/ul_gavlprim.c:      p=n->left;
utils/ulut/ul_gavlprim.c:      n->left=*subtree; (*subtree)->parent=n;
utils/ulut/ul_gavlprim.c:      (*subtree)->right=p; if(p) p->parent=*subtree;
utils/ulut/ul_gavlprim.c:      *subtree=n; n->parent=parent;
utils/ulut/ul_gavlprim.c:      p=n->left;
utils/ulut/ul_gavlprim.c:      if(p->hdiff<=0){
utils/ulut/ul_gavlprim.c:        /* ds1=ds+2-dp; dn1=dn-1; dp1=max(dp;ds+2); */
utils/ulut/ul_gavlprim.c:        (*subtree)->hdiff=shdiff-p->hdiff;
utils/ulut/ul_gavlprim.c:	n->hdiff--;
utils/ulut/ul_gavlprim.c:	p->hdiff=0;
utils/ulut/ul_gavlprim.c:	if (p->hdiff<shdiff) p->hdiff=shdiff;
utils/ulut/ul_gavlprim.c:        /* ds1=ds+2; dn1=dn-1-dp; dp1=min(dn-1;dp); */
utils/ulut/ul_gavlprim.c:        (*subtree)->hdiff=shdiff;
utils/ulut/ul_gavlprim.c:	shdiff=n->hdiff; /* shdiff reused for nhdiff */
utils/ulut/ul_gavlprim.c:	n->hdiff=shdiff-1-p->hdiff;
utils/ulut/ul_gavlprim.c:	p->hdiff=0;
utils/ulut/ul_gavlprim.c:	if (p->hdiff>=shdiff) p->hdiff=shdiff-1;
utils/ulut/ul_gavlprim.c:      n->left=p->right; if(p->right) p->right->parent=n;
utils/ulut/ul_gavlprim.c:      (*subtree)->right=p->left; if(p->left) p->left->parent=*subtree;
utils/ulut/ul_gavlprim.c:      p->right=n; n->parent=p;
utils/ulut/ul_gavlprim.c:      p->left=*subtree; (*subtree)->parent=p;
utils/ulut/ul_gavlprim.c:      *subtree=p; p->parent=parent;
utils/ulut/ul_gavlprim.c: * gavl_insert_primitive_at - Low Lewel Routine to Insert Node into Tree 
utils/ulut/ul_gavlprim.c:  node->hdiff=0;
utils/ulut/ul_gavlprim.c:  node->left=node->right=0;
utils/ulut/ul_gavlprim.c:    node->parent=NULL;
utils/ulut/ul_gavlprim.c:  node->parent=where;
utils/ulut/ul_gavlprim.c:    where->left=node;  /* where->avl+=1 */
utils/ulut/ul_gavlprim.c:    where->right=node; /* where->avl-=1 */
utils/ulut/ul_gavlprim.c:    hdiff=where->hdiff;
utils/ulut/ul_gavlprim.c:    if(where->left==node){
utils/ulut/ul_gavlprim.c:      if(where->hdiff++ <0) break;
utils/ulut/ul_gavlprim.c:      if(where->hdiff-- >0) break;
utils/ulut/ul_gavlprim.c:    where=where->parent;
utils/ulut/ul_gavlprim.c:      else if(where->left==node)
utils/ulut/ul_gavlprim.c:        np=&where->left;
utils/ulut/ul_gavlprim.c:        np=&where->right;
utils/ulut/ul_gavlprim.c: * gavl_delete_primitive - Low Lewel Deletes/Unlinks Node from GAVL Tree 
utils/ulut/ul_gavlprim.c:  p=node->parent;
utils/ulut/ul_gavlprim.c:  }else if(p->left==node){
utils/ulut/ul_gavlprim.c:    np=&p->left;
utils/ulut/ul_gavlprim.c:    np=&p->right;
utils/ulut/ul_gavlprim.c:  if(!node->left){
utils/ulut/ul_gavlprim.c:    if(!node->right){
utils/ulut/ul_gavlprim.c:      *np=node->right;
utils/ulut/ul_gavlprim.c:      node->right->parent=p;
utils/ulut/ul_gavlprim.c:    if(!node->right){
utils/ulut/ul_gavlprim.c:      *np=node->left;
utils/ulut/ul_gavlprim.c:      node->left->parent=p;
utils/ulut/ul_gavlprim.c:      if(node->hdiff>=0){
utils/ulut/ul_gavlprim.c:	np=&node->left; n=*np;
utils/ulut/ul_gavlprim.c:	while(n->right) {np=&n->right; n=*np;}
utils/ulut/ul_gavlprim.c:	if((*np=n->left)) n->left->parent=n->parent;
utils/ulut/ul_gavlprim.c:	while(n->parent!=node){
utils/ulut/ul_gavlprim.c:	  n=n->parent;
utils/ulut/ul_gavlprim.c:            if(!gavl_balance_one(&n->right)) {hdiff=0; break;}
utils/ulut/ul_gavlprim.c:	  if(n->hdiff++ ==0) {hdiff=0; break;}
utils/ulut/ul_gavlprim.c:	  bal=(n->hdiff>0);
utils/ulut/ul_gavlprim.c:          if(!gavl_balance_one(&node->left)) hdiff=0;
utils/ulut/ul_gavlprim.c:	neigh->hdiff=node->hdiff;
utils/ulut/ul_gavlprim.c:	  if(!(neigh->hdiff--)) hdiff=0;
utils/ulut/ul_gavlprim.c:	np=&node->right; n=*np;
utils/ulut/ul_gavlprim.c:	while(n->left) {np=&n->left; n=*np;}
utils/ulut/ul_gavlprim.c:	if((*np=n->right)) n->right->parent=n->parent; 
utils/ulut/ul_gavlprim.c:	while(n->parent!=node){
utils/ulut/ul_gavlprim.c:	  n=n->parent;
utils/ulut/ul_gavlprim.c:            if(!gavl_balance_one(&n->left)) {hdiff=0; break;}
utils/ulut/ul_gavlprim.c:	  if(n->hdiff-- ==0) {hdiff=0; break;}
utils/ulut/ul_gavlprim.c:	  bal=(n->hdiff<0);
utils/ulut/ul_gavlprim.c:          if(!gavl_balance_one(&node->right)) hdiff=0;
utils/ulut/ul_gavlprim.c:	neigh->hdiff=node->hdiff;
utils/ulut/ul_gavlprim.c:	  if(!(neigh->hdiff++)) hdiff=0;
utils/ulut/ul_gavlprim.c:      if((neigh->left=node->left)) neigh->left->parent=neigh;
utils/ulut/ul_gavlprim.c:      if((neigh->right=node->right)) neigh->right->parent=neigh;
utils/ulut/ul_gavlprim.c:      neigh->parent=node->parent;
utils/ulut/ul_gavlprim.c:      p=node->parent;
utils/ulut/ul_gavlprim.c:        if(!gavl_balance_one(&p->left)) break;
utils/ulut/ul_gavlprim.c:      /* three cases for hdiff--
utils/ulut/ul_gavlprim.c:       * +1 ->  0 => recurse
utils/ulut/ul_gavlprim.c:       *  0 -> -1 => break
utils/ulut/ul_gavlprim.c:       * -1 -> -2 => balance and recurse
utils/ulut/ul_gavlprim.c:      bal=p->hdiff<0;
utils/ulut/ul_gavlprim.c:      if(!p->hdiff--) break;
utils/ulut/ul_gavlprim.c:        if(!gavl_balance_one(&p->right)) break;
utils/ulut/ul_gavlprim.c:       * -1 ->  0 => recurse
utils/ulut/ul_gavlprim.c:       *  0 -> +1 => break
utils/ulut/ul_gavlprim.c:       * +1 -> +2 => balance and recurse
utils/ulut/ul_gavlprim.c:      bal=p->hdiff>0;
utils/ulut/ul_gavlprim.c:      if(!p->hdiff++) break;
utils/ulut/ul_gavlprim.c:    p=p->parent;
utils/ulut/ul_gavlprim.c:    if(p) left_fl=(p->left==n);
utils/ulut/ul_gavlprim.c:  node->parent=node->left=node->right=NULL;
utils/ulut/ul_gavlprim.c: * gavl_cut_first_primitive - Low Lewel Routine to Cut First Node from Tree 
utils/ulut/ul_gavlprim.c:  while((n=*np)->left)
utils/ulut/ul_gavlprim.c:    np=&(n->left);
utils/ulut/ul_gavlprim.c:  if((*np=n->right)) n->right->parent=n->parent;
utils/ulut/ul_gavlprim.c:  for(p=n->parent;p;p=p->parent)
utils/ulut/ul_gavlprim.c:    if(p->hdiff++<0) break;
utils/ulut/ul_gavlprim.c:  n->parent=n->left=n->right=NULL;
utils/ulut/ul_gavlrepcust.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gavlrepcust.h:  ul_gavlrepcust.h  - custom trees with allowed repeat of keys
utils/ulut/ul_gavlrepcust.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_gavlrepcust.h:    - GPL - GNU General Public License
utils/ulut/ul_gavlrepcust.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gavlrepcust.h:    - MPL - Mozilla Public License
utils/ulut/ul_gavlrepcust.h:    - and other licenses added by project originators
utils/ulut/ul_gavlrepcust.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gavlrepcust.h: * GAVL_CUST_NODE_INT_REP_IMP - Implementation of new custom tree with internal node allowed item repeat
utils/ulut/ul_gavlrepcust.h: * The macro %GAVL_CUST_NODE_INT_REP_IMP builds implementations for non-inlined
utils/ulut/ul_gavlrepcust.h:  root->cust_root_node=NULL;\
utils/ulut/ul_gavlrepcust.h:  n=p=root->cust_root_node;\
utils/ulut/ul_gavlrepcust.h:      n=n->left;\
utils/ulut/ul_gavlrepcust.h:      n=n->right;\
utils/ulut/ul_gavlrepcust.h:    while((n=p->left)){\
utils/ulut/ul_gavlrepcust.h:        while((n=n->right)){\
utils/ulut/ul_gavlrepcust.h:  cmp=cust_prefix##_search_node4(root, &item->cust_item_key, &where, GAVL_FAFTER);\
utils/ulut/ul_gavlrepcust.h:  n2add=&item->cust_item_node;\
utils/ulut/ul_gavlrepcust.h:  return gavl_insert_primitive_at(&root->cust_root_node, n2add, where, cmp);\
utils/ulut/ul_gavlrepcust.h:  return gavl_delete_primitive(&root->cust_root_node, node);\
utils/ulut/ul_gavlrepcust.h:  if(!item) return -1;\
utils/ulut/ul_gavlrepcust.h:  n=&item->cust_item_node;\
utils/ulut/ul_gavlrepcust.h:  for(p=n; p->parent; p=p->parent);\
utils/ulut/ul_gavlrepcust.h:  if(p!=root->cust_root_node)\
utils/ulut/ul_gavlrepcust.h:    return -1;\
utils/ulut/ul_gavlrepcust.h:  ret=gavl_delete_primitive(&root->cust_root_node, n);\
utils/ulut/ul_gavlrepcust.h:  gavl_node_t *n=root->cust_root_node;\
utils/ulut/ul_gavlrepcust.h:  while(n->left)\
utils/ulut/ul_gavlrepcust.h:    n=n->left;\
utils/ulut/ul_gavlrepcust.h:  gavl_node_t *n=root->cust_root_node;\
utils/ulut/ul_gavlrepcust.h:  while(n->right)\
utils/ulut/ul_gavlrepcust.h:    n=n->right;\
utils/ulut/ul_gsa.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gsa.c:  ul_gsa.c	- generic sorted arrays
utils/ulut/ul_gsa.c:  (C) Copyright 2001-2004 by Pavel Pisa - Originator
utils/ulut/ul_gsa.c:    - GPL - GNU General Public License
utils/ulut/ul_gsa.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gsa.c:    - MPL - Mozilla Public License
utils/ulut/ul_gsa.c:    - and other licenses added by project originators
utils/ulut/ul_gsa.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gsa.c: * gsa_struct_init - Initialize GSA Structure
utils/ulut/ul_gsa.c:  array->key_offs=key_offs;
utils/ulut/ul_gsa.c:  array->cmp_fnc=cmp_fnc;
utils/ulut/ul_gsa.c:  array->count=0;
utils/ulut/ul_gsa.c:  array->alloc_count=0;
utils/ulut/ul_gsa.c:  array->items=NULL;
utils/ulut/ul_gsa.c: * gsa_delete_all - Delete Pointers to the All Items in the Array
utils/ulut/ul_gsa.c:  if(array->items) free(array->items);
utils/ulut/ul_gsa.c:  array->items=NULL;
utils/ulut/ul_gsa.c:  array->count=0;
utils/ulut/ul_gsa.c:  array->alloc_count=0;
utils/ulut/ul_gsa.c: * gsa_bsearch_indx - Search for Item or Place for Item by Key
utils/ulut/ul_gsa.c: *        reworded - index points at first item with higher 
utils/ulut/ul_gsa.c:  if(!array->items || !array->count || !cmp_fnc){
utils/ulut/ul_gsa.c:      *indx=array->count;
utils/ulut/ul_gsa.c:  b=array->count;
utils/ulut/ul_gsa.c:    r=cmp_fnc((char*)array->items[c]+key_offs,key);
utils/ulut/ul_gsa.c:    /* equal items can be in range a to b-1 */
utils/ulut/ul_gsa.c:      r=cmp_fnc((char*)array->items[c]+key_offs,key);
utils/ulut/ul_gsa.c:    /* equal items can be in range a to b-1 */
utils/ulut/ul_gsa.c:      r=cmp_fnc((char*)array->items[c]+key_offs,key);
utils/ulut/ul_gsa.c: * gsa_find - Find Item for Provided Key
utils/ulut/ul_gsa.c:  if(gsa_bsearch_indx(array,key,array->key_offs,
utils/ulut/ul_gsa.c:  		      array->cmp_fnc,0,&indx))
utils/ulut/ul_gsa.c:    return array->items[indx];
utils/ulut/ul_gsa.c: * gsa_find_first - Find the First Item for Provided Key
utils/ulut/ul_gsa.c:  if(gsa_bsearch_indx(array,key,array->key_offs,
utils/ulut/ul_gsa.c:  		      array->cmp_fnc,GSA_FFIRST,&indx))
utils/ulut/ul_gsa.c:    return array->items[indx];
utils/ulut/ul_gsa.c: * gsa_find_indx - Find the First Item with Key Value and Return Its Index 
utils/ulut/ul_gsa.c:  if(gsa_bsearch_indx(array,key,array->key_offs,
utils/ulut/ul_gsa.c:  		      array->cmp_fnc,GSA_FFIRST,indx))
utils/ulut/ul_gsa.c:    return array->items[*indx];
utils/ulut/ul_gsa.c: * gsa_insert_at - Insert Existing Item to the Specified Array Index 
utils/ulut/ul_gsa.c:  unsigned acnt=array->alloc_count;
utils/ulut/ul_gsa.c:  unsigned cnt=array->count;
utils/ulut/ul_gsa.c:  if((cnt+1>=acnt)||!array->items)
utils/ulut/ul_gsa.c:    if(!array->items)
utils/ulut/ul_gsa.c:      items=realloc(array->items,acnt*sizeof(void*));
utils/ulut/ul_gsa.c:    if(!items) return -1;
utils/ulut/ul_gsa.c:    array->alloc_count=acnt;
utils/ulut/ul_gsa.c:    array->items=items;
utils/ulut/ul_gsa.c:  else items=array->items;
utils/ulut/ul_gsa.c:  memmove(p+1,p,(char*)(items+cnt)-(char*)p);
utils/ulut/ul_gsa.c:  array->count=cnt+1;
utils/ulut/ul_gsa.c: * gsa_insert - Insert Existing into Ordered Item Array
utils/ulut/ul_gsa.c:  res=gsa_bsearch_indx(array,(char*)item+array->key_offs,
utils/ulut/ul_gsa.c:  		array->key_offs,array->cmp_fnc,mode,&indx);
utils/ulut/ul_gsa.c:    if(!mode) return -1;
utils/ulut/ul_gsa.c:    return -1;
utils/ulut/ul_gsa.c: * gsa_delete_at - Delete Item from the Specified Array Index 
utils/ulut/ul_gsa.c:  unsigned acnt=array->alloc_count;
utils/ulut/ul_gsa.c:  unsigned cnt=array->count;
utils/ulut/ul_gsa.c:  void **items=array->items;
utils/ulut/ul_gsa.c:  if(indx>=cnt) return -1;
utils/ulut/ul_gsa.c:  array->count=--cnt;
utils/ulut/ul_gsa.c:  memmove(p,p+1,(items+cnt-p)*sizeof(void *));
utils/ulut/ul_gsa.c:  if(acnt-cnt>GSA_DEALLOC_STEP+GSA_ALLOC_STEP)
utils/ulut/ul_gsa.c:    acnt-=GSA_DEALLOC_STEP;
utils/ulut/ul_gsa.c:    items=realloc(array->items,acnt*sizeof(void*));
utils/ulut/ul_gsa.c:      array->alloc_count=acnt;
utils/ulut/ul_gsa.c:      array->items=items;
utils/ulut/ul_gsa.c: * gsa_delete - Delete Item from the Array
utils/ulut/ul_gsa.c:  int key_offs=array->key_offs;
utils/ulut/ul_gsa.c:  gsa_cmp_fnc_t *cmp_fnc=array->cmp_fnc;
utils/ulut/ul_gsa.c:    return -1;
utils/ulut/ul_gsa.c:  while(array->items[indx]!=item){
utils/ulut/ul_gsa.c:    if(++indx>=array->count) return -1;
utils/ulut/ul_gsa.c:      if(cmp_fnc((char*)(array->items[indx])+key_offs,
utils/ulut/ul_gsa.c:        return -1;
utils/ulut/ul_gsa.c: * gsa_resort_buble - Sort Again Array If Sorting Criteria Are Changed
utils/ulut/ul_gsa.c: * Return Value: non-zero value informs, that resorting changed order
utils/ulut/ul_gsa.c:  if(array->count<2) return 0;
utils/ulut/ul_gsa.c:  a=(char**)array->items; m=0;
utils/ulut/ul_gsa.c:  b=(char**)&array->items[array->count-1];
utils/ulut/ul_gsa.c:    if((a==--b)||!m1) return m;
utils/ulut/ul_gsa.c:      k2=*(p-1)+key_offs;
utils/ulut/ul_gsa.c:        *p=*(p-1);
utils/ulut/ul_gsa.c:        *(p-1)=k2;
utils/ulut/ul_gsa.c:    } while(--p!=a);
utils/ulut/ul_gsa.c: * gsa_setsort - Change Array Sorting Criterion
utils/ulut/ul_gsa.c: * Return Value: non-zero value informs, that resorting changed order
utils/ulut/ul_gsa.c:  if(key_offs>=0) array->key_offs=key_offs;
utils/ulut/ul_gsa.c:  if(cmp_fnc!=NULL) array->cmp_fnc=cmp_fnc;
utils/ulut/ul_gsa.c:  return gsa_resort_buble(array,array->key_offs,array->cmp_fnc);
utils/ulut/ul_gsa.c:  return *(int*)a-*(int*)b;
utils/ulut/ul_gsa.c:  return *(unsigned long*)a-*(unsigned long*)b;
utils/ulut/ul_gsa.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gsa.h:  ul_gsa.h	- generic sorted arrays
utils/ulut/ul_gsa.h:  (C) Copyright 2001 by Pavel Pisa - Originator
utils/ulut/ul_gsa.h:    - GPL - GNU General Public License
utils/ulut/ul_gsa.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gsa.h:    - MPL - Mozilla Public License
utils/ulut/ul_gsa.h:    - and other licenses added by project originators
utils/ulut/ul_gsa.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gsa.h:          reworded - index points at first item with higher 
utils/ulut/ul_gsa.h: * struct gsa_array_field_t - Structure Representing Anchor of ustom GSA Array
utils/ulut/ul_gsa.h:  if(indx>=array->cust_array_field.count) return NULL;\
utils/ulut/ul_gsa.h:  return (cust_item_t*)array->cust_array_field.items[indx];\
utils/ulut/ul_gsa.h:  { return &(cust_prefix##_indx2item(array, indx)->cust_item_key);}\
utils/ulut/ul_gsa.h:  if(!cust_prefix##_bsearch_indx(array, key, GSA_FFIRST, &indx)) return -1;\
utils/ulut/ul_gsa.h:  return !array->cust_array_field.count;\
utils/ulut/ul_gsa.h:  return cust_prefix##_indx2item(array, array->cust_array_field.count-1);\
utils/ulut/ul_gsa.h:  return array->cust_array_field.count-1;\
utils/ulut/ul_gsa.h:  return cust_prefix##_indx2item(it->container,it->indx);\
utils/ulut/ul_gsa.h:  it->container=container;\
utils/ulut/ul_gsa.h:  it->indx=cust_prefix##_first_indx(container);\
utils/ulut/ul_gsa.h:  it->container=container;\
utils/ulut/ul_gsa.h:  it->indx=cust_prefix##_last_indx(container);\
utils/ulut/ul_gsa.h:  if(it->indx<=cust_prefix##_last_indx(it->container)) it->indx++;\
utils/ulut/ul_gsa.h:  else it->indx=cust_prefix##_first_indx(it->container);\
utils/ulut/ul_gsa.h:  if(it->indx<=cust_prefix##_last_indx(it->container)) it->indx--;\
utils/ulut/ul_gsa.h:  else it->indx=cust_prefix##_first_indx(it->container);\
utils/ulut/ul_gsa.h:  if(!it->container) return 1;\
utils/ulut/ul_gsa.h:  return it->indx>cust_prefix##_last_indx(it->container);\
utils/ulut/ul_gsa.h:  it->container=container;\
utils/ulut/ul_gsa.h:  return (it->indx=cust_prefix##_find_first_indx(container, key))!=(unsigned)-1;\
utils/ulut/ul_gsa.h:  it->container=container;\
utils/ulut/ul_gsa.h:  return (it->indx=cust_prefix##_find_first_indx(container, key))!=(unsigned)-1;\
utils/ulut/ul_gsa.h:  it->container=container;\
utils/ulut/ul_gsa.h:  return (it->indx=cust_prefix##_find_after_indx(container, key))!=(unsigned)-1;\
utils/ulut/ul_gsa.h:  gsa_cust_init_array_field(&array->cust_array_field);\
utils/ulut/ul_gsa.h:  return gsa_cust_insert_at(&array->cust_array_field, item, indx);\
utils/ulut/ul_gsa.h:  return gsa_cust_delete_at(&array->cust_array_field, indx);\
utils/ulut/ul_gsa.h:  return (cust_item_t *)array->cust_array_field.items\
utils/ulut/ul_gsa.h:                          [--array->cust_array_field.count];\
utils/ulut/ul_gsa.h:  cust_prefix##_delete_at(it->container,it->indx);\
utils/ulut/ul_gsa.h:   be used in C99 non-conformant C compiler */
utils/ulut/ul_gsa.h:	    __fe_indx--)
utils/ulut/ul_gsachk.c:  if (*a<*b) return -1;
utils/ulut/ul_gsachk.c:    item->my_val=i;
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gsachk.c:    gsa_cust_for_each_after(cust2, &cust2_root, &item->my_val, item2)
utils/ulut/ul_gsachk.c:      printf(" %d",item2->my_val);
utils/ulut/ul_gsachk.c:  printf("Custom array cust2 delete 1-90:\n");
utils/ulut/ul_gsachk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    item->my_val=i;
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gsachk.c:    for(cust2_find_after_it(&cust2_root, &item->my_val, &it2);
utils/ulut/ul_gsachk.c:      printf(" %d",item->my_val);
utils/ulut/ul_gsachk.c:  printf("Custom array cust2 delete 1-90:\n");
utils/ulut/ul_gsachk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    item->my_val=i;
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("After %d : ",item->my_val);
utils/ulut/ul_gsachk.c:    ul_for_each_after_it(cust2, &cust2_root, &item->my_val, it2){
utils/ulut/ul_gsachk.c:      printf(" %d",item->my_val);
utils/ulut/ul_gsachk.c:  printf("Custom array cust2 delete 1-90:\n");
utils/ulut/ul_gsachk.c:  for(i=1;i<=100-10;i++){
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsachk.c:    printf("%d ",item->my_val);
utils/ulut/ul_gsacust.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gsacust.c:  ul_gsacust.c	- generic sorted arrays
utils/ulut/ul_gsacust.c:  (C) Copyright 2001 by Pavel Pisa - Originator
utils/ulut/ul_gsacust.c:    - GPL - GNU General Public License
utils/ulut/ul_gsacust.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gsacust.c:    - MPL - Mozilla Public License
utils/ulut/ul_gsacust.c:    - and other licenses added by project originators
utils/ulut/ul_gsacust.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gsacust.c:  array->count=0;
utils/ulut/ul_gsacust.c:  array->alloc_count=0;
utils/ulut/ul_gsacust.c:  array->items=NULL;
utils/ulut/ul_gsacust.c:  unsigned acnt=array->alloc_count;
utils/ulut/ul_gsacust.c:  unsigned cnt=array->count;
utils/ulut/ul_gsacust.c:  if((cnt+1>=acnt)||!array->items)
utils/ulut/ul_gsacust.c:    if(!array->items)
utils/ulut/ul_gsacust.c:      items=realloc(array->items,acnt*sizeof(void*));
utils/ulut/ul_gsacust.c:    if(!items) return -1;
utils/ulut/ul_gsacust.c:    array->alloc_count=acnt;
utils/ulut/ul_gsacust.c:    array->items=items;
utils/ulut/ul_gsacust.c:  else items=array->items;
utils/ulut/ul_gsacust.c:  memmove(p+1,p,(char*)(items+cnt)-(char*)p);
utils/ulut/ul_gsacust.c:  array->count=cnt+1;
utils/ulut/ul_gsacust.c:  unsigned acnt=array->alloc_count;
utils/ulut/ul_gsacust.c:  unsigned cnt=array->count;
utils/ulut/ul_gsacust.c:  void **items=array->items;
utils/ulut/ul_gsacust.c:  if(indx>=cnt) return -1;
utils/ulut/ul_gsacust.c:  array->count=--cnt;
utils/ulut/ul_gsacust.c:  memmove(p,p+1,(items+cnt-p)*sizeof(void *));
utils/ulut/ul_gsacust.c:  if(acnt-cnt>GSA_DEALLOC_STEP+GSA_ALLOC_STEP)
utils/ulut/ul_gsacust.c:    acnt-=GSA_DEALLOC_STEP;
utils/ulut/ul_gsacust.c:    items=realloc(array->items,acnt*sizeof(void*));
utils/ulut/ul_gsacust.c:      array->alloc_count=acnt;
utils/ulut/ul_gsacust.c:      array->items=items;
utils/ulut/ul_gsacust.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_gsacust.h:  ul_gsacust.h	- generic sorted arrays
utils/ulut/ul_gsacust.h:  (C) Copyright 2001 by Pavel Pisa - Originator
utils/ulut/ul_gsacust.h:    - GPL - GNU General Public License
utils/ulut/ul_gsacust.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_gsacust.h:    - MPL - Mozilla Public License
utils/ulut/ul_gsacust.h:    - and other licenses added by project originators
utils/ulut/ul_gsacust.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_gsacust.h:  if(!array->cust_array_field.items || !array->cust_array_field.count){\
utils/ulut/ul_gsacust.h:  b=array->cust_array_field.count;\
utils/ulut/ul_gsacust.h:    /* equal items can be in range a to b-1 */\
utils/ulut/ul_gsacust.h:  if(cust_prefix##_bsearch_indx(array, &item->cust_item_key, cust_ins_fl, &indx))\
utils/ulut/ul_gsacust.h:    if(!cust_ins_fl) return -1;\
utils/ulut/ul_gsacust.h:  if(!cust_prefix##_bsearch_indx(array, &item->cust_item_key, GSA_FFIRST,&indx))\
utils/ulut/ul_gsacust.h:    return -1;\
utils/ulut/ul_gsacust.h:    if(++indx>=array->cust_array_field.count) return -1;\
utils/ulut/ul_gsacust.h:                    &item->cust_item_key))  return -1;\
utils/ulut/ul_hptree.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_hptree.c:  ul_hptree.c  - heap tree implementation
utils/ulut/ul_hptree.c:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_hptree.c:    - GPL - GNU General Public License
utils/ulut/ul_hptree.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_hptree.c:    - MPL - Mozilla Public License
utils/ulut/ul_hptree.c:    - and other licenses added by project originators
utils/ulut/ul_hptree.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_hptree.c:  hpt_root->count=0;
utils/ulut/ul_hptree.c:  hpt_root->capacity=acapacity;
utils/ulut/ul_hptree.c:  ha=malloc(hpt_root->capacity*sizeof(void *));
utils/ulut/ul_hptree.c:    hpt_root->heaparr=NULL;
utils/ulut/ul_hptree.c:    hpt_root->capacity=0;
utils/ulut/ul_hptree.c:    return -1;
utils/ulut/ul_hptree.c:  hpt_root->heaparr=ha-1;
utils/ulut/ul_hptree.c:  acap=hpt_root->capacity;
utils/ulut/ul_hptree.c:  ha=realloc(hpt_root->heaparr+1,acap*sizeof(void *));
utils/ulut/ul_hptree.c:  if(!ha) return -1;  
utils/ulut/ul_hptree.c:  hpt_root->capacity=acap;
utils/ulut/ul_hptree.c:  hpt_root->heaparr=ha-1;
utils/ulut/ul_hptree.c:  if(hpt_root->heaparr)
utils/ulut/ul_hptree.c:    free(hpt_root->heaparr+1);
utils/ulut/ul_hptree.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_hptree.h:  ul_hptree.h  - heap tree implementation
utils/ulut/ul_hptree.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_hptree.h:    - GPL - GNU General Public License
utils/ulut/ul_hptree.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_hptree.h:    - MPL - Mozilla Public License
utils/ulut/ul_hptree.h:    - and other licenses added by project originators
utils/ulut/ul_hptree.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_hptree.h:  {return (cust_item_t*)((char*)node-(long)&((cust_item_t*)0)->cust_item_node);}\
utils/ulut/ul_hptree.h:  { return &(cust_prefix##_node2item(root, node)->cust_item_key);}\
utils/ulut/ul_hptree.h:  if(!root->cust_root_field.count)\
utils/ulut/ul_hptree.h:  n=root->cust_root_field.heaparr[ul_hpt_first_i];\
utils/ulut/ul_hptree.h:  return !root->cust_root_field.count;\
utils/ulut/ul_hptree.h:  { return ul_hpt_init_root_hpt(&root->cust_root_field, 64);}\
utils/ulut/ul_hptree.h:  i=root->cust_root_field.count+1;\
utils/ulut/ul_hptree.h:  if(i>root->cust_root_field.capacity)\
utils/ulut/ul_hptree.h:    if(ul_hpt_enlarge_hpt(&root->cust_root_field)<0)\
utils/ulut/ul_hptree.h:      return -1;\
utils/ulut/ul_hptree.h:  root->cust_root_field.count=i;\
utils/ulut/ul_hptree.h:  p=&item->cust_item_node;\
utils/ulut/ul_hptree.h:    r=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:    r->index=i;\
utils/ulut/ul_hptree.h:    root->cust_root_field.heaparr[i]=r;\
utils/ulut/ul_hptree.h:  p->index=i;\
utils/ulut/ul_hptree.h:  root->cust_root_field.heaparr[i]=p;\
utils/ulut/ul_hptree.h:  if(!(i=root->cust_root_field.count))\
utils/ulut/ul_hptree.h:  n=root->cust_root_field.heaparr[ul_hpt_first_i];\
utils/ulut/ul_hptree.h:  if((root->cust_root_field.count=i-1)){\
utils/ulut/ul_hptree.h:    p=root->cust_root_field.heaparr[i];\
utils/ulut/ul_hptree.h:    while((j=ul_hpt_left_i(i))<=root->cust_root_field.count){\
utils/ulut/ul_hptree.h:      r=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:      if(j!=root->cust_root_field.count)\
utils/ulut/ul_hptree.h:        if(cust_prefix##_cmp_hpt_i(root,r,root->cust_root_field.heaparr[j+1])>0)\
utils/ulut/ul_hptree.h:          {j++; r=root->cust_root_field.heaparr[j];}\
utils/ulut/ul_hptree.h:      r->index=i;\
utils/ulut/ul_hptree.h:      root->cust_root_field.heaparr[i]=r;\
utils/ulut/ul_hptree.h:    p->index=i;\
utils/ulut/ul_hptree.h:    root->cust_root_field.heaparr[i]=p;\
utils/ulut/ul_hptree.h:  p=&item->cust_item_node;\
utils/ulut/ul_hptree.h:  i=p->index;\
utils/ulut/ul_hptree.h:  if(i>root->cust_root_field.count) return -1;\
utils/ulut/ul_hptree.h:  if(root->cust_root_field.heaparr[i]!=p) return -1;\
utils/ulut/ul_hptree.h:  if(i==(j=root->cust_root_field.count--))\
utils/ulut/ul_hptree.h:  p=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:  r=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:      r->index=i;\
utils/ulut/ul_hptree.h:      root->cust_root_field.heaparr[i]=r;\
utils/ulut/ul_hptree.h:      r=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:    while((j=ul_hpt_left_i(i))<=root->cust_root_field.count){\
utils/ulut/ul_hptree.h:      r=root->cust_root_field.heaparr[j];\
utils/ulut/ul_hptree.h:      if(j!=root->cust_root_field.count)\
utils/ulut/ul_hptree.h:        if(cust_prefix##_cmp_hpt_i(root,r,root->cust_root_field.heaparr[j+1])>0)\
utils/ulut/ul_hptree.h:          {j++; r=root->cust_root_field.heaparr[j];}\
utils/ulut/ul_hptree.h:      r->index=i;\
utils/ulut/ul_hptree.h:      root->cust_root_field.heaparr[i]=r;\
utils/ulut/ul_hptree.h:  p->index=i;\
utils/ulut/ul_hptree.h:  root->cust_root_field.heaparr[i]=p;\
utils/ulut/ul_htimbase.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_htimbase.c:  ul_htimbase.c	- hierarchical timer base declarations
utils/ulut/ul_htimbase.c:  (C) Copyright 2003 by Pavel Pisa - Originator
utils/ulut/ul_htimbase.c:    - GPL - GNU General Public License
utils/ulut/ul_htimbase.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_htimbase.c:    - MPL - Mozilla Public License
utils/ulut/ul_htimbase.c:    - and other licenses added by project originators
utils/ulut/ul_htimbase.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_htimbase.c:	root->first_changed=1,,root->first_changed=1)
utils/ulut/ul_htimbase.c:	root->first_changed=1,root->first_changed=1)
utils/ulut/ul_htimchk.c:  sec=stop->tv_sec-start->tv_sec;
utils/ulut/ul_htimchk.c:  usec=stop->tv_usec-start->tv_usec;
utils/ulut/ul_htimchk.c:    usec-=1000000;
utils/ulut/ul_htimchk.c:    sec--;
utils/ulut/ul_htimchk.c:  //for(i=items_cnt;i-->0;){
utils/ulut/ul_htimchk.c:    timer->function=test_htimer_fnc;
utils/ulut/ul_htimchk.c:    timer->data=i;
utils/ulut/ul_htimchk.c:    ms_sleep=ul_mstime_next-ul_mstime_last;
utils/ulut/ul_htimchk.c:    if(ul_inepoll(ul_net->ul_fd)>0){
utils/ulut/ul_htimchk.c:      } while((ul_inepoll(ul_net->ul_fd)>0)&&loopcnt--);
utils/ulut/ul_htimchk.c:	/*FD_SET (ul_net->ul_fd, &set);*/
utils/ulut/ul_htimchk.c:	while ((ret=select(FD_SETSIZE,&set, NULL, NULL,&timeout))==-1
utils/ulut/ul_htimchk.c:        	&&errno==-EINTR);
utils/ulut/ul_htimdefs.h:/* Select heap-tree as base structure to implement
utils/ulut/ul_htimdefs.h: * hierarchic timer - not recomended
utils/ulut/ul_htimdefs.h:  ul_htim_diff_t d=(ul_htim_diff_t)(*a-*b);
utils/ulut/ul_htimdefs.h:  if (d<0) return -1;
utils/ulut/ul_htimdefs.h:    do{ timer->function(timer->data); } while(0)
utils/ulut/ul_htimer.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_htimer.c:  ul_htimer.c	- hierarchical timer for basic ul_htimer_t type
utils/ulut/ul_htimer.c:  (C) Copyright 2003 by Pavel Pisa - Originator
utils/ulut/ul_htimer.c:    - GPL - GNU General Public License
utils/ulut/ul_htimer.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_htimer.c:    - MPL - Mozilla Public License
utils/ulut/ul_htimer.c:    - and other licenses added by project originators
utils/ulut/ul_htimer.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_htimer.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_htimer.h:  ul_htimer.h  - hierarchical timer basic declarations
utils/ulut/ul_htimer.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_htimer.h:    - GPL - GNU General Public License
utils/ulut/ul_htimer.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_htimer.h:    - MPL - Mozilla Public License
utils/ulut/ul_htimer.h:    - and other licenses added by project originators
utils/ulut/ul_htimer.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_htimer.h: * struct ul_htim_node - Timer queue entry base structure
utils/ulut/ul_htimer.h: * struct ul_htim_queue - Timer queue head/root base structure
utils/ulut/ul_htimer.h:  {htim->node.parent=NULL;}
utils/ulut/ul_htimer.h:  /*little faster equivalent to ul_htim_queue_first(&queue->cust_queue_field);*/
utils/ulut/ul_htimer.h:  gavl_node_t *gavl_node=queue->timers.first;
utils/ulut/ul_htimer.h:  if(!queue->timers.count) return 0;
utils/ulut/ul_htimer.h:  *phtim=UL_CONTAINEROF(queue->timers.heaparr[ul_hpt_first_i],ul_htim_node_t,node);
utils/ulut/ul_htimer.h:  return ul_htim_queue_insert(&queue->cust_queue_field, &timer->cust_timer_field); \
utils/ulut/ul_htimer.h:  return ul_htim_queue_delete(&queue->cust_queue_field, &timer->cust_timer_field); \
utils/ulut/ul_htimer.h:  int first_changed=queue->cust_queue_field.first_changed;\
utils/ulut/ul_htimer.h:  queue->cust_queue_field.first_changed=0;\
utils/ulut/ul_htimer.h:  ul_htim_queue_init_detached(&timer->cust_timer_field);\
utils/ulut/ul_htimer.h:  timer->cust_timer_field.expires=expire;\
utils/ulut/ul_htimer.h:  return timer->cust_timer_field.expires;\
utils/ulut/ul_htimer.h:  ul_htim_queue_init_root_field(&queue->cust_queue_field);\
utils/ulut/ul_htimer.h:{ /*little faster equivalent to ul_htim_queue_first(&queue->cust_queue_field);*/\
utils/ulut/ul_htimer.h:  if(!ul_htim_queue_inline_first(&queue->cust_queue_field,&htim_node))\
utils/ulut/ul_htimer.h:  if(ul_htimer_cmp_fnc(&htim_node->expires,pact_time)>0) return NULL;\
utils/ulut/ul_htimer.h:  htim_node=ul_htim_queue_cut_first(&queue->cust_queue_field);\
utils/ulut/ul_htimer.h:  if(!ul_htim_queue_inline_first(&queue->cust_queue_field,&htim_node))\
utils/ulut/ul_htimer.h:  *pnext_time=htim_node->expires;\
utils/ulut/ul_htimer.h: * struct ul_htimer - Standard timer entry with callback function
utils/ulut/ul_htimer.h: * struct ul_htimer_queue - Standard timer queue
utils/ulut/ul_htimmstime.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_htimmstime.c:  ul_htimmstime.c   - standard hierarchical timer for microsecond
utils/ulut/ul_htimmstime.c:  (C) Copyright 2003 by Pavel Pisa - Originator
utils/ulut/ul_htimmstime.c:    - GPL - GNU General Public License
utils/ulut/ul_htimmstime.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_htimmstime.c:    - MPL - Mozilla Public License
utils/ulut/ul_htimmstime.c:    - and other licenses added by project originators
utils/ulut/ul_htimmstime.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_htimmstime.c:  ul_mstime_base_offs=-ul_mstime_last;
utils/ulut/ul_htimmstime.c:  sprintf(str,"%04d-%02d-%02d %02d:%02d:%02d",
utils/ulut/ul_htimmstime.c:          (int)log_tm->tm_year+1900,(int)log_tm->tm_mon+1,
utils/ulut/ul_htimmstime.c:          (int)log_tm->tm_mday,(int)log_tm->tm_hour,
utils/ulut/ul_htimmstime.c:	  (int)log_tm->tm_min,(int)log_tm->tm_sec);
utils/ulut/ul_itbase.h:  return it->item;\
utils/ulut/ul_itbase.h:  it->container=container;\
utils/ulut/ul_itbase.h:  it->item=cust_prefix##_first(container);\
utils/ulut/ul_itbase.h:  it->container=container;\
utils/ulut/ul_itbase.h:  it->item=cust_prefix##_last(container);\
utils/ulut/ul_itbase.h:  if(it->item) it->item=cust_prefix##_next(it->container,it->item);\
utils/ulut/ul_itbase.h:  else it->item=cust_prefix##_first(it->container);\
utils/ulut/ul_itbase.h:  if(it->item) it->item=cust_prefix##_prev(it->container,it->item);\
utils/ulut/ul_itbase.h:  else it->item=cust_prefix##_last(it->container);\
utils/ulut/ul_itbase.h:  return !it->item;\
utils/ulut/ul_itbase.h:  if(!(p=it->item)) return;\
utils/ulut/ul_itbase.h:  it->item=cust_prefix##_next(it->container,it->item);\
utils/ulut/ul_itbase.h:  cust_prefix##_delete(it->container,p);\
utils/ulut/ul_itbase.h:  it->container=container;\
utils/ulut/ul_itbase.h:  return (it->item=cust_prefix##_find(container, key))!=0;\
utils/ulut/ul_itbase.h:  it->container=container;\
utils/ulut/ul_itbase.h:  return (it->item=cust_prefix##_find_first(container, key))!=0;\
utils/ulut/ul_itbase.h:  it->container=container;\
utils/ulut/ul_itbase.h:  return (it->item=cust_prefix##_find_after(container, key))!=0;\
utils/ulut/ul_list.h:  INIT_LIST_HEAD(&head->cust_head_field);\
utils/ulut/ul_list.h:  INIT_LIST_HEAD(&item->cust_node_field);\
utils/ulut/ul_list.h:  ul_list_node_t *n=head->cust_head_field.next;\
utils/ulut/ul_list.h:  return (n!=&head->cust_head_field)?cust_prefix##_node2item(head,n):NULL;\
utils/ulut/ul_list.h:  ul_list_node_t *n=head->cust_head_field.prev;\
utils/ulut/ul_list.h:  return (n!=&head->cust_head_field)?cust_prefix##_node2item(head,n):NULL;\
utils/ulut/ul_list.h:  ul_list_node_t *n=item->cust_node_field.next;\
utils/ulut/ul_list.h:  return (n!=&head->cust_head_field)?cust_prefix##_node2item(head,n):NULL;\
utils/ulut/ul_list.h:  ul_list_node_t *n=item->cust_node_field.prev;\
utils/ulut/ul_list.h:  return (n!=&head->cust_head_field)?cust_prefix##_node2item(head,n):NULL;\
utils/ulut/ul_list.h:  return head->cust_head_field.next==&head->cust_head_field;\
utils/ulut/ul_list.h:  list_add(&item->cust_node_field, &head->cust_head_field);\
utils/ulut/ul_list.h:  list_add_tail(&item->cust_node_field, &head->cust_head_field);\
utils/ulut/ul_list.h:  list_del_init(&item->cust_node_field);\
utils/ulut/ul_list.h:  list_del_init(&item->cust_node_field);\
utils/ulut/ul_list.h:  ul_list_node_t *n=head->cust_head_field.next;\
utils/ulut/ul_list.h:  if(n==&head->cust_head_field) return NULL;\
utils/ulut/ul_listbase.h: * using the generic single-entry routines.
utils/ulut/ul_listbase.h:	(ptr)->next = (ptr); (ptr)->prev = (ptr); \
utils/ulut/ul_listbase.h:	next->prev = new;
utils/ulut/ul_listbase.h:	new->next = next;
utils/ulut/ul_listbase.h:	new->prev = prev;
utils/ulut/ul_listbase.h:	prev->next = new;
utils/ulut/ul_listbase.h: * list_add - add a new entry
utils/ulut/ul_listbase.h:	__list_add(new, head, head->next);
utils/ulut/ul_listbase.h: * list_add_tail - add a new entry
utils/ulut/ul_listbase.h:	__list_add(new, head->prev, head);
utils/ulut/ul_listbase.h:	next->prev = prev;
utils/ulut/ul_listbase.h:	prev->next = next;
utils/ulut/ul_listbase.h: * list_del - deletes entry from list.
utils/ulut/ul_listbase.h:	__list_del(entry->prev, entry->next);
utils/ulut/ul_listbase.h:	entry->next = LIST_POISON1;
utils/ulut/ul_listbase.h:	entry->prev = LIST_POISON2;
utils/ulut/ul_listbase.h: * list_del_init - deletes entry from list and reinitialize it.
utils/ulut/ul_listbase.h:	__list_del(entry->prev, entry->next);
utils/ulut/ul_listbase.h: * list_move - delete from one list and add as another's head
utils/ulut/ul_listbase.h:        __list_del(list->prev, list->next);
utils/ulut/ul_listbase.h: * list_move_tail - delete from one list and add as another's tail
utils/ulut/ul_listbase.h:        __list_del(list->prev, list->next);
utils/ulut/ul_listbase.h: * list_empty - tests whether a list is empty
utils/ulut/ul_listbase.h:	return head->next == head;
utils/ulut/ul_listbase.h:	struct list_head *first = list->next;
utils/ulut/ul_listbase.h:	struct list_head *last = list->prev;
utils/ulut/ul_listbase.h:	struct list_head *where = head->next;
utils/ulut/ul_listbase.h:	first->prev = head;
utils/ulut/ul_listbase.h:	head->next = first;
utils/ulut/ul_listbase.h:	last->next = where;
utils/ulut/ul_listbase.h:	where->prev = last;
utils/ulut/ul_listbase.h: * list_splice - join two lists
utils/ulut/ul_listbase.h: * list_splice_init - join two lists and reinitialise the emptied list.
utils/ulut/ul_listbase.h: * list_entry - get the struct for this entry
utils/ulut/ul_listbase.h: * list_for_each	-	iterate over a list
utils/ulut/ul_listbase.h:	for (pos = (head)->next, prefetch(pos->next); pos != (head); \
utils/ulut/ul_listbase.h:        	pos = pos->next, prefetch(pos->next))
utils/ulut/ul_listbase.h: * __list_for_each	-	iterate over a list
utils/ulut/ul_listbase.h:	for (pos = (head)->next; pos != (head); pos = pos->next)
utils/ulut/ul_listbase.h: * list_for_each_prev	-	iterate over a list backwards
utils/ulut/ul_listbase.h:	for (pos = (head)->prev, prefetch(pos->prev); pos != (head); \
utils/ulut/ul_listbase.h:        	pos = pos->prev, prefetch(pos->prev))
utils/ulut/ul_listbase.h: * list_for_each_safe	-	iterate over a list safe against removal of list entry
utils/ulut/ul_listbase.h:	for (pos = (head)->next, n = pos->next; pos != (head); \
utils/ulut/ul_listbase.h:		pos = n, n = pos->next)
utils/ulut/ul_listbase.h: * list_for_each_entry	-	iterate over list of given type
utils/ulut/ul_listbase.h:	for (pos = list_entry((head)->next, typeof(*pos), member),	\
utils/ulut/ul_listbase.h:		     prefetch(pos->member.next);			\
utils/ulut/ul_listbase.h:	     &pos->member != (head); 					\
utils/ulut/ul_listbase.h:	     pos = list_entry(pos->member.next, typeof(*pos), member),	\
utils/ulut/ul_listbase.h:		     prefetch(pos->member.next))
utils/ulut/ul_listbase.h: * list_for_each_entry_reverse - iterate backwards over list of given type.
utils/ulut/ul_listbase.h:	for (pos = list_entry((head)->prev, typeof(*pos), member),	\
utils/ulut/ul_listbase.h:		     prefetch(pos->member.prev);			\
utils/ulut/ul_listbase.h:	     &pos->member != (head); 					\
utils/ulut/ul_listbase.h:	     pos = list_entry(pos->member.prev, typeof(*pos), member),	\
utils/ulut/ul_listbase.h:		     prefetch(pos->member.prev))
utils/ulut/ul_listbase.h: * list_for_each_entry_safe - iterate over list of given type safe against removal of list entry
utils/ulut/ul_listbase.h:	for (pos = list_entry((head)->next, typeof(*pos), member),	\
utils/ulut/ul_listbase.h:		n = list_entry(pos->member.next, typeof(*pos), member);	\
utils/ulut/ul_listbase.h:	     &pos->member != (head); 					\
utils/ulut/ul_listbase.h:	     pos = n, n = list_entry(n->member.next, typeof(*n), member))
utils/ulut/ul_rtlchk.c:  TP->tv_sec=0;
utils/ulut/ul_rtlchk.c:  TP->tv_usec=0;
utils/ulut/ul_rtlchk.c:/* GAVL_CUST_NODE_INT_DEC - standard custom tree with internal node */
utils/ulut/ul_rtlchk.c:/* GAVL_FLES_INT_DEC      - tree with enhanced first last access speed  */
utils/ulut/ul_rtlchk.c:  if (*a<*b) return -1;
utils/ulut/ul_rtlchk.c:/* GAVL_CUST_NODE_INT_IMP - version with strict ordering */
utils/ulut/ul_rtlchk.c:/* GAVL_CUST_NODE_INT_REP_IMP - version without strict ordering */
utils/ulut/ul_rtlchk.c:/* GAVL_FLES_INT_IMP      - tree with enhanced first last access speed  */
utils/ulut/ul_rtlchk.c:	root->my_first_val=cust2_first(root)->my_val,
utils/ulut/ul_rtlchk.c:	root->my_last_val=cust2_first(root)->my_val, 
utils/ulut/ul_rtlchk.c:  sec=stop->tv_sec-start->tv_sec;
utils/ulut/ul_rtlchk.c:  usec=stop->tv_usec-start->tv_usec;
utils/ulut/ul_rtlchk.c:    usec-=1000000;
utils/ulut/ul_rtlchk.c:    sec--;
utils/ulut/ul_uniqid.c:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_uniqid.c:  ul_uniqid.h  - unique ID generator
utils/ulut/ul_uniqid.c:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_uniqid.c:    - GPL - GNU General Public License
utils/ulut/ul_uniqid.c:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_uniqid.c:    - MPL - Mozilla Public License
utils/ulut/ul_uniqid.c:    - and other licenses added by project originators
utils/ulut/ul_uniqid.c:  Code can be modified and re-distributed under any combination
utils/ulut/ul_uniqid.c:        if (a->first>b->last) return 1;
utils/ulut/ul_uniqid.c:        if (a->last<b->first) return -1;
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  pool->range.first=first;
utils/ulut/ul_uniqid.c:  pool->range.last=last;
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  item->range=pool->range;
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  if(range.first<item->range.first)
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  if(range.last>item->range.last)
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  if(range.first==item->range.first){
utils/ulut/ul_uniqid.c:    if(range.last==item->range.last){
utils/ulut/ul_uniqid.c:      item->range.first=range.last+1;
utils/ulut/ul_uniqid.c:    idsave=item->range.last;
utils/ulut/ul_uniqid.c:    item->range.last=range.first-1;
utils/ulut/ul_uniqid.c:      item->range.last=idsave;
utils/ulut/ul_uniqid.c:      item->range.first=range.last+1;
utils/ulut/ul_uniqid.c:    if(post->range.first!=range.last+1)
utils/ulut/ul_uniqid.c:      post->range.first=range.first;
utils/ulut/ul_uniqid.c:    if(prev->range.last!=range.first-1)
utils/ulut/ul_uniqid.c:        post->range.first=prev->range.first;
utils/ulut/ul_uniqid.c:        prev->range.last=range.last;
utils/ulut/ul_uniqid.c:      return -1;
utils/ulut/ul_uniqid.c:    post->range=range;
utils/ulut/ul_uniqid.c:  if(!item) return -1;
utils/ulut/ul_uniqid.c:  id=item->range.first;
utils/ulut/ul_uniqid.c:  if(item->range.first!=item->range.last){
utils/ulut/ul_uniqid.c:    item->range.first=id+1;
utils/ulut/ul_uniqid.c:  if((afterid>=pool->range.last)||
utils/ulut/ul_uniqid.c:     (afterid<=pool->range.first)){
utils/ulut/ul_uniqid.c:    return -1;
utils/ulut/ul_uniqid.c:  id=item->range.first;
utils/ulut/ul_uniqid.c:  if(item->range.first!=item->range.last){
utils/ulut/ul_uniqid.c:    item->range.first=id+1;
utils/ulut/ul_uniqid.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_uniqid.h:  ul_uniqid.h  - unique ID generator
utils/ulut/ul_uniqid.h:  (C) Copyright 2003-2004 by Pavel Pisa - Originator
utils/ulut/ul_uniqid.h:    - GPL - GNU General Public License
utils/ulut/ul_uniqid.h:    - LGPL - GNU Lesser General Public License
utils/ulut/ul_uniqid.h:    - MPL - Mozilla Public License
utils/ulut/ul_uniqid.h:    - and other licenses added by project originators
utils/ulut/ul_uniqid.h:  Code can be modified and re-distributed under any combination
utils/ulut/ul_utdefs.h:  uLan Utilities Library - C library of basic reusable constructions
utils/ulut/ul_utdefs.h:  ul_utdefs.h	- common defines used in uLan utilities library
utils/ulut/ul_utdefs.h:                ((int)&(((_type*)0)->_member))
utils/ulut/ul_utdefs.h:        const typeof( ((_type *)0)->_member ) *__mptr = (_ptr); \
utils/ulut/ul_utdefs.h:        (_type *)( (char *)__mptr - UL_OFFSETOF(_type,_member) );})
utils/ulut/ul_utdefs.h:        ((_type *)( (char *)_ptr - UL_OFFSETOF(_type,_member)))
utils/ulut/ul_utexport.h: * -fvisibilty=hidden
utils/ulut/ul_utexport.h: * -fvisibility-inlines-hidden
