//Use queue implemented as linked list to traverse void breadth_traverse (tree_node_t *node) { tree_node_t *n; printf("Breadth First Traversal using queues implemented as link list\n"); if (node) { ll_enqueue(node); } n = node; while (n) { n = ll_dequeue(); if (n) { printf("%d ", n->value); if (n->left) { ll_enqueue(n->left); } if (n->right) { ll_enqueue(n->right); } } } printf("\n"); }
static int ll_enable_deep_sleep(struct hci_uart *hu) { struct sk_buff *skb = NULL; skb = bt_skb_alloc(HCI_MAX_FRAME_SIZE, GFP_ATOMIC); if (!skb) { BT_ERR("Can't allocate mem for the deep sleep command packet"); return -ENOMEM; } skb->dev = (void *)hu->hdev; bt_cb(skb)->pkt_type = HCI_COMMAND_PKT; memcpy(skb_put(skb, sizeof(enable_deep_sleep_command)), \ enable_deep_sleep_command, sizeof(enable_deep_sleep_command)); return ll_enqueue(hu, skb); }