Age | Commit message (Collapse) | Author | Files | Lines |
|
Add back the ini-config and config-parser code that existed
previously, and use it in binding init to over-ride the device
mapping from the controller JSON if /etc/dev-mapping.conf exists.
This restores the documented behavior, and is needed for the
existing AGL demo platform support and soon CI.
Additionally:
- Add code to validate the active_message_set, diagnostic_bus, and
bus device mapping configuration values.
- The above required moving plugin loading before the configuration
callback in the controller configuration, but this change seems
rational in that everything required by the generated plugin code
is already initialized before then, and it makes validating the
configuration possible without adding an extra callback.
- Add logging of the used CAN bus to device mappings at info level
to ease debugging any future issues.
- Tweak the log level of the missing configuration file message to
info from error, since it is a legitimate mode of operation if
relying on the default bus values in the controller JSON.
Bug-AGL: SPEC-3755
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I440f5e0fc85be41f7c4c1f47d824a403525a18f9
(cherry picked from commit 9e23caa4c56259044604c38f107f7c637001b846)
|
|
Bug-AGL: SPEC-3129
Change-Id: I41928c5f4c467edb176ad6234c9b775e70035319
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
Bug-AGL: SPEC-3129
Change-Id: I003a98863b78b49e85638bbb7e9b0d0fbde5a2b7
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
|
|
can be called with json value:
- a string matching can id
- an array matching can ids
Change-Id: Ia38728e065348e265613643fc934eb985564b722
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commits allows to subscribe message and have all signals
in one frame.
Change-Id: I95de0e46b30be09a47a04754266cb55650eeec31
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I0689d62e32b9b60059adc2d4be78fa3b2581441c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit patch j1939 feature after the update of the
kernel from linux-can-next to mainline.
Now promisc option removes filter of the bind.
The option is now a parameter in the event_filter.
The feature recv_own isn't available, you can't receive
on the same socket an emit frame from you.
Not a big problem because receive and send method use two
different sockets in the implementation.
Change-Id: I5ac410177c1512090827870300b8aa1679477b84
Signed-off-by: Arthur GUYADER <arthur.guyader@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I840fc6cc7e9cfd171b03cac508fedb8ece4b976d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I6f3e84700563fc60e643d770365c98342214bedd
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit fix the wrong bcm ival1 value set because the struct
hasn't been initialized so it use a wrong value that can not be
handled by the socket.
Initialize diagnotstic manager depending on JSON configuration file
This avoid to request engine_speed signal when there isn't any diagnostic_bus
configured in the JSON file.
Change-Id: I98145a6e20c29a644c856d818f104c6bd8069f9f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2988
Change-Id: I9a9dec6e577881bbd784bcae1d17ddb244d94599
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Return variable was initialized to 1 instead of 0 and without using J1939
this variable isn't reaffected and so the final test fails.
Bug-AGL: SPEC-2386
Change-Id: I53b7cd757b3b344d66ab18ba9795284105cbcfcc
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Just make thing more readable by define variables at the beginning of
functions. And directly assign them if possible.
Also improve format using the same format than in the rest of the project.
Bug-AGL: SPEC-2932
Change-Id: I5cc7685b80734d0eb43a29fc06b2a8434f3469fa
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Use configuration from JSON file instead of the old INI file. Now all configuration files
lies within the binding tree.
Bug-AGL: SPEC-2988
Change-Id: Id986d19751db958ad5cf3b7f2b2c5443d4ceb062
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I099b951011442ffaebf75a319236a39553999a41
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change a bit CAN binding define about used protocol. There was a mistake
about BCM define which isn't a protocol at all but a maner to filter
and retrieve CAN message through SocketCAN. Also FD_FRAME was using the
same name than SocketCAN which isn't a good idea, better to distinguis both
of them.
Bug-AGL: SPEC-2988
Change-Id: I255fa03029c7d5f90a33448e5e7692d8c249279b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2988
Change-Id: I433f4f699f3234fc07fcd909cd6b77b84e447ad7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2988
Change-Id: Iaa55b00539b1435b00fe076918d5eda5eeb5db30
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Make as the others bindings using controller and load its configuration file
at preinit step.
diagnostic-manager: Change way to initialize the diag bus
This was kind of hardcoded and now, it is initialized by a configuration key
of the controller configuration JSON file.
Bug-AGL: SPEC-2988
Change-Id: I344c1982893e47600a0b8cd03542de8069a42d24
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Add a space after a comma
Change some aligments
Bug-AGL: SPEC-2988
Change-Id: I5069120f4bbb33742bb4990e2e1f391ec8d5eeb6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2991
Change-Id: I8733a35e4f9cb3d0f2fce818b55a010fec19dc66
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2988
Change-Id: Ic3b9670a2ce9e982220c54f3632f690ee4eea686
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Also review some aligment and make more space between bool ops
Bug-AGL: SPEC-2988
Change-Id: I613f294a630caf48eea7bb0c7b9c36b07cbacfbf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL : SPEC-2780
Change-Id: I4ddf9389faffebe0334b0004b69bb7336277c29d
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
Bug-AGL : SPEC-2779
Change-Id: Iebcf7492133cd7789d301593ff999b24ae10a054
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commit allows to remove signals. We need that because
subscription to an iso tp message needs to be individual.
Bug-AGL : SPEC-2779
Change-Id: I1d6410ebfc8ea82d33addf1bb828d9cd810b006a
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commit adds the ISO TP feature. The ISO TP protocol
allows to communicate between two ECU. The protocol
allows multi packets management.
Bug-AGL : SPEC-2779
Change-Id: Ic222615b547f28e926930e6c1dea2c0265055afd
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commit allows to change all enum types by masks.
Now to implement new protocol you don't need to add
more attribute in class. All can be contained in
the flags field.
Bug-AGL : SPEC-2779
Change-Id: I814d0052139be5d5efefc9ff1b4b558f46b85e90
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commits ensure that only known signals
could be written using the binding's api.
Before that you was able to wrote raw frames
on the CAN bus without any checks if this
was a known signals to the binding.
Bug-AGL : SPEC-2779
Change-Id: Ied6680e926f2a9c221fee31d8fb78d2d39c41132
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commit updates the functions rx_filter_can to anticipate
the development of the multi-frame.
Bug-AGL : SPEC-2779
Change-Id: I5f67cf84e5d3e47c75c588f8776ead92eb6c3c8e
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
This commit update encoder and decoder files.
This new implementation allows to manage larger signals.
Bug-AGL : SPEC-2779
Change-Id: Iec6dfbd279863aa8b8e8f9e3ce951f0c8aa80dae
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
Bug-AGL : SPEC-2779
Change-Id: I834221ae1a04fdb188062ce1b7251e648c4845de
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
|
|
Only one subscription could be made and then only one subscriber
could receive associated events. As the relationship between events
and subscriber is not 1-1 but 1-N, so this was the mistake. Now 1 event
is created for N subscriber where before there was 1 event for 1
subscriber and subsequent subscribers could not receive same events
than the ones already subscribed.
Bug-AGL: SPEC-2726
Change-Id: I4e4a80ac9f9b6b4c6b006108ee55f355a7c1e377
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit allows to write J1939 messages and add the management
of the address claiming.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: I1bb95a7ba6f6ebe463319c3972d9d46897181d51
|
|
Allows to build a message (J1939,BCM) with a signal and a value.
Bug-AGL: SPEC-2386
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Change-Id: Iadca13a927ff83f713f39da441c88356695a1285
|
|
- Remove now unused forward declaration of active_diagnostic_request_t
- Factorize calling the signals_manager at binding initialization.
- retab...
Bug-AGL: SPEC-2386
Change-Id: I418fddd80ef8b856c198dc697760a6edf0918012
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL: SPEC-2386
Change-Id: I3a622b9d236283aff479f187451cd86557a9aba7
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
The commit allows at the time of subscription to do:
-> low-can subscribe {"id": 48}
-> low-can subscribe {"pgn": 61442}
The generation of event_filter has been extracted in a separate function.
Bug-AGL: SPEC-2386
Change-Id: I592e668c63be448562b27c81fcdc111cd34f3676
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit renames files and classes :
- can_message_definition_t -> message_definition_t
- can_message_set_t -> message_set_t
- can_signals_t -> signals_t
This prepares the implementation of j1939 protocol.
Bug-AGL: SPEC-2386
Change-Id: Ie3ee4f25c236c861b92eb12a56fa03a5a9afffbb
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit transforms the class can_message_t as the base class
and creates two derived classes: j1939_message_t and can_message_t.
Bug-AGL: SPEC-2386
Change-Id: I6d3afd8e4f5abff2cd0ec4e9910bd52a2893de76
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This change is made to leverage C++ to read and write the different socket
classes depending on CAN protocol used.
Bug-AGL: SPEC-2386
Change-Id: I5e25e271fc82e9627f836aeb43b2af5ef25db83a
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This commit implements a new socket class for the j1939 protocol and
prepares the bases classes by modifying the write and read methods.
Bug-AGL: SPEC-2386
Change-Id: I16ba493418a4bb37a0262b61a2a2629be6ab5051
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
- Improve robustness reading a BCM socket
Adding checks on system calls and remove the initialization of the
struct that will hold the received message, not so much needed in
that case.
- More accurate log message at subscription/unsubscription step whether
this is a FD CAN messages or not and if this a subscription or an
unsubscription that is requested.
- Initialize the full struct of vehicle message to avoid memory warning
about conditionnal jump based on uninitialized bytes.
- Memleak: Free raw pointer on active diagnostic requests
Change-Id: I4bbf4d851c0fa1efdb6fa6034fac3d1dcafa1a73
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Don't use a child class for subscription, only use one because there
isn't other different subscriptions type to be implemented about now
and if so then we could split again.
Remove functions no longer useful and move afb events and afb
subscriptions part to low-can-subscription
Change-Id: Ie3e4255961ac557465098cdb48730098a950461a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Also formating and retabulating some comments
Change-Id: I95eda93e78fabeb336ca02e94307364954ab2318
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Add a flag to CAN message definitions which set the message as using FD
protocol if true.
Use a new generated file with the new FD flag field on the message
definitions.
Change BCM socket "struct" using an union to store the CAN frames either
using the FD struct or the classic non FD struct. A BCM socket can only
one frame type once configured.
Use as much as possible the "struct canfd_frame" in the binding and only
make a difference before writing or reading the socket. From a memory
point of view both struct are identical and only the last member differ
and could hold more data with messages of 64 bytes long. So the
canfd_frame is compatible with the can_frame and can be differentiated
by a flag set in the can_id member.
Remove now unused code processing can_frame.
Keep the diagnostic manager using the classic CAN frame.
Set the maximum number of frames that a BCM socket can handle to 257.
Bug-AGL: SPEC-1980
Change-Id: Ifcc041281ea6745fc25cbd384743761f4446f489
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
- Adds the possibility to use a custom encoder function
- Use of wrap_json functions instead of raw json-c functions
- Return the error informations in the request return.
- Reduce conditionnal imbrication
Bug-AGL: SPEC-1965
Change-Id: I766b3cf3e6998d03a8a2f3e51117e8b26fc9b56f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I0bcccb15200064bd7d83edbf06c1e7202069189a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
|
|
This change set fixes the comments made by previous contributors
v2: Fix line end
v3: Making changes to comments as suggested by reviewers
v4: Removing trailing spaces
v5: Clearing small typo in low-can-cb.cpp on line 142
Change-Id: Ifbcfc3b2d131d1db0b25e472955b21e98cc09f45
Signed-off-by: ydimitrov <y.dimitrov.14@gmail.com>
|