mirror of
https://github.com/libretro/Lakka.git
synced 2024-11-23 15:59:40 +00:00
Add support for WeTek_Core from OpenELEC 6 (untested)
This commit is contained in:
parent
4b7146df62
commit
dde401dd3c
@ -15,6 +15,7 @@ DISTRO=Lakka PROJECT=Bananapi ARCH=arm make image -j9
|
||||
DISTRO=Lakka PROJECT=OdroidC1 ARCH=arm make image -j9
|
||||
DISTRO=Lakka PROJECT=OdroidXU3 ARCH=arm make image -j9
|
||||
DISTRO=Lakka PROJECT=WeTek_Play ARCH=arm make image -j9
|
||||
DISTRO=Lakka PROJECT=WeTek_Core ARCH=arm make image -j9
|
||||
DISTRO=Lakka PROJECT=WandBoard ARCH=arm make image -j9
|
||||
|
||||
for f in target/*; do
|
||||
|
52
packages/graphics/opengl-meson8/package.mk
Normal file
52
packages/graphics/opengl-meson8/package.mk
Normal file
@ -0,0 +1,52 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="opengl-meson8"
|
||||
PKG_VERSION="r5p1-01rel0-armhf"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="arm"
|
||||
PKG_LICENSE="nonfree"
|
||||
PKG_SITE="http://openlinux.amlogic.com:8000/download/ARM/filesystem/"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="graphics"
|
||||
PKG_SHORTDESC="opengl-meson8: OpenGL ES pre-compiled libraries for Mali 450 GPUs found in Amlogic Meson8 SoCs"
|
||||
PKG_LONGDESC="opengl-meson8: OpenGL ES pre-compiled libraries for Mali 450 GPUs found in Amlogic Meson8 SoCs. The libraries could be found in a Linux buildroot released by Amlogic at http://openlinux.amlogic.com:8000/download/ARM/filesystem/. See the opengl package."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
make_target() {
|
||||
: # nothing todo
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p $SYSROOT_PREFIX/usr/include
|
||||
cp -PR usr/include/* $SYSROOT_PREFIX/usr/include
|
||||
|
||||
mkdir -p $SYSROOT_PREFIX/usr/lib
|
||||
cp -PR usr/lib/*.so* $SYSROOT_PREFIX/usr/lib
|
||||
|
||||
mkdir -p $INSTALL/usr/lib
|
||||
cp -PR usr/lib/*.so* $INSTALL/usr/lib
|
||||
}
|
||||
|
||||
post_install() {
|
||||
enable_service unbind-console.service
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
[Unit]
|
||||
Description=Unbind framebuffer console
|
||||
|
||||
ConditionPathExists=/sys/class/vtconsole/vtcon1/bind
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/bin/sh -c 'echo 0 > /sys/class/vtconsole/vtcon1/bind'
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical.target
|
36
packages/lakka/WeTek_Core/package.mk
Normal file
36
packages/lakka/WeTek_Core/package.mk
Normal file
@ -0,0 +1,36 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="WeTek_Core"
|
||||
PKG_VERSION=""
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/lakkatv/Lakka"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS_TARGET="retroarch o2em 81 fuse-libretro gw-libretro beetle-sgx genesis-plus-gx mupen64plus lutro gpsp ppsspp 2048 beetle-vb beetle-wswan beetle-ngp pcsx_rearmed vecx snes9x-next dinothawr prboom beetle-pce handy picodrive nxengine nestopia gambatte stella fba libretro-ffmpeg"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="virtual"
|
||||
PKG_SHORTDESC="Lakka metapackage for WeTek_Core"
|
||||
PKG_LONGDESC=""
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
@ -54,7 +54,7 @@ elif [ "$OPENGLES" == "bcm2835-driver" ]; then
|
||||
RETROARCH_GL="--enable-gles --disable-kms"
|
||||
CFLAGS="$CFLAGS -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads \
|
||||
-I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux"
|
||||
elif [ "$OPENGLES" == "sunxi-mali" ] || [ "$OPENGLES" == "odroidc1-mali" ] || [ "$OPENGLES" == "odroidxu3-mali" ] || [ "$OPENGLES" == "opengl-meson6" ]; then
|
||||
elif [ "$OPENGLES" == "sunxi-mali" ] || [ "$OPENGLES" == "odroidc1-mali" ] || [ "$OPENGLES" == "odroidxu3-mali" ] || [ "$OPENGLES" == "opengl-meson6" ] || [ "$OPENGLES" == "opengl-meson8" ]; then
|
||||
RETROARCH_GL="--enable-gles --disable-kms --enable-mali_fbdev"
|
||||
elif [ "$OPENGLES" == "gpu-viv-bin-mx6q" ]; then
|
||||
RETROARCH_GL="--enable-gles --disable-kms --enable-vivante_fbdev"
|
||||
|
@ -0,0 +1,34 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="brcmfmac_sdio-firmware-aml"
|
||||
PKG_VERSION="0.1"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/OpenELEC/OpenELEC.tv"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="firmware"
|
||||
PKG_SHORTDESC="brcmfmac_sdio-firmware: firmware for brcm bluetooth chips used in some Amlogic based devices"
|
||||
PKG_LONGDESC="Firmware for Broadcom Bluetooth devices used in some Amlogic based devices, and brcm-patchram-plus that downloads a patchram files in the HCD format to the Bluetooth based silicon and combo chips and other utility functions."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
@ -0,0 +1,8 @@
|
||||
[Unit]
|
||||
Description=Broadcom sdio firmware update for %I
|
||||
ConditionPathExists=/dev/ttyS1
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/usr/bin/brcm_patchram_plus --patchram /lib/firmware/brcm/%I.hcd --baudrate 3000000 --use_baudrate_for_download /dev/ttyS1 --enable_hci --no2bytes --tosleep=50000
|
@ -0,0 +1,15 @@
|
||||
################################################################################
|
||||
# udev rules file for loading brcmfmac_sdio-firmware
|
||||
################################################################################
|
||||
|
||||
ACTION!="add", GOTO="end"
|
||||
SUBSYSTEMS=="sdio", ATTRS{vendor}=="0x02d0", ATTRS{device}=="0xa962", GOTO="begin"
|
||||
GOTO="end"
|
||||
LABEL="begin"
|
||||
### Broadcom bcm43362/bcm20710a1 bluetooth device
|
||||
ATTRS{vendor}=="0x02d0", ATTRS{device}=="0xa962", \
|
||||
ENV{brcm_device}="bcm20710a1"
|
||||
|
||||
ENV{brcm_device}=="bcm20*", ACTION=="add", \
|
||||
TAG+="systemd", ENV{SYSTEMD_WANTS}+="brcmfmac_sdio-firmware@$env{brcm_device}.service"
|
||||
LABEL="end"
|
@ -0,0 +1,34 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="brcmfmac_sdio-firmware-imx"
|
||||
PKG_VERSION="0.1"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/OpenELEC/OpenELEC.tv"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="firmware"
|
||||
PKG_SHORTDESC="brcmfmac_sdio-firmware: firmware for brcm bluetooth chips used in some Freescale iMX based devices"
|
||||
PKG_LONGDESC="Firmware for Broadcom Bluetooth chips used in some Freescale iMX based devices, and brcm-patchram-plus that downloads a patchram files in the HCD format to the Bluetooth based silicon and combo chips and other utility functions."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
@ -0,0 +1,8 @@
|
||||
[Unit]
|
||||
Description=Broadcom sdio firmware update for %I
|
||||
ConditionPathExists=/dev/ttymxc3
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/usr/bin/brcm_patchram_plus --patchram /lib/firmware/brcm/%I.hcd --baudrate 3000000 --use_baudrate_for_download /dev/ttymxc3 --enable_hci --no2bytes --tosleep=50000
|
@ -0,0 +1,19 @@
|
||||
################################################################################
|
||||
# udev rules file for loading brcmfmac_sdio-firmware
|
||||
################################################################################
|
||||
|
||||
ACTION!="add", GOTO="end"
|
||||
SUBSYSTEMS=="sdio", ATTRS{vendor}=="0x02d0", ATTRS{device}=="0x4329", GOTO="begin"
|
||||
SUBSYSTEMS=="sdio", ATTRS{vendor}=="0x02d0", ATTRS{device}=="0x4330", GOTO="begin"
|
||||
GOTO="end"
|
||||
LABEL="begin"
|
||||
### Broadcom bcm4330 bluetooth device
|
||||
ATTRS{vendor}=="0x02d0", ATTRS{device}=="0x4330", \
|
||||
ENV{brcm_device}="bcm4330"
|
||||
### Broadcom bcm4329 bluetooth device
|
||||
ATTRS{vendor}=="0x02d0", ATTRS{device}=="0x4329", \
|
||||
ENV{brcm_device}="bcm4329"
|
||||
|
||||
ENV{brcm_device}=="bcm43*", ACTION=="add", \
|
||||
TAG+="systemd", ENV{SYSTEMD_WANTS}+="brcmfmac_sdio-firmware@$env{brcm_device}.service"
|
||||
LABEL="end"
|
@ -0,0 +1,5 @@
|
||||
################################################################################
|
||||
# udev rule to set bluetooth power up
|
||||
################################################################################
|
||||
|
||||
ACTION=="add", KERNEL=="hci0", RUN+="/usr/bin/hciconfig hci0 up"
|
@ -35,7 +35,7 @@ case "$LINUX" in
|
||||
PKG_URL="$LAKKA_MIRROR/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
;;
|
||||
amlogic)
|
||||
PKG_VERSION="amlogic-3.10-cc5fcae"
|
||||
PKG_VERSION="amlogic-3.10-716f179"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
;;
|
||||
imx6)
|
||||
@ -75,6 +75,10 @@ else
|
||||
KERNEL_IMAGE="bzImage"
|
||||
fi
|
||||
|
||||
if [ "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET mkbootimg:host"
|
||||
fi
|
||||
|
||||
post_patch() {
|
||||
if [ -f $PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_NAME.$TARGET_ARCH.conf ]; then
|
||||
KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_NAME.$TARGET_ARCH.conf
|
||||
@ -89,7 +93,9 @@ post_patch() {
|
||||
$PKG_BUILD/Makefile
|
||||
|
||||
cp $KERNEL_CFG_FILE $PKG_BUILD/.config
|
||||
sed -i -e "s|^CONFIG_INITRAMFS_SOURCE=.*$|CONFIG_INITRAMFS_SOURCE=\"$ROOT/$BUILD/image/initramfs.cpio\"|" $PKG_BUILD/.config
|
||||
if [ ! "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
||||
sed -i -e "s|^CONFIG_INITRAMFS_SOURCE=.*$|CONFIG_INITRAMFS_SOURCE=\"$ROOT/$BUILD/image/initramfs.cpio\"|" $PKG_BUILD/.config
|
||||
fi
|
||||
|
||||
# set default hostname based on $DISTRONAME
|
||||
sed -i -e "s|@DISTRONAME@|$DISTRONAME|g" $PKG_BUILD/.config
|
||||
@ -164,6 +170,12 @@ make_target() {
|
||||
fi
|
||||
|
||||
LDFLAGS="" make $KERNEL_IMAGE $KERNEL_MAKE_EXTRACMD
|
||||
|
||||
if [ "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
||||
LDFLAGS="" mkbootimg --kernel arch/arm/boot/$KERNEL_IMAGE --ramdisk $ROOT/$BUILD/image/initramfs.cpio \
|
||||
--second "$ANDROID_BOOTIMG_SECOND" --output arch/arm/boot/boot.img
|
||||
mv -f arch/arm/boot/boot.img arch/arm/boot/$KERNEL_IMAGE
|
||||
fi
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
|
@ -21,7 +21,9 @@
|
||||
lsusb -d 096e:0006 &> /dev/null
|
||||
LSUSB_RET=$?
|
||||
|
||||
if [ -f /storage/.config/remote.conf ]; then
|
||||
if [ -f /etc/amremote/remote.conf ]; then
|
||||
/usr/bin/remotecfg /etc/amremote/remote.conf
|
||||
elif [ -f /storage/.config/remote.conf ]; then
|
||||
/usr/bin/remotecfg /storage/.config/remote.conf
|
||||
elif [ "$LSUSB_RET" = 0 ]; then
|
||||
/usr/bin/remotecfg /etc/amremote/wetek.conf
|
||||
|
@ -313,7 +313,7 @@
|
||||
$MOUNT_CMD "$MOUNT_TARGET" "$2" "$3" "$4"
|
||||
}
|
||||
|
||||
update() {
|
||||
update_file() {
|
||||
if [ -f "$UPDATE_DIR/$2" -a -f "$3" ]; then
|
||||
echo "updating $1..."
|
||||
mount -o remount,rw /flash
|
||||
@ -326,6 +326,13 @@
|
||||
fi
|
||||
}
|
||||
|
||||
update_partition() {
|
||||
if [ -f "$UPDATE_DIR/$2" -a -b "$3" ]; then
|
||||
echo "updating $1..."
|
||||
dd if="$UPDATE_DIR/$2" of="$3"
|
||||
fi
|
||||
}
|
||||
|
||||
update_bootloader() {
|
||||
export BOOT_ROOT="/flash"
|
||||
export SYSTEM_ROOT="/sysroot"
|
||||
@ -574,7 +581,12 @@
|
||||
# get sizes
|
||||
FLASH_FREE=$(df /flash/ | awk '/[0-9]%/{print $4}')
|
||||
FLASH_FREE=$(( $FLASH_FREE * 1024 ))
|
||||
OLD_KERNEL=$(stat -t "/flash/$IMAGE_KERNEL" | awk '{print $2}')
|
||||
|
||||
OLD_KERNEL="0"
|
||||
if [ ! -b $IMAGE_KERNEL ]; then
|
||||
OLD_KERNEL=$(stat -t "/flash/$IMAGE_KERNEL" | awk '{print $2}')
|
||||
fi
|
||||
|
||||
OLD_SYSTEM=$(stat -t "/flash/$IMAGE_SYSTEM" | awk '{print $2}')
|
||||
NEW_KERNEL=$(stat -t "$UPDATE_DIR/$UPDATE_KERNEL" | awk '{print $2}')
|
||||
NEW_SYSTEM=$(stat -t "$UPDATE_DIR/$UPDATE_SYSTEM" | awk '{print $2}')
|
||||
@ -596,8 +608,12 @@
|
||||
if [ "$SIZE_FAILED" -eq "0" ] ; then
|
||||
# update if md5 check is ok or .nocheck exists
|
||||
if [ "$MD5_FAILED" -eq "0" -o "$MD5_NOCHECK" -eq "1" ] ; then
|
||||
update "Kernel" "$UPDATE_KERNEL" "/flash/$IMAGE_KERNEL"
|
||||
update "System" "$UPDATE_SYSTEM" "/flash/$IMAGE_SYSTEM"
|
||||
if [ -b $IMAGE_KERNEL ]; then
|
||||
update_partition "Kernel" "$UPDATE_KERNEL" "$IMAGE_KERNEL"
|
||||
else
|
||||
update_file "Kernel" "$UPDATE_KERNEL" "/flash/$IMAGE_KERNEL"
|
||||
fi
|
||||
update_file "System" "$UPDATE_SYSTEM" "/flash/$IMAGE_SYSTEM"
|
||||
update_bootloader
|
||||
rm -rf $UPDATE_DIR/[0-9a-zA-Z]* &>/dev/null
|
||||
do_reboot
|
||||
|
38
packages/tools/mkbootimg/package.mk
Normal file
38
packages/tools/mkbootimg/package.mk
Normal file
@ -0,0 +1,38 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="mkbootimg"
|
||||
PKG_VERSION="6668fc2"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://android.googlesource.com/platform/system/core/+/master/mkbootimg/"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_HOST=""
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="tools"
|
||||
PKG_SHORTDESC="mkbootimg: Creates kernel boot images for Android"
|
||||
PKG_LONGDESC="mkbootimg: Creates kernel boot images for Android"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
makeinstall_host() {
|
||||
mkdir -p $SYSROOT_PREFIX/usr/include
|
||||
cp mkbootimg $ROOT/$TOOLCHAIN/bin/
|
||||
}
|
40
projects/WeTek_Core/filesystem/etc/amremote/remote.conf
Normal file
40
projects/WeTek_Core/filesystem/etc/amremote/remote.conf
Normal file
@ -0,0 +1,40 @@
|
||||
#*********************************************************************************************************
|
||||
#this file is configuration for each factory remote device
|
||||
# work_mode 0 :software mode 1 :hardware mode
|
||||
# repeat_enable 0 :disable repeat 1 :enable repeat
|
||||
#
|
||||
# factory_code each device has it's unique factory code.
|
||||
# pattern:custom_code(16bit)+index_code(16bit)
|
||||
# examble: 0xff000001 = 0xff00(custom cod) 0001 (index)
|
||||
#
|
||||
# release_delay unit:ms.release will report from kernel to user layer after this period of time
|
||||
# from press or repeat triggered.
|
||||
#
|
||||
# debug_enable 0 :debug disable 1 :debug disable
|
||||
#
|
||||
# SW MODE:
|
||||
# bit_count how many bits in each frame
|
||||
# tw_leader_act time window for leader active
|
||||
# tw_bit0 time window for bit0 time.
|
||||
# tw_bit1 time window for bit1 time
|
||||
# tw_repeat_leader time window for repeat leader
|
||||
# REG
|
||||
# reg_base_gen set value for PREG_IR_DEC_BASE_GEN
|
||||
# reg_control set value for PREG_IR_DEC_CONTROL
|
||||
# reg_leader_act set value for PREG_IR_DEC_LEADER_ACTIVE
|
||||
# reg_leader_idle set value for PREG_IR_DEC_LEADER_IDLE
|
||||
# reg_repeat_leader set value for PREG_IR_DEC_REPEAT_IDLE
|
||||
# reg_bit0_time set value for PREG_IR_DEC_BIT0_TIME
|
||||
#*************************************************************************************************************
|
||||
#Amlogic NEC remote
|
||||
factory_code = 0xbc430001
|
||||
work_mode = 0
|
||||
repeat_enable = 1
|
||||
repeat_delay = 40
|
||||
repeat_peroid = 39
|
||||
release_delay = 121
|
||||
debug_enable = 1
|
||||
|
||||
key_begin
|
||||
0xca 116 ;POWER
|
||||
key_end
|
11
projects/WeTek_Core/filesystem/etc/asound.conf
Normal file
11
projects/WeTek_Core/filesystem/etc/asound.conf
Normal file
@ -0,0 +1,11 @@
|
||||
pcm.!default {
|
||||
type hw
|
||||
card 0
|
||||
device 1
|
||||
format S16_LE
|
||||
}
|
||||
|
||||
ctl.!default {
|
||||
type hw
|
||||
card 0
|
||||
}
|
@ -0,0 +1,82 @@
|
||||
#AP6330_NVRAM_V1.0_20121130
|
||||
#Sample variables file for BCM94330 SD FC AGB board
|
||||
manfid=0x2d0
|
||||
prodid=0x0547
|
||||
vendid=0x14e4
|
||||
devid=0x4360
|
||||
boardtype=0x05e1
|
||||
boardrev=0x1202
|
||||
boardflags=0x0080200
|
||||
nocrc=1
|
||||
xtalfreq=26000
|
||||
boardnum=22
|
||||
macaddr=00:90:4c:c5:12:38
|
||||
ag0=254
|
||||
aa2g=1
|
||||
ccode=ALL
|
||||
pa0itssit=0x20
|
||||
pa0b0=5587
|
||||
pa0b1=-633
|
||||
pa0b2=-158
|
||||
rssismf2g=0xa
|
||||
rssismc2g=0x3
|
||||
rssisav2g=0x7
|
||||
#rssi params for 5GHz
|
||||
rssismf5g=0x4
|
||||
rssismc5g=0x3
|
||||
rssisav5g=0x7
|
||||
#PA parameters for lower a-band
|
||||
pa1lob0=4748
|
||||
pa1lob1=-566
|
||||
pa1lob2=-180
|
||||
#PA parameters for midband
|
||||
pa1b0=4762
|
||||
pa1b1=-593
|
||||
pa1b2=-172
|
||||
#PA parameters for high band
|
||||
#pa1hib0=4596
|
||||
pa1hib0=4666
|
||||
pa1hib1=-619
|
||||
pa1hib2=-163
|
||||
rxpo5g=0
|
||||
maxp2ga0=74
|
||||
maxp5ga0=66
|
||||
maxp5gla0=66
|
||||
maxp5gha0=66
|
||||
# 2.4G Tx Power offsets
|
||||
cck2gpo=0x2222
|
||||
ofdm2gpo=0x44444444
|
||||
mcs2gpo0=0x6666
|
||||
mcs2gpo1=0x6666
|
||||
# 5G Tx Power offsets
|
||||
ofdm5gpo=0x44444444
|
||||
ofdm5glpo=0x44444444
|
||||
ofdm5ghpo=0x44444444
|
||||
mcs5gpo0=0x6666
|
||||
mcs5gpo1=0x6666
|
||||
mcs5glpo0=0x6666
|
||||
mcs5glpo1=0x6666
|
||||
mcs5ghpo0=0x6666
|
||||
mcs5ghpo1=0x6666
|
||||
sromrev=3
|
||||
il0macaddr=00:90:4c:c5:12:38
|
||||
wl0id=0x431b
|
||||
cckPwrOffset=4
|
||||
swctrlmap_2g=0x44844484,0x42824282,0x40804484,0x18282,0x1ff
|
||||
triso5g=0
|
||||
swctrlmap_5g=0x00100010,0x20202020,0x20202020,0x14202,0x0f0
|
||||
rfreg033=0x19
|
||||
rfreg033_cck=0x1f
|
||||
dacrate2g=160
|
||||
dacrate5g=160
|
||||
txalpfbyp2g=1
|
||||
bphyscale=17
|
||||
cckPwrIdxCorr=-15
|
||||
pacalidx2g=50
|
||||
#pacalidx5g=20
|
||||
noise_cal_ref_2g=53
|
||||
noise_cal_po_2g=0
|
||||
noise_cal_ref_5g=52
|
||||
noise_cal_po_5g=5,0,0
|
||||
# 4330 OOB parameter: High level trigger
|
||||
muxenab=0x10
|
BIN
projects/WeTek_Core/filesystem/lib/firmware/brcm/bcm40183b2.hcd
Normal file
BIN
projects/WeTek_Core/filesystem/lib/firmware/brcm/bcm40183b2.hcd
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
||||
mali
|
@ -0,0 +1 @@
|
||||
dhd
|
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<keymap>
|
||||
<global>
|
||||
<keyboard>
|
||||
<f7>ContextMenu</f7>
|
||||
<f1>AspectRatio</f1>
|
||||
<home>XBMC.ActivateWindow(Home)</home>
|
||||
<f2>ActivateWindowAndFocus(MyPVR, 31,0, 10,0)</f2>
|
||||
<f6>FullScreen</f6>
|
||||
<key id="61952">Screenshot</key> <!-- KEY_RECORD -->
|
||||
</keyboard>
|
||||
</global>
|
||||
</keymap>
|
77
projects/WeTek_Core/initramfs/platform_init
Executable file
77
projects/WeTek_Core/initramfs/platform_init
Executable file
@ -0,0 +1,77 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
hdmimode=720p
|
||||
|
||||
# Parse command line arguments
|
||||
for arg in $(cat /proc/cmdline); do
|
||||
case $arg in
|
||||
hdmimode=*)
|
||||
hdmimode="${arg#*=}"
|
||||
;;
|
||||
scaling_governor=*)
|
||||
scaling_governor="${arg#*=}"
|
||||
;;
|
||||
scaling_min_freq=*)
|
||||
scaling_min_freq="${arg#*=}"
|
||||
;;
|
||||
scaling_max_freq=*)
|
||||
scaling_max_freq="${arg#*=}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo "$hdmimode" > /sys/class/display/mode
|
||||
|
||||
# Enable first framebuffer
|
||||
echo 0 > /sys/class/graphics/fb0/blank
|
||||
|
||||
# Disable second framebuffer
|
||||
echo 1 > /sys/class/graphics/fb1/blank
|
||||
|
||||
# Disable framebuffer scaling
|
||||
echo 0 > /sys/class/graphics/fb0/free_scale
|
||||
|
||||
# Set framebuffer geometry to match the resolution
|
||||
case "$hdmimode" in
|
||||
720*)
|
||||
fbset -fb /dev/fb0 -g 1280 720 1920 2160 32
|
||||
;;
|
||||
1080*)
|
||||
fbset -fb /dev/fb0 -g 1920 1080 1920 2160 32
|
||||
;;
|
||||
esac
|
||||
|
||||
# Include deinterlacer into default VFM map
|
||||
echo rm default > /sys/class/vfm/map
|
||||
echo add default decoder ppmgr deinterlace amvideo > /sys/class/vfm/map
|
||||
|
||||
# Boot with performance governor, then switch to the governor specified in the kernel command line
|
||||
# Assume SMP uses shared cpufreq policy for all CPUs
|
||||
cpufreq="/sys/devices/system/cpu/cpu0/cpufreq"
|
||||
if [ -n "$scaling_governor" ]; then
|
||||
echo "$scaling_governor" > "$cpufreq/scaling_governor"
|
||||
fi
|
||||
if [ -n "$scaling_min_freq" ]; then
|
||||
echo "$scaling_min_freq" > "$cpufreq/scaling_min_freq"
|
||||
fi
|
||||
if [ -n "$scaling_max_freq" ]; then
|
||||
echo "$scaling_max_freq" > "$cpufreq/scaling_max_freq"
|
||||
echo "$scaling_max_freq" > "$cpufreq/scaling_dflt_freq"
|
||||
fi
|
BIN
projects/WeTek_Core/install/files/bootloader.img
Normal file
BIN
projects/WeTek_Core/install/files/bootloader.img
Normal file
Binary file not shown.
BIN
projects/WeTek_Core/install/files/logo.img
Normal file
BIN
projects/WeTek_Core/install/files/logo.img
Normal file
Binary file not shown.
BIN
projects/WeTek_Core/install/files/recovery.img
Normal file
BIN
projects/WeTek_Core/install/files/recovery.img
Normal file
Binary file not shown.
BIN
projects/WeTek_Core/install/update-binary
Normal file
BIN
projects/WeTek_Core/install/update-binary
Normal file
Binary file not shown.
36
projects/WeTek_Core/install/updater-script
Normal file
36
projects/WeTek_Core/install/updater-script
Normal file
@ -0,0 +1,36 @@
|
||||
show_progress(0.500000, 3);
|
||||
set_bootloader_env("upgrade_step", "3");
|
||||
|
||||
ui_print("Wiping Userdata");
|
||||
format("ext4", "EMMC", "/dev/block/data", "0", "/data");
|
||||
|
||||
ui_print("Writing kernel image");
|
||||
assert(package_extract_file("KERNEL", "/tmp/boot.img"),
|
||||
write_raw_image("/tmp/boot.img", "boot"),
|
||||
delete("/tmp/boot.img"));
|
||||
|
||||
show_progress(0.020000, 0);
|
||||
|
||||
ui_print("Wiping System");
|
||||
format("ext4", "EMMC", "/dev/block/system", "0", "/system");
|
||||
mount("ext4", "EMMC", "/dev/block/system", "/system");
|
||||
ui_print("Writing system files");
|
||||
package_extract_dir("system", "/system");
|
||||
unmount("/system");
|
||||
|
||||
show_progress(0.300000, 60);
|
||||
|
||||
ui_print("Writing recovery");
|
||||
write_raw_image(package_extract_file("recovery.img"), "recovery");
|
||||
|
||||
show_progress(0.018000, 0);
|
||||
|
||||
ui_print("Writing bootloader");
|
||||
write_raw_image(package_extract_file("bootloader.img"), "bootloader");
|
||||
|
||||
ui_print("Writing logo");
|
||||
write_raw_image(package_extract_file("logo.img"), "logo");
|
||||
|
||||
set_bootloader_env("upgrade_step", "1");
|
||||
show_progress(0.100000, 0);
|
||||
ui_print("OpenELEC Installed Successfully");
|
17
projects/WeTek_Core/kodi/advancedsettings.xml
Normal file
17
projects/WeTek_Core/kodi/advancedsettings.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<advancedsettings>
|
||||
<showexitbutton>false</showexitbutton>
|
||||
|
||||
<samba>
|
||||
<clienttimeout>30</clienttimeout>
|
||||
</samba>
|
||||
|
||||
<network>
|
||||
<readbufferfactor>4.0</readbufferfactor>
|
||||
</network>
|
||||
|
||||
<pvr>
|
||||
<minvideocachelevel>5</minvideocachelevel>
|
||||
<minaudiocachelevel>20</minaudiocachelevel>
|
||||
</pvr>
|
||||
</advancedsettings>
|
3803
projects/WeTek_Core/linux/linux.arm.conf
Normal file
3803
projects/WeTek_Core/linux/linux.arm.conf
Normal file
File diff suppressed because it is too large
Load Diff
175
projects/WeTek_Core/options
Normal file
175
projects/WeTek_Core/options
Normal file
@ -0,0 +1,175 @@
|
||||
################################################################################
|
||||
# setup system defaults
|
||||
################################################################################
|
||||
|
||||
# The TARGET_CPU variable controls which processor should be targeted for
|
||||
# generated code.
|
||||
case $TARGET_ARCH in
|
||||
arm)
|
||||
# TARGET_CPU:
|
||||
# arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm7m arm7d
|
||||
# arm7dm arm7di arm7dmi arm70 arm700 arm700i arm710 arm710c
|
||||
# arm7100 arm720 arm7500 arm7500fe arm7tdmi arm7tdmi-s arm710t
|
||||
# arm720t arm740t strongarm strongarm110 strongarm1100
|
||||
# strongarm1110 arm8 arm810 arm9 arm9e arm920 arm920t arm922t
|
||||
# arm946e-s arm966e-s arm968e-s arm926ej-s arm940t arm9tdmi
|
||||
# arm10tdmi arm1020t arm1026ej-s arm10e arm1020e arm1022e
|
||||
# arm1136j-s arm1136jf-s mpcore mpcorenovfp arm1156t2-s
|
||||
# arm1176jz-s arm1176jzf-s cortex-a8 cortex-a9 cortex-r4
|
||||
# cortex-r4f cortex-m3 cortex-m1 xscale iwmmxt iwmmxt2 ep9312.
|
||||
#
|
||||
TARGET_CPU="cortex-a9"
|
||||
|
||||
# TARGET_FLOAT:
|
||||
# Specifies which floating-point ABI to use. Permissible values are:
|
||||
# soft softfp hard
|
||||
TARGET_FLOAT="hard"
|
||||
|
||||
# TARGET_FPU:
|
||||
# This specifies what floating point hardware (or hardware emulation) is
|
||||
# available on the target. Permissible names are:
|
||||
# fpa fpe2 fpe3 maverick vfp vfpv3 vfpv3-fp16 vfpv3-d16 vfpv3-d16-fp16
|
||||
# vfpv3xd vfpv3xd-fp16 neon neon-fp16 vfpv4 vfpv4-d16 fpv4-sp-d16
|
||||
# neon-vfpv4.
|
||||
TARGET_FPU="neon-fp16"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Bootloader to use (syslinux / u-boot / atv-bootloader / bcm2835-bootloader)
|
||||
BOOTLOADER="u-boot"
|
||||
|
||||
# u-boot version to use (default)
|
||||
UBOOT_VERSION=""
|
||||
|
||||
# Configuration for u-boot
|
||||
UBOOT_CONFIG=""
|
||||
|
||||
# Target Configfile for u-boot
|
||||
UBOOT_CONFIGFILE=""
|
||||
|
||||
# Kernel target for u-boot (default 'uImage' if BOOTLOADER=u-boot) (uImage / zImage)
|
||||
KERNEL_UBOOT_TARGET="uImage-dtb"
|
||||
|
||||
# Kernel extra targets to build
|
||||
KERNEL_UBOOT_EXTRA_TARGET="meson8m2_wetek_core.dtd meson8m2_wetek_core.dtb"
|
||||
|
||||
# Build Android kernel image using mkbootimg
|
||||
BUILD_ANDROID_BOOTIMG="yes"
|
||||
|
||||
# Path to a file that will be passed as the --second parameter to Android mkbootimg
|
||||
ANDROID_BOOTIMG_SECOND="arch/arm/boot/dts/amlogic/meson8m2_wetek_core.dtb"
|
||||
|
||||
# Additional kernel make parameters (for example to specify the u-boot loadaddress)
|
||||
KERNEL_MAKE_EXTRACMD=""
|
||||
|
||||
# Kernel to use. values can be:
|
||||
# default: default mainline kernel
|
||||
LINUX="amlogic"
|
||||
|
||||
|
||||
################################################################################
|
||||
# setup build defaults
|
||||
################################################################################
|
||||
|
||||
# Build optimizations (size/normal)
|
||||
OPTIMIZATIONS="size"
|
||||
|
||||
# Project CFLAGS
|
||||
PROJECT_CFLAGS=""
|
||||
|
||||
# LTO (Link Time Optimization) support
|
||||
LTO_SUPPORT="yes"
|
||||
|
||||
# GOLD (Google Linker) support
|
||||
GOLD_SUPPORT="yes"
|
||||
|
||||
# SquashFS compression method (gzip / lzo / xz)
|
||||
SQUASHFS_COMPRESSION="lzo"
|
||||
|
||||
################################################################################
|
||||
# setup project defaults
|
||||
################################################################################
|
||||
|
||||
# build and install ALSA Audio support (yes / no)
|
||||
ALSA_SUPPORT="yes"
|
||||
|
||||
# OpenGL(X) implementation to use (no / Mesa)
|
||||
OPENGL="no"
|
||||
|
||||
# OpenGL-ES implementation to use (no / bcm2835-driver / gpu-viv-bin-mx6q / opengl-meson6)
|
||||
OPENGLES="opengl-meson8"
|
||||
|
||||
# include uvesafb support (yes / no)
|
||||
UVESAFB_SUPPORT="no"
|
||||
|
||||
# Displayserver to use (x11 / no)
|
||||
DISPLAYSERVER="no"
|
||||
|
||||
# Windowmanager to use (ratpoison / fluxbox / none)
|
||||
WINDOWMANAGER="none"
|
||||
|
||||
# Xorg Graphic drivers to use (all / i915,i965,r200,r300,r600,nvidia,nouveau)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="i915 i965 r300 r600 radeonsi nvidia nouveau"
|
||||
GRAPHIC_DRIVERS=""
|
||||
|
||||
# KODI Player implementation to use (default / bcm2835-driver / libfslvpuwrap / libamcodec)
|
||||
KODIPLAYER_DRIVER="libamcodec"
|
||||
|
||||
# Modules to install in initramfs for early boot
|
||||
INITRAMFS_MODULES=""
|
||||
|
||||
# additional drivers to install:
|
||||
# for a list of additinoal drivers see packages/linux-drivers
|
||||
# Space separated list is supported,
|
||||
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
|
||||
ADDITIONAL_DRIVERS="RTL8192CU RTL8192DU RTL8188EU"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware dvb-firmware brcmfmac_sdio-firmware-aml"
|
||||
|
||||
# build and install ATV IR remote support (yes / no)
|
||||
ATVCLIENT_SUPPORT="no"
|
||||
|
||||
# build and install IRServer IR/LCD support (yes / no)
|
||||
IRSERVER_SUPPORT="no"
|
||||
|
||||
# Amlogic IR remote support (yes / no)
|
||||
AMREMOTE_SUPPORT="yes"
|
||||
|
||||
# build with swap support (yes / no)
|
||||
SWAP_SUPPORT="no"
|
||||
|
||||
# swap support enabled per default (yes / no)
|
||||
SWAP_ENABLED_DEFAULT="no"
|
||||
|
||||
# swapfile size if SWAP_SUPPORT=yes in MB
|
||||
SWAPFILESIZE="128"
|
||||
|
||||
# build with installer (yes / no)
|
||||
INSTALLER_SUPPORT="no"
|
||||
|
||||
# build and install 'RSXS' Screensaver (yes / no)
|
||||
KODI_SCR_RSXS="no"
|
||||
|
||||
# build and install 'ProjectM' Visualization (yes / no)
|
||||
KODI_VIS_PROJECTM="no"
|
||||
|
||||
# build and install 'GOOM' Visualization (yes / no)
|
||||
KODI_VIS_GOOM="no"
|
||||
|
||||
# build and install 'FishBMC' Visualization (yes / no)
|
||||
KODI_VIS_FISHBMC="no"
|
||||
|
||||
# extra build dependeices
|
||||
EXTRA_DEPS="mkimage"
|
||||
EXTRA_DEPS_PKG="u-boot-tools"
|
||||
|
||||
# kernel image name
|
||||
KERNEL_NAME="kernel.img"
|
||||
|
||||
# set the addon dirs
|
||||
ADDON_PATH="$ADDON_VERSION/WeTek_Play/$TARGET_ARCH"
|
||||
ADDON_URL="$ADDON_SERVER_URL/$ADDON_PATH"
|
@ -0,0 +1,29 @@
|
||||
From 2cb772cdb3f42bed6932570d38c6881de73e58d2 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Sat, 20 Sep 2014 04:43:52 +0300
|
||||
Subject: [PATCH 1/6] [aml] Fill audio packets completely when resampling to
|
||||
prevent 'audio data unaligned' kernel warnings
|
||||
|
||||
---
|
||||
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
index 1e38b4e..4bcd331 100644
|
||||
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
@@ -144,7 +144,11 @@ CActiveAEBufferPoolResample::CActiveAEBufferPoolResample(AEAudioFormat inputForm
|
||||
if (AE_IS_RAW(m_inputFormat.m_dataFormat))
|
||||
m_inputFormat.m_dataFormat = AE_FMT_S16NE;
|
||||
m_resampler = NULL;
|
||||
+#ifdef HAS_LIBAMCODEC
|
||||
+ m_fillPackets = true;
|
||||
+#else
|
||||
m_fillPackets = false;
|
||||
+#endif
|
||||
m_drain = false;
|
||||
m_empty = true;
|
||||
m_procSample = NULL;
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 5ccfb2e9498a30641104ff3c2c393e62a173017c Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Tue, 30 Jun 2015 11:19:57 +0200
|
||||
Subject: [PATCH 2/6] [aml] Ugly workaround to show DTS/AC3 caps but don't run
|
||||
into multi channel issues as we can only open 2 pcm
|
||||
channels
|
||||
|
||||
---
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
index e22db7a..dcdaf2e 100644
|
||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
@@ -1291,6 +1291,12 @@ void CAESinkALSA::EnumerateDevicesEx(AEDeviceInfoList &list, bool force)
|
||||
|
||||
AEDeviceType CAESinkALSA::AEDeviceTypeFromName(const std::string &name)
|
||||
{
|
||||
+#ifdef HAS_LIBAMCODEC
|
||||
+ // ugly workaround to show DTS / AC3 caps
|
||||
+ // but don't run into multi channel issues
|
||||
+ // as we can only open 2 pcm channels
|
||||
+ return AE_DEVTYPE_IEC958;
|
||||
+#endif
|
||||
if (name.substr(0, 4) == "hdmi")
|
||||
return AE_DEVTYPE_HDMI;
|
||||
else if (name.substr(0, 6) == "iec958" || name.substr(0, 5) == "spdif")
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -0,0 +1,219 @@
|
||||
From 836bee21cad8c5259f24972fc2b55f93dc712486 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Wed, 1 Jul 2015 23:37:11 +0200
|
||||
Subject: [PATCH 3/6] [aml] Add support for 4k resolutions
|
||||
|
||||
Conflicts:
|
||||
xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
---
|
||||
xbmc/utils/AMLUtils.cpp | 16 +++---
|
||||
xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp | 81 +++++++++++++++++++++------
|
||||
xbmc/windowing/egl/EGLNativeTypeAmlogic.h | 2 +
|
||||
3 files changed, 73 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/xbmc/utils/AMLUtils.cpp b/xbmc/utils/AMLUtils.cpp
|
||||
index 1b54435..05f2cd0 100644
|
||||
--- a/xbmc/utils/AMLUtils.cpp
|
||||
+++ b/xbmc/utils/AMLUtils.cpp
|
||||
@@ -449,8 +449,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2ksmpte") || StringUtils::EqualsNoCase(fromMode, "smpte24hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 4096;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 4096;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 24;
|
||||
@@ -467,8 +467,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k24hz") || StringUtils::EqualsNoCase(fromMode, "2160p24hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 24;
|
||||
@@ -476,8 +476,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k25hz") || StringUtils::EqualsNoCase(fromMode, "2160p25hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 25;
|
||||
@@ -494,8 +494,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k30hz") || StringUtils::EqualsNoCase(fromMode, "2160p30hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 30;
|
||||
diff --git a/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp b/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
index 21256ef..2103f0b 100644
|
||||
--- a/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
+++ b/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
@@ -65,7 +65,22 @@ void CEGLNativeTypeAmlogic::Initialize()
|
||||
{
|
||||
aml_permissions();
|
||||
DisableFreeScale();
|
||||
+ GetMaxResolution(m_maxResolution);
|
||||
}
|
||||
+
|
||||
+void CEGLNativeTypeAmlogic::GetMaxResolution(RESOLUTION_INFO &maxResolution)
|
||||
+{
|
||||
+ std::vector<RESOLUTION_INFO> resolutions;
|
||||
+ ProbeResolutions(resolutions);
|
||||
+
|
||||
+ maxResolution = {0};
|
||||
+ for (size_t i = 0; i < resolutions.size(); i++)
|
||||
+ {
|
||||
+ if (resolutions[i].iScreenWidth > maxResolution.iScreenWidth || resolutions[i].iScreenHeight > maxResolution.iScreenHeight)
|
||||
+ maxResolution = resolutions[i];
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
void CEGLNativeTypeAmlogic::Destroy()
|
||||
{
|
||||
return;
|
||||
@@ -84,8 +99,8 @@ bool CEGLNativeTypeAmlogic::CreateNativeWindow()
|
||||
if (!nativeWindow)
|
||||
return false;
|
||||
|
||||
- nativeWindow->width = 1920;
|
||||
- nativeWindow->height = 1080;
|
||||
+ nativeWindow->width = m_maxResolution.iScreenWidth;
|
||||
+ nativeWindow->height = m_maxResolution.iScreenHeight;
|
||||
m_nativeWindow = nativeWindow;
|
||||
|
||||
SetFramebufferResolution(nativeWindow->width, nativeWindow->height);
|
||||
@@ -142,48 +157,78 @@ bool CEGLNativeTypeAmlogic::SetNativeResolution(const RESOLUTION_INFO &res)
|
||||
}
|
||||
#endif
|
||||
|
||||
- switch((int)(0.5 + res.fRefreshRate))
|
||||
+ switch((int)(res.fRefreshRate*10))
|
||||
{
|
||||
default:
|
||||
- case 60:
|
||||
+ case 600:
|
||||
switch(res.iScreenWidth)
|
||||
{
|
||||
default:
|
||||
case 1280:
|
||||
- SetDisplayResolution("720p");
|
||||
+ return SetDisplayResolution("720p");
|
||||
break;
|
||||
case 1920:
|
||||
if (res.dwFlags & D3DPRESENTFLAG_INTERLACED)
|
||||
- SetDisplayResolution("1080i");
|
||||
+ return SetDisplayResolution("1080i");
|
||||
else
|
||||
- SetDisplayResolution("1080p");
|
||||
+ return SetDisplayResolution("1080p");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
- case 50:
|
||||
+ case 500:
|
||||
switch(res.iScreenWidth)
|
||||
{
|
||||
default:
|
||||
case 1280:
|
||||
- SetDisplayResolution("720p50hz");
|
||||
+ return SetDisplayResolution("720p50hz");
|
||||
break;
|
||||
case 1920:
|
||||
if (res.dwFlags & D3DPRESENTFLAG_INTERLACED)
|
||||
- SetDisplayResolution("1080i50hz");
|
||||
+ return SetDisplayResolution("1080i50hz");
|
||||
else
|
||||
- SetDisplayResolution("1080p50hz");
|
||||
+ return SetDisplayResolution("1080p50hz");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
- case 30:
|
||||
- SetDisplayResolution("1080p30hz");
|
||||
+ case 300:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k30hz");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p30hz");
|
||||
+ break;
|
||||
+ }
|
||||
break;
|
||||
- case 24:
|
||||
- SetDisplayResolution("1080p24hz");
|
||||
+ case 250:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k25hz");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p25hz");
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 240:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k24hz");
|
||||
+ break;
|
||||
+ case 4096:
|
||||
+ return SetDisplayResolution("4k2ksmpte");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p24hz");
|
||||
+ break;
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
|
||||
- return true;
|
||||
+ return false;
|
||||
}
|
||||
|
||||
bool CEGLNativeTypeAmlogic::ProbeResolutions(std::vector<RESOLUTION_INFO> &resolutions)
|
||||
@@ -280,8 +325,8 @@ void CEGLNativeTypeAmlogic::SetFramebufferResolution(int width, int height) cons
|
||||
{
|
||||
vinfo.xres = width;
|
||||
vinfo.yres = height;
|
||||
- vinfo.xres_virtual = 1920;
|
||||
- vinfo.yres_virtual = 2160;
|
||||
+ vinfo.xres_virtual = m_maxResolution.iScreenWidth;
|
||||
+ vinfo.yres_virtual = m_maxResolution.iScreenHeight * 2;
|
||||
vinfo.bits_per_pixel = 32;
|
||||
vinfo.activate = FB_ACTIVATE_ALL;
|
||||
ioctl(fd0, FBIOPUT_VSCREENINFO, &vinfo);
|
||||
diff --git a/xbmc/windowing/egl/EGLNativeTypeAmlogic.h b/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
index 6867c38..9ca41d4 100644
|
||||
--- a/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
+++ b/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
@@ -55,6 +55,8 @@ protected:
|
||||
private:
|
||||
void SetFramebufferResolution(const RESOLUTION_INFO &res) const;
|
||||
void SetFramebufferResolution(int width, int height) const;
|
||||
+ void GetMaxResolution(RESOLUTION_INFO &maxResolution);
|
||||
|
||||
std::string m_framebuffer_name;
|
||||
+ RESOLUTION_INFO m_maxResolution;
|
||||
};
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -0,0 +1,33 @@
|
||||
From 993592beebd6502a192eace6f52d0d45bfd10e6d Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Fri, 11 Dec 2015 23:44:42 +0100
|
||||
Subject: [PATCH 4/6] [keyboard] Make Escape key execute back action
|
||||
|
||||
---
|
||||
system/keymaps/keyboard.xml | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/system/keymaps/keyboard.xml b/system/keymaps/keyboard.xml
|
||||
index f420c48..160abf1 100644
|
||||
--- a/system/keymaps/keyboard.xml
|
||||
+++ b/system/keymaps/keyboard.xml
|
||||
@@ -68,7 +68,7 @@
|
||||
<m>Menu</m>
|
||||
<m mod="ctrl">ActivateWindow(PlayerControls)</m>
|
||||
<s>ActivateWindow(shutdownmenu)</s>
|
||||
- <escape>PreviousMenu</escape>
|
||||
+ <escape>Back</escape>
|
||||
<i>Info</i>
|
||||
<menu>ContextMenu</menu>
|
||||
<menu mod="longpress">Menu</menu>
|
||||
@@ -209,6 +209,7 @@
|
||||
<backspace>Backspace</backspace>
|
||||
<browser_back>Backspace</browser_back>
|
||||
<browser_back mod="longpress">PreviousMenu</browser_back>
|
||||
+ <escape>PreviousMenu</escape>
|
||||
</keyboard>
|
||||
</VirtualKeyboard>
|
||||
<MyTVChannels>
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 4570b6dfdd6e9dfe67f3f2b1103a3bc4b4a7f9cf Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Sat, 12 Dec 2015 02:15:15 +0100
|
||||
Subject: [PATCH 5/6] [aml] Fix compiler badness when compiling with amcodec
|
||||
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
index 56ec6a3..52fa07e 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
@@ -26,8 +26,6 @@ endif
|
||||
ifeq (@USE_LIBAMCODEC@,1)
|
||||
SRCS += AMLCodec.cpp
|
||||
SRCS += DVDVideoCodecAmlogic.cpp
|
||||
-INCLUDES += -I$(prefix)/include/amcodec
|
||||
-INCLUDES += -I$(prefix)/include/amplayer
|
||||
endif
|
||||
|
||||
ifeq (@USE_ANDROID@,1)
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -0,0 +1,34 @@
|
||||
From ef479f5e7a41ef5b79c676950770fe1973fd38a9 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Tue, 14 Jul 2015 16:02:35 +0300
|
||||
Subject: [PATCH 6/6] [powermanagement] Perform suspend instead of powerdown
|
||||
|
||||
---
|
||||
xbmc/powermanagement/linux/LogindUPowerSyscall.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp b/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
index 4e5bcc6..ad5847d 100644
|
||||
--- a/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
+++ b/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
@@ -53,7 +53,7 @@ CLogindUPowerSyscall::CLogindUPowerSyscall()
|
||||
m_canPowerdown = LogindCheckCapability("CanPowerOff");
|
||||
m_canReboot = LogindCheckCapability("CanReboot");
|
||||
m_canHibernate = LogindCheckCapability("CanHibernate");
|
||||
- m_canSuspend = LogindCheckCapability("CanSuspend");
|
||||
+ m_canSuspend = false;
|
||||
|
||||
InhibitDelayLock();
|
||||
|
||||
@@ -98,7 +98,7 @@ CLogindUPowerSyscall::~CLogindUPowerSyscall()
|
||||
|
||||
bool CLogindUPowerSyscall::Powerdown()
|
||||
{
|
||||
- return LogindSetPowerState("PowerOff");
|
||||
+ return Suspend();
|
||||
}
|
||||
|
||||
bool CLogindUPowerSyscall::Reboot()
|
||||
--
|
||||
1.7.10.4
|
||||
|
106
projects/WeTek_Core/patches/linux/020-enable_bluetooth.patch
Normal file
106
projects/WeTek_Core/patches/linux/020-enable_bluetooth.patch
Normal file
@ -0,0 +1,106 @@
|
||||
diff -Naur a/drivers/amlogic/wifi/wifi_dt.c b/drivers/amlogic/wifi/wifi_dt.c
|
||||
--- a/drivers/amlogic/wifi/wifi_dt.c 2015-02-14 20:42:24.000000000 +0100
|
||||
+++ b/drivers/amlogic/wifi/wifi_dt.c 2015-05-31 18:50:01.000000000 +0200
|
||||
@@ -162,11 +162,51 @@
|
||||
.of_match_table = wifi_match
|
||||
},
|
||||
};
|
||||
+//#ifdef CONFIG_ARCH_MESON6
|
||||
+struct pinctrl *bt_pinctrl = NULL;
|
||||
|
||||
+static int bt_probe(struct platform_device *pdev)
|
||||
+{
|
||||
+#ifdef CONFIG_OF
|
||||
+ if (pdev->dev.of_node) {
|
||||
+ bt_pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
|
||||
+ }
|
||||
+#endif
|
||||
+ return 0;
|
||||
+}
|
||||
+static int bt_remove(struct platform_device *pdev)
|
||||
+{
|
||||
+ if (bt_pinctrl)
|
||||
+ devm_pinctrl_put(bt_pinctrl);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+#ifdef CONFIG_OF
|
||||
+static const struct of_device_id bt_dev_dt_match[]={
|
||||
+ { .compatible = "amlogic,bt-dev",
|
||||
+ },
|
||||
+ {},
|
||||
+};
|
||||
+#else
|
||||
+#define bt_dev_dt_match NULL
|
||||
+#endif
|
||||
+
|
||||
+static struct platform_driver bt_driver = {
|
||||
+ .driver = {
|
||||
+ .name = "bt-dev",
|
||||
+ .of_match_table = bt_dev_dt_match,
|
||||
+ },
|
||||
+ .probe = bt_probe,
|
||||
+ .remove = bt_remove,
|
||||
+};
|
||||
+//#endif
|
||||
static int __init wifi_dt_init(void)
|
||||
{
|
||||
int ret;
|
||||
ret = platform_driver_register(&wifi_plat_driver);
|
||||
+//#ifdef CONFIG_ARCH_MESON6
|
||||
+ ret = platform_driver_register(&bt_driver);
|
||||
+//#endif
|
||||
return ret;
|
||||
}
|
||||
// module_init(wifi_dt_init);
|
||||
@@ -175,6 +215,9 @@
|
||||
static void __exit wifi_dt_exit(void)
|
||||
{
|
||||
platform_driver_unregister(&wifi_plat_driver);
|
||||
+//#ifdef CONFIG_ARCH_MESON6
|
||||
+ platform_driver_unregister(&bt_driver);
|
||||
+//#endif
|
||||
}
|
||||
module_exit(wifi_dt_exit);
|
||||
|
||||
@@ -246,6 +289,40 @@
|
||||
CHECK_RET(ret);
|
||||
SHOW_PIN_OWN("power_on_pin2", wifi_info.power_on_pin2);
|
||||
}
|
||||
+#ifdef CONFIG_ARCH_MESON6
|
||||
+ if (bt_pinctrl) {
|
||||
+
|
||||
+ printk("bt_setup\n");
|
||||
+ ret = amlogic_gpio_request(GPIOX_10, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ ret = amlogic_gpio_direction_output(GPIOX_10, 1, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ msleep(50);
|
||||
+
|
||||
+
|
||||
+ ret = amlogic_gpio_request(GPIOE_11, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ ret = amlogic_gpio_direction_output(GPIOE_11, 0, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ msleep(20);
|
||||
+
|
||||
+ ret = amlogic_gpio_direction_output(GPIOE_11, 1, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ msleep(50);
|
||||
+
|
||||
+ }
|
||||
+#endif
|
||||
+#ifdef CONFIG_ARCH_MESON8
|
||||
+ ret = amlogic_gpio_request(GPIOX_20, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ ret = amlogic_gpio_direction_output(GPIOX_20, 0, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ msleep(20);
|
||||
+
|
||||
+ ret = amlogic_gpio_direction_output(GPIOX_20, 1, OWNER_NAME);
|
||||
+ CHECK_RET(ret);
|
||||
+ msleep(50);
|
||||
+#endif
|
||||
|
||||
return 0;
|
||||
}
|
21
projects/WeTek_Core/patches/linux/40-no_dev_console.patch
Normal file
21
projects/WeTek_Core/patches/linux/40-no_dev_console.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff --git a/init/main.c b/init/main.c
|
||||
index 9484f4b..db55edd 100644
|
||||
--- a/init/main.c
|
||||
+++ b/init/main.c
|
||||
@@ -880,8 +880,14 @@ static noinline void __init kernel_init_freeable(void)
|
||||
do_basic_setup();
|
||||
|
||||
/* Open the /dev/console on the rootfs, this should never fail */
|
||||
- if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
|
||||
- pr_err("Warning: unable to open an initial console.\n");
|
||||
+ char *console = "/dev_console";
|
||||
+
|
||||
+ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) {
|
||||
+ sys_mknod(console, S_IFCHR|0600, (TTYAUX_MAJOR<<8)|1);
|
||||
+ if (sys_open(console, O_RDWR, 0) < 0)
|
||||
+ printk(KERN_WARNING "Warning: unable to open an initial console.\n");
|
||||
+ sys_unlink(console);
|
||||
+ }
|
||||
|
||||
(void) sys_dup(0);
|
||||
(void) sys_dup(0);
|
@ -0,0 +1,12 @@
|
||||
diff -Naur retroarch.git/gfx/drivers_context/mali_fbdev_ctx.c retroarch.patch/gfx/drivers_context/mali_fbdev_ctx.c
|
||||
--- retroarch.git/gfx/drivers_context/mali_fbdev_ctx.c 2015-12-15 04:30:48.451470567 +0100
|
||||
+++ retroarch.patch/gfx/drivers_context/mali_fbdev_ctx.c 2015-12-17 05:12:21.710615201 +0100
|
||||
@@ -32,7 +32,7 @@
|
||||
typedef struct {
|
||||
egl_ctx_data_t egl;
|
||||
|
||||
- struct mali_native_window native_window;
|
||||
+ struct fbdev_window native_window;
|
||||
bool resize;
|
||||
unsigned width, height;
|
||||
} mali_ctx_data_t;
|
@ -116,7 +116,7 @@
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware dvb-firmware brcmfmac_sdio-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware dvb-firmware brcmfmac_sdio-firmware-aml"
|
||||
|
||||
# build and install ATV IR remote support (yes / no)
|
||||
ATVCLIENT_SUPPORT="no"
|
||||
|
@ -117,7 +117,7 @@
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware iwlwifi-firmware dvb-firmware brcmfmac_sdio-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware iwlwifi-firmware dvb-firmware brcmfmac_sdio-firmware-imx"
|
||||
|
||||
# build and install ATV IR remote support (yes / no)
|
||||
ATVCLIENT_SUPPORT="no"
|
||||
|
@ -233,7 +233,7 @@ IMAGE_NAME="$DISTRONAME-$TARGET_VERSION"
|
||||
# set permissions
|
||||
chmod 0644 $TARGET_IMG/$IMAGE_NAME.system
|
||||
|
||||
if [ "$1" = "release" -o "$1" = "mkimage" ]; then
|
||||
if [ "$1" = "release" -o "$1" = "mkimage" -o "$1" = "amlpkg" ]; then
|
||||
|
||||
RELEASE_DIR="target/$IMAGE_NAME"
|
||||
|
||||
@ -324,6 +324,60 @@ IMAGE_NAME="$DISTRONAME-$TARGET_VERSION"
|
||||
$SCRIPTS/mkimage
|
||||
fi
|
||||
|
||||
# create WeTek Play (Amlogic) ZIP update and auto-install packages if requested
|
||||
if [ "$1" = "amlpkg" ]; then
|
||||
echo "Creating Amlogic ZIP update package"
|
||||
|
||||
INSTALL_SRC_DIR="$PROJECT_DIR/$PROJECT/install"
|
||||
AML_PKG_DIR="$RELEASE_DIR/ampl-pkg"
|
||||
|
||||
# create package directory
|
||||
mkdir -p "$AML_PKG_DIR"
|
||||
|
||||
# copy system and kernel images
|
||||
mkdir -p "$AML_PKG_DIR/system"
|
||||
cp $TARGET_IMG/$IMAGE_NAME.system $AML_PKG_DIR/system/SYSTEM
|
||||
cp $TARGET_IMG/$IMAGE_NAME.kernel $AML_PKG_DIR/KERNEL
|
||||
|
||||
# copy update-binary and updater-script
|
||||
META_INF_DIR="$AML_PKG_DIR/META-INF/com/google/android"
|
||||
mkdir -p "$META_INF_DIR"
|
||||
cp $INSTALL_SRC_DIR/update-binary $META_INF_DIR
|
||||
cp $INSTALL_SRC_DIR/updater-script $META_INF_DIR
|
||||
|
||||
# copy other files if any
|
||||
if [ -d "$INSTALL_SRC_DIR/files" ]; then
|
||||
cp -PR $INSTALL_SRC_DIR/files/* $AML_PKG_DIR
|
||||
fi
|
||||
|
||||
# create the update package
|
||||
pushd "$AML_PKG_DIR" > /dev/null
|
||||
zip -rq update.zip *
|
||||
|
||||
# sign the update package
|
||||
echo "Signing the update package"
|
||||
mkdir -p sign
|
||||
SIGNAPK_DIR="$ROOT/tools/signapk"
|
||||
java -Xmx1024m -jar $SIGNAPK_DIR/signapk.jar -w $SIGNAPK_DIR/testkey.x509.pem $SIGNAPK_DIR/testkey.pk8 update.zip sign/$IMAGE_NAME-update.zip
|
||||
|
||||
# create the auto-install package
|
||||
if [ -f "$INSTALL_SRC_DIR/files/recovery.img" ]; then
|
||||
echo "Creating Amlogic ZIP auto-install package"
|
||||
pushd sign > /dev/null
|
||||
echo --update_package=/sdcard/$IMAGE_NAME-update.zip > factory_update_param.aml
|
||||
cp $INSTALL_SRC_DIR/files/recovery.img .
|
||||
if [ -f $INSTALL_SRC_DIR/files/aml_autoscript ]; then
|
||||
cp $INSTALL_SRC_DIR/files/aml_autoscript .
|
||||
fi
|
||||
zip -q $TARGET_IMG/$IMAGE_NAME.zip *
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# copy update package to target directory
|
||||
cp sign/$IMAGE_NAME-update.zip $TARGET_IMG
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# cleanup release dir
|
||||
rm -rf $RELEASE_DIR
|
||||
|
||||
|
41
tools/mkpkg/mkpkg_mkbootimg
Executable file
41
tools/mkpkg/mkpkg_mkbootimg
Executable file
@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
echo "getting sources..."
|
||||
if [ ! -d mkbootimg.git ]; then
|
||||
git clone https://github.com/codesnake/mkbootimg.git mkbootimg.git
|
||||
fi
|
||||
|
||||
cd mkbootimg.git
|
||||
git pull
|
||||
GIT_REV=`git log -n1 --format=%h`
|
||||
cd ..
|
||||
|
||||
echo "copying sources..."
|
||||
rm -rf mkbootimg-$GIT_REV
|
||||
cp -R mkbootimg.git mkbootimg-$GIT_REV
|
||||
|
||||
echo "cleaning sources..."
|
||||
rm -rf mkbootimg-$GIT_REV/.git
|
||||
|
||||
echo "packing sources..."
|
||||
tar cvJf mkbootimg-$GIT_REV.tar.xz mkbootimg-$GIT_REV
|
||||
|
||||
echo "remove temporary sourcedir..."
|
||||
rm -rf mkbootimg-$GIT_REV
|
Loading…
Reference in New Issue
Block a user