Skip to content

Commit 0b8a5d7

Browse files
merge main into multicast-e2e
2 parents e1bf51b + f20f786 commit 0b8a5d7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+12059
-149
lines changed

.github/buildomat/common.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@
1111
TOFINO_STAGES=20
1212

1313
# These describe which version of the SDE to download and where to find it
14-
SDE_COMMIT=e61fe02c3c1c384b2e212c90177fcea76a31fd4e
15-
SDE_PKG_SHA256=8a87a9b0bed3c5440a173a7a41361bdeb5e7a848882da6b4aa48c8fb0043f3bd
16-
SDE_DEB_SHA256=a292e2dd5311647c4852bb41f2532dd1fdf30325b6d04cccb7e85b873e521d5f
14+
SDE_COMMIT=53519b8cf74fe832cc7838ea92683564ce4026f2
15+
SDE_PKG_SHA256=ed783a1e7c8d59c392e8cc89114fb0d495b5475373b762068a719e0fb215f5a0
16+
SDE_DEB_SHA256=90a18b65a6c65f4d15d5f75a00e42ae55a27ffaff2066061aa95feefbe85e163
1717

1818
[ `uname -s` == "SunOS" ] && SERIES=illumos
1919
[ `uname -s` == "SunOS" ] || SERIES=linux

.github/buildomat/packet-test-common.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ if [[ $JUST_TEST -ne 1 ]]; then
4848
libssl-dev \
4949
pkg-config \
5050
libcli-dev \
51-
sysvbanner
51+
sysvbanner \
52+
libboost-all-dev
5253
fi
5354

5455
export SDE=/opt/oxide/tofino_sde

.helix/languages.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ name = "rust"
44
# default to tofino_sde, can change this to any other feature such as softnpu
55
# as needed during development but in source control this should probably
66
# remain as tofino_sde
7-
features = [ "tofino_sde" ]
7+
features = [ "tofino_asic" ]

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

aal/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,7 @@ pub trait TableOps<H: AsicOps> {
285285
fn get_entries<M: MatchParse, A: ActionParse>(
286286
&self,
287287
hdl: &H,
288+
from_hardware: bool,
288289
) -> AsicResult<Vec<(M, A)>>;
289290
fn get_counters<M: MatchParse>(
290291
&self,

asic/build.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ fn gen_bindings(sde_dir: &str) -> Result<()> {
3737
format!("{sde_includes}/bf_rt/bf_rt_session.h"),
3838
format!("{sde_includes}/lld/lld_sku.h"),
3939
format!("{sde_includes}/tofino/bf_pal/bf_pal_port_intf.h"),
40+
format!("{sde_includes}/pipe_mgr/pipe_mgr_intf.h"),
4041
];
4142

4243
// There are several headers we only use (and _can_ only use) when running

asic/src/chaos/table.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ impl TableOps<Handle> for Table {
137137
fn get_entries<M: MatchParse, A: ActionParse>(
138138
&self,
139139
_hdl: &Handle,
140+
_from_hardware: bool,
140141
) -> AsicResult<Vec<(M, A)>> {
141142
Err(AsicError::OperationUnsupported)
142143
}

asic/src/softnpu/table.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -616,9 +616,11 @@ impl TableOps<Handle> for Table {
616616
fn get_entries<M: MatchParse, A: ActionParse>(
617617
&self,
618618
_hdl: &Handle,
619+
_from_hardware: bool,
619620
) -> AsicResult<Vec<(M, A)>> {
620621
Err(aal::AsicError::OperationUnsupported)
621622
}
623+
622624
fn get_counters<M: MatchParse>(
623625
&self,
624626
_hdl: &Handle,

asic/src/tofino_asic/c/bf_wrapper.h

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,46 @@ struct driver_version {
4343
uint32_t patch;
4444
};
4545

46+
bf_status_t
47+
lld_enable_all_ints(
48+
bf_dev_id_t dev_id,
49+
bf_subdev_id_t subdev_id
50+
);
51+
52+
bf_status_t
53+
lld_dump_new_ints(
54+
bf_dev_id_t dev_id,
55+
bf_subdev_id_t subdev_id
56+
);
57+
58+
bf_status_t
59+
lld_int_poll(
60+
bf_dev_id_t dev_id,
61+
bf_subdev_id_t subdev_id,
62+
bool all_ints
63+
);
64+
65+
bf_status_t
66+
bf_err_interrupt_handling_mode_set(
67+
bf_dev_id_t dev_id,
68+
bool enable
69+
);
70+
71+
pipe_status_t
72+
pipe_mgr_tcam_scrub_timer_set(
73+
bf_dev_id_t dev,
74+
uint32_t msec_timer
75+
);
76+
77+
uint32_t
78+
pipe_mgr_tcam_scrub_timer_get(
79+
bf_dev_id_t dev
80+
);
81+
82+
bool
83+
pipe_mgr_is_device_locked(
84+
bf_dev_id_t dev_id
85+
);
86+
87+
4688
#endif /* BF_WRAPPER_H */

asic/src/tofino_asic/imported_bf_functions

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,3 +160,34 @@ bf_pm_fsm_transition_callback
160160
bf_sys_log_callback
161161

162162
lld_sku_map_dev_port_id_to_mac_ch
163+
164+
# Snapshot
165+
bf_snapshot_create
166+
bf_snapshot_delete
167+
bf_snapshot_clear
168+
bf_snapshot_state_set
169+
bf_snapshot_state_get
170+
bf_snapshot_cfg_set
171+
bf_snapshot_capture_trigger_field_add
172+
bf_snapshot_capture_trigger_field_add_bytes
173+
bf_snapshot_capture_trigger_fields_clr
174+
bf_snapshot_capture_phv_fields_dict_size
175+
bf_snapshot_capture_get
176+
bf_snapshot_capture_decode_field_value
177+
bf_snapshot_capture_decode_field_value_bytes
178+
bf_snapshot_raw_capture_get
179+
bf_snapshot_total_phv_count_get
180+
bf_snapshot_field_in_scope
181+
bf_snapshot_trigger_field_in_scope
182+
bf_snapshot_do_polling
183+
bf_snapshot_entry_params_get
184+
bf_snapshot_handle_get
185+
186+
# Interrupt management
187+
lld_enable_all_ints
188+
lld_dump_new_ints
189+
lld_int_poll
190+
bf_err_interrupt_handling_mode_set
191+
pipe_mgr_is_device_locked
192+
pipe_mgr_tcam_scrub_timer_set
193+
pipe_mgr_tcam_scrub_timer_get

0 commit comments

Comments
 (0)