#!/bin/bash

lspci | grep "VGA" > /tmp/.gpu_info
count=0
while true
do
	count=`expr $count + 1`
	if [ -f /tmp/.gpu_info ]; then
		result=`cat /tmp/.gpu_info | grep "7200"| wc -l`
		if [ $result -gt 0 ]; then
			is_jmgpu=1
			break
		else
			result=`cat /tmp/.gpu_info | grep -i "JingJia"| wc -l`
			if [ $result -gt 0 ]; then
				is_jmgpu=1
				break
			fi
        		if [ -e /usr/share/X11/xorg.conf.d/10-mwv206.conf ]; then
                		mv -f /usr/share/X11/xorg.conf.d/10-mwv206.conf /usr/share/X11/xorg.conf.d/10-mwv206.conf.jmgpu
        		fi
			is_jmgpu=0
		fi	
	fi
	lspci | grep "VGA" > /tmp/.gpu_info
	if [ $count -gt 5 ]; then
		is_jmgpu=0
		break
	fi
done
if [ $is_jmgpu -eq 1 ]; then
	echo "/usr/lib/loongarch64-linux-gnu/mwv206/" > /etc/ld.so.conf.d/loongarch64-linux-gl.conf
	chmod 0644 /etc/ld.so.conf.d/loongarch64-linux-gl.conf
        
        if [ -e /usr/share/X11/xorg.conf.d/10-mwv206.conf.jmgpu ];then
                mv -f /usr/share/X11/xorg.conf.d/10-mwv206.conf.jmgpu /usr/share/X11/xorg.conf.d/10-mwv206.conf
        fi
	if [ -e /etc/X11/xorg.conf.d/xorg.conf.2h ];then
		mv -f /etc/X11/xorg.conf.d/xorg.conf.2h /etc/X11/xorg.conf.d/xorg.conf.2h.jmgpu
	fi
	
	ln -srf /usr/lib/loongarch64-linux-gnu/mwv206/libmwv206glapi.so /usr/lib/loongarch64-linux-gnu/mwv206/libGL.so
	ln -srf /usr/lib/loongarch64-linux-gnu/mwv206/libmwv206glapi.so /usr/lib/loongarch64-linux-gnu/libGL.so
	ln -srf /usr/lib/loongarch64-linux-gnu/mwv206/libmwv206glapi.so /usr/lib/loongarch64-linux-gnu/libGL.so.1
	ldconfig
		
else

	if [ -f "/etc/ld.so.conf.d/loongarch64-linux-gl.conf" ]; then
		rm /etc/ld.so.conf.d/loongarch64-linux-gl.conf
	fi
	
	ln -srf /usr/lib/loongarch64-linux-gnu/libGL.so.1.7.0 /usr/lib/loongarch64-linux-gnu/libGL.so
	ln -srf /usr/lib/loongarch64-linux-gnu/libGL.so.1.7.0 /usr/lib/loongarch64-linux-gnu/libGL.so.1
        
        if [ -e /usr/share/X11/xorg.conf.d/10-mwv206.conf ];then
                mv -f /usr/share/X11/xorg.conf.d/10-mwv206.conf /usr/share/X11/xorg.conf.d/10-mwv206.conf.jmgpu
        fi
	if [ -e /etc/X11/xorg.conf.d/xorg.conf.2h.jmgpu ];then
		mv -f /etc/X11/xorg.conf.d/xorg.conf.2h.jmgpu /etc/X11/xorg.conf.d/xorg.conf.2h
	fi

        ldconfig
fi
exit 0
