Abstract-Routing in cognitive radio networks (CRNs) necessitates a cross-layering approach. However, according to [1], CRN routing protocols proposed in literature are partially cross-layer, because the information flow is only from physical layer to network layer, e.g., about channels availabilities. In this work, we introduce a cross-layer routing protocol (CLRP), which considers both the channels that are known to be available at each node, as well as other channels that may be available. The availabilities of the latter channels are considered using a stochastic approach. CLRP computes an end to end path, and feeds the physical layer with information about which channels to sense and which nodes should perform the sensing, such that the expected route quality is enhanced. Simulation results show that CLRP outperforms other cross-layer routing protocols in terms of throughput and stability of the path being setup, and increases the probability of finding an end-to-end path.