Changes between Version 6 and Version 7 of spec/Spi


Ignore:
Timestamp:
Oct 8, 2020, 11:16:21 AM (12 months ago)
Author:
fujisft-shigihara
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • spec/Spi

    v6 v7  
    1111* API一覧
    1212
    13   ||= API =||= ID[[BR]][Dec] =||= ID[[BR]][Hex] =||
    14   || [#Spi_Init Spi_Init]                                   ||  0|| 0x00||
    15   || [#Spi_DeInit Spi_DeInit]                               ||  1|| 0x01||
    16   || [#Spi_WriteIB Spi_WriteIB]                             ||  2|| 0x02||
    17   || [#Spi_AsyncTransmit Spi_AsyncTransmit]                 ||  3|| 0x03||
    18   || [#Spi_ReadIB Spi_ReadIB]                               ||  4|| 0x04||
    19   || [#Spi_SetupEB Spi_SetupEB]                             ||  5|| 0x05||
    20   || [#Spi_GetStatus Spi_GetStatus]                         ||  6|| 0x06||
    21   || [#Spi_GetJobResult Spi_GetJobResult]                   ||  7|| 0x07||
    22   || [#Spi_GetSequenceResult Spi_GetSequenceResult]         ||  8|| 0x08||
    23   || [#Spi_GetVersionInfo Spi_GetVersionInfo]               ||  9|| 0x09||
    24   || [#Spi_SyncTransmit Spi_SyncTransmit]                   || 10|| 0x0A||
    25   || [#Spi_GetHWUnitStatus Spi_GetHWUnitStatus]             || 11|| 0x0B||
    26   || [#Spi_Cancel Spi_Cancel]                               || 12|| 0x0C||
    27   || [#Spi_SetAsyncMode Spi_SetAsyncMode]                   || 13|| 0x0D||
    28   || [#Spi_MainFunction_Handling Spi_MainFunction_Handling] || 16|| 0x10||
    29 
    30 * コンフィギュレーション一覧
    31   * [#SpiDriver SpiDriver]
    32     * [#SpiMaxChannel SpiMaxChannel]
    33     * [#SpiMaxJob SpiMaxJob]
    34     * [#SpiMaxSequence SpiMaxSequence]
    35     * [#SpiChannel SpiChannel]
    36       * [#SpiChannelId SpiChannelId]
    37       * [#SpiChannelType SpiChannelType]
    38       * [#SpiDataWidth SpiDataWidth]
    39       * [#SpiDefaultData SpiDefaultData]
    40       * [#SpiEbMaxLength SpiEbMaxLength]
    41       * [#SpiIbNBuffers SpiIbNBuffers]
    42       * [#SpiTransferStart SpiTransferStart]
    43     * [#SpiDemEventParameterRefs SpiDemEventParameterRefs]
    44       * [#SPI_E_HARDWARE_ERROR SPI_E_HARDWARE_ERROR]
    45     * [#SpiExternalDevice SpiExternalDevice]
    46       * [#SpiBaudrate SpiBaudrate]
    47       * [#SpiCsIdentifier SpiCsIdentifier]
    48       * [#SpiCsPolarity SpiCsPolarity]
    49       * [#SpiCsSelection SpiCsSelection]
    50       * [#SpiDataShiftEdge SpiDataShiftEdge]
    51       * [#SpiEnableCs SpiEnableCs]
    52       * [#SpiHwUnit SpiHwUnit]
    53       * [#SpiShiftClockIdleLevel SpiShiftClockIdleLevel]
    54       * [#SpiTimeClk2Cs SpiTimeClk2Cs]
    55     * [#SpiJob SpiJob]
    56       * [#SpiHwUnitSynchronous SpiHwUnitSynchronous]
    57       * [#SpiJobEndNotification SpiJobEndNotification]
    58       * [#SpiJobId SpiJobId]
    59       * [#SpiJobPriority SpiJobPriority]
    60       * [#SpiDeviceAssignment SpiDeviceAssignment]
    61       * [#SpiChannelList SpiChannelList]
    62         * [#SpiChannelIndex SpiChannelIndex]
    63         * [#SpiChannelAssignment SpiChannelAssignment]
    64     * [#SpiSequence SpiSequence]
    65       * [#SpiInterruptibleSequence SpiInterruptibleSequence]
    66       * [#SpiSeqEndNotification SpiSeqEndNotification]
    67       * [#SpiSequenceId SpiSequenceId]
    68       * [#SpiJobAssignment SpiJobAssignment]
    69   * [#SpiGeneral SpiGeneral]
    70     * [#SpiCancelApi SpiCancelApi]
    71     * [#SpiChannelBuffersAllowed SpiChannelBuffersAllowed]
    72     * [#SpiDevErrorDetect SpiDevErrorDetect]
    73     * [#SpiHwStatusApi SpiHwStatusApi]
    74     * [#SpiInterruptibleSeqAllowed SpiInterruptibleSeqAllowed]
    75     * [#SpiLevelDelivered SpiLevelDelivered]
    76     * [#SpiSupportConcurrentSyncTransmit SpiSupportConcurrentSyncTransmit]
    77     * [#SpiVersionInfoApi SpiVersionInfoApi]
    78   * [#SpiPublishedInformation SpiPublishedInformation]
    79     * [#SpiMaxHwUnit SpiMaxHwUnit]
     13  ||= API =||= ID[[BR]][Dec] =||= ID[[BR]][Hex] =||= R4.0.3 =||= R4.2.2 =||
     14  || [#Spi_Init Spi_Init]                                   ||  0|| 0x00||  ○  ||  ○  ||
     15  || [#Spi_DeInit Spi_DeInit]                               ||  1|| 0x01||  ○  ||  ○  ||
     16  || [#Spi_WriteIB Spi_WriteIB]                             ||  2|| 0x02||  ○  ||  ○  ||
     17  || [#Spi_AsyncTransmit Spi_AsyncTransmit]                 ||  3|| 0x03||  ○  ||  ○  ||
     18  || [#Spi_ReadIB Spi_ReadIB]                               ||  4|| 0x04||  ○  ||  ○  ||
     19  || [#Spi_SetupEB Spi_SetupEB]                             ||  5|| 0x05||  ○  ||  ○  ||
     20  || [#Spi_GetStatus Spi_GetStatus]                         ||  6|| 0x06||  ○  ||  ○  ||
     21  || [#Spi_GetJobResult Spi_GetJobResult]                   ||  7|| 0x07||  ○  ||  ○  ||
     22  || [#Spi_GetSequenceResult Spi_GetSequenceResult]         ||  8|| 0x08||  ○  ||  ○  ||
     23  || [#Spi_GetVersionInfo Spi_GetVersionInfo]               ||  9|| 0x09||  ○  ||  ○  ||
     24  || [#Spi_SyncTransmit Spi_SyncTransmit]                   || 10|| 0x0A||  ○  ||  ○  ||
     25  || [#Spi_GetHWUnitStatus Spi_GetHWUnitStatus]             || 11|| 0x0B||  ○  ||  ○  ||
     26  || [#Spi_Cancel Spi_Cancel]                               || 12|| 0x0C||  ○  ||  ○  ||
     27  || [#Spi_SetAsyncMode Spi_SetAsyncMode]                   || 13|| 0x0D||  ○  ||  ○  ||
     28  || [#Spi_MainFunction_Handling Spi_MainFunction_Handling] || 16|| 0x10||  ○  ||  ○  ||
     29  || [#Spi_JobEndNotification Spi_JobEndNotification]       || --||   --||  ○  ||  ○  ||
     30  || [#Spi_SeqEndNotification Spi_SeqEndNotification]       || --||   --||  ○  ||  ○  ||
     31
     32* コンフィギュレーション一覧(R4.0.3 / R4.2.2)
     33  * [#SpiDemEventParameterRefs SpiDemEventParameterRefs] (-/○)
     34    * [#SPI_E_HARDWARE_ERROR SPI_E_HARDWARE_ERROR] (-/○)
     35  * [#SpiDriver SpiDriver] (○/○)
     36    * [#SpiMaxChannel SpiMaxChannel] (○/○)
     37    * [#SpiMaxJob SpiMaxJob] (○/○)
     38    * [#SpiMaxSequence SpiMaxSequence] (○/○)
     39    * [#SpiChannel SpiChannel] (○/○)
     40      * [#SpiChannelId SpiChannelId] (○/○)
     41      * [#SpiChannelType SpiChannelType] (○/○)
     42      * [#SpiDataWidth SpiDataWidth] (○/○)
     43      * [#SpiDefaultData SpiDefaultData] (○/○)
     44      * [#SpiEbMaxLength SpiEbMaxLength] (○/○)
     45      * [#SpiIbNBuffers SpiIbNBuffers] (○/○)
     46      * [#SpiTransferStart SpiTransferStart] (○/○)
     47    * [#SpiDemEventParameterRefs2 SpiDemEventParameterRefs] (○/-)
     48      * [#SPI_E_HARDWARE_ERROR2 SPI_E_HARDWARE_ERROR] (○/-)
     49    * [#SpiExternalDevice SpiExternalDevice] (○/○)
     50      * [#SpiBaudrate SpiBaudrate] (○/○)
     51      * [#SpiCsIdentifier SpiCsIdentifier] (○/○)
     52      * [#SpiCsPolarity SpiCsPolarity] (○/○)
     53      * [#SpiCsSelection SpiCsSelection] (○/○)
     54      * [#SpiDataShiftEdge SpiDataShiftEdge] (○/○)
     55      * [#SpiEnableCs SpiEnableCs] (○/○)
     56      * [#SpiHwUnit SpiHwUnit] (○/○)
     57      * [#SpiShiftClockIdleLevel SpiShiftClockIdleLevel] (○/○)
     58      * [#SpiTimeClk2Cs SpiTimeClk2Cs] (○/○)
     59    * [#SpiJob SpiJob] (○/○)
     60      * [#SpiHwUnitSynchronous SpiHwUnitSynchronous] (○/○)
     61      * [#SpiJobEndNotification SpiJobEndNotification] (○/○)
     62      * [#SpiJobId SpiJobId] (○/○)
     63      * [#SpiJobPriority SpiJobPriority] (○/○)
     64      * [#SpiDeviceAssignment SpiDeviceAssignment] (○/○)
     65      * [#SpiChannelList SpiChannelList] (○/○)
     66        * [#SpiChannelIndex SpiChannelIndex] (○/○)
     67        * [#SpiChannelAssignment SpiChannelAssignment] (○/○)
     68    * [#SpiSequence SpiSequence] (○/○)
     69      * [#SpiInterruptibleSequence SpiInterruptibleSequence] (○/○)
     70      * [#SpiSeqEndNotification SpiSeqEndNotification] (○/○)
     71      * [#SpiSequenceId SpiSequenceId] (○/○)
     72      * [#SpiJobAssignment SpiJobAssignment] (○/○)
     73  * [#SpiGeneral SpiGeneral] (○/○)
     74    * [#SpiCancelApi SpiCancelApi] (○/○)
     75    * [#SpiChannelBuffersAllowed SpiChannelBuffersAllowed] (○/○)
     76    * [#SpiDevErrorDetect SpiDevErrorDetect] (○/○)
     77    * [#SpiHwStatusApi SpiHwStatusApi] (○/○)
     78    * [#SpiInterruptibleSeqAllowed SpiInterruptibleSeqAllowed] (○/○)
     79    * [#SpiLevelDelivered SpiLevelDelivered] (○/○)
     80    * [#SpiMainFunctionPeriod SpiMainFunctionPeriod] (-/○)
     81    * [#SpiSupportConcurrentSyncTransmit SpiSupportConcurrentSyncTransmit] (○/○)
     82    * [#SpiUserCallbackHeaderFile SpiUserCallbackHeaderFile] (-/○)
     83    * [#SpiVersionInfoApi SpiVersionInfoApi] (○/○)
     84  * [#SpiPublishedInformation SpiPublishedInformation] (○/○)
     85    * [#SpiMaxHwUnit SpiMaxHwUnit] (○/○)
    8086
    8187* エラーコード一覧
    82   * "--"は[wiki:spec_DiagnosticEventManager Dem]により決定される
    83 
    84   ||= エラーコード =||= Dec =||= Hex =||
    85   || SPI_E_PARAM_CHANNEL       || 10|| 0x0A||
    86   || SPI_E_PARAM_JOB           || 11|| 0x0B||
    87   || SPI_E_PARAM_SEQ           || 12|| 0x0C||
    88   || SPI_E_PARAM_LENGTH        || 13|| 0x0D||
    89   || SPI_E_PARAM_UNIT          || 14|| 0x0E||
    90   || SPI_E_PARAM_POINTER       || 16|| 0x10||
    91   || SPI_E_UNINIT              || 26|| 0x1A||
    92   || SPI_E_SEQ_PENDING         || 42|| 0x2A||
    93   || SPI_E_SEQ_IN_PROCESS      || 58|| 0x3A||
    94   || SPI_E_ALREADY_INITIALIZED || 74|| 0x4A||
    95   || SPI_E_HARDWARE_ERROR      || --||   --||
     88  * "--"は[wiki:spec/Dem Dem]により決定される
     89
     90  ||= エラーコード =||= Dec =||= Hex =||= R4.0.3 =||= R4.2.2 =||
     91  || SPI_E_PARAM_CHANNEL       || 10|| 0x0A||  ○  ||  ○  ||
     92  || SPI_E_PARAM_JOB           || 11|| 0x0B||  ○  ||  ○  ||
     93  || SPI_E_PARAM_SEQ           || 12|| 0x0C||  ○  ||  ○  ||
     94  || SPI_E_PARAM_LENGTH        || 13|| 0x0D||  ○  ||  ○  ||
     95  || SPI_E_PARAM_UNIT          || 14|| 0x0E||  ○  ||  ○  ||
     96  || SPI_E_PARAM_POINTER       || 16|| 0x10||  ○  ||  ○  ||
     97  || SPI_E_UNINIT              || 26|| 0x1A||  ○  ||  ○  ||
     98  || SPI_E_SEQ_PENDING         || 42|| 0x2A||  ○  ||  ○  ||
     99  || SPI_E_SEQ_IN_PROCESS      || 58|| 0x3A||  ○  ||  ○  ||
     100  || SPI_E_ALREADY_INITIALIZED || 74|| 0x4A||  ○  ||  ○  ||
     101  || SPI_E_HARDWARE_ERROR      || --||   --||  ○  ||  ○  ||
    96102
    97103----
     
    111117== Spi_WriteIB ==
    112118{{{
    113 Std_ReturnType Spi_WriteIB(Spi_ChannelType Channel, const Spi_DataType* DataBufferPtr)
     119R4.0.3: Std_ReturnType Spi_WriteIB(Spi_ChannelType Channel, const Spi_DataType* DataBufferPtr)
     120R4.2.2: Std_ReturnType Spi_WriteIB(Spi_ChannelType Channel, const Spi_DataBufferType* DataBufferPtr)
    114121}}}
    115122
     
    121128== Spi_ReadIB ==
    122129{{{
    123 Std_ReturnType Spi_ReadIB(Spi_ChannelType Channel, Spi_DataType* DataBufferPointer)
     130R4.0.3: Std_ReturnType Spi_ReadIB(Spi_ChannelType Channel, Spi_DataType* DataBufferPointer)
     131R4.2.2: Std_ReturnType Spi_ReadIB(Spi_ChannelType Channel, Spi_DataBufferType* DataBufferPointer)
    124132}}}
    125133
    126134== Spi_SetupEB ==
    127135{{{
    128 Std_ReturnType Spi_SetupEB(Spi_ChannelType Channel, const Spi_DataType* SrcDataBufferPtr, Spi_DataType* DesDataBufferPtr, Spi_NumberOfDataType Length)
     136R4.0.3: Std_ReturnType Spi_SetupEB(Spi_ChannelType Channel, const Spi_DataType* SrcDataBufferPtr, Spi_DataType* DesDataBufferPtr, Spi_NumberOfDataType Length)
     137R4.2.2: Std_ReturnType Spi_SetupEB(Spi_ChannelType Channel, const Spi_DataBufferType* SrcDataBufferPtr, Spi_DataBufferType* DesDataBufferPtr, Spi_NumberOfDataType Length)
    129138}}}
    130139
     
    174183}}}
    175184
     185== Spi_JobEndNotification ==
     186{{{
     187void (*Spi_JobEndNotification)(void)
     188}}}
     189
     190== Spi_SeqEndNotification ==
     191{{{
     192void (*Spi_SeqEndNotification)(void)
     193}}}
     194
    176195----
    177196
    178197= コンフィギュレーション仕様 =
    179198
     199== SpiDemEventParameterRefs ==
     200{{{
     201/AUTOSAR/EcucDefs/Spi/SpiDemEventParameterRefs
     202}}}
     203* 型:Container
     204* 多重度:0..1
     205
     206== SPI_E_HARDWARE_ERROR ==
     207{{{
     208/AUTOSAR/EcucDefs/Spi/SpiDemEventParameterRefs/SPI_E_HARDWARE_ERROR
     209}}}
     210* 型:Reference
     211* 多重度:0..1
     212* 参照先:{{{/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter}}}
     213
    180214== SpiDriver ==
    181215{{{
     
    191225* 型:IntegerParam
    192226* 多重度:0..1
     227* 上限値:255
     228* 下限値:0
    193229
    194230== SpiMaxJob ==
     
    198234* 型:IntegerParam
    199235* 多重度:0..1
     236* 上限値:65535
     237* 下限値:0
    200238
    201239== SpiMaxSequence ==
     
    205243* 型:IntegerParam
    206244* 多重度:0..1
     245* 上限値:255
     246* 下限値:0
    207247
    208248== SpiChannel ==
     
    219259* 型:IntegerParam
    220260* 多重度:1
     261* 上限値:255
     262* 下限値:0
    221263
    222264== SpiChannelType ==
     
    226268* 型:EnumerationParam
    227269* 多重度:1
     270* 選択肢:
     271  * EB
     272  * IB
    228273
    229274== SpiDataWidth ==
     
    233278* 型:IntegerParam
    234279* 多重度:1
     280* 上限値:32
     281* 下限値:1
    235282
    236283== SpiDefaultData ==
     
    240287* 型:IntegerParam
    241288* 多重度:0..1
     289* 上限値:4294967295
     290* 下限値:0
    242291
    243292== SpiEbMaxLength ==
     
    247296* 型:IntegerParam
    248297* 多重度:1
     298* 上限値:65535
     299* 下限値:0
    249300
    250301== SpiIbNBuffers ==
     
    254305* 型:IntegerParam
    255306* 多重度:1
     307* 上限値:65535
     308* 下限値:0
    256309
    257310== SpiTransferStart ==
     
    261314* 型:EnumerationParam
    262315* 多重度:1
    263 
    264 == SpiDemEventParameterRefs ==
     316* 選択肢:
     317  * LSB
     318  * MSB
     319
     320== SpiDemEventParameterRefs(2) ==
    265321{{{
    266322/AUTOSAR/EcucDefs/Spi/SpiDriver/SpiDemEventParameterRefs
     
    269325* 多重度:0..1
    270326
    271 == SPI_E_HARDWARE_ERROR ==
     327== SPI_E_HARDWARE_ERROR(2) ==
    272328{{{
    273329/AUTOSAR/EcucDefs/Spi/SpiDriver/SpiDemEventParameterRefs/SPI_E_HARDWARE_ERROR
     
    275331* 型:Reference
    276332* 多重度:0..1
     333* 参照先:{{{/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter}}}
    277334
    278335== SpiExternalDevice ==
     
    289346* 型:FloatParam
    290347* 多重度:1
     348* 上限値:Inf
     349* 下限値:0
    291350
    292351== SpiCsIdentifier ==
     
    303362* 型:EnumerationParam
    304363* 多重度:1
     364* 選択肢:
     365  * HIGH
     366  * LOW
    305367
    306368== SpiCsSelection ==
     
    310372* 型:EnumerationParam
    311373* 多重度:0..1
     374* 選択肢:
     375  * CS_VIA_GPIO
     376  * CS_VIA_PERIPHERAL_ENGINE
     377* デフォルト値:
     378  * R4.2.2:CS_VIA_PERIPHERAL_ENGINE
    312379
    313380== SpiDataShiftEdge ==
     
    317384* 型:EnumerationParam
    318385* 多重度:1
     386* 選択肢:
     387  * LEADING
     388  * TRAILING
    319389
    320390== SpiEnableCs ==
     
    331401* 型:EnumerationParam
    332402* 多重度:1
     403* 選択肢:
     404  * CSIB0
     405  * CSIB1
     406  * CSIB2
     407  * CSIB3
    333408
    334409== SpiShiftClockIdleLevel ==
     
    338413* 型:EnumerationParam
    339414* 多重度:1
     415* 選択肢:
     416  * HIGH
     417  * LOW
    340418
    341419== SpiTimeClk2Cs ==
     
    345423* 型:FloatParam
    346424* 多重度:1
     425* 上限値:1E-4
     426* 下限値:0
    347427
    348428== SpiJob ==
     
    359439* 型:EnumerationParam
    360440* 多重度:0..1
     441* 選択肢:
     442  * ASYNCHRONOUS
     443  * SYNCHRONOUS
    361444
    362445== SpiJobEndNotification ==
     
    373456* 型:IntegerParam
    374457* 多重度:1
     458* 上限値:65535
     459* 下限値:0
    375460
    376461== SpiJobPriority ==
     
    380465* 型:IntegerParam
    381466* 多重度:1
     467* 上限値:3
     468* 下限値:0
    382469
    383470== SpiDeviceAssignment ==
     
    387474* 型:Reference
    388475* 多重度:1
     476* 参照先:{{{/AUTOSAR/EcucDefs/Spi/SpiDriver/SpiExternalDevice}}}
    389477
    390478== SpiChannelList ==
     
    401489* 型:IntegerParam
    402490* 多重度:1
     491* 上限値:255
     492* 下限値:0
    403493
    404494== SpiChannelAssignment ==
     
    408498* 型:Reference
    409499* 多重度:1
     500* 参照先:{{{/AUTOSAR/EcucDefs/Spi/SpiDriver/SpiChannel}}}
    410501
    411502== SpiSequence ==
     
    436527* 型:IntegerParam
    437528* 多重度:1
     529* 上限値:255
     530* 下限値:0
    438531
    439532== SpiJobAssignment ==
     
    443536* 型:Reference
    444537* 多重度:1..*
     538* 参照先:{{{/AUTOSAR/EcucDefs/Spi/SpiDriver/SpiJob}}}
    445539
    446540== SpiGeneral ==
     
    464558* 型:IntegerParam
    465559* 多重度:1
     560* 上限値:2
     561* 下限値:0
    466562
    467563== SpiDevErrorDetect ==
     
    492588* 型:IntegerParam
    493589* 多重度:1
     590* 上限値:2
     591* 下限値:0
     592
     593== SpiMainFunctionPeriod ==
     594{{{
     595/AUTOSAR/EcucDefs/Spi/SpiGeneral/SpiMainFunctionPeriod
     596}}}
     597* 型:FloatParam
     598* 多重度:0..1
     599* 上限値:1
     600* 下限値:1E-7
     601* デフォルト値:0.01
    494602
    495603== SpiSupportConcurrentSyncTransmit ==
     
    500608* 多重度:1
    501609
     610== SpiUserCallbackHeaderFile ==
     611{{{
     612/AUTOSAR/EcucDefs/Spi/SpiGeneral/SpiUserCallbackHeaderFile
     613}}}
     614* 型:StringParam
     615* 多重度:0..*
     616
    502617== SpiVersionInfoApi ==
    503618{{{
     
    520635* 型:IntegerParam
    521636* 多重度:1
     637* 上限値:18446744073709551615
     638* 下限値:0