Main Page | Class List | File List | Class Members | File Members | Related Pages

src/drivers/llc.h File Reference

Header for software LLC (logical link control) decode. More...

Go to the source code of this file.

Classes

struct  otto_llc_pulse
 Data link device kernel interface data word. More...

struct  otto_llc_timing
 Timing table entry for LLC decode. More...

struct  otto_llc_format
 LLC format definition. More...


Defines

#define OTTO_PACKET_PULSES_MAX   102
 Maximum number of pulses per packet.


Enumerations

enum  otto_llc_symbol {
  OTTO_LLC_SYM_UNKNOWN = 0, OTTO_LLC_SYM_ZERO, OTTO_LLC_SYM_ONE, OTTO_LLC_SYM_SOF,
  OTTO_LLC_SYM_EOD, OTTO_LLC_SYM_EOF, OTTO_LLC_SYM_BRK, OTTO_LLC_SYM_NB0,
  OTTO_LLC_SYM_NB1, OTTO_LLC_SYM_IFS
}
 Logical link control symbols. More...


Functions

int otto_llc_set_busenable (unsigned int busmask)
 Enable specified busses on software data link device.

int otto_llc_get_busenable (unsigned int *busmask)
 Retrieve enabled busses on software data link device.

int otto_llc_set_pulse (enum otto_llc_symbol id, struct otto_llc_pulse pulse)
 Configure special pulses on software data link device.

int otto_llc_get_pulse (enum otto_llc_symbol id, struct otto_llc_pulse *pulse)
 Get special pulse configuration on software data link device.

int otto_llc_decode (union otto_packet *pkt, struct otto_llc_pulse pulses[], int npulses)
 Data link decode.

int otto_llc_encode (union otto_packet *pkt, struct otto_llc_pulse pulses[], int *npulses)
 Data link encode.


Detailed Description

Header for software LLC (logical link control) decode.


Define Documentation

#define OTTO_PACKET_PULSES_MAX   102
 

Maximum number of pulses per packet.


Enumeration Type Documentation

enum otto_llc_symbol
 

Logical link control symbols.

Enumeration values:
OTTO_LLC_SYM_UNKNOWN  Unknown symbol.
OTTO_LLC_SYM_ZERO  Zero data bit.
OTTO_LLC_SYM_ONE  One data bit.
OTTO_LLC_SYM_SOF  Start of frame.
OTTO_LLC_SYM_EOD  End of data.
OTTO_LLC_SYM_EOF  End of frame.
OTTO_LLC_SYM_BRK  Break.
OTTO_LLC_SYM_NB0  Passive normalization bit.
OTTO_LLC_SYM_NB1  Active normalization bit.
OTTO_LLC_SYM_IFS  Inter-frame separation.


Function Documentation

int otto_llc_decode union otto_packet pkt,
struct otto_llc_pulse  pulses[],
int  npulses
 

Data link decode.

Returns:
Zero on success, error on failure.
Parameters:
pkt  Decoded OBD2 packet
pulses  Pulses
npulses  Number of pulses

int otto_llc_encode union otto_packet pkt,
struct otto_llc_pulse  pulses[],
int *  npulses
 

Data link encode.

Returns:
Zero on success, error on failure.
Parameters:
pkt  Packet to encode
pulses  Encoded pulses
npulses  On input, size of pulses. On return, number of pulses generated.

int otto_llc_get_busenable unsigned int *  busmask  ) 
 

Retrieve enabled busses on software data link device.

Returns:
Zero on success, error on failure
Parameters:
busmask  Bit fields specifying enabled busses

int otto_llc_get_pulse enum otto_llc_symbol  id,
struct otto_llc_pulse pulse
 

Get special pulse configuration on software data link device.

Returns:
Zero on success, error on failure
Parameters:
id  Pulse identification (only IFS and BRK supported)
pulse  Pulse

int otto_llc_set_busenable unsigned int  busmask  ) 
 

Enable specified busses on software data link device.

Returns:
Zero of success, error on failure
Parameters:
busmask  Bit fields specifying busses to enable

int otto_llc_set_pulse enum otto_llc_symbol  id,
struct otto_llc_pulse  pulse
 

Configure special pulses on software data link device.

Returns:
Zero on success, error on failure
Parameters:
id  Pulse identification (only IFS and BRK supported)
pulse  Pulse


Generated on Thu Jul 8 19:26:06 2004 for OpenOtto by doxygen 1.3.7