xref: /openwifi/user_space/populate_kernel_image_module_reboot.sh (revision 6a4d7cea87e6493f6df109530a5a8275bc84916e)
1*6a4d7ceaSXianjun Jiao#!/bin/bash
2*6a4d7ceaSXianjun Jiao
3*6a4d7ceaSXianjun Jiao# Author: Xianjun Jiao
4*6a4d7ceaSXianjun Jiao# SPDX-FileCopyrightText: 2019 UGent
5*6a4d7ceaSXianjun Jiao# SPDX-License-Identifier: AGPL-3.0-or-later
6*6a4d7ceaSXianjun Jiao
7*6a4d7ceaSXianjun Jiaoset -ex
8*6a4d7ceaSXianjun Jiao
9*6a4d7ceaSXianjun JiaoMACHINE_TYPE=`uname -m`
10*6a4d7ceaSXianjun Jiao
11*6a4d7ceaSXianjun Jiaomkdir -p kernel_modules
12*6a4d7ceaSXianjun Jiaorm -rf kernel_modules/*
13*6a4d7ceaSXianjun Jiaotar -zxvf kernel_modules.tar.gz
14*6a4d7ceaSXianjun Jiao
15*6a4d7ceaSXianjun Jiaoif [ ${MACHINE_TYPE} == 'aarch64' ]; then
16*6a4d7ceaSXianjun Jiao    IMAGE_FILENAME=Image
17*6a4d7ceaSXianjun Jiaoelse
18*6a4d7ceaSXianjun Jiao    IMAGE_FILENAME=uImage
19*6a4d7ceaSXianjun Jiaofi
20*6a4d7ceaSXianjun Jiao
21*6a4d7ceaSXianjun Jiaorm -rf /lib/modules/$(uname -r)
22*6a4d7ceaSXianjun Jiao# setup kernel module directory
23*6a4d7ceaSXianjun Jiao# if [ -d "/lib/modules/$(uname -r)" ]; then
24*6a4d7ceaSXianjun Jiao#     echo "/lib/modules/$(uname -r) already exists."
25*6a4d7ceaSXianjun Jiao# else
26*6a4d7ceaSXianjun Jiao    # if [ ${MACHINE_TYPE} == 'aarch64' ]; then
27*6a4d7ceaSXianjun Jiao    #     ln -s /root/kernel_modules /lib/modules/$(uname -r)
28*6a4d7ceaSXianjun Jiao    # else
29*6a4d7ceaSXianjun Jiao    #     ln -s /root/kernel_modules /lib/modules/$(uname -r)
30*6a4d7ceaSXianjun Jiao    # fi
31*6a4d7ceaSXianjun Jiao    ln -s /root/kernel_modules /lib/modules/$(uname -r)
32*6a4d7ceaSXianjun Jiao# fi
33*6a4d7ceaSXianjun Jiao
34*6a4d7ceaSXianjun Jiaodepmod
35*6a4d7ceaSXianjun Jiao# modprobe mac80211
36*6a4d7ceaSXianjun Jiao
37*6a4d7ceaSXianjun Jiaoumount /mnt || /bin/true
38*6a4d7ceaSXianjun Jiaomount /dev/mmcblk0p1 /mnt
39*6a4d7ceaSXianjun Jiaoif test -f "./kernel_modules/$IMAGE_FILENAME"; then
40*6a4d7ceaSXianjun Jiao    cp ./kernel_modules/$IMAGE_FILENAME /mnt/
41*6a4d7ceaSXianjun Jiaofi
42*6a4d7ceaSXianjun Jiaoif test -f "./kernel_modules/BOOT.BIN"; then
43*6a4d7ceaSXianjun Jiao    cp ./kernel_modules/BOOT.BIN /mnt/
44*6a4d7ceaSXianjun Jiaofi
45*6a4d7ceaSXianjun Jiaocd /mnt/
46*6a4d7ceaSXianjun Jiaosync
47*6a4d7ceaSXianjun Jiaocd ~
48*6a4d7ceaSXianjun Jiaoumount /mnt
49*6a4d7ceaSXianjun Jiao
50*6a4d7ceaSXianjun Jiaoreboot now
51