#! /bin/sh
#
# Copyright (c) 2016, The Linux Foundation. All rights reserved.

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#    * Redistributions of source code must retain the above copyright
#      notice, this list of conditions and the following disclaimer.
#    * Redistributions in binary form must reproduce the above
#      copyright notice, this list of conditions and the following
#      disclaimer in the documentation and/or other materials provided
#      with the distribution.
#    * Neither the name of The Linux Foundation nor the names of its
#      contributors may be used to endorse or promote products derived
#      from this software without specific prior written permission.

# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


# emac module init.d script to insert/remove emac module

DUMP_TO_KMSG=/dev/kmsg
MODULE_BASE=/usr/lib/modules/`uname -r`/kernel/drivers/net/ethernet/qualcomm/emac/

set -e

case "$1" in
  start)
        echo -n "emac start " > $DUMP_TO_KMSG
        insmod $MODULE_BASE/qcom_emac.ko
        ifconfig eth0 down
        echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
        echo "arp_ignore is set" > $DUMP_TO_KMSG
        ifconfig eth0 hw ether 00:80:48:BA:d1:30
        ifconfig eth0 up
        echo "done"
        ;;
  stop)
        echo -n "emac remove module" > $DUMP_TO_KMSG
        rmmod qcom_emac
        echo "done"
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  *)
        echo "Usage emac { start | stop | restart}" > $DUMP_TO_KMSG
        exit 1
        ;;
esac

exit 0
