diff options
Diffstat (limited to 'target')
-rw-r--r-- | target/arm/raspberry-pi/patches/3.10.49/raspberry-pi.patch (renamed from target/arm/raspberry-pi/patches/3.10.45/raspberry-pi.patch) | 0 | ||||
-rw-r--r-- | target/arm/raspberry-pi/patches/3.12.24/raspberry-pi.patch (renamed from target/arm/raspberry-pi/patches/3.12.23/raspberry-pi.patch) | 0 | ||||
-rw-r--r-- | target/arm/raspberry-pi/patches/3.14.13/raspberry-pi.patch (renamed from target/arm/raspberry-pi/patches/3.14.9/raspberry-pi.patch) | 0 | ||||
-rw-r--r-- | target/arm/raspberry-pi/patches/3.15.6/raspberrypi.patch (renamed from target/arm/raspberry-pi/patches/3.15.4/raspberrypi.patch) | 0 | ||||
-rw-r--r-- | target/config/Config.in.kernelversion.choice | 22 | ||||
-rw-r--r-- | target/config/Config.in.kernelversion.default | 10 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/bsd-compatibility.patch (renamed from target/linux/patches/3.10.45/bsd-compatibility.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/headers-install.patch (renamed from target/linux/patches/3.10.45/headers-install.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/mkpiggy.patch (renamed from target/linux/patches/3.10.45/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/patch-yaffs2 (renamed from target/linux/patches/3.10.45/patch-yaffs2) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/relocs.patch (renamed from target/linux/patches/3.10.45/relocs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/sgidefs.patch (renamed from target/linux/patches/3.10.45/sgidefs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/sortext.patch (renamed from target/linux/patches/3.10.45/sortext.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/startup.patch (renamed from target/linux/patches/3.10.45/startup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.10.49/tcp-fastopen.patch (renamed from target/linux/patches/3.10.45/tcp-fastopen.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/bsd-compatibility.patch (renamed from target/linux/patches/3.12.23/bsd-compatibility.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/cleankernel.patch (renamed from target/linux/patches/3.12.23/cleankernel.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/defaults.patch (renamed from target/linux/patches/3.12.23/defaults.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/disable-netfilter.patch (renamed from target/linux/patches/3.12.23/disable-netfilter.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.12.23/export-symbol-for-exmap.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/gemalto.patch (renamed from target/linux/patches/3.12.23/gemalto.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/lemote-rfkill.patch (renamed from target/linux/patches/3.12.23/lemote-rfkill.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/microblaze-ethernet.patch (renamed from target/linux/patches/3.12.23/microblaze-ethernet.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/microblaze-setup.patch (renamed from target/linux/patches/3.12.23/microblaze-setup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/mips-lzo-fix.patch (renamed from target/linux/patches/3.12.23/mips-lzo-fix.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/mkpiggy.patch (renamed from target/linux/patches/3.12.23/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/mtd-rootfs.patch (renamed from target/linux/patches/3.12.23/mtd-rootfs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/non-static.patch (renamed from target/linux/patches/3.12.23/non-static.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/patch-yaffs2 (renamed from target/linux/patches/3.12.23/patch-yaffs2) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.12.23/ppc64-missing-zlib.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/relocs.patch (renamed from target/linux/patches/3.12.23/relocs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/sgidefs.patch (renamed from target/linux/patches/3.12.23/sgidefs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/sortext.patch (renamed from target/linux/patches/3.12.23/sortext.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/startup.patch (renamed from target/linux/patches/3.12.23/startup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/tcp-fastopen.patch (renamed from target/linux/patches/3.12.23/tcp-fastopen.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/usb-defaults-off.patch (renamed from target/linux/patches/3.12.23/usb-defaults-off.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/vga-cons-default-off.patch (renamed from target/linux/patches/3.12.23/vga-cons-default-off.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/wlan-cf.patch (renamed from target/linux/patches/3.12.23/wlan-cf.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/xargs.patch (renamed from target/linux/patches/3.12.23/xargs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.12.24/zlib-inflate.patch (renamed from target/linux/patches/3.12.23/zlib-inflate.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/bsd-compatibility.patch (renamed from target/linux/patches/3.14.9/bsd-compatibility.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/cleankernel.patch (renamed from target/linux/patches/3.14.9/cleankernel.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/defaults.patch (renamed from target/linux/patches/3.14.9/defaults.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/disable-netfilter.patch (renamed from target/linux/patches/3.14.9/disable-netfilter.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.14.9/export-symbol-for-exmap.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/gemalto.patch (renamed from target/linux/patches/3.14.9/gemalto.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/initramfs-nosizelimit.patch (renamed from target/linux/patches/3.14.9/initramfs-nosizelimit.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/lemote-rfkill.patch (renamed from target/linux/patches/3.14.9/lemote-rfkill.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/microblaze-axi.patch (renamed from target/linux/patches/3.14.9/microblaze-axi.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/microblaze-ethernet.patch (renamed from target/linux/patches/3.14.9/microblaze-ethernet.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/mkpiggy.patch (renamed from target/linux/patches/3.14.9/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/mtd-rootfs.patch (renamed from target/linux/patches/3.14.9/mtd-rootfs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/nfsv3-tcp.patch (renamed from target/linux/patches/3.14.9/nfsv3-tcp.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/non-static.patch (renamed from target/linux/patches/3.14.9/non-static.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/patch-fblogo (renamed from target/linux/patches/3.14.9/patch-fblogo) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/patch-grsec (renamed from target/linux/patches/3.14.9/patch-grsec) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/patch-mptcp (renamed from target/linux/patches/3.14.9/patch-mptcp) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/patch-yaffs2 (renamed from target/linux/patches/3.14.9/patch-yaffs2) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.14.9/ppc64-missing-zlib.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/regmap-boolean.patch (renamed from target/linux/patches/3.14.9/regmap-boolean.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/relocs.patch (renamed from target/linux/patches/3.14.9/relocs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/sgidefs.patch (renamed from target/linux/patches/3.14.9/sgidefs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/sortext.patch (renamed from target/linux/patches/3.14.9/sortext.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/startup.patch (renamed from target/linux/patches/3.14.9/startup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/tcp-fastopen.patch (renamed from target/linux/patches/3.14.9/tcp-fastopen.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/wlan-cf.patch (renamed from target/linux/patches/3.14.9/wlan-cf.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/xargs.patch (renamed from target/linux/patches/3.14.9/xargs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.14.13/zlib-inflate.patch (renamed from target/linux/patches/3.14.9/zlib-inflate.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/bsd-compatibility.patch (renamed from target/linux/patches/3.15.4/bsd-compatibility.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/cleankernel.patch (renamed from target/linux/patches/3.15.4/cleankernel.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/defaults.patch (renamed from target/linux/patches/3.15.4/defaults.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/disable-netfilter.patch (renamed from target/linux/patches/3.15.4/disable-netfilter.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.15.4/export-symbol-for-exmap.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/gemalto.patch (renamed from target/linux/patches/3.15.4/gemalto.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/initramfs-nosizelimit.patch (renamed from target/linux/patches/3.15.4/initramfs-nosizelimit.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/lemote-rfkill.patch (renamed from target/linux/patches/3.15.4/lemote-rfkill.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/lz4.patch (renamed from target/linux/patches/3.15.4/lz4.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/microblaze-axi.patch (renamed from target/linux/patches/3.15.4/microblaze-axi.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/microblaze-ethernet.patch (renamed from target/linux/patches/3.15.4/microblaze-ethernet.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/mkpiggy.patch (renamed from target/linux/patches/3.15.4/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/mtd-rootfs.patch (renamed from target/linux/patches/3.15.4/mtd-rootfs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/nfsv3-tcp.patch (renamed from target/linux/patches/3.15.4/nfsv3-tcp.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/non-static.patch (renamed from target/linux/patches/3.15.4/non-static.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/patch-fblogo (renamed from target/linux/patches/3.15.4/patch-fblogo) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/patch-yaffs2 (renamed from target/linux/patches/3.15.4/patch-yaffs2) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.15.4/ppc64-missing-zlib.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/regmap-boolean.patch (renamed from target/linux/patches/3.15.4/regmap-boolean.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/relocs.patch (renamed from target/linux/patches/3.15.4/relocs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/sgidefs.patch (renamed from target/linux/patches/3.15.4/sgidefs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/sortext.patch (renamed from target/linux/patches/3.15.4/sortext.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/startup.patch (renamed from target/linux/patches/3.15.4/startup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/tcp-fastopen.patch (renamed from target/linux/patches/3.15.4/tcp-fastopen.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/wlan-cf.patch (renamed from target/linux/patches/3.15.4/wlan-cf.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.15.6/xargs.patch (renamed from target/linux/patches/3.15.4/xargs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/aufs2.patch (renamed from target/linux/patches/3.4.95/aufs2.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/bsd-compatibility.patch (renamed from target/linux/patches/3.4.95/bsd-compatibility.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/defaults.patch (renamed from target/linux/patches/3.4.95/defaults.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/gemalto.patch (renamed from target/linux/patches/3.4.95/gemalto.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/lemote-rfkill.patch (renamed from target/linux/patches/3.4.95/lemote-rfkill.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/linux-gcc-check.patch (renamed from target/linux/patches/3.4.95/linux-gcc-check.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/mips-error.patch (renamed from target/linux/patches/3.4.95/mips-error.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/mkpiggy.patch (renamed from target/linux/patches/3.4.95/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/module-alloc-size-check.patch (renamed from target/linux/patches/3.4.95/module-alloc-size-check.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/non-static.patch (renamed from target/linux/patches/3.4.95/non-static.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/patch-yaffs2 (renamed from target/linux/patches/3.4.95/patch-yaffs2) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/relocs.patch (renamed from target/linux/patches/3.4.95/relocs.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/sparc-include.patch (renamed from target/linux/patches/3.4.95/sparc-include.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/startup.patch (renamed from target/linux/patches/3.4.95/startup.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/usb-defaults-off.patch (renamed from target/linux/patches/3.4.95/usb-defaults-off.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/vga-cons-default-off.patch (renamed from target/linux/patches/3.4.95/vga-cons-default-off.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/wlan-cf.patch (renamed from target/linux/patches/3.4.95/wlan-cf.patch) | 0 | ||||
-rw-r--r-- | target/linux/patches/3.4.99/zlib-inflate.patch (renamed from target/linux/patches/3.4.95/zlib-inflate.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0001-mtd-add-rb4xx-nand-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0001-mtd-add-rb4xx-nand-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0003-net-add-ag71xx-mac-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0003-net-add-ag71xx-mac-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0006-spi-add-rb4xx-SPI-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0006-spi-add-rb4xx-SPI-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0007-spi-add-rb4xx-cpld-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0007-spi-add-rb4xx-cpld-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0008-gpio-add-GPIO-latch-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0008-gpio-add-GPIO-latch-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0009-spi-export-spi_bitbang_bufs-function.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0009-spi-export-spi_bitbang_bufs-function.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0010-spi-add-type-field-to-spi_transfer-struct.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0010-spi-add-type-field-to-spi_transfer-struct.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0011-mtd-m25p80-set-SPI-transfer-type.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0011-mtd-m25p80-set-SPI-transfer-type.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0013-net-add-swconfig-support.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0013-net-add-swconfig-support.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0014-phy-add-detach-callback-to-struct-phy_driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0014-phy-add-detach-callback-to-struct-phy_driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0015-phy-add-ar8216-PHY-support.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0015-phy-add-ar8216-PHY-support.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0016-phy-mdio-bitbang-ignore-TA-value.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0016-phy-mdio-bitbang-ignore-TA-value.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0017-MIPS-ath79-fix-maximum-timeout.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0017-MIPS-ath79-fix-maximum-timeout.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0019-MIPS-ath79-process-board-cmdline-option.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0019-MIPS-ath79-process-board-cmdline-option.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0020-spi-ath79-add-fast-flash-read-support.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0020-spi-ath79-add-fast-flash-read-support.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0021-phy-add-mdio-boardinfo.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0021-phy-add-mdio-boardinfo.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0022-mips-ath79-add-ath79-ethernet-driver.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0022-mips-ath79-add-ath79-ethernet-driver.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0024-various-fixups-for-Werror.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0024-various-fixups-for-Werror.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0025-rb4xx_nand-add-partition-for-cfgfs.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0025-rb4xx_nand-add-partition-for-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb4xx/patches/3.14.13/0026-various-fixups-for-ath5k-fixing-system-freezes.patch (renamed from target/mips/mikrotik-rb4xx/patches/3.14.9/0026-various-fixups-for-ath5k-fixing-system-freezes.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.10.49/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.10.45/rb532-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.10.49/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.10.45/rb532-pci.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.12.24/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.12.23/rb532-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.12.24/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.12.23/rb532-pci.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.14.13/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.9/rb532-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.14.13/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.9/rb532-pci.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.15.6/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.15.4/rb532-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.15.6/rb532-serial.patch (renamed from target/mips/mikrotik-rb532/patches/3.15.4/rb532-serial.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.4.99/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.4.95/rb532-cfgfs.patch) | 0 | ||||
-rw-r--r-- | target/mips/mikrotik-rb532/patches/3.4.99/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.4.95/rb532-pci.patch) | 0 | ||||
-rw-r--r-- | target/mips64/lemote-yeelong/patches/3.15.6/sm7xx-fb.patch | 1871 |
149 files changed, 1887 insertions, 16 deletions
diff --git a/target/arm/raspberry-pi/patches/3.10.45/raspberry-pi.patch b/target/arm/raspberry-pi/patches/3.10.49/raspberry-pi.patch index c5d39e244..c5d39e244 100644 --- a/target/arm/raspberry-pi/patches/3.10.45/raspberry-pi.patch +++ b/target/arm/raspberry-pi/patches/3.10.49/raspberry-pi.patch diff --git a/target/arm/raspberry-pi/patches/3.12.23/raspberry-pi.patch b/target/arm/raspberry-pi/patches/3.12.24/raspberry-pi.patch index c5e93d3fb..c5e93d3fb 100644 --- a/target/arm/raspberry-pi/patches/3.12.23/raspberry-pi.patch +++ b/target/arm/raspberry-pi/patches/3.12.24/raspberry-pi.patch diff --git a/target/arm/raspberry-pi/patches/3.14.9/raspberry-pi.patch b/target/arm/raspberry-pi/patches/3.14.13/raspberry-pi.patch index 4535d121c..4535d121c 100644 --- a/target/arm/raspberry-pi/patches/3.14.9/raspberry-pi.patch +++ b/target/arm/raspberry-pi/patches/3.14.13/raspberry-pi.patch diff --git a/target/arm/raspberry-pi/patches/3.15.4/raspberrypi.patch b/target/arm/raspberry-pi/patches/3.15.6/raspberrypi.patch index b075978cf..b075978cf 100644 --- a/target/arm/raspberry-pi/patches/3.15.4/raspberrypi.patch +++ b/target/arm/raspberry-pi/patches/3.15.6/raspberrypi.patch diff --git a/target/config/Config.in.kernelversion.choice b/target/config/Config.in.kernelversion.choice index 9d53470a4..9a10420a4 100644 --- a/target/config/Config.in.kernelversion.choice +++ b/target/config/Config.in.kernelversion.choice @@ -4,36 +4,36 @@ choice prompt "Kernel Version" depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM && ADK_TARGET_KERNEL_CUSTOMISING -default ADK_KERNEL_VERSION_3_15_4 +default ADK_KERNEL_VERSION_3_15_6 -config ADK_KERNEL_VERSION_3_15_4 - prompt "3.15.4" +config ADK_KERNEL_VERSION_3_15_6 + prompt "3.15.6" depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX boolean select ADK_KERNEL_VERSION_3_15 -config ADK_KERNEL_VERSION_3_14_9 - prompt "3.14.9" +config ADK_KERNEL_VERSION_3_14_13 + prompt "3.14.13" depends on !ADK_TARGET_SYSTEM_CUBOX_I boolean select ADK_KERNEL_VERSION_3_14 -config ADK_KERNEL_VERSION_3_12_23 - prompt "3.12.23" +config ADK_KERNEL_VERSION_3_12_24 + prompt "3.12.24" depends on !ADK_TARGET_SYSTEM_CUBOX_I depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX boolean select ADK_KERNEL_VERSION_3_12 -config ADK_KERNEL_VERSION_3_10_45 - prompt "3.10.45" +config ADK_KERNEL_VERSION_3_10_49 + prompt "3.10.49" depends on !ADK_TARGET_SYSTEM_CUBOX_I depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX boolean select ADK_KERNEL_VERSION_3_10 -config ADK_KERNEL_VERSION_3_4_95 - prompt "3.4.95" +config ADK_KERNEL_VERSION_3_4_99 + prompt "3.4.99" depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI depends on !ADK_TARGET_SYSTEM_CUBOX_I depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX diff --git a/target/config/Config.in.kernelversion.default b/target/config/Config.in.kernelversion.default index 325c4951d..bf68c2ac2 100644 --- a/target/config/Config.in.kernelversion.default +++ b/target/config/Config.in.kernelversion.default @@ -18,10 +18,10 @@ config ADK_KERNEL_VERSION_3_4 config ADK_KERNEL_VERSION string - default "3.15.4" if ADK_KERNEL_VERSION_3_15_4 - default "3.14.9" if ADK_KERNEL_VERSION_3_14_9 - default "3.12.23" if ADK_KERNEL_VERSION_3_12_23 - default "3.10.45" if ADK_KERNEL_VERSION_3_10_45 - default "3.4.95" if ADK_KERNEL_VERSION_3_4_95 + default "3.15.6" if ADK_KERNEL_VERSION_3_15_6 + default "3.14.13" if ADK_KERNEL_VERSION_3_14_13 + default "3.12.24" if ADK_KERNEL_VERSION_3_12_24 + default "3.10.49" if ADK_KERNEL_VERSION_3_10_49 + default "3.4.99" if ADK_KERNEL_VERSION_3_4_99 help diff --git a/target/linux/patches/3.10.45/bsd-compatibility.patch b/target/linux/patches/3.10.49/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.10.45/bsd-compatibility.patch +++ b/target/linux/patches/3.10.49/bsd-compatibility.patch diff --git a/target/linux/patches/3.10.45/headers-install.patch b/target/linux/patches/3.10.49/headers-install.patch index 46dc9fe13..46dc9fe13 100644 --- a/target/linux/patches/3.10.45/headers-install.patch +++ b/target/linux/patches/3.10.49/headers-install.patch diff --git a/target/linux/patches/3.10.45/mkpiggy.patch b/target/linux/patches/3.10.49/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/target/linux/patches/3.10.45/mkpiggy.patch +++ b/target/linux/patches/3.10.49/mkpiggy.patch diff --git a/target/linux/patches/3.10.45/patch-yaffs2 b/target/linux/patches/3.10.49/patch-yaffs2 index 172629530..172629530 100644 --- a/target/linux/patches/3.10.45/patch-yaffs2 +++ b/target/linux/patches/3.10.49/patch-yaffs2 diff --git a/target/linux/patches/3.10.45/relocs.patch b/target/linux/patches/3.10.49/relocs.patch index 649b9e73e..649b9e73e 100644 --- a/target/linux/patches/3.10.45/relocs.patch +++ b/target/linux/patches/3.10.49/relocs.patch diff --git a/target/linux/patches/3.10.45/sgidefs.patch b/target/linux/patches/3.10.49/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/target/linux/patches/3.10.45/sgidefs.patch +++ b/target/linux/patches/3.10.49/sgidefs.patch diff --git a/target/linux/patches/3.10.45/sortext.patch b/target/linux/patches/3.10.49/sortext.patch index 65bbbb64b..65bbbb64b 100644 --- a/target/linux/patches/3.10.45/sortext.patch +++ b/target/linux/patches/3.10.49/sortext.patch diff --git a/target/linux/patches/3.10.45/startup.patch b/target/linux/patches/3.10.49/startup.patch index 3ebc5db1e..3ebc5db1e 100644 --- a/target/linux/patches/3.10.45/startup.patch +++ b/target/linux/patches/3.10.49/startup.patch diff --git a/target/linux/patches/3.10.45/tcp-fastopen.patch b/target/linux/patches/3.10.49/tcp-fastopen.patch index c0bddbc4f..c0bddbc4f 100644 --- a/target/linux/patches/3.10.45/tcp-fastopen.patch +++ b/target/linux/patches/3.10.49/tcp-fastopen.patch diff --git a/target/linux/patches/3.12.23/bsd-compatibility.patch b/target/linux/patches/3.12.24/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.12.23/bsd-compatibility.patch +++ b/target/linux/patches/3.12.24/bsd-compatibility.patch diff --git a/target/linux/patches/3.12.23/cleankernel.patch b/target/linux/patches/3.12.24/cleankernel.patch index d8c055dc3..d8c055dc3 100644 --- a/target/linux/patches/3.12.23/cleankernel.patch +++ b/target/linux/patches/3.12.24/cleankernel.patch diff --git a/target/linux/patches/3.12.23/defaults.patch b/target/linux/patches/3.12.24/defaults.patch index 6cdca084e..6cdca084e 100644 --- a/target/linux/patches/3.12.23/defaults.patch +++ b/target/linux/patches/3.12.24/defaults.patch diff --git a/target/linux/patches/3.12.23/disable-netfilter.patch b/target/linux/patches/3.12.24/disable-netfilter.patch index 7b1ca013a..7b1ca013a 100644 --- a/target/linux/patches/3.12.23/disable-netfilter.patch +++ b/target/linux/patches/3.12.24/disable-netfilter.patch diff --git a/target/linux/patches/3.12.23/export-symbol-for-exmap.patch b/target/linux/patches/3.12.24/export-symbol-for-exmap.patch index 4f0fc8449..4f0fc8449 100644 --- a/target/linux/patches/3.12.23/export-symbol-for-exmap.patch +++ b/target/linux/patches/3.12.24/export-symbol-for-exmap.patch diff --git a/target/linux/patches/3.12.23/gemalto.patch b/target/linux/patches/3.12.24/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.12.23/gemalto.patch +++ b/target/linux/patches/3.12.24/gemalto.patch diff --git a/target/linux/patches/3.12.23/lemote-rfkill.patch b/target/linux/patches/3.12.24/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.12.23/lemote-rfkill.patch +++ b/target/linux/patches/3.12.24/lemote-rfkill.patch diff --git a/target/linux/patches/3.12.23/microblaze-ethernet.patch b/target/linux/patches/3.12.24/microblaze-ethernet.patch index 742ab477e..742ab477e 100644 --- a/target/linux/patches/3.12.23/microblaze-ethernet.patch +++ b/target/linux/patches/3.12.24/microblaze-ethernet.patch diff --git a/target/linux/patches/3.12.23/microblaze-setup.patch b/target/linux/patches/3.12.24/microblaze-setup.patch index 43815f274..43815f274 100644 --- a/target/linux/patches/3.12.23/microblaze-setup.patch +++ b/target/linux/patches/3.12.24/microblaze-setup.patch diff --git a/target/linux/patches/3.12.23/mips-lzo-fix.patch b/target/linux/patches/3.12.24/mips-lzo-fix.patch index 0740bdc6a..0740bdc6a 100644 --- a/target/linux/patches/3.12.23/mips-lzo-fix.patch +++ b/target/linux/patches/3.12.24/mips-lzo-fix.patch diff --git a/target/linux/patches/3.12.23/mkpiggy.patch b/target/linux/patches/3.12.24/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/target/linux/patches/3.12.23/mkpiggy.patch +++ b/target/linux/patches/3.12.24/mkpiggy.patch diff --git a/target/linux/patches/3.12.23/mtd-rootfs.patch b/target/linux/patches/3.12.24/mtd-rootfs.patch index 775d5fc80..775d5fc80 100644 --- a/target/linux/patches/3.12.23/mtd-rootfs.patch +++ b/target/linux/patches/3.12.24/mtd-rootfs.patch diff --git a/target/linux/patches/3.12.23/non-static.patch b/target/linux/patches/3.12.24/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.12.23/non-static.patch +++ b/target/linux/patches/3.12.24/non-static.patch diff --git a/target/linux/patches/3.12.23/patch-yaffs2 b/target/linux/patches/3.12.24/patch-yaffs2 index 306814439..306814439 100644 --- a/target/linux/patches/3.12.23/patch-yaffs2 +++ b/target/linux/patches/3.12.24/patch-yaffs2 diff --git a/target/linux/patches/3.12.23/ppc64-missing-zlib.patch b/target/linux/patches/3.12.24/ppc64-missing-zlib.patch index c6e0616be..c6e0616be 100644 --- a/target/linux/patches/3.12.23/ppc64-missing-zlib.patch +++ b/target/linux/patches/3.12.24/ppc64-missing-zlib.patch diff --git a/target/linux/patches/3.12.23/relocs.patch b/target/linux/patches/3.12.24/relocs.patch index 649b9e73e..649b9e73e 100644 --- a/target/linux/patches/3.12.23/relocs.patch +++ b/target/linux/patches/3.12.24/relocs.patch diff --git a/target/linux/patches/3.12.23/sgidefs.patch b/target/linux/patches/3.12.24/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/target/linux/patches/3.12.23/sgidefs.patch +++ b/target/linux/patches/3.12.24/sgidefs.patch diff --git a/target/linux/patches/3.12.23/sortext.patch b/target/linux/patches/3.12.24/sortext.patch index 8fd4e1d6b..8fd4e1d6b 100644 --- a/target/linux/patches/3.12.23/sortext.patch +++ b/target/linux/patches/3.12.24/sortext.patch diff --git a/target/linux/patches/3.12.23/startup.patch b/target/linux/patches/3.12.24/startup.patch index 4cd477da1..4cd477da1 100644 --- a/target/linux/patches/3.12.23/startup.patch +++ b/target/linux/patches/3.12.24/startup.patch diff --git a/target/linux/patches/3.12.23/tcp-fastopen.patch b/target/linux/patches/3.12.24/tcp-fastopen.patch index c1ff7209c..c1ff7209c 100644 --- a/target/linux/patches/3.12.23/tcp-fastopen.patch +++ b/target/linux/patches/3.12.24/tcp-fastopen.patch diff --git a/target/linux/patches/3.12.23/usb-defaults-off.patch b/target/linux/patches/3.12.24/usb-defaults-off.patch index 54dff2bd4..54dff2bd4 100644 --- a/target/linux/patches/3.12.23/usb-defaults-off.patch +++ b/target/linux/patches/3.12.24/usb-defaults-off.patch diff --git a/target/linux/patches/3.12.23/vga-cons-default-off.patch b/target/linux/patches/3.12.24/vga-cons-default-off.patch index 08a57f783..08a57f783 100644 --- a/target/linux/patches/3.12.23/vga-cons-default-off.patch +++ b/target/linux/patches/3.12.24/vga-cons-default-off.patch diff --git a/target/linux/patches/3.12.23/wlan-cf.patch b/target/linux/patches/3.12.24/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.12.23/wlan-cf.patch +++ b/target/linux/patches/3.12.24/wlan-cf.patch diff --git a/target/linux/patches/3.12.23/xargs.patch b/target/linux/patches/3.12.24/xargs.patch index 2c7b3df59..2c7b3df59 100644 --- a/target/linux/patches/3.12.23/xargs.patch +++ b/target/linux/patches/3.12.24/xargs.patch diff --git a/target/linux/patches/3.12.23/zlib-inflate.patch b/target/linux/patches/3.12.24/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.12.23/zlib-inflate.patch +++ b/target/linux/patches/3.12.24/zlib-inflate.patch diff --git a/target/linux/patches/3.14.9/bsd-compatibility.patch b/target/linux/patches/3.14.13/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.14.9/bsd-compatibility.patch +++ b/target/linux/patches/3.14.13/bsd-compatibility.patch diff --git a/target/linux/patches/3.14.9/cleankernel.patch b/target/linux/patches/3.14.13/cleankernel.patch index d8c055dc3..d8c055dc3 100644 --- a/target/linux/patches/3.14.9/cleankernel.patch +++ b/target/linux/patches/3.14.13/cleankernel.patch diff --git a/target/linux/patches/3.14.9/defaults.patch b/target/linux/patches/3.14.13/defaults.patch index f071fd1dd..f071fd1dd 100644 --- a/target/linux/patches/3.14.9/defaults.patch +++ b/target/linux/patches/3.14.13/defaults.patch diff --git a/target/linux/patches/3.14.9/disable-netfilter.patch b/target/linux/patches/3.14.13/disable-netfilter.patch index 7b1ca013a..7b1ca013a 100644 --- a/target/linux/patches/3.14.9/disable-netfilter.patch +++ b/target/linux/patches/3.14.13/disable-netfilter.patch diff --git a/target/linux/patches/3.14.9/export-symbol-for-exmap.patch b/target/linux/patches/3.14.13/export-symbol-for-exmap.patch index 4f0fc8449..4f0fc8449 100644 --- a/target/linux/patches/3.14.9/export-symbol-for-exmap.patch +++ b/target/linux/patches/3.14.13/export-symbol-for-exmap.patch diff --git a/target/linux/patches/3.14.9/gemalto.patch b/target/linux/patches/3.14.13/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.14.9/gemalto.patch +++ b/target/linux/patches/3.14.13/gemalto.patch diff --git a/target/linux/patches/3.14.9/initramfs-nosizelimit.patch b/target/linux/patches/3.14.13/initramfs-nosizelimit.patch index 40d2f6bd8..40d2f6bd8 100644 --- a/target/linux/patches/3.14.9/initramfs-nosizelimit.patch +++ b/target/linux/patches/3.14.13/initramfs-nosizelimit.patch diff --git a/target/linux/patches/3.14.9/lemote-rfkill.patch b/target/linux/patches/3.14.13/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.14.9/lemote-rfkill.patch +++ b/target/linux/patches/3.14.13/lemote-rfkill.patch diff --git a/target/linux/patches/3.14.9/microblaze-axi.patch b/target/linux/patches/3.14.13/microblaze-axi.patch index 1a4b17d8c..1a4b17d8c 100644 --- a/target/linux/patches/3.14.9/microblaze-axi.patch +++ b/target/linux/patches/3.14.13/microblaze-axi.patch diff --git a/target/linux/patches/3.14.9/microblaze-ethernet.patch b/target/linux/patches/3.14.13/microblaze-ethernet.patch index 742ab477e..742ab477e 100644 --- a/target/linux/patches/3.14.9/microblaze-ethernet.patch +++ b/target/linux/patches/3.14.13/microblaze-ethernet.patch diff --git a/target/linux/patches/3.14.9/mkpiggy.patch b/target/linux/patches/3.14.13/mkpiggy.patch index 751678b74..751678b74 100644 --- a/target/linux/patches/3.14.9/mkpiggy.patch +++ b/target/linux/patches/3.14.13/mkpiggy.patch diff --git a/target/linux/patches/3.14.9/mtd-rootfs.patch b/target/linux/patches/3.14.13/mtd-rootfs.patch index 775d5fc80..775d5fc80 100644 --- a/target/linux/patches/3.14.9/mtd-rootfs.patch +++ b/target/linux/patches/3.14.13/mtd-rootfs.patch diff --git a/target/linux/patches/3.14.9/nfsv3-tcp.patch b/target/linux/patches/3.14.13/nfsv3-tcp.patch index 68ed95b08..68ed95b08 100644 --- a/target/linux/patches/3.14.9/nfsv3-tcp.patch +++ b/target/linux/patches/3.14.13/nfsv3-tcp.patch diff --git a/target/linux/patches/3.14.9/non-static.patch b/target/linux/patches/3.14.13/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.14.9/non-static.patch +++ b/target/linux/patches/3.14.13/non-static.patch diff --git a/target/linux/patches/3.14.9/patch-fblogo b/target/linux/patches/3.14.13/patch-fblogo index cbbb4216f..cbbb4216f 100644 --- a/target/linux/patches/3.14.9/patch-fblogo +++ b/target/linux/patches/3.14.13/patch-fblogo diff --git a/target/linux/patches/3.14.9/patch-grsec b/target/linux/patches/3.14.13/patch-grsec index 9d846b96f..9d846b96f 100644 --- a/target/linux/patches/3.14.9/patch-grsec +++ b/target/linux/patches/3.14.13/patch-grsec diff --git a/target/linux/patches/3.14.9/patch-mptcp b/target/linux/patches/3.14.13/patch-mptcp index 9784e0577..9784e0577 100644 --- a/target/linux/patches/3.14.9/patch-mptcp +++ b/target/linux/patches/3.14.13/patch-mptcp diff --git a/target/linux/patches/3.14.9/patch-yaffs2 b/target/linux/patches/3.14.13/patch-yaffs2 index f075aa658..f075aa658 100644 --- a/target/linux/patches/3.14.9/patch-yaffs2 +++ b/target/linux/patches/3.14.13/patch-yaffs2 diff --git a/target/linux/patches/3.14.9/ppc64-missing-zlib.patch b/target/linux/patches/3.14.13/ppc64-missing-zlib.patch index c6e0616be..c6e0616be 100644 --- a/target/linux/patches/3.14.9/ppc64-missing-zlib.patch +++ b/target/linux/patches/3.14.13/ppc64-missing-zlib.patch diff --git a/target/linux/patches/3.14.9/regmap-boolean.patch b/target/linux/patches/3.14.13/regmap-boolean.patch index d73620e4d..d73620e4d 100644 --- a/target/linux/patches/3.14.9/regmap-boolean.patch +++ b/target/linux/patches/3.14.13/regmap-boolean.patch diff --git a/target/linux/patches/3.14.9/relocs.patch b/target/linux/patches/3.14.13/relocs.patch index 69a7c88a9..69a7c88a9 100644 --- a/target/linux/patches/3.14.9/relocs.patch +++ b/target/linux/patches/3.14.13/relocs.patch diff --git a/target/linux/patches/3.14.9/sgidefs.patch b/target/linux/patches/3.14.13/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/target/linux/patches/3.14.9/sgidefs.patch +++ b/target/linux/patches/3.14.13/sgidefs.patch diff --git a/target/linux/patches/3.14.9/sortext.patch b/target/linux/patches/3.14.13/sortext.patch index 8fd4e1d6b..8fd4e1d6b 100644 --- a/target/linux/patches/3.14.9/sortext.patch +++ b/target/linux/patches/3.14.13/sortext.patch diff --git a/target/linux/patches/3.14.9/startup.patch b/target/linux/patches/3.14.13/startup.patch index d396b75e4..d396b75e4 100644 --- a/target/linux/patches/3.14.9/startup.patch +++ b/target/linux/patches/3.14.13/startup.patch diff --git a/target/linux/patches/3.14.9/tcp-fastopen.patch b/target/linux/patches/3.14.13/tcp-fastopen.patch index 43e685972..43e685972 100644 --- a/target/linux/patches/3.14.9/tcp-fastopen.patch +++ b/target/linux/patches/3.14.13/tcp-fastopen.patch diff --git a/target/linux/patches/3.14.9/wlan-cf.patch b/target/linux/patches/3.14.13/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.14.9/wlan-cf.patch +++ b/target/linux/patches/3.14.13/wlan-cf.patch diff --git a/target/linux/patches/3.14.9/xargs.patch b/target/linux/patches/3.14.13/xargs.patch index 2c7b3df59..2c7b3df59 100644 --- a/target/linux/patches/3.14.9/xargs.patch +++ b/target/linux/patches/3.14.13/xargs.patch diff --git a/target/linux/patches/3.14.9/zlib-inflate.patch b/target/linux/patches/3.14.13/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.14.9/zlib-inflate.patch +++ b/target/linux/patches/3.14.13/zlib-inflate.patch diff --git a/target/linux/patches/3.15.4/bsd-compatibility.patch b/target/linux/patches/3.15.6/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.15.4/bsd-compatibility.patch +++ b/target/linux/patches/3.15.6/bsd-compatibility.patch diff --git a/target/linux/patches/3.15.4/cleankernel.patch b/target/linux/patches/3.15.6/cleankernel.patch index d8c055dc3..d8c055dc3 100644 --- a/target/linux/patches/3.15.4/cleankernel.patch +++ b/target/linux/patches/3.15.6/cleankernel.patch diff --git a/target/linux/patches/3.15.4/defaults.patch b/target/linux/patches/3.15.6/defaults.patch index 6cdca084e..6cdca084e 100644 --- a/target/linux/patches/3.15.4/defaults.patch +++ b/target/linux/patches/3.15.6/defaults.patch diff --git a/target/linux/patches/3.15.4/disable-netfilter.patch b/target/linux/patches/3.15.6/disable-netfilter.patch index 7b1ca013a..7b1ca013a 100644 --- a/target/linux/patches/3.15.4/disable-netfilter.patch +++ b/target/linux/patches/3.15.6/disable-netfilter.patch diff --git a/target/linux/patches/3.15.4/export-symbol-for-exmap.patch b/target/linux/patches/3.15.6/export-symbol-for-exmap.patch index 4f0fc8449..4f0fc8449 100644 --- a/target/linux/patches/3.15.4/export-symbol-for-exmap.patch +++ b/target/linux/patches/3.15.6/export-symbol-for-exmap.patch diff --git a/target/linux/patches/3.15.4/gemalto.patch b/target/linux/patches/3.15.6/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.15.4/gemalto.patch +++ b/target/linux/patches/3.15.6/gemalto.patch diff --git a/target/linux/patches/3.15.4/initramfs-nosizelimit.patch b/target/linux/patches/3.15.6/initramfs-nosizelimit.patch index 40d2f6bd8..40d2f6bd8 100644 --- a/target/linux/patches/3.15.4/initramfs-nosizelimit.patch +++ b/target/linux/patches/3.15.6/initramfs-nosizelimit.patch diff --git a/target/linux/patches/3.15.4/lemote-rfkill.patch b/target/linux/patches/3.15.6/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.15.4/lemote-rfkill.patch +++ b/target/linux/patches/3.15.6/lemote-rfkill.patch diff --git a/target/linux/patches/3.15.4/lz4.patch b/target/linux/patches/3.15.6/lz4.patch index 3106015ab..3106015ab 100644 --- a/target/linux/patches/3.15.4/lz4.patch +++ b/target/linux/patches/3.15.6/lz4.patch diff --git a/target/linux/patches/3.15.4/microblaze-axi.patch b/target/linux/patches/3.15.6/microblaze-axi.patch index 1a4b17d8c..1a4b17d8c 100644 --- a/target/linux/patches/3.15.4/microblaze-axi.patch +++ b/target/linux/patches/3.15.6/microblaze-axi.patch diff --git a/target/linux/patches/3.15.4/microblaze-ethernet.patch b/target/linux/patches/3.15.6/microblaze-ethernet.patch index 742ab477e..742ab477e 100644 --- a/target/linux/patches/3.15.4/microblaze-ethernet.patch +++ b/target/linux/patches/3.15.6/microblaze-ethernet.patch diff --git a/target/linux/patches/3.15.4/mkpiggy.patch b/target/linux/patches/3.15.6/mkpiggy.patch index 751678b74..751678b74 100644 --- a/target/linux/patches/3.15.4/mkpiggy.patch +++ b/target/linux/patches/3.15.6/mkpiggy.patch diff --git a/target/linux/patches/3.15.4/mtd-rootfs.patch b/target/linux/patches/3.15.6/mtd-rootfs.patch index 775d5fc80..775d5fc80 100644 --- a/target/linux/patches/3.15.4/mtd-rootfs.patch +++ b/target/linux/patches/3.15.6/mtd-rootfs.patch diff --git a/target/linux/patches/3.15.4/nfsv3-tcp.patch b/target/linux/patches/3.15.6/nfsv3-tcp.patch index d5e07e1c2..d5e07e1c2 100644 --- a/target/linux/patches/3.15.4/nfsv3-tcp.patch +++ b/target/linux/patches/3.15.6/nfsv3-tcp.patch diff --git a/target/linux/patches/3.15.4/non-static.patch b/target/linux/patches/3.15.6/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.15.4/non-static.patch +++ b/target/linux/patches/3.15.6/non-static.patch diff --git a/target/linux/patches/3.15.4/patch-fblogo b/target/linux/patches/3.15.6/patch-fblogo index f1fad64c1..f1fad64c1 100644 --- a/target/linux/patches/3.15.4/patch-fblogo +++ b/target/linux/patches/3.15.6/patch-fblogo diff --git a/target/linux/patches/3.15.4/patch-yaffs2 b/target/linux/patches/3.15.6/patch-yaffs2 index bb244c7ca..bb244c7ca 100644 --- a/target/linux/patches/3.15.4/patch-yaffs2 +++ b/target/linux/patches/3.15.6/patch-yaffs2 diff --git a/target/linux/patches/3.15.4/ppc64-missing-zlib.patch b/target/linux/patches/3.15.6/ppc64-missing-zlib.patch index c6e0616be..c6e0616be 100644 --- a/target/linux/patches/3.15.4/ppc64-missing-zlib.patch +++ b/target/linux/patches/3.15.6/ppc64-missing-zlib.patch diff --git a/target/linux/patches/3.15.4/regmap-boolean.patch b/target/linux/patches/3.15.6/regmap-boolean.patch index b61c4792a..b61c4792a 100644 --- a/target/linux/patches/3.15.4/regmap-boolean.patch +++ b/target/linux/patches/3.15.6/regmap-boolean.patch diff --git a/target/linux/patches/3.15.4/relocs.patch b/target/linux/patches/3.15.6/relocs.patch index 69a7c88a9..69a7c88a9 100644 --- a/target/linux/patches/3.15.4/relocs.patch +++ b/target/linux/patches/3.15.6/relocs.patch diff --git a/target/linux/patches/3.15.4/sgidefs.patch b/target/linux/patches/3.15.6/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/target/linux/patches/3.15.4/sgidefs.patch +++ b/target/linux/patches/3.15.6/sgidefs.patch diff --git a/target/linux/patches/3.15.4/sortext.patch b/target/linux/patches/3.15.6/sortext.patch index 8fd4e1d6b..8fd4e1d6b 100644 --- a/target/linux/patches/3.15.4/sortext.patch +++ b/target/linux/patches/3.15.6/sortext.patch diff --git a/target/linux/patches/3.15.4/startup.patch b/target/linux/patches/3.15.6/startup.patch index d396b75e4..d396b75e4 100644 --- a/target/linux/patches/3.15.4/startup.patch +++ b/target/linux/patches/3.15.6/startup.patch diff --git a/target/linux/patches/3.15.4/tcp-fastopen.patch b/target/linux/patches/3.15.6/tcp-fastopen.patch index 982d83305..982d83305 100644 --- a/target/linux/patches/3.15.4/tcp-fastopen.patch +++ b/target/linux/patches/3.15.6/tcp-fastopen.patch diff --git a/target/linux/patches/3.15.4/wlan-cf.patch b/target/linux/patches/3.15.6/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.15.4/wlan-cf.patch +++ b/target/linux/patches/3.15.6/wlan-cf.patch diff --git a/target/linux/patches/3.15.4/xargs.patch b/target/linux/patches/3.15.6/xargs.patch index 2c7b3df59..2c7b3df59 100644 --- a/target/linux/patches/3.15.4/xargs.patch +++ b/target/linux/patches/3.15.6/xargs.patch diff --git a/target/linux/patches/3.4.95/aufs2.patch b/target/linux/patches/3.4.99/aufs2.patch index d40c9a3fe..d40c9a3fe 100644 --- a/target/linux/patches/3.4.95/aufs2.patch +++ b/target/linux/patches/3.4.99/aufs2.patch diff --git a/target/linux/patches/3.4.95/bsd-compatibility.patch b/target/linux/patches/3.4.99/bsd-compatibility.patch index 9e91a62de..9e91a62de 100644 --- a/target/linux/patches/3.4.95/bsd-compatibility.patch +++ b/target/linux/patches/3.4.99/bsd-compatibility.patch diff --git a/target/linux/patches/3.4.95/defaults.patch b/target/linux/patches/3.4.99/defaults.patch index 58aae610b..58aae610b 100644 --- a/target/linux/patches/3.4.95/defaults.patch +++ b/target/linux/patches/3.4.99/defaults.patch diff --git a/target/linux/patches/3.4.95/gemalto.patch b/target/linux/patches/3.4.99/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.4.95/gemalto.patch +++ b/target/linux/patches/3.4.99/gemalto.patch diff --git a/target/linux/patches/3.4.95/lemote-rfkill.patch b/target/linux/patches/3.4.99/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.4.95/lemote-rfkill.patch +++ b/target/linux/patches/3.4.99/lemote-rfkill.patch diff --git a/target/linux/patches/3.4.95/linux-gcc-check.patch b/target/linux/patches/3.4.99/linux-gcc-check.patch index 7cc381845..7cc381845 100644 --- a/target/linux/patches/3.4.95/linux-gcc-check.patch +++ b/target/linux/patches/3.4.99/linux-gcc-check.patch diff --git a/target/linux/patches/3.4.95/mips-error.patch b/target/linux/patches/3.4.99/mips-error.patch index 800abc80d..800abc80d 100644 --- a/target/linux/patches/3.4.95/mips-error.patch +++ b/target/linux/patches/3.4.99/mips-error.patch diff --git a/target/linux/patches/3.4.95/mkpiggy.patch b/target/linux/patches/3.4.99/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/target/linux/patches/3.4.95/mkpiggy.patch +++ b/target/linux/patches/3.4.99/mkpiggy.patch diff --git a/target/linux/patches/3.4.95/module-alloc-size-check.patch b/target/linux/patches/3.4.99/module-alloc-size-check.patch index a792ac60a..a792ac60a 100644 --- a/target/linux/patches/3.4.95/module-alloc-size-check.patch +++ b/target/linux/patches/3.4.99/module-alloc-size-check.patch diff --git a/target/linux/patches/3.4.95/non-static.patch b/target/linux/patches/3.4.99/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.4.95/non-static.patch +++ b/target/linux/patches/3.4.99/non-static.patch diff --git a/target/linux/patches/3.4.95/patch-yaffs2 b/target/linux/patches/3.4.99/patch-yaffs2 index 44c95915f..44c95915f 100644 --- a/target/linux/patches/3.4.95/patch-yaffs2 +++ b/target/linux/patches/3.4.99/patch-yaffs2 diff --git a/target/linux/patches/3.4.95/relocs.patch b/target/linux/patches/3.4.99/relocs.patch index 43c5bb580..43c5bb580 100644 --- a/target/linux/patches/3.4.95/relocs.patch +++ b/target/linux/patches/3.4.99/relocs.patch diff --git a/target/linux/patches/3.4.95/sparc-include.patch b/target/linux/patches/3.4.99/sparc-include.patch index 2f8ffd061..2f8ffd061 100644 --- a/target/linux/patches/3.4.95/sparc-include.patch +++ b/target/linux/patches/3.4.99/sparc-include.patch diff --git a/target/linux/patches/3.4.95/startup.patch b/target/linux/patches/3.4.99/startup.patch index c26430bcb..c26430bcb 100644 --- a/target/linux/patches/3.4.95/startup.patch +++ b/target/linux/patches/3.4.99/startup.patch diff --git a/target/linux/patches/3.4.95/usb-defaults-off.patch b/target/linux/patches/3.4.99/usb-defaults-off.patch index 31367108a..31367108a 100644 --- a/target/linux/patches/3.4.95/usb-defaults-off.patch +++ b/target/linux/patches/3.4.99/usb-defaults-off.patch diff --git a/target/linux/patches/3.4.95/vga-cons-default-off.patch b/target/linux/patches/3.4.99/vga-cons-default-off.patch index 178aeeeb9..178aeeeb9 100644 --- a/target/linux/patches/3.4.95/vga-cons-default-off.patch +++ b/target/linux/patches/3.4.99/vga-cons-default-off.patch diff --git a/target/linux/patches/3.4.95/wlan-cf.patch b/target/linux/patches/3.4.99/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.4.95/wlan-cf.patch +++ b/target/linux/patches/3.4.99/wlan-cf.patch diff --git a/target/linux/patches/3.4.95/zlib-inflate.patch b/target/linux/patches/3.4.99/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.4.95/zlib-inflate.patch +++ b/target/linux/patches/3.4.99/zlib-inflate.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0001-mtd-add-rb4xx-nand-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0001-mtd-add-rb4xx-nand-driver.patch index 8199de991..8199de991 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0001-mtd-add-rb4xx-nand-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0001-mtd-add-rb4xx-nand-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch index ba7fbfad8..ba7fbfad8 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0002-phy-add-ethtool-ioctl-support-used-by-ag71xx-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0003-net-add-ag71xx-mac-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0003-net-add-ag71xx-mac-driver.patch index 1915c184c..1915c184c 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0003-net-add-ag71xx-mac-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0003-net-add-ag71xx-mac-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch index 824d6ebec..824d6ebec 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0004-drivers-link-SPI-drivers-before-MTD-drivers.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch index 505562fe0..505562fe0 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0005-spi-add-various-flags-to-spi_transfer-and-spi_messag.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0006-spi-add-rb4xx-SPI-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0006-spi-add-rb4xx-SPI-driver.patch index 757dc775b..757dc775b 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0006-spi-add-rb4xx-SPI-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0006-spi-add-rb4xx-SPI-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0007-spi-add-rb4xx-cpld-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0007-spi-add-rb4xx-cpld-driver.patch index 452f2e761..452f2e761 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0007-spi-add-rb4xx-cpld-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0007-spi-add-rb4xx-cpld-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0008-gpio-add-GPIO-latch-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0008-gpio-add-GPIO-latch-driver.patch index 188cec3b2..188cec3b2 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0008-gpio-add-GPIO-latch-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0008-gpio-add-GPIO-latch-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0009-spi-export-spi_bitbang_bufs-function.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0009-spi-export-spi_bitbang_bufs-function.patch index dc6af0a9d..dc6af0a9d 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0009-spi-export-spi_bitbang_bufs-function.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0009-spi-export-spi_bitbang_bufs-function.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0010-spi-add-type-field-to-spi_transfer-struct.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0010-spi-add-type-field-to-spi_transfer-struct.patch index 2721d3c4e..2721d3c4e 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0010-spi-add-type-field-to-spi_transfer-struct.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0010-spi-add-type-field-to-spi_transfer-struct.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0011-mtd-m25p80-set-SPI-transfer-type.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0011-mtd-m25p80-set-SPI-transfer-type.patch index e2dfad6e0..e2dfad6e0 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0011-mtd-m25p80-set-SPI-transfer-type.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0011-mtd-m25p80-set-SPI-transfer-type.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch index c63489112..c63489112 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0012-mips-ath79-swizzle-PCI-address-for-ar71xx.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0013-net-add-swconfig-support.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0013-net-add-swconfig-support.patch index 57c112842..57c112842 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0013-net-add-swconfig-support.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0013-net-add-swconfig-support.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0014-phy-add-detach-callback-to-struct-phy_driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0014-phy-add-detach-callback-to-struct-phy_driver.patch index 43ca7ce9b..43ca7ce9b 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0014-phy-add-detach-callback-to-struct-phy_driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0014-phy-add-detach-callback-to-struct-phy_driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0015-phy-add-ar8216-PHY-support.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0015-phy-add-ar8216-PHY-support.patch index 46b2ba467..46b2ba467 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0015-phy-add-ar8216-PHY-support.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0015-phy-add-ar8216-PHY-support.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0016-phy-mdio-bitbang-ignore-TA-value.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0016-phy-mdio-bitbang-ignore-TA-value.patch index fe23f4912..fe23f4912 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0016-phy-mdio-bitbang-ignore-TA-value.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0016-phy-mdio-bitbang-ignore-TA-value.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0017-MIPS-ath79-fix-maximum-timeout.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0017-MIPS-ath79-fix-maximum-timeout.patch index 3ca02783d..3ca02783d 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0017-MIPS-ath79-fix-maximum-timeout.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0017-MIPS-ath79-fix-maximum-timeout.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch index 6a372c8f1..6a372c8f1 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0018-net-allow-PHY-drivers-to-insert-packet-mangle-hooks.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0019-MIPS-ath79-process-board-cmdline-option.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0019-MIPS-ath79-process-board-cmdline-option.patch index 13eae3b8c..13eae3b8c 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0019-MIPS-ath79-process-board-cmdline-option.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0019-MIPS-ath79-process-board-cmdline-option.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0020-spi-ath79-add-fast-flash-read-support.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0020-spi-ath79-add-fast-flash-read-support.patch index 8fd174448..8fd174448 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0020-spi-ath79-add-fast-flash-read-support.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0020-spi-ath79-add-fast-flash-read-support.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0021-phy-add-mdio-boardinfo.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0021-phy-add-mdio-boardinfo.patch index 3ec15e171..3ec15e171 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0021-phy-add-mdio-boardinfo.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0021-phy-add-mdio-boardinfo.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0022-mips-ath79-add-ath79-ethernet-driver.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0022-mips-ath79-add-ath79-ethernet-driver.patch index a7eff47b1..a7eff47b1 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0022-mips-ath79-add-ath79-ethernet-driver.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0022-mips-ath79-add-ath79-ethernet-driver.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch index 67d390432..67d390432 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0023-MIPS-ath79-add-Mikrotik-rb4xx-device-support.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0024-various-fixups-for-Werror.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0024-various-fixups-for-Werror.patch index 77883846d..77883846d 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0024-various-fixups-for-Werror.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0024-various-fixups-for-Werror.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0025-rb4xx_nand-add-partition-for-cfgfs.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0025-rb4xx_nand-add-partition-for-cfgfs.patch index 7d9d85f62..7d9d85f62 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0025-rb4xx_nand-add-partition-for-cfgfs.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0025-rb4xx_nand-add-partition-for-cfgfs.patch diff --git a/target/mips/mikrotik-rb4xx/patches/3.14.9/0026-various-fixups-for-ath5k-fixing-system-freezes.patch b/target/mips/mikrotik-rb4xx/patches/3.14.13/0026-various-fixups-for-ath5k-fixing-system-freezes.patch index 4b17700d8..4b17700d8 100644 --- a/target/mips/mikrotik-rb4xx/patches/3.14.9/0026-various-fixups-for-ath5k-fixing-system-freezes.patch +++ b/target/mips/mikrotik-rb4xx/patches/3.14.13/0026-various-fixups-for-ath5k-fixing-system-freezes.patch diff --git a/target/mips/mikrotik-rb532/patches/3.10.45/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.10.49/rb532-cfgfs.patch index 36ce30d91..36ce30d91 100644 --- a/target/mips/mikrotik-rb532/patches/3.10.45/rb532-cfgfs.patch +++ b/target/mips/mikrotik-rb532/patches/3.10.49/rb532-cfgfs.patch diff --git a/target/mips/mikrotik-rb532/patches/3.10.45/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.10.49/rb532-pci.patch index adfa652b5..adfa652b5 100644 --- a/target/mips/mikrotik-rb532/patches/3.10.45/rb532-pci.patch +++ b/target/mips/mikrotik-rb532/patches/3.10.49/rb532-pci.patch diff --git a/target/mips/mikrotik-rb532/patches/3.12.23/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.12.24/rb532-cfgfs.patch index 36ce30d91..36ce30d91 100644 --- a/target/mips/mikrotik-rb532/patches/3.12.23/rb532-cfgfs.patch +++ b/target/mips/mikrotik-rb532/patches/3.12.24/rb532-cfgfs.patch diff --git a/target/mips/mikrotik-rb532/patches/3.12.23/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.12.24/rb532-pci.patch index adfa652b5..adfa652b5 100644 --- a/target/mips/mikrotik-rb532/patches/3.12.23/rb532-pci.patch +++ b/target/mips/mikrotik-rb532/patches/3.12.24/rb532-pci.patch diff --git a/target/mips/mikrotik-rb532/patches/3.14.9/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.14.13/rb532-cfgfs.patch index 36ce30d91..36ce30d91 100644 --- a/target/mips/mikrotik-rb532/patches/3.14.9/rb532-cfgfs.patch +++ b/target/mips/mikrotik-rb532/patches/3.14.13/rb532-cfgfs.patch diff --git a/target/mips/mikrotik-rb532/patches/3.14.9/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.14.13/rb532-pci.patch index adfa652b5..adfa652b5 100644 --- a/target/mips/mikrotik-rb532/patches/3.14.9/rb532-pci.patch +++ b/target/mips/mikrotik-rb532/patches/3.14.13/rb532-pci.patch diff --git a/target/mips/mikrotik-rb532/patches/3.15.4/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.15.6/rb532-cfgfs.patch index 36ce30d91..36ce30d91 100644 --- a/target/mips/mikrotik-rb532/patches/3.15.4/rb532-cfgfs.patch +++ b/target/mips/mikrotik-rb532/patches/3.15.6/rb532-cfgfs.patch diff --git a/target/mips/mikrotik-rb532/patches/3.15.4/rb532-serial.patch b/target/mips/mikrotik-rb532/patches/3.15.6/rb532-serial.patch index e8800b330..e8800b330 100644 --- a/target/mips/mikrotik-rb532/patches/3.15.4/rb532-serial.patch +++ b/target/mips/mikrotik-rb532/patches/3.15.6/rb532-serial.patch diff --git a/target/mips/mikrotik-rb532/patches/3.4.95/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.4.99/rb532-cfgfs.patch index 36ce30d91..36ce30d91 100644 --- a/target/mips/mikrotik-rb532/patches/3.4.95/rb532-cfgfs.patch +++ b/target/mips/mikrotik-rb532/patches/3.4.99/rb532-cfgfs.patch diff --git a/target/mips/mikrotik-rb532/patches/3.4.95/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.4.99/rb532-pci.patch index adfa652b5..adfa652b5 100644 --- a/target/mips/mikrotik-rb532/patches/3.4.95/rb532-pci.patch +++ b/target/mips/mikrotik-rb532/patches/3.4.99/rb532-pci.patch diff --git a/target/mips64/lemote-yeelong/patches/3.15.6/sm7xx-fb.patch b/target/mips64/lemote-yeelong/patches/3.15.6/sm7xx-fb.patch new file mode 100644 index 000000000..413840abd --- /dev/null +++ b/target/mips64/lemote-yeelong/patches/3.15.6/sm7xx-fb.patch @@ -0,0 +1,1871 @@ +diff -Nur linux-3.15.6.orig/drivers/staging/Kconfig linux-3.15.6/drivers/staging/Kconfig +--- linux-3.15.6.orig/drivers/staging/Kconfig 2014-07-18 01:23:31.000000000 +0200 ++++ linux-3.15.6/drivers/staging/Kconfig 2014-07-22 17:59:31.842279622 +0200 +@@ -80,6 +80,8 @@ + + source "drivers/staging/wlags49_h25/Kconfig" + ++source "drivers/staging/sm7xxfb/Kconfig" ++ + source "drivers/staging/crystalhd/Kconfig" + + source "drivers/staging/cxt1e1/Kconfig" +diff -Nur linux-3.15.6.orig/drivers/staging/Makefile linux-3.15.6/drivers/staging/Makefile +--- linux-3.15.6.orig/drivers/staging/Makefile 2014-07-18 01:23:31.000000000 +0200 ++++ linux-3.15.6/drivers/staging/Makefile 2014-07-22 17:59:31.842279622 +0200 +@@ -34,6 +34,7 @@ + obj-$(CONFIG_IIO) += iio/ + obj-$(CONFIG_WLAGS49_H2) += wlags49_h2/ + obj-$(CONFIG_WLAGS49_H25) += wlags49_h25/ ++obj-$(CONFIG_FB_SM7XX) += sm7xxfb/ + obj-$(CONFIG_CRYSTALHD) += crystalhd/ + obj-$(CONFIG_CXT1E1) += cxt1e1/ + obj-$(CONFIG_FB_XGI) += xgifb/ +diff -Nur linux-3.15.6.orig/drivers/staging/sm7xxfb/Kconfig linux-3.15.6/drivers/staging/sm7xxfb/Kconfig +--- linux-3.15.6.orig/drivers/staging/sm7xxfb/Kconfig 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.15.6/drivers/staging/sm7xxfb/Kconfig 2014-07-22 17:59:31.846279635 +0200 +@@ -0,0 +1,13 @@ ++config FB_SM7XX ++ tristate "Silicon Motion SM7XX framebuffer support" ++ depends on FB && PCI ++ select FB_CFB_FILLRECT ++ select FB_CFB_COPYAREA ++ select FB_CFB_IMAGEBLIT ++ help ++ Frame buffer driver for the Silicon Motion SM710, SM712, SM721 ++ and SM722 chips. ++ ++ This driver is also available as a module. The module will be ++ called sm7xxfb. If you want to compile it as a module, say M ++ here and read <file:Documentation/kbuild/modules.txt>. +diff -Nur linux-3.15.6.orig/drivers/staging/sm7xxfb/Makefile linux-3.15.6/drivers/staging/sm7xxfb/Makefile +--- linux-3.15.6.orig/drivers/staging/sm7xxfb/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.15.6/drivers/staging/sm7xxfb/Makefile 2014-07-22 17:59:31.846279635 +0200 +@@ -0,0 +1 @@ ++obj-$(CONFIG_FB_SM7XX) += sm7xxfb.o +diff -Nur linux-3.15.6.orig/drivers/staging/sm7xxfb/sm7xxfb.c linux-3.15.6/drivers/staging/sm7xxfb/sm7xxfb.c +--- linux-3.15.6.orig/drivers/staging/sm7xxfb/sm7xxfb.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.15.6/drivers/staging/sm7xxfb/sm7xxfb.c 2014-07-22 17:59:31.930279894 +0200 +@@ -0,0 +1,1026 @@ ++/* ++ * Silicon Motion SM7XX frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ * Framebuffer driver for Silicon Motion SM710, SM712, SM721 and SM722 chips ++ */ ++ ++#include <linux/io.h> ++#include <linux/fb.h> ++#include <linux/pci.h> ++#include <linux/init.h> ++#include <linux/slab.h> ++#include <linux/uaccess.h> ++#include <linux/module.h> ++#include <linux/console.h> ++#include <linux/screen_info.h> ++ ++#ifdef CONFIG_PM ++#include <linux/pm.h> ++#endif ++ ++#include "sm7xx.h" ++ ++/* ++* Private structure ++*/ ++struct smtcfb_info { ++ struct pci_dev *pdev; ++ struct fb_info fb; ++ u16 chip_id; ++ u8 chip_rev_id; ++ ++ void __iomem *lfb; /* linear frame buffer */ ++ void __iomem *dp_regs; /* drawing processor control regs */ ++ void __iomem *vp_regs; /* video processor control regs */ ++ void __iomem *cp_regs; /* capture processor control regs */ ++ void __iomem *mmio; /* memory map IO port */ ++ ++ u_int width; ++ u_int height; ++ u_int hz; ++ ++ u32 colreg[17]; ++}; ++ ++void __iomem *smtc_RegBaseAddress; /* Memory Map IO starting address */ ++ ++static struct fb_var_screeninfo smtcfb_var = { ++ .xres = 1024, ++ .yres = 600, ++ .xres_virtual = 1024, ++ .yres_virtual = 600, ++ .bits_per_pixel = 16, ++ .red = {16, 8, 0}, ++ .green = {8, 8, 0}, ++ .blue = {0, 8, 0}, ++ .activate = FB_ACTIVATE_NOW, ++ .height = -1, ++ .width = -1, ++ .vmode = FB_VMODE_NONINTERLACED, ++ .nonstd = 0, ++ .accel_flags = FB_ACCELF_TEXT, ++}; ++ ++static struct fb_fix_screeninfo smtcfb_fix = { ++ .id = "smXXXfb", ++ .type = FB_TYPE_PACKED_PIXELS, ++ .visual = FB_VISUAL_TRUECOLOR, ++ .line_length = 800 * 3, ++ .accel = FB_ACCEL_SMI_LYNX, ++ .type_aux = 0, ++ .xpanstep = 0, ++ .ypanstep = 0, ++ .ywrapstep = 0, ++}; ++ ++struct vesa_mode { ++ char index[6]; ++ u16 lfb_width; ++ u16 lfb_height; ++ u16 lfb_depth; ++}; ++ ++static struct vesa_mode vesa_mode_table[] = { ++ {"0x301", 640, 480, 8}, ++ {"0x303", 800, 600, 8}, ++ {"0x305", 1024, 768, 8}, ++ {"0x307", 1280, 1024, 8}, ++ ++ {"0x311", 640, 480, 16}, ++ {"0x314", 800, 600, 16}, ++ {"0x317", 1024, 768, 16}, ++ {"0x31A", 1280, 1024, 16}, ++ ++ {"0x312", 640, 480, 24}, ++ {"0x315", 800, 600, 24}, ++ {"0x318", 1024, 768, 24}, ++ {"0x31B", 1280, 1024, 24}, ++}; ++ ++struct screen_info smtc_scr_info; ++ ++/* process command line options, get vga parameter */ ++static int __init sm7xx_vga_setup(char *options) ++{ ++ int i; ++ ++ if (!options || !*options) ++ return -EINVAL; ++ ++ smtc_scr_info.lfb_width = 0; ++ smtc_scr_info.lfb_height = 0; ++ smtc_scr_info.lfb_depth = 0; ++ ++ pr_debug("sm7xx_vga_setup = %s\n", options); ++ ++ for (i = 0; i < ARRAY_SIZE(vesa_mode_table); i++) { ++ if (strstr(options, vesa_mode_table[i].index)) { ++ smtc_scr_info.lfb_width = vesa_mode_table[i].lfb_width; ++ smtc_scr_info.lfb_height = ++ vesa_mode_table[i].lfb_height; ++ smtc_scr_info.lfb_depth = vesa_mode_table[i].lfb_depth; ++ return 0; ++ } ++ } ++ ++ return -1; ++} ++__setup("vga=", sm7xx_vga_setup); ++ ++static void sm712_setpalette(int regno, unsigned red, unsigned green, ++ unsigned blue, struct fb_info *info) ++{ ++ /* set bit 5:4 = 01 (write LCD RAM only) */ ++ smtc_seqw(0x66, (smtc_seqr(0x66) & 0xC3) | 0x10); ++ ++ smtc_mmiowb(regno, dac_reg); ++ smtc_mmiowb(red >> 10, dac_val); ++ smtc_mmiowb(green >> 10, dac_val); ++ smtc_mmiowb(blue >> 10, dac_val); ++} ++ ++/* chan_to_field ++ * ++ * convert a colour value into a field position ++ * ++ * from pxafb.c ++ */ ++ ++static inline unsigned int chan_to_field(unsigned int chan, ++ struct fb_bitfield *bf) ++{ ++ chan &= 0xffff; ++ chan >>= 16 - bf->length; ++ return chan << bf->offset; ++} ++ ++static int smtc_blank(int blank_mode, struct fb_info *info) ++{ ++ /* clear DPMS setting */ ++ switch (blank_mode) { ++ case FB_BLANK_UNBLANK: ++ /* Screen On: HSync: On, VSync : On */ ++ smtc_seqw(0x01, (smtc_seqr(0x01) & (~0x20))); ++ smtc_seqw(0x6a, 0x16); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x21, (smtc_seqr(0x21) & 0x77)); ++ smtc_seqw(0x22, (smtc_seqr(0x22) & (~0x30))); ++ smtc_seqw(0x23, (smtc_seqr(0x23) & (~0xc0))); ++ smtc_seqw(0x24, (smtc_seqr(0x24) | 0x01)); ++ smtc_seqw(0x31, (smtc_seqr(0x31) | 0x03)); ++ break; ++ case FB_BLANK_NORMAL: ++ /* Screen Off: HSync: On, VSync : On Soft blank */ ++ smtc_seqw(0x01, (smtc_seqr(0x01) & (~0x20))); ++ smtc_seqw(0x6a, 0x16); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x22, (smtc_seqr(0x22) & (~0x30))); ++ smtc_seqw(0x23, (smtc_seqr(0x23) & (~0xc0))); ++ smtc_seqw(0x24, (smtc_seqr(0x24) | 0x01)); ++ smtc_seqw(0x31, ((smtc_seqr(0x31) & (~0x07)) | 0x00)); ++ break; ++ case FB_BLANK_VSYNC_SUSPEND: ++ /* Screen On: HSync: On, VSync : Off */ ++ smtc_seqw(0x01, (smtc_seqr(0x01) | 0x20)); ++ smtc_seqw(0x20, (smtc_seqr(0x20) & (~0xB0))); ++ smtc_seqw(0x6a, 0x0c); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x21, (smtc_seqr(0x21) | 0x88)); ++ smtc_seqw(0x22, ((smtc_seqr(0x22) & (~0x30)) | 0x20)); ++ smtc_seqw(0x23, ((smtc_seqr(0x23) & (~0xc0)) | 0x20)); ++ smtc_seqw(0x24, (smtc_seqr(0x24) & (~0x01))); ++ smtc_seqw(0x31, ((smtc_seqr(0x31) & (~0x07)) | 0x00)); ++ smtc_seqw(0x34, (smtc_seqr(0x34) | 0x80)); ++ break; ++ case FB_BLANK_HSYNC_SUSPEND: ++ /* Screen On: HSync: Off, VSync : On */ ++ smtc_seqw(0x01, (smtc_seqr(0x01) | 0x20)); ++ smtc_seqw(0x20, (smtc_seqr(0x20) & (~0xB0))); ++ smtc_seqw(0x6a, 0x0c); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x21, (smtc_seqr(0x21) | 0x88)); ++ smtc_seqw(0x22, ((smtc_seqr(0x22) & (~0x30)) | 0x10)); ++ smtc_seqw(0x23, ((smtc_seqr(0x23) & (~0xc0)) | 0xD8)); ++ smtc_seqw(0x24, (smtc_seqr(0x24) & (~0x01))); ++ smtc_seqw(0x31, ((smtc_seqr(0x31) & (~0x07)) | 0x00)); ++ smtc_seqw(0x34, (smtc_seqr(0x34) | 0x80)); ++ break; ++ case FB_BLANK_POWERDOWN: ++ /* Screen On: HSync: Off, VSync : Off */ ++ smtc_seqw(0x01, (smtc_seqr(0x01) | 0x20)); ++ smtc_seqw(0x20, (smtc_seqr(0x20) & (~0xB0))); ++ smtc_seqw(0x6a, 0x0c); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x21, (smtc_seqr(0x21) | 0x88)); ++ smtc_seqw(0x22, ((smtc_seqr(0x22) & (~0x30)) | 0x30)); ++ smtc_seqw(0x23, ((smtc_seqr(0x23) & (~0xc0)) | 0xD8)); ++ smtc_seqw(0x24, (smtc_seqr(0x24) & (~0x01))); ++ smtc_seqw(0x31, ((smtc_seqr(0x31) & (~0x07)) | 0x00)); ++ smtc_seqw(0x34, (smtc_seqr(0x34) | 0x80)); ++ break; ++ default: ++ return -EINVAL; ++ } ++ ++ return 0; ++} ++ ++static int smtc_setcolreg(unsigned regno, unsigned red, unsigned green, ++ unsigned blue, unsigned trans, struct fb_info *info) ++{ ++ struct smtcfb_info *sfb; ++ u32 val; ++ ++ sfb = info->par; ++ ++ if (regno > 255) ++ return 1; ++ ++ switch (sfb->fb.fix.visual) { ++ case FB_VISUAL_DIRECTCOLOR: ++ case FB_VISUAL_TRUECOLOR: ++ /* ++ * 16/32 bit true-colour, use pseudo-palette for 16 base color ++ */ ++ if (regno < 16) { ++ if (sfb->fb.var.bits_per_pixel == 16) { ++ u32 *pal = sfb->fb.pseudo_palette; ++ val = chan_to_field(red, &sfb->fb.var.red); ++ val |= chan_to_field(green, &sfb->fb.var.green); ++ val |= chan_to_field(blue, &sfb->fb.var.blue); ++#ifdef __BIG_ENDIAN ++ pal[regno] = ++ ((red & 0xf800) >> 8) | ++ ((green & 0xe000) >> 13) | ++ ((green & 0x1c00) << 3) | ++ ((blue & 0xf800) >> 3); ++#else ++ pal[regno] = val; ++#endif ++ } else { ++ u32 *pal = sfb->fb.pseudo_palette; ++ val = chan_to_field(red, &sfb->fb.var.red); ++ val |= chan_to_field(green, &sfb->fb.var.green); ++ val |= chan_to_field(blue, &sfb->fb.var.blue); ++#ifdef __BIG_ENDIAN ++ val = ++ (val & 0xff00ff00 >> 8) | ++ (val & 0x00ff00ff << 8); ++#endif ++ pal[regno] = val; ++ } ++ } ++ break; ++ ++ case FB_VISUAL_PSEUDOCOLOR: ++ /* color depth 8 bit */ ++ sm712_setpalette(regno, red, green, blue, info); ++ break; ++ ++ default: ++ return 1; /* unknown type */ ++ } ++ ++ return 0; ++ ++} ++ ++#ifdef __BIG_ENDIAN ++static ssize_t smtcfb_read(struct fb_info *info, char __user *buf, size_t ++ count, loff_t *ppos) ++{ ++ unsigned long p = *ppos; ++ ++ u32 *buffer, *dst; ++ u32 __iomem *src; ++ int c, i, cnt = 0, err = 0; ++ unsigned long total_size; ++ ++ if (!info || !info->screen_base) ++ return -ENODEV; ++ ++ if (info->state != FBINFO_STATE_RUNNING) ++ return -EPERM; ++ ++ total_size = info->screen_size; ++ ++ if (total_size == 0) ++ total_size = info->fix.smem_len; ++ ++ if (p >= total_size) ++ return 0; ++ ++ if (count >= total_size) ++ count = total_size; ++ ++ if (count + p > total_size) ++ count = total_size - p; ++ ++ buffer = kmalloc((count > PAGE_SIZE) ? PAGE_SIZE : count, GFP_KERNEL); ++ if (!buffer) ++ return -ENOMEM; ++ ++ src = (u32 __iomem *) (info->screen_base + p); ++ ++ if (info->fbops->fb_sync) ++ info->fbops->fb_sync(info); ++ ++ while (count) { ++ c = (count > PAGE_SIZE) ? PAGE_SIZE : count; ++ dst = buffer; ++ for (i = c >> 2; i--;) { ++ *dst = fb_readl(src++); ++ *dst = ++ (*dst & 0xff00ff00 >> 8) | ++ (*dst & 0x00ff00ff << 8); ++ dst++; ++ } ++ if (c & 3) { ++ u8 *dst8 = (u8 *) dst; ++ u8 __iomem *src8 = (u8 __iomem *) src; ++ ++ for (i = c & 3; i--;) { ++ if (i & 1) { ++ *dst8++ = fb_readb(++src8); ++ } else { ++ *dst8++ = fb_readb(--src8); ++ src8 += 2; ++ } ++ } ++ src = (u32 __iomem *) src8; ++ } ++ ++ if (copy_to_user(buf, buffer, c)) { ++ err = -EFAULT; ++ break; ++ } ++ *ppos += c; ++ buf += c; ++ cnt += c; ++ count -= c; ++ } ++ ++ kfree(buffer); ++ ++ return (err) ? err : cnt; ++} ++ ++static ssize_t ++smtcfb_write(struct fb_info *info, const char __user *buf, size_t count, ++ loff_t *ppos) ++{ ++ unsigned long p = *ppos; ++ ++ u32 *buffer, *src; ++ u32 __iomem *dst; ++ int c, i, cnt = 0, err = 0; ++ unsigned long total_size; ++ ++ if (!info || !info->screen_base) ++ return -ENODEV; ++ ++ if (info->state != FBINFO_STATE_RUNNING) ++ return -EPERM; ++ ++ total_size = info->screen_size; ++ ++ if (total_size == 0) ++ total_size = info->fix.smem_len; ++ ++ if (p > total_size) ++ return -EFBIG; ++ ++ if (count > total_size) { ++ err = -EFBIG; ++ count = total_size; ++ } ++ ++ if (count + p > total_size) { ++ if (!err) ++ err = -ENOSPC; ++ ++ count = total_size - p; ++ } ++ ++ buffer = kmalloc((count > PAGE_SIZE) ? PAGE_SIZE : count, GFP_KERNEL); ++ if (!buffer) ++ return -ENOMEM; ++ ++ dst = (u32 __iomem *) (info->screen_base + p); ++ ++ if (info->fbops->fb_sync) ++ info->fbops->fb_sync(info); ++ ++ while (count) { ++ c = (count > PAGE_SIZE) ? PAGE_SIZE : count; ++ src = buffer; ++ ++ if (copy_from_user(src, buf, c)) { ++ err = -EFAULT; ++ break; ++ } ++ ++ for (i = c >> 2; i--;) { ++ fb_writel((*src & 0xff00ff00 >> 8) | ++ (*src & 0x00ff00ff << 8), dst++); ++ src++; ++ } ++ if (c & 3) { ++ u8 *src8 = (u8 *) src; ++ u8 __iomem *dst8 = (u8 __iomem *) dst; ++ ++ for (i = c & 3; i--;) { ++ if (i & 1) { ++ fb_writeb(*src8++, ++dst8); ++ } else { ++ fb_writeb(*src8++, --dst8); ++ dst8 += 2; ++ } ++ } ++ dst = (u32 __iomem *) dst8; ++ } ++ ++ *ppos += c; ++ buf += c; ++ cnt += c; ++ count -= c; ++ } ++ ++ kfree(buffer); ++ ++ return (cnt) ? cnt : err; ++} ++#endif /* ! __BIG_ENDIAN */ ++ ++static void sm7xx_set_timing(struct smtcfb_info *sfb) ++{ ++ int i = 0, j = 0; ++ u32 m_nScreenStride; ++ ++ dev_dbg(&sfb->pdev->dev, ++ "sfb->width=%d sfb->height=%d sfb->fb.var.bits_per_pixel=%d sfb->hz=%d\n", ++ sfb->width, sfb->height, sfb->fb.var.bits_per_pixel, sfb->hz); ++ ++ for (j = 0; j < numVGAModes; j++) { ++ if (VGAMode[j].mmSizeX == sfb->width && ++ VGAMode[j].mmSizeY == sfb->height && ++ VGAMode[j].bpp == sfb->fb.var.bits_per_pixel && ++ VGAMode[j].hz == sfb->hz) { ++ ++ dev_dbg(&sfb->pdev->dev, ++ "VGAMode[j].mmSizeX=%d VGAMode[j].mmSizeY=%d VGAMode[j].bpp=%d VGAMode[j].hz=%d\n", ++ VGAMode[j].mmSizeX, VGAMode[j].mmSizeY, ++ VGAMode[j].bpp, VGAMode[j].hz); ++ ++ dev_dbg(&sfb->pdev->dev, "VGAMode index=%d\n", j); ++ ++ smtc_mmiowb(0x0, 0x3c6); ++ ++ smtc_seqw(0, 0x1); ++ ++ smtc_mmiowb(VGAMode[j].Init_MISC, 0x3c2); ++ ++ /* init SEQ register SR00 - SR04 */ ++ for (i = 0; i < SIZE_SR00_SR04; i++) ++ smtc_seqw(i, VGAMode[j].Init_SR00_SR04[i]); ++ ++ /* init SEQ register SR10 - SR24 */ ++ for (i = 0; i < SIZE_SR10_SR24; i++) ++ smtc_seqw(i + 0x10, ++ VGAMode[j].Init_SR10_SR24[i]); ++ ++ /* init SEQ register SR30 - SR75 */ ++ for (i = 0; i < SIZE_SR30_SR75; i++) ++ if ((i + 0x30) != 0x62 && ++ (i + 0x30) != 0x6a && ++ (i + 0x30) != 0x6b) ++ smtc_seqw(i + 0x30, ++ VGAMode[j].Init_SR30_SR75[i]); ++ ++ /* init SEQ register SR80 - SR93 */ ++ for (i = 0; i < SIZE_SR80_SR93; i++) ++ smtc_seqw(i + 0x80, ++ VGAMode[j].Init_SR80_SR93[i]); ++ ++ /* init SEQ register SRA0 - SRAF */ ++ for (i = 0; i < SIZE_SRA0_SRAF; i++) ++ smtc_seqw(i + 0xa0, ++ VGAMode[j].Init_SRA0_SRAF[i]); ++ ++ /* init Graphic register GR00 - GR08 */ ++ for (i = 0; i < SIZE_GR00_GR08; i++) ++ smtc_grphw(i, VGAMode[j].Init_GR00_GR08[i]); ++ ++ /* init Attribute register AR00 - AR14 */ ++ for (i = 0; i < SIZE_AR00_AR14; i++) ++ smtc_attrw(i, VGAMode[j].Init_AR00_AR14[i]); ++ ++ /* init CRTC register CR00 - CR18 */ ++ for (i = 0; i < SIZE_CR00_CR18; i++) ++ smtc_crtcw(i, VGAMode[j].Init_CR00_CR18[i]); ++ ++ /* init CRTC register CR30 - CR4D */ ++ for (i = 0; i < SIZE_CR30_CR4D; i++) ++ smtc_crtcw(i + 0x30, ++ VGAMode[j].Init_CR30_CR4D[i]); ++ ++ /* init CRTC register CR90 - CRA7 */ ++ for (i = 0; i < SIZE_CR90_CRA7; i++) ++ smtc_crtcw(i + 0x90, ++ VGAMode[j].Init_CR90_CRA7[i]); ++ } ++ } ++ smtc_mmiowb(0x67, 0x3c2); ++ ++ /* set VPR registers */ ++ writel(0x0, sfb->vp_regs + 0x0C); ++ writel(0x0, sfb->vp_regs + 0x40); ++ ++ /* set data width */ ++ m_nScreenStride = ++ (sfb->width * sfb->fb.var.bits_per_pixel) / 64; ++ switch (sfb->fb.var.bits_per_pixel) { ++ case 8: ++ writel(0x0, sfb->vp_regs + 0x0); ++ break; ++ case 16: ++ writel(0x00020000, sfb->vp_regs + 0x0); ++ break; ++ case 24: ++ writel(0x00040000, sfb->vp_regs + 0x0); ++ break; ++ case 32: ++ writel(0x00030000, sfb->vp_regs + 0x0); ++ break; ++ } ++ writel((u32) (((m_nScreenStride + 2) << 16) | m_nScreenStride), ++ sfb->vp_regs + 0x10); ++ ++} ++ ++static void smtc_set_timing(struct smtcfb_info *sfb) ++{ ++ switch (sfb->chip_id) { ++ case 0x710: ++ case 0x712: ++ case 0x720: ++ sm7xx_set_timing(sfb); ++ break; ++ } ++} ++ ++static void smtcfb_setmode(struct smtcfb_info *sfb) ++{ ++ switch (sfb->fb.var.bits_per_pixel) { ++ case 32: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 4; ++ sfb->fb.var.red.length = 8; ++ sfb->fb.var.green.length = 8; ++ sfb->fb.var.blue.length = 8; ++ sfb->fb.var.red.offset = 16; ++ sfb->fb.var.green.offset = 8; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 24: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 3; ++ sfb->fb.var.red.length = 8; ++ sfb->fb.var.green.length = 8; ++ sfb->fb.var.blue.length = 8; ++ sfb->fb.var.red.offset = 16; ++ sfb->fb.var.green.offset = 8; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 8: ++ sfb->fb.fix.visual = FB_VISUAL_PSEUDOCOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres; ++ sfb->fb.var.red.length = 3; ++ sfb->fb.var.green.length = 3; ++ sfb->fb.var.blue.length = 2; ++ sfb->fb.var.red.offset = 5; ++ sfb->fb.var.green.offset = 2; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 16: ++ default: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 2; ++ sfb->fb.var.red.length = 5; ++ sfb->fb.var.green.length = 6; ++ sfb->fb.var.blue.length = 5; ++ sfb->fb.var.red.offset = 11; ++ sfb->fb.var.green.offset = 5; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ } ++ ++ sfb->width = sfb->fb.var.xres; ++ sfb->height = sfb->fb.var.yres; ++ sfb->hz = 60; ++ smtc_set_timing(sfb); ++} ++ ++static int smtc_check_var(struct fb_var_screeninfo *var, struct fb_info *info) ++{ ++ /* sanity checks */ ++ if (var->xres_virtual < var->xres) ++ var->xres_virtual = var->xres; ++ ++ if (var->yres_virtual < var->yres) ++ var->yres_virtual = var->yres; ++ ++ /* set valid default bpp */ ++ if ((var->bits_per_pixel != 8) && (var->bits_per_pixel != 16) && ++ (var->bits_per_pixel != 24) && (var->bits_per_pixel != 32)) ++ var->bits_per_pixel = 16; ++ ++ return 0; ++} ++ ++static int smtc_set_par(struct fb_info *info) ++{ ++ smtcfb_setmode(info->par); ++ ++ return 0; ++} ++ ++static struct fb_ops smtcfb_ops = { ++ .owner = THIS_MODULE, ++ .fb_check_var = smtc_check_var, ++ .fb_set_par = smtc_set_par, ++ .fb_setcolreg = smtc_setcolreg, ++ .fb_blank = smtc_blank, ++ .fb_fillrect = cfb_fillrect, ++ .fb_imageblit = cfb_imageblit, ++ .fb_copyarea = cfb_copyarea, ++#ifdef __BIG_ENDIAN ++ .fb_read = smtcfb_read, ++ .fb_write = smtcfb_write, ++#endif ++}; ++ ++/* ++ * alloc struct smtcfb_info and assign default values ++ */ ++static struct smtcfb_info *smtc_alloc_fb_info(struct pci_dev *pdev) ++{ ++ struct smtcfb_info *sfb; ++ ++ sfb = kzalloc(sizeof(*sfb), GFP_KERNEL); ++ ++ if (!sfb) ++ return NULL; ++ ++ sfb->pdev = pdev; ++ ++ sfb->fb.flags = FBINFO_FLAG_DEFAULT; ++ sfb->fb.fbops = &smtcfb_ops; ++ sfb->fb.fix = smtcfb_fix; ++ sfb->fb.var = smtcfb_var; ++ sfb->fb.pseudo_palette = sfb->colreg; ++ sfb->fb.par = sfb; ++ ++ return sfb; ++} ++ ++/* ++ * free struct smtcfb_info ++ */ ++static void smtc_free_fb_info(struct smtcfb_info *sfb) ++{ ++ kfree(sfb); ++} ++ ++/* ++ * Unmap in the memory mapped IO registers ++ */ ++ ++static void smtc_unmap_mmio(struct smtcfb_info *sfb) ++{ ++ if (sfb && smtc_RegBaseAddress) ++ smtc_RegBaseAddress = NULL; ++} ++ ++/* ++ * Map in the screen memory ++ */ ++ ++static int smtc_map_smem(struct smtcfb_info *sfb, ++ struct pci_dev *pdev, u_long smem_len) ++{ ++ ++ sfb->fb.fix.smem_start = pci_resource_start(pdev, 0); ++ ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) ++ sfb->fb.fix.smem_start += 0x800000; ++#endif ++ ++ sfb->fb.fix.smem_len = smem_len; ++ ++ sfb->fb.screen_base = sfb->lfb; ++ ++ if (!sfb->fb.screen_base) { ++ dev_err(&pdev->dev, ++ "%s: unable to map screen memory\n", sfb->fb.fix.id); ++ return -ENOMEM; ++ } ++ ++ return 0; ++} ++ ++/* ++ * Unmap in the screen memory ++ * ++ */ ++static void smtc_unmap_smem(struct smtcfb_info *sfb) ++{ ++ if (sfb && sfb->fb.screen_base) { ++ iounmap(sfb->fb.screen_base); ++ sfb->fb.screen_base = NULL; ++ } ++} ++ ++/* ++ * We need to wake up the device and make sure its in linear memory mode. ++ */ ++static inline void sm7xx_init_hw(void) ++{ ++ outb_p(0x18, 0x3c4); ++ outb_p(0x11, 0x3c5); ++} ++ ++static int smtcfb_pci_probe(struct pci_dev *pdev, ++ const struct pci_device_id *ent) ++{ ++ struct smtcfb_info *sfb; ++ u_long smem_size = 0x00800000; /* default 8MB */ ++ int err; ++ unsigned long mmio_base; ++ ++ dev_info(&pdev->dev, "Silicon Motion display driver."); ++ ++ err = pci_enable_device(pdev); /* enable SMTC chip */ ++ if (err) ++ return err; ++ ++ sprintf(smtcfb_fix.id, "sm%Xfb", ent->device); ++ ++ sfb = smtc_alloc_fb_info(pdev); ++ ++ if (!sfb) { ++ err = -ENOMEM; ++ goto failed_free; ++ } ++ ++ sfb->chip_id = ent->device; ++ ++ pci_set_drvdata(pdev, sfb); ++ ++ sm7xx_init_hw(); ++ ++ /* get mode parameter from smtc_scr_info */ ++ if (smtc_scr_info.lfb_width != 0) { ++ sfb->fb.var.xres = smtc_scr_info.lfb_width; ++ sfb->fb.var.yres = smtc_scr_info.lfb_height; ++ sfb->fb.var.bits_per_pixel = smtc_scr_info.lfb_depth; ++ } else { ++ /* default resolution 1024x600 16bit mode */ ++ sfb->fb.var.xres = SCREEN_X_RES; ++ sfb->fb.var.yres = SCREEN_Y_RES; ++ sfb->fb.var.bits_per_pixel = SCREEN_BPP; ++ } ++ ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 24) ++ sfb->fb.var.bits_per_pixel = (smtc_scr_info.lfb_depth = 32); ++#endif ++ /* Map address and memory detection */ ++ mmio_base = pci_resource_start(pdev, 0); ++ pci_read_config_byte(pdev, PCI_REVISION_ID, &sfb->chip_rev_id); ++ ++ switch (sfb->chip_id) { ++ case 0x710: ++ case 0x712: ++ sfb->fb.fix.mmio_start = mmio_base + 0x00400000; ++ sfb->fb.fix.mmio_len = 0x00400000; ++ smem_size = SM712_VIDEOMEMORYSIZE; ++#ifdef __BIG_ENDIAN ++ sfb->lfb = ioremap(mmio_base, 0x00c00000); ++#else ++ sfb->lfb = ioremap(mmio_base, 0x00800000); ++#endif ++ sfb->mmio = (smtc_RegBaseAddress = ++ sfb->lfb + 0x00700000); ++ sfb->dp_regs = sfb->lfb + 0x00408000; ++ sfb->vp_regs = sfb->lfb + 0x0040c000; ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) { ++ sfb->lfb += 0x800000; ++ dev_info(&pdev->dev, "sfb->lfb=%p", sfb->lfb); ++ } ++#endif ++ if (!smtc_RegBaseAddress) { ++ dev_err(&pdev->dev, ++ "%s: unable to map memory mapped IO!", ++ sfb->fb.fix.id); ++ err = -ENOMEM; ++ goto failed_fb; ++ } ++ ++ /* set MCLK = 14.31818 * (0x16 / 0x2) */ ++ smtc_seqw(0x6a, 0x16); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x62, 0x3e); ++ /* enable PCI burst */ ++ smtc_seqw(0x17, 0x20); ++ /* enable word swap */ ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) ++ smtc_seqw(0x17, 0x30); ++#endif ++ break; ++ case 0x720: ++ sfb->fb.fix.mmio_start = mmio_base; ++ sfb->fb.fix.mmio_len = 0x00200000; ++ smem_size = SM722_VIDEOMEMORYSIZE; ++ sfb->dp_regs = ioremap(mmio_base, 0x00a00000); ++ sfb->lfb = sfb->dp_regs + 0x00200000; ++ sfb->mmio = (smtc_RegBaseAddress = ++ sfb->dp_regs + 0x000c0000); ++ sfb->vp_regs = sfb->dp_regs + 0x800; ++ ++ smtc_seqw(0x62, 0xff); ++ smtc_seqw(0x6a, 0x0d); ++ smtc_seqw(0x6b, 0x02); ++ break; ++ default: ++ dev_err(&pdev->dev, ++ "No valid Silicon Motion display chip was detected!"); ++ ++ goto failed_fb; ++ } ++ ++ /* can support 32 bpp */ ++ if (15 == sfb->fb.var.bits_per_pixel) ++ sfb->fb.var.bits_per_pixel = 16; ++ ++ sfb->fb.var.xres_virtual = sfb->fb.var.xres; ++ sfb->fb.var.yres_virtual = sfb->fb.var.yres; ++ err = smtc_map_smem(sfb, pdev, smem_size); ++ if (err) ++ goto failed; ++ ++ smtcfb_setmode(sfb); ++ ++ err = register_framebuffer(&sfb->fb); ++ if (err < 0) ++ goto failed; ++ ++ dev_info(&pdev->dev, ++ "Silicon Motion SM%X Rev%X primary display mode %dx%d-%d Init Complete.", ++ sfb->chip_id, sfb->chip_rev_id, sfb->fb.var.xres, ++ sfb->fb.var.yres, sfb->fb.var.bits_per_pixel); ++ ++ return 0; ++ ++failed: ++ dev_err(&pdev->dev, "Silicon Motion, Inc. primary display init fail."); ++ ++ smtc_unmap_smem(sfb); ++ smtc_unmap_mmio(sfb); ++failed_fb: ++ smtc_free_fb_info(sfb); ++ ++failed_free: ++ pci_disable_device(pdev); ++ ++ return err; ++} ++ ++/* ++ * 0x710 (LynxEM) ++ * 0x712 (LynxEM+) ++ * 0x720 (Lynx3DM, Lynx3DM+) ++ */ ++static const struct pci_device_id smtcfb_pci_table[] = { ++ { PCI_DEVICE(0x126f, 0x710), }, ++ { PCI_DEVICE(0x126f, 0x712), }, ++ { PCI_DEVICE(0x126f, 0x720), }, ++ {0,} ++}; ++ ++static void smtcfb_pci_remove(struct pci_dev *pdev) ++{ ++ struct smtcfb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ smtc_unmap_smem(sfb); ++ smtc_unmap_mmio(sfb); ++ unregister_framebuffer(&sfb->fb); ++ smtc_free_fb_info(sfb); ++} ++ ++#ifdef CONFIG_PM ++static int smtcfb_pci_suspend(struct device *device) ++{ ++ struct pci_dev *pdev = to_pci_dev(device); ++ struct smtcfb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ ++ /* set the hw in sleep mode use external clock and self memory refresh ++ * so that we can turn off internal PLLs later on ++ */ ++ smtc_seqw(0x20, (smtc_seqr(0x20) | 0xc0)); ++ smtc_seqw(0x69, (smtc_seqr(0x69) & 0xf7)); ++ ++ console_lock(); ++ fb_set_suspend(&sfb->fb, 1); ++ console_unlock(); ++ ++ /* additionally turn off all function blocks including internal PLLs */ ++ smtc_seqw(0x21, 0xff); ++ ++ return 0; ++} ++ ++static int smtcfb_pci_resume(struct device *device) ++{ ++ struct pci_dev *pdev = to_pci_dev(device); ++ struct smtcfb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ ++ /* reinit hardware */ ++ sm7xx_init_hw(); ++ switch (sfb->chip_id) { ++ case 0x710: ++ case 0x712: ++ /* set MCLK = 14.31818 * (0x16 / 0x2) */ ++ smtc_seqw(0x6a, 0x16); ++ smtc_seqw(0x6b, 0x02); ++ smtc_seqw(0x62, 0x3e); ++ /* enable PCI burst */ ++ smtc_seqw(0x17, 0x20); ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) ++ smtc_seqw(0x17, 0x30); ++#endif ++ break; ++ case 0x720: ++ smtc_seqw(0x62, 0xff); ++ smtc_seqw(0x6a, 0x0d); ++ smtc_seqw(0x6b, 0x02); ++ break; ++ } ++ ++ smtc_seqw(0x34, (smtc_seqr(0x34) | 0xc0)); ++ smtc_seqw(0x33, ((smtc_seqr(0x33) | 0x08) & 0xfb)); ++ ++ smtcfb_setmode(sfb); ++ ++ console_lock(); ++ fb_set_suspend(&sfb->fb, 0); ++ console_unlock(); ++ ++ return 0; ++} ++ ++static SIMPLE_DEV_PM_OPS(sm7xx_pm_ops, smtcfb_pci_suspend, smtcfb_pci_resume); ++#define SM7XX_PM_OPS (&sm7xx_pm_ops) ++ ++#else /* !CONFIG_PM */ ++ ++#define SM7XX_PM_OPS NULL ++ ++#endif /* !CONFIG_PM */ ++ ++static struct pci_driver smtcfb_driver = { ++ .name = "smtcfb", ++ .id_table = smtcfb_pci_table, ++ .probe = smtcfb_pci_probe, ++ .remove = smtcfb_pci_remove, ++ .driver.pm = SM7XX_PM_OPS, ++}; ++ ++module_pci_driver(smtcfb_driver); ++ ++MODULE_AUTHOR("Siliconmotion "); ++MODULE_DESCRIPTION("Framebuffer driver for SMI Graphic Cards"); ++MODULE_LICENSE("GPL"); +diff -Nur linux-3.15.6.orig/drivers/staging/sm7xxfb/sm7xx.h linux-3.15.6/drivers/staging/sm7xxfb/sm7xx.h +--- linux-3.15.6.orig/drivers/staging/sm7xxfb/sm7xx.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.15.6/drivers/staging/sm7xxfb/sm7xx.h 2014-07-22 17:59:31.846279635 +0200 +@@ -0,0 +1,779 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ */ ++ ++#define NR_PALETTE 256 ++ ++#define FB_ACCEL_SMI_LYNX 88 ++ ++#define SCREEN_X_RES 1024 ++#define SCREEN_Y_RES 600 ++#define SCREEN_BPP 16 ++ ++/*Assume SM712 graphics chip has 4MB VRAM */ ++#define SM712_VIDEOMEMORYSIZE 0x00400000 ++/*Assume SM722 graphics chip has 8MB VRAM */ ++#define SM722_VIDEOMEMORYSIZE 0x00800000 ++ ++#define dac_reg (0x3c8) ++#define dac_val (0x3c9) ++ ++extern void __iomem *smtc_RegBaseAddress; ++#define smtc_mmiowb(dat, reg) writeb(dat, smtc_RegBaseAddress + reg) ++#define smtc_mmioww(dat, reg) writew(dat, smtc_RegBaseAddress + reg) ++#define smtc_mmiowl(dat, reg) writel(dat, smtc_RegBaseAddress + reg) ++ ++#define smtc_mmiorb(reg) readb(smtc_RegBaseAddress + reg) ++#define smtc_mmiorw(reg) readw(smtc_RegBaseAddress + reg) ++#define smtc_mmiorl(reg) readl(smtc_RegBaseAddress + reg) ++ ++#define SIZE_SR00_SR04 (0x04 - 0x00 + 1) ++#define SIZE_SR10_SR24 (0x24 - 0x10 + 1) ++#define SIZE_SR30_SR75 (0x75 - 0x30 + 1) ++#define SIZE_SR80_SR93 (0x93 - 0x80 + 1) ++#define SIZE_SRA0_SRAF (0xAF - 0xA0 + 1) ++#define SIZE_GR00_GR08 (0x08 - 0x00 + 1) ++#define SIZE_AR00_AR14 (0x14 - 0x00 + 1) ++#define SIZE_CR00_CR18 (0x18 - 0x00 + 1) ++#define SIZE_CR30_CR4D (0x4D - 0x30 + 1) ++#define SIZE_CR90_CRA7 (0xA7 - 0x90 + 1) ++#define SIZE_VPR (0x6C + 1) ++#define SIZE_DPR (0x44 + 1) ++ ++static inline void smtc_crtcw(int reg, int val) ++{ ++ smtc_mmiowb(reg, 0x3d4); ++ smtc_mmiowb(val, 0x3d5); ++} ++ ++static inline unsigned int smtc_crtcr(int reg) ++{ ++ smtc_mmiowb(reg, 0x3d4); ++ return smtc_mmiorb(0x3d5); ++} ++ ++static inline void smtc_grphw(int reg, int val) ++{ ++ smtc_mmiowb(reg, 0x3ce); ++ smtc_mmiowb(val, 0x3cf); ++} ++ ++static inline unsigned int smtc_grphr(int reg) ++{ ++ smtc_mmiowb(reg, 0x3ce); ++ return smtc_mmiorb(0x3cf); ++} ++ ++static inline void smtc_attrw(int reg, int val) ++{ ++ smtc_mmiorb(0x3da); ++ smtc_mmiowb(reg, 0x3c0); ++ smtc_mmiorb(0x3c1); ++ smtc_mmiowb(val, 0x3c0); ++} ++ ++static inline void smtc_seqw(int reg, int val) ++{ ++ smtc_mmiowb(reg, 0x3c4); ++ smtc_mmiowb(val, 0x3c5); ++} ++ ++static inline unsigned int smtc_seqr(int reg) ++{ ++ smtc_mmiowb(reg, 0x3c4); ++ return smtc_mmiorb(0x3c5); ++} ++ ++/* The next structure holds all information relevant for a specific video mode. ++ */ ++ ++struct ModeInit { ++ int mmSizeX; ++ int mmSizeY; ++ int bpp; ++ int hz; ++ unsigned char Init_MISC; ++ unsigned char Init_SR00_SR04[SIZE_SR00_SR04]; ++ unsigned char Init_SR10_SR24[SIZE_SR10_SR24]; ++ unsigned char Init_SR30_SR75[SIZE_SR30_SR75]; ++ unsigned char Init_SR80_SR93[SIZE_SR80_SR93]; ++ unsigned char Init_SRA0_SRAF[SIZE_SRA0_SRAF]; ++ unsigned char Init_GR00_GR08[SIZE_GR00_GR08]; ++ unsigned char Init_AR00_AR14[SIZE_AR00_AR14]; ++ unsigned char Init_CR00_CR18[SIZE_CR00_CR18]; ++ unsigned char Init_CR30_CR4D[SIZE_CR30_CR4D]; ++ unsigned char Init_CR90_CRA7[SIZE_CR90_CRA7]; ++}; ++ ++/********************************************************************** ++ SM712 Mode table. ++ **********************************************************************/ ++struct ModeInit VGAMode[] = { ++ { ++ /* mode#0: 640 x 480 16Bpp 60Hz */ ++ 640, 480, 16, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ { ++ /* mode#1: 640 x 480 24Bpp 60Hz */ ++ 640, 480, 24, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ { ++ /* mode#0: 640 x 480 32Bpp 60Hz */ ++ 640, 480, 32, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ ++ { /* mode#2: 800 x 600 16Bpp 60Hz */ ++ 800, 600, 16, 60, ++ /* Init_MISC */ ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x34, 0x03, 0x20, 0x09, 0xC0, 0x24, 0x24, 0x24, ++ 0x24, 0x24, 0x24, 0x24, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x38, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x24, 0x24, 0x24, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x24, 0x24, 0x00, 0x00, 0x24, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x35, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0x00, 0x00, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x24, ++ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x24, 0x24, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ { /* mode#3: 800 x 600 24Bpp 60Hz */ ++ 800, 600, 24, 60, ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x36, 0x03, 0x20, 0x09, 0xC0, 0x36, 0x36, 0x36, ++ 0x36, 0x36, 0x36, 0x36, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x36, 0x36, 0x36, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x36, 0x36, 0x00, 0x00, 0x36, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x36, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x36, 0x36, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ { /* mode#7: 800 x 600 32Bpp 60Hz */ ++ 800, 600, 32, 60, ++ /* Init_MISC */ ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x34, 0x03, 0x20, 0x09, 0xC0, 0x24, 0x24, 0x24, ++ 0x24, 0x24, 0x24, 0x24, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x38, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x24, 0x24, 0x24, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x24, 0x24, 0x00, 0x00, 0x24, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x35, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0x00, 0x00, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x24, ++ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x24, 0x24, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ /* We use 1024x768 table to light 1024x600 panel for lemote */ ++ { /* mode#4: 1024 x 600 16Bpp 60Hz */ ++ 1024, 600, 16, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xC8, 0x40, 0x14, 0x60, 0x00, 0x0A, 0x17, 0x20, ++ 0x51, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x00, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x22, 0x03, 0x24, 0x09, 0xC0, 0x22, 0x22, 0x22, ++ 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x22, 0x22, 0x22, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x22, 0x22, 0x00, 0x00, 0x22, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x16, 0x02, 0x0D, 0x82, 0x09, 0x02, ++ 0x04, 0x45, 0x3F, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x82, 0x0b, 0x6f, 0x57, 0x00, ++ 0x5c, 0x0f, 0xE0, 0xe0, 0x7F, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#5: 1024 x 768 24Bpp 60Hz */ ++ 1024, 768, 24, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x3B, 0x0D, 0x09, 0x02, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x86, 0x15, 0x24, 0xFF, 0x00, ++ 0x01, 0x07, 0xE5, 0x20, 0x7F, 0xFF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#4: 1024 x 768 32Bpp 60Hz */ ++ 1024, 768, 32, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x3B, 0x0D, 0x09, 0x02, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x86, 0x15, 0x24, 0xFF, 0x00, ++ 0x01, 0x07, 0xE5, 0x20, 0x7F, 0xFF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#6: 320 x 240 16Bpp 60Hz */ ++ 320, 240, 16, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x08, 0x43, 0x08, 0x43, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x30, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0x2E, 0x27, 0x00, 0x2b, 0x0c, 0x0F, 0xEF, 0x00, ++ 0xFe, 0x0f, 0x01, 0xC0, 0x27, 0xEF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ ++ { /* mode#8: 320 x 240 32Bpp 60Hz */ ++ 320, 240, 32, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x08, 0x43, 0x08, 0x43, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x30, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0x2E, 0x27, 0x00, 0x2b, 0x0c, 0x0F, 0xEF, 0x00, ++ 0xFe, 0x0f, 0x01, 0xC0, 0x27, 0xEF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++}; ++ ++#define numVGAModes ARRAY_SIZE(VGAMode) +diff -Nur linux-3.15.6.orig/drivers/staging/sm7xxfb/TODO linux-3.15.6/drivers/staging/sm7xxfb/TODO +--- linux-3.15.6.orig/drivers/staging/sm7xxfb/TODO 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.15.6/drivers/staging/sm7xxfb/TODO 2014-07-22 17:59:31.846279635 +0200 +@@ -0,0 +1,9 @@ ++TODO: ++- Dual head support ++- 2D acceleration support ++- use kernel coding style ++- refine the code and remove unused code ++- move it to drivers/video/sm7xxfb.c ++ ++Please send any patches to Greg Kroah-Hartman <greg@kroah.com> and ++Teddy Wang <teddy.wang@siliconmotion.com.cn>. |