Building HIP for OpenWRT on Netgear WGT634U

This part is just for Netgear WGT634U. For La Fonera, please refer to the section called “Building HIPL for OpenWRT on La Fonera”.

For preparation, refer to the section called “Preparation”.

  1. Your configuration should include these options:

    Target System (Broadcom BCM947xx/953xx [2.6])
    Target Images (jffs2, squashfs)
    Image configuration --->
     (static) LAN Protocol (NEW)
     (192.168.5.30) LAN IP Address (NEW)
     (255.255.255.0) LAN Network Mask (NEW)
    Base System  ---> 
     Configuration  ---> 
      Linux Module Utilities  ---> 
       [*] modprobe 
    Libraries  --->
     <*> libuuid
    Network  --->
     <*> ipsec-tools
     <*> isakmpd
     <*> ip6tables
     <*> hostapd
    Kernel modules  ---> 
     Netfilter Extensions  ---> 
      <*> kmod-ip6tables 
      <*> kmod-ipt-filter 
      <*> kmod-ipt-ipsec 
      <*> kmod-ipt-nat 
      <*> kmod-ipt-queue 
    Network Support  ---> 
      <*> kmod-ipsec 
      <*>  kmod-ipsec4 
      <*>  kmod-ipsec6 
      <*> kmod-iptunnel4 
      <*> kmod-ipv6 
      <*> kmod-tun 
    Other modules  ---> 
      <*> kmod-crypto 
    Wireless Drivers  ---> 
      <*> kmod-madwifi 
    Advanced configuration options (for developers)  --->
     Build Options  --->
      (8)   Number of jobs to run simultaneously (for PISA development. Speeds up compilation dramatically on multicore systems)
    

  2. You could also download a pre-configured configuration file for your device from http://hipl.hiit.fi/hipl/contrib/openwrt/7.09/config/dot_config_wgt, and place it as kamikaze_7.09/.config, and http://hipl.hiit.fi/hipl/contrib/openwrt/7.09/config/target/linux/brcm47xx-2.6/config/default as kamikaze_7.09/target/linux/brcm47xx-2.6/config/default. Make sure that you have the following kernel configurations in your target/linux/brcm47xx-2.6/config/default. Those are not available in the default configuration file provided by OpenWRT kamikaze 7.09.

    CONFIG_DUMMY=y
    CONFIG_PACKET=y
    CONFIG_UNIX=y
    

  3. Now build it.

    $ make
    

  4. If you cannot make jffs2 images without root privilege, try building with root privilege to get around it.

  5. If you get any error during the build, try using the verbose mode to figure out what's going on.

    $ make V=99
    

  6. If the build has succeeded, you can see firmware images in your bin directory.

    $ bin/openwrt-wgt*
    5136 -rw-rw-r-- 1 pisa src-pisa 5246976 Sep  3 16:58 bin/openwrt-wgt634u-2.6-jffs2.bin
    3528 -rw-rw-r-- 1 pisa src-pisa 3608576 Sep  3 16:58 bin/openwrt-wgt634u-2.6-squashfs.bin
    

  7. Install them on /tftpboot and write them on your device.

  8. Note that for Broadcom BCM the target name becomes 'mipsel' instead of 'mips'. So the name of cross compiler is 'mipsel-linux-uclibc-gcc'.

  9. Unlike La Fonera, to build OpenWRT for WGT634U, you need to take care of the maximum final image size 4MB. If you add lots of packages in the image, its size is really likely to exceed 4MB. If you cannot reduce the size with your own effort, try unselecting jffs2 in your OpenWRT configuration and selecting only squashfs, because squashfs images are slimmer than jffs2 images.