NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

5inch HDMI LCD touch screen on NetBSD Raspberry PI



Hello,

Any chance that these LCDs will be fully supported in the near future on NetBSD?

http://www.waveshare.com/wiki/5inch_HDMI_LCD

The resolution and display works fine with the:

# uncomment if hdmi display is not detected and composite is being output
hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (here we are forcing 800x480!)
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt=800 480 60 6 0 0 0

max_usb_current=1

Parameters but the touch screen require a separate driver. It is using the XPT2046 touch controller.

The driver works perfectly on Raspbian, I have looked into it what this is since it's basically just a script:

i=1
for lines in `cat ./boot/mark`
do
  case ${i} in
  1) var1=${lines};;
  esac
  i=`expr ${i} + 1`
done
#echo "$var1"

if test "$var1" = "0";then
sudo mkdir /etc/X11/xorg.conf.d
echo "1" > ./boot/mark
fi


if test "$1" = "0" -o "$#" = "0"; then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt /boot/config.txt
echo "LCD configrue 0"
elif test "$1" = "90"; then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-90 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-90 /boot/config.txt
echo "LCD configrue 90"
elif test "$1" = "180";then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-180 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-180 /boot/config.txt
echo "LCD configrue 180"
elif test "$1" = "270";then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-270 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-270 /boot/config.txt
echo "LCD configrue 270"
fi



sudo cp ./cmdline.txt /boot/
sudo cp ./inittab /etc/
sudo cp -rf ./usr/share/X11/xorg.conf.d/99-fbturbo.conf-HDMI /usr/share/X11/xorg.conf.d/99-fbturbo.conf

if test "$#" = "0" -o "$1" = "0" -o "$1" = "90" -o "$1" = "180" -o "$1" = "270"; then
sudo reboot
echo "reboot now"
else
echo "Invalid parameter,Usage:LCD5-show [0] [90] [180] [270]"
fi
peter@sheep:~/Downloads/LCD-show$ cat ./boot/mark
0
peter@sheep:~/Downloads/LCD-show$ cat LCD5-show
i=1
for lines in `cat ./boot/mark`
do
  case ${i} in
  1) var1=${lines};;
  esac
  i=`expr ${i} + 1`
done
#echo "$var1"

if test "$var1" = "0";then
sudo mkdir /etc/X11/xorg.conf.d
echo "1" > ./boot/mark
fi


if test "$1" = "0" -o "$#" = "0"; then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt /boot/config.txt
echo "LCD configrue 0"
elif test "$1" = "90"; then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-90 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-90 /boot/config.txt
echo "LCD configrue 90"
elif test "$1" = "180";then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-180 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-180 /boot/config.txt
echo "LCD configrue 180"
elif test "$1" = "270";then
sudo cp -rf ./etc/X11/xorg.conf.d/99-calibration.conf-5-270 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp ./boot/config-5.txt-270 /boot/config.txt
echo "LCD configrue 270"
fi



sudo cp ./cmdline.txt /boot/
sudo cp ./inittab /etc/
sudo cp -rf ./usr/share/X11/xorg.conf.d/99-fbturbo.conf-HDMI /usr/share/X11/xorg.conf.d/99-fbturbo.conf

if test "$#" = "0" -o "$1" = "0" -o "$1" = "90" -o "$1" = "180" -o "$1" = "270"; then
sudo reboot
echo "reboot now"
else
echo "Invalid parameter,Usage:LCD5-show [0] [90] [180] [270]"
fi


So from this in BSD environment the only 2 relevant files are:
  /etc/X11/xorg.conf.d/99-calibration.conf
 /usr/share/X11/xorg.conf.d/99-fbturbo.conf

These directories do not exist but I have created them and copied the configs there, I don't know if the netbsd version is even looking into it so I tried to directly put it into /etc/X11/xorg.conf.

The main problem that the device it's referring to:

Section "Device"
        Identifier      "Allwinner A10/A13 FBDEV"
        Driver          "fbturbo"
        Option          "fbdev" "/dev/fb0"

        Option          "SwapbuffersWait" "true"
EndSection

Doesn't exist.




Home | Main Index | Thread Index | Old Index