00001 /* 00002 * Copyright (c) 2007, Swedish Institute of Computer Science 00003 * All rights reserved. 00004 * 00005 * Redistribution and use in source and binary forms, with or without 00006 * modification, are permitted provided that the following conditions 00007 * are met: 00008 * 1. Redistributions of source code must retain the above copyright 00009 * notice, this list of conditions and the following disclaimer. 00010 * 2. Redistributions in binary form must reproduce the above copyright 00011 * notice, this list of conditions and the following disclaimer in the 00012 * documentation and/or other materials provided with the distribution. 00013 * 3. Neither the name of the Institute nor the names of its contributors 00014 * may be used to endorse or promote products derived from this software 00015 * without specific prior written permission. 00016 * 00017 * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 00018 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00019 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00020 * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 00021 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00022 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 00023 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00024 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00025 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00026 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00027 * SUCH DAMAGE. 00028 * 00029 * This file is part of the Contiki operating system. 00030 * 00031 */ 00032 00033 /** 00034 * \file 00035 * uIP initialization for the MSB-430 port. 00036 * \author 00037 * Nicolas Tsiftes <nvt@sics.se> 00038 */ 00039 00040 #include "contiki.h" 00041 #include "contiki-net.h" 00042 #include "node-id.h" 00043 #include "dev/slip.h" 00044 #include "dev/cc1020-uip.h" 00045 #include "contiki-msb430.h" 00046 00047 static struct uip_fw_netif slipif = 00048 {UIP_FW_NETIF(172,16,0,0, 255,255,255,0, slip_send)}; 00049 00050 static struct uip_fw_netif wsnif = 00051 {UIP_FW_NETIF(0,0,0,0, 0,0,0,0, cc1020_uip_send)}; 00052 00053 void 00054 init_net(void) 00055 { 00056 uip_ipaddr_t hostaddr; 00057 cc1020_init(cc1020_config_19200); 00058 00059 uip_init(); 00060 uip_fw_init(); 00061 /*tcpip_set_forwarding(1);*/ 00062 00063 process_start(&tcpip_process, NULL); 00064 process_start(&slip_process, NULL); 00065 process_start(&uip_fw_process, NULL); 00066 00067 rs232_set_input(slip_input_byte); 00068 00069 cc1020_uip_init(); 00070 cc1020_on(); 00071 00072 if (node_id > 0) { 00073 uip_ipaddr(&hostaddr, 172, 16, 1, node_id); 00074 uip_sethostaddr(&hostaddr); 00075 } 00076 00077 uip_fw_register(&slipif); 00078 uip_fw_default(&wsnif); 00079 }