summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorOle Ernst2015-06-08 12:18:57 +0200
committerOle Ernst2015-06-08 12:18:57 +0200
commit227ef3cb4c8fe0fd63508006bffb6d6a09404b51 (patch)
tree2ad9cd7ec2e66a391c47197a71894a2af043fc8e
downloadaur-227ef3cb4c8fe0fd63508006bffb6d6a09404b51.tar.gz
migrate to aur4
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD41
-rw-r--r--add_c2800e.patch122
-rw-r--r--media-build-dvbsky.install11
4 files changed, 195 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..40f931deb4cc
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,21 @@
+pkgbase = media-build-dvbsky
+ pkgdesc = Driver for DVBSky cards/boxes
+ pkgver = 20150322
+ pkgrel = 2
+ url = http://www.dvbsky.net/Support_linux.html
+ install = media-build-dvbsky.install
+ arch = i686
+ arch = x86_64
+ license = GPL2
+ makedepends = linux-headers
+ makedepends = perl-proc-processtable
+ depends = dvbsky-firmware
+ conflicts = dvbsky-dvb-drivers
+ replaces = dvbsky-dvb-drivers
+ source = http://dvbsky.net/download/linux/media_build-bst-150322.tar.gz
+ source = add_c2800e.patch
+ sha256sums = fd4acd06d2a4a5d5987393d68979aaf8832f5b21ae828ea6a50baca998cd89c7
+ sha256sums = 4a8b9dfc3e3d1a915c9f381dd8fdfbf9975586547a0ab553d0152b8aad11ae9b
+
+pkgname = media-build-dvbsky
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..0268582dc336
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Ole Ernst <olebowle[at]gmx[dot]com>
+pkgname=media-build-dvbsky
+pkgver=20150322
+pkgrel=2
+pkgdesc="Driver for DVBSky cards/boxes"
+arch=('i686' 'x86_64')
+url="http://www.dvbsky.net/Support_linux.html"
+license=('GPL2')
+depends=('dvbsky-firmware')
+makedepends=('linux-headers' 'perl-proc-processtable')
+conflicts=('dvbsky-dvb-drivers')
+replaces=('dvbsky-dvb-drivers')
+install="${pkgname}.install"
+source=("http://dvbsky.net/download/linux/media_build-bst-150322.tar.gz"
+ 'add_c2800e.patch')
+sha256sums=('fd4acd06d2a4a5d5987393d68979aaf8832f5b21ae828ea6a50baca998cd89c7'
+ '4a8b9dfc3e3d1a915c9f381dd8fdfbf9975586547a0ab553d0152b8aad11ae9b')
+
+#server doesn't like curl user agent
+DLAGENTS="$( IFS=$'\n'; echo "${DLAGENTS[*]}" | grep '^http::' ) --user-agent 'Mozilla/4.0'"
+
+prepare() {
+ cd "${srcdir}/media_build-bst"
+ ln -sr v4l/sit2_op.o.x${CARCH: -2} v4l/sit2_op.o
+ cp v4l/sit2_mod.dvb linux/drivers/media/dvb-frontends/sit2_mod.c
+ sed -i -e "s|/sbin/lsmod|$(which lsmod)|" -e 's|/sbin/depmod|#/sbin/depmod|' v4l/Makefile
+ sed -i 's|/sbin/depmod|#/sbin/depmod|' v4l/scripts/make_makefile.pl
+ patch -p1 -i ../add_c2800e.patch
+}
+
+build() {
+ cd "${srcdir}/media_build-bst"
+ #media-build doesn't like parallel jobs
+ make -j1
+}
+
+package() {
+ cd "${srcdir}/media_build-bst"
+ make DESTDIR="${pkgdir}" KDIR26="/usr/lib/modules/$(uname -r)/updates/kernel/drivers/media" media-install
+ find "${pkgdir}" -type f -name '*.ko' -exec gzip -9 {} \;
+}
diff --git a/add_c2800e.patch b/add_c2800e.patch
new file mode 100644
index 000000000000..9101bb0e59de
--- /dev/null
+++ b/add_c2800e.patch
@@ -0,0 +1,122 @@
+--- a/linux/drivers/media/pci/cx23885/cx23885-cards.c
++++ b/linux/drivers/media/pci/cx23885/cx23885-cards.c
+@@ -706,6 +706,11 @@ struct cx23885_board cx23885_boards[] =
+ .portb = CX23885_MPEG_DVB,
+ .portc = CX23885_MPEG_DVB,
+ },
++ [CX23885_BOARD_DVBSKY_C2800E_CI] = {
++ .ci_type = 3,
++ .name = "DVBSKY C2800E DVB-C CI",
++ .portb = CX23885_MPEG_DVB,
++ },
+ };
+ const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards);
+
+@@ -989,7 +994,13 @@ struct cx23885_subid cx23885_subids[] =
+ .subvendor = 0x4254,
+ .subdevice = 0x0982,
+ .card = CX23885_BOARD_DVBSKY_T982,
++ }, {
++ .subvendor = 0x4254,
++ .subdevice = 0x2800,
++ .card = CX23885_BOARD_DVBSKY_C2800E_CI,
+ },
++
++
+ };
+ const unsigned int cx23885_idcount = ARRAY_SIZE(cx23885_subids);
+
+@@ -1595,6 +1606,7 @@ void cx23885_gpio_setup(struct cx23885_d
+ break;
+ case CX23885_BOARD_DVBSKY_T980C:
+ case CX23885_BOARD_DVBSKY_S950C:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ case CX23885_BOARD_TT_CT2_4500_CI:
+ /*
+ * GPIO-0 INTA from CiMax, input
+@@ -1719,6 +1731,7 @@ int cx23885_ir_init(struct cx23885_dev *
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ if (!enable_885_ir)
+ break;
+ dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_AV_CORE);
+@@ -1772,6 +1785,7 @@ void cx23885_ir_fini(struct cx23885_dev
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ cx23885_irq_remove(dev, PCI_MSK_AV_CORE);
+ /* sd_ir is a duplicate pointer to the AV Core, just clear it */
+ dev->sd_ir = NULL;
+@@ -1826,6 +1840,7 @@ void cx23885_ir_pci_int_enable(struct cx
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ if (dev->sd_ir)
+ cx23885_irq_add_enable(dev, PCI_MSK_AV_CORE);
+ break;
+@@ -1933,6 +1948,7 @@ void cx23885_card_setup(struct cx23885_d
+ case CX23885_BOARD_DVBSKY_S950C:
+ case CX23885_BOARD_TT_CT2_4500_CI:
+ case CX23885_BOARD_DVBSKY_S950:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ ts1->gen_ctrl_val = 0x5; /* Parallel */
+ ts1->ts_clk_en_val = 0x1; /* Enable TS_CLK */
+ ts1->src_sel_val = CX23885_SRC_SEL_PARALLEL_MPEG_VIDEO;
+@@ -2066,6 +2082,7 @@ void cx23885_card_setup(struct cx23885_d
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ dev->sd_cx25840 = v4l2_i2c_new_subdev(&dev->v4l2_dev,
+ &dev->i2c_bus[2].i2c_adap,
+ "cx25840", 0x88 >> 1, NULL);
+--- a/linux/drivers/media/pci/cx23885/cx23885-input.c
++++ b/linux/drivers/media/pci/cx23885/cx23885-input.c
+@@ -94,6 +94,7 @@ void cx23885_input_rx_work_handler(struc
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ /*
+ * The only boards we handle right now. However other boards
+ * using the CX2388x integrated IR controller should be similar
+@@ -153,6 +154,7 @@ static int cx23885_input_ir_start(struct
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ /*
+ * The IR controller on this board only returns pulse widths.
+ * Any other mode setting will fail to set up the device.
+@@ -325,6 +327,7 @@ int cx23885_input_init(struct cx23885_de
+ case CX23885_BOARD_DVBSKY_S950:
+ case CX23885_BOARD_DVBSKY_S952:
+ case CX23885_BOARD_DVBSKY_T982:
++ case CX23885_BOARD_DVBSKY_C2800E_CI:
+ /* Integrated CX23885 IR controller */
+ driver_type = RC_DRIVER_IR_RAW;
+ allowed_protos = RC_BIT_ALL;
+--- a/linux/drivers/media/dvb-frontends/dvbsky_m88dc2800.c
++++ b/linux/drivers/media/dvb-frontends/dvbsky_m88dc2800.c
+@@ -2062,7 +2062,7 @@ static void m88dc2800_release(struct dvb
+
+ static struct dvb_frontend_ops m88dc2800_ops;
+
+-struct dvb_frontend *m88dc2800_attach(const struct dvbsky_m88dc2800_config
++struct dvb_frontend *dvbsky_m88dc2800_attach(const struct dvbsky_m88dc2800_config
+ *config, struct i2c_adapter *i2c)
+ {
+ struct m88dc2800_state *state = NULL;
+@@ -2093,7 +2093,7 @@ struct dvb_frontend *m88dc2800_attach(co
+ return NULL;
+ }
+
+-EXPORT_SYMBOL(m88dc2800_attach);
++EXPORT_SYMBOL(dvbsky_m88dc2800_attach);
+
+ static struct dvb_frontend_ops m88dc2800_ops = {
+ .delsys = {SYS_DVBC_ANNEX_A, SYS_DVBC_ANNEX_C},
diff --git a/media-build-dvbsky.install b/media-build-dvbsky.install
new file mode 100644
index 000000000000..99d5edb4ea84
--- /dev/null
+++ b/media-build-dvbsky.install
@@ -0,0 +1,11 @@
+post_install() {
+ /usr/bin/depmod -a
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}