1*042d53a7SEvalZero /*
2*042d53a7SEvalZero * Licensed to the Apache Software Foundation (ASF) under one
3*042d53a7SEvalZero * or more contributor license agreements. See the NOTICE file
4*042d53a7SEvalZero * distributed with this work for additional information
5*042d53a7SEvalZero * regarding copyright ownership. The ASF licenses this file
6*042d53a7SEvalZero * to you under the Apache License, Version 2.0 (the
7*042d53a7SEvalZero * "License"); you may not use this file except in compliance
8*042d53a7SEvalZero * with the License. You may obtain a copy of the License at
9*042d53a7SEvalZero *
10*042d53a7SEvalZero * http://www.apache.org/licenses/LICENSE-2.0
11*042d53a7SEvalZero *
12*042d53a7SEvalZero * Unless required by applicable law or agreed to in writing,
13*042d53a7SEvalZero * software distributed under the License is distributed on an
14*042d53a7SEvalZero * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15*042d53a7SEvalZero * KIND, either express or implied. See the License for the
16*042d53a7SEvalZero * specific language governing permissions and limitations
17*042d53a7SEvalZero * under the License.
18*042d53a7SEvalZero */
19*042d53a7SEvalZero
20*042d53a7SEvalZero #include <stdint.h>
21*042d53a7SEvalZero #include "syscfg/syscfg.h"
22*042d53a7SEvalZero #include "os/os_trace_api.h"
23*042d53a7SEvalZero
24*042d53a7SEvalZero #if MYNEWT_VAL(BLE_LL_SYSVIEW)
25*042d53a7SEvalZero
26*042d53a7SEvalZero static os_trace_module_t g_ble_ll_trace_mod;
27*042d53a7SEvalZero uint32_t ble_ll_trace_off;
28*042d53a7SEvalZero
29*042d53a7SEvalZero static void
ble_ll_trace_module_send_desc(void)30*042d53a7SEvalZero ble_ll_trace_module_send_desc(void)
31*042d53a7SEvalZero {
32*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "0 ll_sched lls=%u cputime=%u start_time=%u");
33*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "1 ll_rx_start lls=%u pdu_type=%x");
34*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "2 ll_rx_end pdu_type=%x len=%u flags=%x");
35*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "3 ll_wfr_timer_exp lls=%u xcvr=%u rx_start=%u");
36*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "4 ll_ctrl_rx opcode=%u len=%u");
37*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "5 ll_conn_ev_start conn_handle=%u");
38*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "6 ll_conn_ev_end conn_handle=%u event_cntr=%u");
39*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "7 ll_conn_end conn_handle=%u event_cntr=%u err=%u");
40*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "8 ll_conn_tx len=%u offset=%u");
41*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "9 ll_conn_rx conn_sn=%u pdu_nesn=%u");
42*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "10 ll_adv_txdone inst=%u chanset=%x");
43*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "11 ll_adv_halt inst=%u");
44*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "12 ll_aux_ref aux=%p ref=%u");
45*042d53a7SEvalZero os_trace_module_desc(&g_ble_ll_trace_mod, "13 ll_aux_unref aux=%p ref=%u");
46*042d53a7SEvalZero }
47*042d53a7SEvalZero
48*042d53a7SEvalZero void
ble_ll_trace_init(void)49*042d53a7SEvalZero ble_ll_trace_init(void)
50*042d53a7SEvalZero {
51*042d53a7SEvalZero ble_ll_trace_off =
52*042d53a7SEvalZero os_trace_module_register(&g_ble_ll_trace_mod, "ble_ll", 12,
53*042d53a7SEvalZero ble_ll_trace_module_send_desc);
54*042d53a7SEvalZero }
55*042d53a7SEvalZero #endif
56