| 1 | |
|---|
| 2 | # -*- python -*- |
|---|
| 3 | |
|---|
| 4 | Module('caba:vci_spi', |
|---|
| 5 | classname = 'soclib::caba::VciSpi', |
|---|
| 6 | |
|---|
| 7 | tmpl_parameters = [ |
|---|
| 8 | parameter.Module('vci_param', default = 'caba:vci_param'), |
|---|
| 9 | ], |
|---|
| 10 | |
|---|
| 11 | header_files = [ |
|---|
| 12 | '../source/include/vci_spi.h', |
|---|
| 13 | ], |
|---|
| 14 | |
|---|
| 15 | interface_files = [ |
|---|
| 16 | '../../include/soclib/vcispi.h', |
|---|
| 17 | ], |
|---|
| 18 | |
|---|
| 19 | implementation_files = [ |
|---|
| 20 | '../source/src/vci_spi.cpp', |
|---|
| 21 | ], |
|---|
| 22 | |
|---|
| 23 | ports = [ |
|---|
| 24 | Port('caba:vci_target', 'p_vci_target'), |
|---|
| 25 | Port('caba:vci_initiator', 'p_vci_initiator'), |
|---|
| 26 | Port('caba:bit_out', 'p_irq'), |
|---|
| 27 | Port('caba:bit_out', 'p_spi_clk'), |
|---|
| 28 | Port('caba:bit_out', 'p_spi_ss'), |
|---|
| 29 | Port('caba:bit_out', 'p_spi_mosi'), |
|---|
| 30 | Port('caba:bit_in', 'p_spi_miso'), |
|---|
| 31 | Port('caba:bit_in', 'p_resetn', auto = 'resetn'), |
|---|
| 32 | Port('caba:clock_in', 'p_clk', auto = 'clock'), |
|---|
| 33 | ], |
|---|
| 34 | |
|---|
| 35 | uses = [ |
|---|
| 36 | Uses('caba:base_module'), |
|---|
| 37 | Uses('common:mapping_table'), |
|---|
| 38 | ], |
|---|
| 39 | |
|---|
| 40 | instance_parameters = [ |
|---|
| 41 | parameter.Module('mt', typename = 'common:mapping_table', auto = 'env:mapping_table'), |
|---|
| 42 | parameter.IntTab('srcid'), |
|---|
| 43 | parameter.IntTab('tgtid'), |
|---|
| 44 | parameter.Int('burst_size'), |
|---|
| 45 | ], |
|---|
| 46 | |
|---|
| 47 | extensions = [ |
|---|
| 48 | 'dsx:addressable=tgtid', |
|---|
| 49 | 'dsx:max_segments=1', |
|---|
| 50 | 'dsx:get_ident=tgtid:p_vci_target:mt,srcid:p_vci_initiator:mt', |
|---|
| 51 | ], |
|---|
| 52 | ) |
|---|