Compare commits

...

29 Commits

Author SHA1 Message Date
Stephan Raue
a65f19c61a config/version: set version to 2.0.0 (2.0 final)
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-16 20:23:12 +02:00
Stephan Raue
b7d12c3aee Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-2.0 2012-10-16 02:28:19 +02:00
Stephan Raue
89aad3fa76 projects/*/linux: add Marvell SAS support to supported projects
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-16 02:27:25 +02:00
Stephan Raue
366b853e96 libcec: update to libcec-2.0.2
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-16 01:40:15 +02:00
Stephan Raue
2465336236 Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-2.0 2012-10-15 18:57:53 +02:00
Stephan Raue
0817207f9b linux: add upstream patches
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-15 18:57:18 +02:00
Stephan Raue
8799eebba3 Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-2.0 2012-10-15 12:47:59 +02:00
Stephan Raue
6470f8219d Merge pull request #1342 from vpeter4/system
libvdpau: fix for blue faces in flash video with opera addon
2012-10-15 03:46:56 -07:00
Stephan Raue
6efe60d1a7 Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-2.0 2012-10-15 12:19:37 +02:00
Stephan Raue
7fdacd4d7c xbmc: add upstream patch
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-14 21:54:19 +02:00
vpeter4
4ef2280701 libvdpau: fix for blue faces in flash video with opera addon 2012-10-14 18:16:12 +02:00
Stephan Raue
b44a93feca xbmc: add upstream patches
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-14 16:57:46 +02:00
Stephan Raue
92e3f20f0a xbmc-frodo: fix adv.xml
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-14 16:57:21 +02:00
Stephan Raue
47f4c36aea xbmc: fix adv.xml
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-14 16:57:06 +02:00
Stephan Raue
f11abc36d6 xbmc-frodo: update to xbmc-frodo-9777cc0
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-13 23:34:22 +02:00
Stephan Raue
75f40dd98d Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-2.0 2012-10-13 16:08:56 +02:00
Stephan Raue
1597dcedd4 new package: add package 'iana-etc', this fixes #1336
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-13 15:08:31 +02:00
Stephan Raue
0802c6e815 linux: add upstream patch
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-13 12:57:10 +02:00
Stephan Raue
743680d778 xbmc: fix Czech translation, this fixes #1332, this fixes #1335
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-13 12:56:26 +02:00
Stephan Raue
363e2bd65c busybox: add applet 'nohup', this fixes #1259
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-12 19:26:57 +02:00
Janpopan
a411c2c547 The Patch is taken from the linux-media mailing list
I changend only the path
Here is the original message:
+This patch adds a module-device-table-entry to the
+technisat-usb2-driver which will help udev to on-demand load the
+driver. This was obviously forgotten during initial commit.
+
+Signed-off-by: Patrick Boettcher <pboettcher@kernellabs.com>
+---

this fixes #1140, this fixes #1300

Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-12 19:07:15 +02:00
Stephan Raue
840e7e8f27 Revert "This patch ist take from kernel.org without any changes. It improves the handling of hd-channels exactly the dvb iso transfer packages. It works fine fpr my HVR930C"
This reverts commit 5e256123ae.
2012-10-12 19:04:26 +02:00
Jan Hill
5e256123ae This patch ist take from kernel.org without any changes. It improves the handling of hd-channels exactly the dvb iso transfer packages. It works fine fpr my HVR930C 2012-10-12 19:01:41 +02:00
Stephan Raue
f925410801 linux: update to linux-3.2.31
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-12 13:51:21 +02:00
Stephan Raue
00697d1203 xbmc-theme-Confluence: remove not more needed patch
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-12 13:50:44 +02:00
Stephan Raue
244e027d71 xbmc-theme-Confluence: rename settings patch
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2012-10-12 13:50:16 +02:00
Stephan Raue
fe37277daf Merge pull request #1290 from vpeter4/system
eglibc: add libdir to configparms
2012-10-12 03:05:40 -07:00
Gregor Fuis
d88228c8e2 xbmc: XVBA reduce needed memory, in particular during channel switching 2012-10-12 12:03:32 +02:00
vpeter4
b910f8f2e1 eglibc: add libdir to configparms
Sometimes eglibc is installed into wrong folder lib64 instead of lib. I couldn't figure out why but setting folder in configparms helps.

linker error:
.../ld: cannot find crti.o: No such file or directory
.../ld: cannot find -lc
.../ld: cannot find crtn.o: No such file or directory

forum reference: http://openelec.tv/forum/64-installation/48318-error--libgccsso-error-1#48318
2012-10-04 17:57:08 +02:00
78 changed files with 1541 additions and 10925 deletions

View File

@@ -1,5 +1,5 @@
# VERSION: set full version, use "devel" for development version
OPENELEC_VERSION="1.99.2"
OPENELEC_VERSION="2.0.0"
# OS_VERSION: OS Version
OS_VERSION="2.0"

View File

@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="libcec"
PKG_VERSION="2.0.0"
PKG_VERSION="2.0.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="linux"
PKG_VERSION="3.2.30"
PKG_VERSION="3.2.31"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@@ -0,0 +1,149 @@
From f27b853ea24a9b70585f9251384d97929e6551c3 Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Mon, 14 May 2012 21:36:00 -0300
Subject: [PATCH] [media] rc: Fix invalid free_region and/or free_irq on probe
failure
fintek-cir, ite-cir and nuvoton-cir may try to free an I/O region
and/or IRQ handler that was never allocated after a failure in their
respective probe functions. Add and use separate labels on the
failure path so they will do the right cleanup after each possible
point of failure.
Compile-tested only.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
---
drivers/media/rc/fintek-cir.c | 13 ++++++-------
drivers/media/rc/ite-cir.c | 14 ++++++--------
drivers/media/rc/nuvoton-cir.c | 26 ++++++++++++--------------
3 files changed, 24 insertions(+), 29 deletions(-)
diff --git a/drivers/media/rc/fintek-cir.c b/drivers/media/rc/fintek-cir.c
index 4a3a238..6aabf7a 100644
--- a/drivers/media/rc/fintek-cir.c
+++ b/drivers/media/rc/fintek-cir.c
@@ -556,11 +556,11 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
if (request_irq(fintek->cir_irq, fintek_cir_isr, IRQF_SHARED,
FINTEK_DRIVER_NAME, (void *)fintek))
- goto failure;
+ goto failure2;
ret = rc_register_device(rdev);
if (ret)
- goto failure;
+ goto failure3;
device_init_wakeup(&pdev->dev, true);
fintek->rdev = rdev;
@@ -570,12 +570,11 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
return 0;
+failure3:
+ free_irq(fintek->cir_irq, fintek);
+failure2:
+ release_region(fintek->cir_addr, fintek->cir_port_len);
failure:
- if (fintek->cir_irq)
- free_irq(fintek->cir_irq, fintek);
- if (fintek->cir_addr)
- release_region(fintek->cir_addr, fintek->cir_port_len);
-
rc_free_device(rdev);
kfree(fintek);
diff --git a/drivers/media/rc/ite-cir.c b/drivers/media/rc/ite-cir.c
index 0e49c99..36fe5a3 100644
--- a/drivers/media/rc/ite-cir.c
+++ b/drivers/media/rc/ite-cir.c
@@ -1598,24 +1598,22 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
if (request_irq(itdev->cir_irq, ite_cir_isr, IRQF_SHARED,
ITE_DRIVER_NAME, (void *)itdev))
- goto failure;
+ goto failure2;
ret = rc_register_device(rdev);
if (ret)
- goto failure;
+ goto failure3;
itdev->rdev = rdev;
ite_pr(KERN_NOTICE, "driver has been successfully loaded\n");
return 0;
+failure3:
+ free_irq(itdev->cir_irq, itdev);
+failure2:
+ release_region(itdev->cir_addr, itdev->params.io_region_size);
failure:
- if (itdev->cir_irq)
- free_irq(itdev->cir_irq, itdev);
-
- if (itdev->cir_addr)
- release_region(itdev->cir_addr, itdev->params.io_region_size);
-
rc_free_device(rdev);
kfree(itdev);
diff --git a/drivers/media/rc/nuvoton-cir.c b/drivers/media/rc/nuvoton-cir.c
index 8b2c071..dc8a7dd 100644
--- a/drivers/media/rc/nuvoton-cir.c
+++ b/drivers/media/rc/nuvoton-cir.c
@@ -1075,19 +1075,19 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
if (request_irq(nvt->cir_irq, nvt_cir_isr, IRQF_SHARED,
NVT_DRIVER_NAME, (void *)nvt))
- goto failure;
+ goto failure2;
if (!request_region(nvt->cir_wake_addr,
CIR_IOREG_LENGTH, NVT_DRIVER_NAME))
- goto failure;
+ goto failure3;
if (request_irq(nvt->cir_wake_irq, nvt_cir_wake_isr, IRQF_SHARED,
NVT_DRIVER_NAME, (void *)nvt))
- goto failure;
+ goto failure4;
ret = rc_register_device(rdev);
if (ret)
- goto failure;
+ goto failure5;
device_init_wakeup(&pdev->dev, true);
nvt->rdev = rdev;
@@ -1099,17 +1099,15 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
return 0;
+failure5:
+ free_irq(nvt->cir_wake_irq, nvt);
+failure4:
+ release_region(nvt->cir_wake_addr, CIR_IOREG_LENGTH);
+failure3:
+ free_irq(nvt->cir_irq, nvt);
+failure2:
+ release_region(nvt->cir_addr, CIR_IOREG_LENGTH);
failure:
- if (nvt->cir_irq)
- free_irq(nvt->cir_irq, nvt);
- if (nvt->cir_addr)
- release_region(nvt->cir_addr, CIR_IOREG_LENGTH);
-
- if (nvt->cir_wake_irq)
- free_irq(nvt->cir_wake_irq, nvt);
- if (nvt->cir_wake_addr)
- release_region(nvt->cir_wake_addr, CIR_IOREG_LENGTH);
-
rc_free_device(rdev);
kfree(nvt);
--
1.7.7.6

View File

@@ -0,0 +1,75 @@
diff --git a/drivers/media/rc/ene_ir.c b/drivers/media/rc/ene_ir.c
index 647dd95..62f9076 100644
--- a/drivers/media/rc/ene_ir.c
+++ b/drivers/media/rc/ene_ir.c
@@ -1000,7 +1000,7 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
dev = kzalloc(sizeof(struct ene_device), GFP_KERNEL);
rdev = rc_allocate_device();
if (!dev || !rdev)
- goto error1;
+ goto failure;
/* validate resources */
error = -ENODEV;
@@ -1011,10 +1011,10 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
if (!pnp_port_valid(pnp_dev, 0) ||
pnp_port_len(pnp_dev, 0) < ENE_IO_SIZE)
- goto error;
+ goto failure;
if (!pnp_irq_valid(pnp_dev, 0))
- goto error;
+ goto failure;
spin_lock_init(&dev->hw_lock);
@@ -1030,7 +1030,7 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
/* detect hardware version and features */
error = ene_hw_detect(dev);
if (error)
- goto error;
+ goto failure;
if (!dev->hw_learning_and_tx_capable && txsim) {
dev->hw_learning_and_tx_capable = true;
@@ -1075,30 +1075,27 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
/* claim the resources */
error = -EBUSY;
if (!request_region(dev->hw_io, ENE_IO_SIZE, ENE_DRIVER_NAME)) {
- dev->hw_io = -1;
- dev->irq = -1;
- goto error;
+ goto failure;
}
dev->irq = pnp_irq(pnp_dev, 0);
if (request_irq(dev->irq, ene_isr,
IRQF_SHARED, ENE_DRIVER_NAME, (void *)dev)) {
- dev->irq = -1;
- goto error;
+ goto failure2;
}
error = rc_register_device(rdev);
if (error < 0)
- goto error;
+ goto failure3;
pr_notice("driver has been successfully loaded\n");
return 0;
-error:
- if (dev && dev->irq >= 0)
- free_irq(dev->irq, dev);
- if (dev && dev->hw_io >= 0)
- release_region(dev->hw_io, ENE_IO_SIZE);
-error1:
+
+failure3:
+ free_irq(dev->irq, dev);
+failure2:
+ release_region(dev->hw_io, ENE_IO_SIZE);
+failure:
rc_free_device(rdev);
kfree(dev);
return error;

View File

@@ -0,0 +1,366 @@
diff --git a/drivers/media/rc/ati_remote.c b/drivers/media/rc/ati_remote.c
index 8fa72e2..58fce6a 100644
--- a/drivers/media/rc/ati_remote.c
+++ b/drivers/media/rc/ati_remote.c
@@ -877,11 +877,11 @@ static int ati_remote_probe(struct usb_interface *interface,
ati_remote = kzalloc(sizeof (struct ati_remote), GFP_KERNEL);
rc_dev = rc_allocate_device();
if (!ati_remote || !rc_dev)
- goto fail1;
+ goto exit_free_dev_rdev;
/* Allocate URB buffers, URBs */
if (ati_remote_alloc_buffers(udev, ati_remote))
- goto fail2;
+ goto exit_free_buffers;
ati_remote->endpoint_in = endpoint_in;
ati_remote->endpoint_out = endpoint_out;
@@ -929,12 +929,12 @@ static int ati_remote_probe(struct usb_interface *interface,
/* Device Hardware Initialization - fills in ati_remote->idev from udev. */
err = ati_remote_initialize(ati_remote);
if (err)
- goto fail3;
+ goto exit_kill_urbs;
/* Set up and register rc device */
err = rc_register_device(ati_remote->rdev);
if (err)
- goto fail3;
+ goto exit_kill_urbs;
/* use our delay for rc_dev */
ati_remote->rdev->input_dev->rep[REP_DELAY] = repeat_delay;
@@ -943,26 +943,31 @@ static int ati_remote_probe(struct usb_interface *interface,
if (mouse) {
input_dev = input_allocate_device();
if (!input_dev)
- goto fail4;
+ goto exit_unregister_device;
ati_remote->idev = input_dev;
ati_remote_input_init(ati_remote);
err = input_register_device(input_dev);
if (err)
- goto fail5;
+ goto exit_free_input_device;
}
usb_set_intfdata(interface, ati_remote);
return 0;
- fail5: input_free_device(input_dev);
- fail4: rc_unregister_device(rc_dev);
+ exit_free_input_device:
+ input_free_device(input_dev);
+ exit_unregister_device:
+ rc_unregister_device(rc_dev);
rc_dev = NULL;
- fail3: usb_kill_urb(ati_remote->irq_urb);
+ exit_kill_urbs:
+ usb_kill_urb(ati_remote->irq_urb);
usb_kill_urb(ati_remote->out_urb);
- fail2: ati_remote_free_buffers(ati_remote);
- fail1: rc_free_device(rc_dev);
+ exit_free_buffers:
+ ati_remote_free_buffers(ati_remote);
+ exit_free_dev_rdev:
+ rc_free_device(rc_dev);
kfree(ati_remote);
return err;
}
diff --git a/drivers/media/rc/ene_ir.c b/drivers/media/rc/ene_ir.c
index 62f9076..7337816 100644
--- a/drivers/media/rc/ene_ir.c
+++ b/drivers/media/rc/ene_ir.c
@@ -1000,7 +1000,7 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
dev = kzalloc(sizeof(struct ene_device), GFP_KERNEL);
rdev = rc_allocate_device();
if (!dev || !rdev)
- goto failure;
+ goto exit_free_dev_rdev;
/* validate resources */
error = -ENODEV;
@@ -1011,10 +1011,10 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
if (!pnp_port_valid(pnp_dev, 0) ||
pnp_port_len(pnp_dev, 0) < ENE_IO_SIZE)
- goto failure;
+ goto exit_free_dev_rdev;
if (!pnp_irq_valid(pnp_dev, 0))
- goto failure;
+ goto exit_free_dev_rdev;
spin_lock_init(&dev->hw_lock);
@@ -1030,7 +1030,7 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
/* detect hardware version and features */
error = ene_hw_detect(dev);
if (error)
- goto failure;
+ goto exit_free_dev_rdev;
if (!dev->hw_learning_and_tx_capable && txsim) {
dev->hw_learning_and_tx_capable = true;
@@ -1075,27 +1075,27 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
/* claim the resources */
error = -EBUSY;
if (!request_region(dev->hw_io, ENE_IO_SIZE, ENE_DRIVER_NAME)) {
- goto failure;
+ goto exit_free_dev_rdev;
}
dev->irq = pnp_irq(pnp_dev, 0);
if (request_irq(dev->irq, ene_isr,
IRQF_SHARED, ENE_DRIVER_NAME, (void *)dev)) {
- goto failure2;
+ goto exit_release_hw_io;
}
error = rc_register_device(rdev);
if (error < 0)
- goto failure3;
+ goto exit_free_irq;
pr_notice("driver has been successfully loaded\n");
return 0;
-failure3:
+exit_free_irq:
free_irq(dev->irq, dev);
-failure2:
+exit_release_hw_io:
release_region(dev->hw_io, ENE_IO_SIZE);
-failure:
+exit_free_dev_rdev:
rc_free_device(rdev);
kfree(dev);
return error;
diff --git a/drivers/media/rc/fintek-cir.c b/drivers/media/rc/fintek-cir.c
index ab30c64..8284d28 100644
--- a/drivers/media/rc/fintek-cir.c
+++ b/drivers/media/rc/fintek-cir.c
@@ -495,18 +495,18 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
/* input device for IR remote (and tx) */
rdev = rc_allocate_device();
if (!rdev)
- goto failure;
+ goto exit_free_dev_rdev;
ret = -ENODEV;
/* validate pnp resources */
if (!pnp_port_valid(pdev, 0)) {
dev_err(&pdev->dev, "IR PNP Port not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
if (!pnp_irq_valid(pdev, 0)) {
dev_err(&pdev->dev, "IR PNP IRQ not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
fintek->cir_addr = pnp_port_start(pdev, 0);
@@ -523,7 +523,7 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
ret = fintek_hw_detect(fintek);
if (ret)
- goto failure;
+ goto exit_free_dev_rdev;
/* Initialize CIR & CIR Wake Logical Devices */
fintek_config_mode_enable(fintek);
@@ -556,15 +556,15 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
/* now claim resources */
if (!request_region(fintek->cir_addr,
fintek->cir_port_len, FINTEK_DRIVER_NAME))
- goto failure;
+ goto exit_free_dev_rdev;
if (request_irq(fintek->cir_irq, fintek_cir_isr, IRQF_SHARED,
FINTEK_DRIVER_NAME, (void *)fintek))
- goto failure2;
+ goto exit_free_cir_addr;
ret = rc_register_device(rdev);
if (ret)
- goto failure3;
+ goto exit_free_irq;
device_init_wakeup(&pdev->dev, true);
fintek->rdev = rdev;
@@ -574,11 +574,11 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
return 0;
-failure3:
+exit_free_irq:
free_irq(fintek->cir_irq, fintek);
-failure2:
+exit_free_cir_addr:
release_region(fintek->cir_addr, fintek->cir_port_len);
-failure:
+exit_free_dev_rdev:
rc_free_device(rdev);
kfree(fintek);
diff --git a/drivers/media/rc/gpio-ir-recv.c b/drivers/media/rc/gpio-ir-recv.c
index 04cb272..0c03b7d 100644
diff --git a/drivers/media/rc/ite-cir.c b/drivers/media/rc/ite-cir.c
index 36fe5a3..77cb21f 100644
--- a/drivers/media/rc/ite-cir.c
+++ b/drivers/media/rc/ite-cir.c
@@ -1472,7 +1472,7 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
/* input device for IR remote (and tx) */
rdev = rc_allocate_device();
if (!rdev)
- goto failure;
+ goto exit_free_dev_rdev;
ret = -ENODEV;
@@ -1497,12 +1497,12 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
if (!pnp_port_valid(pdev, io_rsrc_no) ||
pnp_port_len(pdev, io_rsrc_no) != dev_desc->io_region_size) {
dev_err(&pdev->dev, "IR PNP Port not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
if (!pnp_irq_valid(pdev, 0)) {
dev_err(&pdev->dev, "PNP IRQ not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
/* store resource values */
@@ -1594,26 +1594,26 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
/* now claim resources */
if (!request_region(itdev->cir_addr,
dev_desc->io_region_size, ITE_DRIVER_NAME))
- goto failure;
+ goto exit_free_dev_rdev;
if (request_irq(itdev->cir_irq, ite_cir_isr, IRQF_SHARED,
ITE_DRIVER_NAME, (void *)itdev))
- goto failure2;
+ goto exit_release_cir_addr;
ret = rc_register_device(rdev);
if (ret)
- goto failure3;
+ goto exit_free_irq;
itdev->rdev = rdev;
ite_pr(KERN_NOTICE, "driver has been successfully loaded\n");
return 0;
-failure3:
+exit_free_irq:
free_irq(itdev->cir_irq, itdev);
-failure2:
+exit_release_cir_addr:
release_region(itdev->cir_addr, itdev->params.io_region_size);
-failure:
+exit_free_dev_rdev:
rc_free_device(rdev);
kfree(itdev);
diff --git a/drivers/media/rc/nuvoton-cir.c b/drivers/media/rc/nuvoton-cir.c
index 699eef3..8ab6843 100644
--- a/drivers/media/rc/nuvoton-cir.c
+++ b/drivers/media/rc/nuvoton-cir.c
@@ -986,25 +986,25 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
/* input device for IR remote (and tx) */
rdev = rc_allocate_device();
if (!rdev)
- goto failure;
+ goto exit_free_dev_rdev;
ret = -ENODEV;
/* validate pnp resources */
if (!pnp_port_valid(pdev, 0) ||
pnp_port_len(pdev, 0) < CIR_IOREG_LENGTH) {
dev_err(&pdev->dev, "IR PNP Port not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
if (!pnp_irq_valid(pdev, 0)) {
dev_err(&pdev->dev, "PNP IRQ not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
if (!pnp_port_valid(pdev, 1) ||
pnp_port_len(pdev, 1) < CIR_IOREG_LENGTH) {
dev_err(&pdev->dev, "Wake PNP Port not valid!\n");
- goto failure;
+ goto exit_free_dev_rdev;
}
nvt->cir_addr = pnp_port_start(pdev, 0);
@@ -1027,7 +1027,7 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
ret = nvt_hw_detect(nvt);
if (ret)
- goto failure;
+ goto exit_free_dev_rdev;
/* Initialize CIR & CIR Wake Logical Devices */
nvt_efm_enable(nvt);
@@ -1070,23 +1070,23 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
/* now claim resources */
if (!request_region(nvt->cir_addr,
CIR_IOREG_LENGTH, NVT_DRIVER_NAME))
- goto failure;
+ goto exit_free_dev_rdev;
if (request_irq(nvt->cir_irq, nvt_cir_isr, IRQF_SHARED,
NVT_DRIVER_NAME, (void *)nvt))
- goto failure2;
+ goto exit_release_cir_addr;
if (!request_region(nvt->cir_wake_addr,
CIR_IOREG_LENGTH, NVT_DRIVER_NAME))
- goto failure3;
+ goto exit_free_irq;
if (request_irq(nvt->cir_wake_irq, nvt_cir_wake_isr, IRQF_SHARED,
NVT_DRIVER_NAME, (void *)nvt))
- goto failure4;
+ goto exit_release_cir_wake_addr;
ret = rc_register_device(rdev);
if (ret)
- goto failure5;
+ goto exit_free_wake_irq;
device_init_wakeup(&pdev->dev, true);
nvt->rdev = rdev;
@@ -1098,15 +1098,15 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
return 0;
-failure5:
+exit_free_wake_irq:
free_irq(nvt->cir_wake_irq, nvt);
-failure4:
+exit_release_cir_wake_addr:
release_region(nvt->cir_wake_addr, CIR_IOREG_LENGTH);
-failure3:
+exit_free_irq:
free_irq(nvt->cir_irq, nvt);
-failure2:
+exit_release_cir_addr:
release_region(nvt->cir_addr, CIR_IOREG_LENGTH);
-failure:
+exit_free_dev_rdev:
rc_free_device(rdev);
kfree(nvt);

View File

@@ -0,0 +1,64 @@
diff --git a/drivers/media/rc/fintek-cir.c b/drivers/media/rc/fintek-cir.c
index 8284d28..54809b8 100644
--- a/drivers/media/rc/fintek-cir.c
+++ b/drivers/media/rc/fintek-cir.c
@@ -552,6 +552,8 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
/* rx resolution is hardwired to 50us atm, 1, 25, 100 also possible */
rdev->rx_resolution = US_TO_NS(CIR_SAMPLE_PERIOD);
+ fintek->rdev = rdev;
+
ret = -EBUSY;
/* now claim resources */
if (!request_region(fintek->cir_addr,
@@ -567,7 +569,7 @@ static int fintek_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id
goto exit_free_irq;
device_init_wakeup(&pdev->dev, true);
- fintek->rdev = rdev;
+
fit_pr(KERN_NOTICE, "driver has been successfully loaded\n");
if (debug)
cir_dump_regs(fintek);
diff --git a/drivers/media/rc/ite-cir.c b/drivers/media/rc/ite-cir.c
index 77cb21f..158bd0a 100644
--- a/drivers/media/rc/ite-cir.c
+++ b/drivers/media/rc/ite-cir.c
@@ -1590,6 +1590,8 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
rdev->driver_name = ITE_DRIVER_NAME;
rdev->map_name = RC_MAP_RC6_MCE;
+ itdev->rdev = rdev;
+
ret = -EBUSY;
/* now claim resources */
if (!request_region(itdev->cir_addr,
@@ -1604,7 +1606,6 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
if (ret)
goto exit_free_irq;
- itdev->rdev = rdev;
ite_pr(KERN_NOTICE, "driver has been successfully loaded\n");
return 0;
diff --git a/drivers/media/rc/nuvoton-cir.c b/drivers/media/rc/nuvoton-cir.c
index 8ab6843..a1b6be6 100644
--- a/drivers/media/rc/nuvoton-cir.c
+++ b/drivers/media/rc/nuvoton-cir.c
@@ -1065,6 +1065,7 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
/* tx bits */
rdev->tx_resolution = XYZ;
#endif
+ nvt->rdev = rdev;
ret = -EBUSY;
/* now claim resources */
@@ -1089,7 +1090,7 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
goto exit_free_wake_irq;
device_init_wakeup(&pdev->dev, true);
- nvt->rdev = rdev;
+
nvt_pr(KERN_NOTICE, "driver has been successfully loaded\n");
if (debug) {
cir_dump_regs(nvt);

View File

@@ -0,0 +1,177 @@
diff --git a/drivers/media/rc/ene_ir.c b/drivers/media/rc/ene_ir.c
index 7337816..17b38a9 100644
--- a/drivers/media/rc/ene_ir.c
+++ b/drivers/media/rc/ene_ir.c
@@ -1072,10 +1072,14 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
device_set_wakeup_capable(&pnp_dev->dev, true);
device_set_wakeup_enable(&pnp_dev->dev, true);
+ error = rc_register_device(rdev);
+ if (error < 0)
+ goto exit_free_dev_rdev;
+
/* claim the resources */
error = -EBUSY;
if (!request_region(dev->hw_io, ENE_IO_SIZE, ENE_DRIVER_NAME)) {
- goto exit_free_dev_rdev;
+ goto exit_unregister_device;
}
dev->irq = pnp_irq(pnp_dev, 0);
@@ -1084,17 +1088,13 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
goto exit_release_hw_io;
}
- error = rc_register_device(rdev);
- if (error < 0)
- goto exit_free_irq;
-
pr_notice("driver has been successfully loaded\n");
return 0;
-exit_free_irq:
- free_irq(dev->irq, dev);
exit_release_hw_io:
release_region(dev->hw_io, ENE_IO_SIZE);
+exit_unregister_device:
+ rc_unregister_device(rdev);
exit_free_dev_rdev:
rc_free_device(rdev);
kfree(dev);
diff --git a/drivers/media/rc/ite-cir.c b/drivers/media/rc/ite-cir.c
index 158bd0a..974836a 100644
--- a/drivers/media/rc/ite-cir.c
+++ b/drivers/media/rc/ite-cir.c
@@ -1592,28 +1592,28 @@ static int ite_probe(struct pnp_dev *pdev, const struct pnp_device_id
itdev->rdev = rdev;
+ ret = rc_register_device(rdev);
+ if (ret)
+ goto exit_free_dev_rdev;
+
ret = -EBUSY;
/* now claim resources */
if (!request_region(itdev->cir_addr,
dev_desc->io_region_size, ITE_DRIVER_NAME))
- goto exit_free_dev_rdev;
+ goto exit_unregister_device;
if (request_irq(itdev->cir_irq, ite_cir_isr, IRQF_SHARED,
ITE_DRIVER_NAME, (void *)itdev))
goto exit_release_cir_addr;
- ret = rc_register_device(rdev);
- if (ret)
- goto exit_free_irq;
-
ite_pr(KERN_NOTICE, "driver has been successfully loaded\n");
return 0;
-exit_free_irq:
- free_irq(itdev->cir_irq, itdev);
exit_release_cir_addr:
release_region(itdev->cir_addr, itdev->params.io_region_size);
+exit_unregister_device:
+ rc_unregister_device(rdev);
exit_free_dev_rdev:
rc_free_device(rdev);
kfree(itdev);
diff --git a/drivers/media/rc/nuvoton-cir.c b/drivers/media/rc/nuvoton-cir.c
index a1b6be6..18a50b9 100644
--- a/drivers/media/rc/nuvoton-cir.c
+++ b/drivers/media/rc/nuvoton-cir.c
@@ -1067,11 +1067,15 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
#endif
nvt->rdev = rdev;
+ ret = rc_register_device(rdev);
+ if (ret)
+ goto exit_free_dev_rdev;
+
ret = -EBUSY;
/* now claim resources */
if (!request_region(nvt->cir_addr,
CIR_IOREG_LENGTH, NVT_DRIVER_NAME))
- goto exit_free_dev_rdev;
+ goto exit_unregister_device;
if (request_irq(nvt->cir_irq, nvt_cir_isr, IRQF_SHARED,
NVT_DRIVER_NAME, (void *)nvt))
@@ -1085,10 +1089,6 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
NVT_DRIVER_NAME, (void *)nvt))
goto exit_release_cir_wake_addr;
- ret = rc_register_device(rdev);
- if (ret)
- goto exit_free_wake_irq;
-
device_init_wakeup(&pdev->dev, true);
nvt_pr(KERN_NOTICE, "driver has been successfully loaded\n");
@@ -1099,14 +1099,14 @@ static int nvt_probe(struct pnp_dev *pdev, const struct pnp_device_id *dev_id)
return 0;
-exit_free_wake_irq:
- free_irq(nvt->cir_wake_irq, nvt);
exit_release_cir_wake_addr:
release_region(nvt->cir_wake_addr, CIR_IOREG_LENGTH);
exit_free_irq:
free_irq(nvt->cir_irq, nvt);
exit_release_cir_addr:
release_region(nvt->cir_addr, CIR_IOREG_LENGTH);
+exit_unregister_device:
+ rc_unregister_device(rdev);
exit_free_dev_rdev:
rc_free_device(rdev);
kfree(nvt);
diff --git a/drivers/media/rc/winbond-cir.c b/drivers/media/rc/winbond-cir.c
index 54ee348..1f90e8c 100644
--- a/drivers/media/rc/winbond-cir.c
+++ b/drivers/media/rc/winbond-cir.c
@@ -1035,11 +1035,15 @@ wbcir_probe(struct pnp_dev *device, const struct pnp_device_id *dev_id)
data->dev->timeout = MS_TO_NS(100);
data->dev->allowed_protos = RC_TYPE_ALL;
+ err = rc_register_device(data->dev);
+ if (err)
+ goto exit_free_rc;
+
if (!request_region(data->wbase, WAKEUP_IOMEM_LEN, DRVNAME)) {
dev_err(dev, "Region 0x%lx-0x%lx already in use!\n",
data->wbase, data->wbase + WAKEUP_IOMEM_LEN - 1);
err = -EBUSY;
- goto exit_free_rc;
+ goto exit_unregister_device;
}
if (!request_region(data->ebase, EHFUNC_IOMEM_LEN, DRVNAME)) {
@@ -1064,24 +1068,20 @@ wbcir_probe(struct pnp_dev *device, const struct pnp_device_id *dev_id)
goto exit_release_sbase;
}
- err = rc_register_device(data->dev);
- if (err)
- goto exit_free_irq;
-
device_init_wakeup(&device->dev, 1);
wbcir_init_hw(data);
return 0;
-exit_free_irq:
- free_irq(data->irq, device);
exit_release_sbase:
release_region(data->sbase, SP_IOMEM_LEN);
exit_release_ebase:
release_region(data->ebase, EHFUNC_IOMEM_LEN);
exit_release_wbase:
release_region(data->wbase, WAKEUP_IOMEM_LEN);
+exit_unregister_device:
+ rc_unregister_device(data->dev);
exit_free_rc:
rc_free_device(data->dev);
exit_unregister_led:

View File

@@ -0,0 +1,25 @@
This patch adds a module-device-table-entry to the
technisat-usb2-driver which will help udev to on-demand load the
driver. This was obviously forgotten during initial commit.
Signed-off-by: Patrick Boettcher <pboettcher@kernellabs.com>
---
drivers/media/dvb/dvb-usb/technisat-usb2.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/media/dvb/dvb-usb/technisat-usb2.c b/drivers/media/dvb/dvb-usb/technisat-usb2.c
index acefaa8..7a8c8c1 100644
--- a/drivers/media/dvb/dvb-usb/technisat-usb2.c
+++ b/drivers/media/dvb/dvb-usb/technisat-usb2.c
@@ -677,6 +677,7 @@ static struct usb_device_id technisat_usb2_id_table[] = {
{ USB_DEVICE(USB_VID_TECHNISAT, USB_PID_TECHNISAT_USB2_DVB_S2) },
{ 0 } /* Terminating entry */
};
+MODULE_DEVICE_TABLE(usb, technisat_usb2_id_table);
/* device description */
static struct dvb_usb_device_properties technisat_usb2_devices = {
--
1.7.9.5
--

View File

@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="xbmc-frodo-theme-Confluence"
PKG_VERSION="0ff0d2e"
PKG_VERSION="9777cc0"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@@ -8,7 +8,7 @@
<latency>
<delay>0</delay>
<refresh>
<min>20</min>
<min>23</min>
<max>24</max>
<delay>175</delay>
</refresh>

View File

@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="xbmc-frodo"
PKG_VERSION="0ff0d2e"
PKG_VERSION="9777cc0"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@@ -1,62 +0,0 @@
From 3e1367b680b26123e9e1aa09f8caf2a932d47572 Mon Sep 17 00:00:00 2001
From: Lars Op den Kamp <lars@opdenkamp.eu>
Date: Tue, 17 Apr 2012 01:57:43 +0200
Subject: [PATCH 2/2] cec: libCEC 1.6 support and fixes. libCEC 1.6+ is needed
when using firmware v2 on the CEC adapter, which adds
wake over CEC * added a new setting to control
whether to put the TV in standby when the player is put
in standby. * added some button mappings: all menu
related buttons -> menu, previous channel -> teletext,
added support for the channels list on samsung, mapped
next fav -> menu (when available) * display the
firmware version in the peripheral manager (if
available) * handle the new CEC alert callback
(libCEC 1.6+) * replaced 'Put this PC in standby mode
when the TV is switched off' with an enum that allows
the user to chose between 'Ignore', 'Suspend' and
'Shutdown' * fixed - crash when changing settings
without libCEC started. * fixed - range of wake and
power-off devices * fixed - update the correct
standby device setting ('standby_devices' not
'wake_devices') * fixed - don't get the settings from
the eeprom, but always use the settings provided in
xbmc
---
.../720p/DialogPeripheralManager.xml | 4 +-
configure.in | 2 +-
language/English/strings.xml | 5 +-
project/BuildDependencies/scripts/libcec_d.txt | 2 +-
system/peripherals.xml | 15 +-
tools/darwin/depends/libcec/Makefile | 2 +-
xbmc/peripherals/bus/PeripheralBus.cpp | 1 +
xbmc/peripherals/devices/Peripheral.h | 2 +
xbmc/peripherals/devices/PeripheralCecAdapter.cpp | 160 ++++++++++++++++----
xbmc/peripherals/devices/PeripheralCecAdapter.h | 4 +
10 files changed, 152 insertions(+), 45 deletions(-)
diff --git a/720p/DialogPeripheralManager.xml b/720p/DialogPeripheralManager.xml
index 07954d0..5717017 100644
--- a/720p/DialogPeripheralManager.xml
+++ b/720p/DialogPeripheralManager.xml
@@ -117,7 +117,7 @@
<posy>50</posy>
<width>520</width>
<height>20</height>
- <label>$LOCALIZE[35501]: [COLOR=grey2]$INFO[ListItem.Property(Class)][/COLOR]</label>
+ <label>$LOCALIZE[35501]: [COLOR=grey2]$INFO[ListItem.Property(Class)][/COLOR] $LOCALIZE[19114]: [COLOR=grey2]$INFO[ListItem.Property(Version)][/COLOR]</label>
<align>left</align>
<aligny>center</aligny>
<font>font12</font>
@@ -173,7 +173,7 @@
<posy>50</posy>
<width>520</width>
<height>20</height>
- <label>$LOCALIZE[35501]: [COLOR=grey2]$INFO[ListItem.Property(Class)][/COLOR]</label>
+ <label>$LOCALIZE[35501]: [COLOR=grey2]$INFO[ListItem.Property(Class)][/COLOR] $LOCALIZE[19114]: [COLOR=grey2]$INFO[ListItem.Property(Version)][/COLOR]</label>
<align>left</align>
<aligny>center</aligny>
<font>font12</font>
--
1.7.5.4

View File

@@ -8,7 +8,7 @@
<latency>
<delay>0</delay>
<refresh>
<min>20</min>
<min>23</min>
<max>24</max>
<delay>175</delay>
</refresh>

View File

@@ -0,0 +1,392 @@
From dffb8b123b9c85e0f78c8ad10ea09534edbe6e61 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de>
Date: Fri, 5 Oct 2012 11:46:26 +0200
Subject: [PATCH] xvba: reduce needed memory, in particular during channel
switching
---
xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.cpp | 230 ++++++++++---------------
xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.h | 7 +-
2 files changed, 97 insertions(+), 140 deletions(-)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.cpp
index 78ad0a6..790b3b4 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.cpp
@@ -517,37 +517,7 @@ long CDecoder::Release()
{
CSingleLock lock(m_decoderSection);
CLog::Log(LOGNOTICE,"XVBA::Release pre-cleanup");
-
- Message *reply;
- if (m_xvbaOutput.m_controlPort.SendOutMessageSync(COutputControlProtocol::PRECLEANUP,
- &reply,
- 2000))
- {
- bool success = reply->signal == COutputControlProtocol::ACC ? true : false;
- reply->Release();
- if (!success)
- {
- CLog::Log(LOGERROR, "XVBA::%s - pre-cleanup returned error", __FUNCTION__);
- m_displayState = XVBA_ERROR;
- }
- }
- else
- {
- CLog::Log(LOGERROR, "XVBA::%s - pre-cleanup timed out", __FUNCTION__);
- m_displayState = XVBA_ERROR;
- }
-
- for(unsigned int i = 0; i < m_videoSurfaces.size(); ++i)
- {
- xvba_render_state *render = m_videoSurfaces[i];
- if (render->surface && !(render->state & FF_XVBA_STATE_USED_FOR_RENDER))
- {
- g_XVBA_vtable.DestroySurface(render->surface);
- render->surface = 0;
- render->picture_descriptor = 0;
- render->iq_matrix = 0;
- }
- }
+ DestroySession(true);
}
IHardwareDecoder::Release();
}
@@ -726,7 +696,7 @@ bool CDecoder::CreateSession(AVCodecContext* avctx)
return true;
}
-void CDecoder::DestroySession()
+void CDecoder::DestroySession(bool precleanup /*= false*/)
{
// wait for unfinished decoding jobs
XbmcThreads::EndTime timer;
@@ -762,7 +732,29 @@ void CDecoder::DestroySession()
}
}
- m_xvbaOutput.Dispose();
+ if (precleanup)
+ {
+ Message *reply;
+ if (m_xvbaOutput.m_controlPort.SendOutMessageSync(COutputControlProtocol::PRECLEANUP,
+ &reply,
+ 2000))
+ {
+ bool success = reply->signal == COutputControlProtocol::ACC ? true : false;
+ reply->Release();
+ if (!success)
+ {
+ CLog::Log(LOGERROR, "XVBA::%s - pre-cleanup returned error", __FUNCTION__);
+ m_displayState = XVBA_ERROR;
+ }
+ }
+ else
+ {
+ CLog::Log(LOGERROR, "XVBA::%s - pre-cleanup timed out", __FUNCTION__);
+ m_displayState = XVBA_ERROR;
+ }
+ }
+ else
+ m_xvbaOutput.Dispose();
XVBA_Destroy_Decode_Buffers_Input bufInput;
bufInput.size = sizeof(bufInput);
@@ -804,6 +796,7 @@ void CDecoder::DestroySession()
{
g_XVBA_vtable.DestroySurface(render->surface);
render->surface = 0;
+ render->state = 0;
render->picture_descriptor = 0;
render->iq_matrix = 0;
}
@@ -1431,14 +1424,6 @@ long CXvbaRenderPicture::Release()
return refCount;
}
-void CXvbaRenderPicture::Transfer()
-{
- CSingleLock lock(*renderPicSection);
-
- if (valid)
- xvbaOutput->TransferSurface(sourceIdx);
-}
-
void CXvbaRenderPicture::ReturnUnused()
{
{ CSingleLock lock(*renderPicSection);
@@ -1617,9 +1602,10 @@ void COutput::StateMachine(int signal, Protocol *port, Message *msg)
msg->Reply(COutputControlProtocol::ACC);
return;
case COutputControlProtocol::PRECLEANUP:
- m_state = O_TOP_CONFIGURED_WAIT_RES1;
+ m_state = O_TOP_UNCONFIGURED;
+ m_extTimeout = 10000;
Flush();
- PreReleaseBufferPool();
+ ReleaseBufferPool(true);
msg->Reply(COutputControlProtocol::ACC);
return;
default:
@@ -1885,6 +1871,7 @@ bool COutput::Init()
m_xvbaError = false;
m_processPicture.render = 0;
+ m_fence = None;
return true;
}
@@ -1972,32 +1959,6 @@ bool COutput::IsDecodingFinished()
return false;
}
-void COutput::TransferSurface(uint32_t source)
-{
- XvbaBufferPool::GLVideoSurface *glSurface = &m_bufferPool.glSurfaces[source];
-
- if (glSurface->transferred)
- return;
-
- glSurface->transferred = true;
-
- // transfer surface
- XVBA_Transfer_Surface_Input transInput;
- transInput.size = sizeof(transInput);
- transInput.session = m_config.xvbaSession;
- transInput.src_surface = glSurface->render->surface;
- transInput.target_surface = glSurface->glSurface;
- transInput.flag = glSurface->field;
- { CSingleLock lock(*(m_config.apiSec));
- if (Success != g_XVBA_vtable.TransferSurface(&transInput))
- {
- CLog::Log(LOGERROR,"(XVBA) failed to transfer surface");
- m_xvbaError = true;
- return;
- }
- }
-}
-
CXvbaRenderPicture* COutput::ProcessPicture()
{
CXvbaRenderPicture *retPic = 0;
@@ -2021,36 +1982,25 @@ CXvbaRenderPicture* COutput::ProcessPicture()
int cmd = 0;
m_config.stats->GetCmd(cmd);
-// if (!(cmd & DVP_FLAG_SKIP_PROC))
-// {
- // transfer surface
- XVBA_Transfer_Surface_Input transInput;
- transInput.size = sizeof(transInput);
- transInput.session = m_config.xvbaSession;
- transInput.src_surface = m_processPicture.render->surface;
- transInput.target_surface = glSurface->glSurface;
- transInput.flag = m_field;
- { CSingleLock lock(*(m_config.apiSec));
- if (Success != g_XVBA_vtable.TransferSurface(&transInput))
- {
- CLog::Log(LOGERROR,"(XVBA) failed to transfer surface");
- m_xvbaError = true;
- return retPic;
- }
- }
+// if (m_fence)
+// glDeleteSync(m_fence);
+// m_fence = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0);
- // make sure that transfer is completed
-// uint64_t maxTimeout = 1000000000LL;
-// GLsync ReadyFence = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0);
-// glClientWaitSync(ReadyFence, GL_SYNC_FLUSH_COMMANDS_BIT, maxTimeout);
-// glDeleteSync(ReadyFence);
-// glFinish();GL_SYNC_FLUSH_COMMANDS_BIT
-// }
-// else
-// {
-// CLog::Log(LOGDEBUG,"XVBA::ProcessPicture - skipped transfer surface");
-// m_processPicture.DVDPic.iFlags |= DVP_FLAG_DROPPED;
-// }
+ // transfer surface
+ XVBA_Transfer_Surface_Input transInput;
+ transInput.size = sizeof(transInput);
+ transInput.session = m_config.xvbaSession;
+ transInput.src_surface = m_processPicture.render->surface;
+ transInput.target_surface = glSurface->glSurface;
+ transInput.flag = m_field;
+ { CSingleLock lock(*(m_config.apiSec));
+ if (Success != g_XVBA_vtable.TransferSurface(&transInput))
+ {
+ CLog::Log(LOGERROR,"(XVBA) failed to transfer surface");
+ m_xvbaError = true;
+ return retPic;
+ }
+ }
// prepare render pic
retPic = m_bufferPool.freeRenderPics.front();
@@ -2096,36 +2046,34 @@ void COutput::ProcessReturnPicture(CXvbaRenderPicture *pic)
return;
}
- if (m_config.useSharedSurfaces)
+ xvba_render_state *render = m_bufferPool.glSurfaces[pic->sourceIdx].render;
+ if (render)
{
- xvba_render_state *render = m_bufferPool.glSurfaces[pic->sourceIdx].render;
- if (render)
+ // check if video surface is referenced by other glSurfaces
+ bool referenced(false);
+ for (unsigned int i=0; i<m_bufferPool.glSurfaces.size();++i)
{
- // check if video surface if referenced by other glSurfaces
- bool referenced(false);
- for (unsigned int i=0; i<m_bufferPool.glSurfaces.size();++i)
+ if (i == pic->sourceIdx)
+ continue;
+ if (m_bufferPool.glSurfaces[i].render == render)
{
- if (i == pic->sourceIdx)
- continue;
- if (m_bufferPool.glSurfaces[i].render == render)
- {
- referenced = true;
- break;
- }
- }
- if (m_processPicture.render == render)
referenced = true;
-
- // release video surface
- if (!referenced)
- {
- CSingleLock lock(*m_config.videoSurfaceSec);
- render->state &= ~(FF_XVBA_STATE_USED_FOR_RENDER | FF_XVBA_STATE_DECODED);
+ break;
}
+ }
+ if (m_processPicture.render == render)
+ referenced = true;
- // unreference video surface
- m_bufferPool.glSurfaces[pic->sourceIdx].render = 0;
+ // release video surface
+ if (!referenced)
+ {
+ CSingleLock lock(*m_config.videoSurfaceSec);
+ render->state &= ~(FF_XVBA_STATE_USED_FOR_RENDER | FF_XVBA_STATE_DECODED);
}
+
+ // unreference video surface
+ m_bufferPool.glSurfaces[pic->sourceIdx].render = 0;
+
m_bufferPool.glSurfaces[pic->sourceIdx].used = false;
return;
}
@@ -2266,32 +2214,42 @@ bool COutput::EnsureBufferPool()
return true;
}
-void COutput::ReleaseBufferPool()
+void COutput::ReleaseBufferPool(bool precleanup /*= false*/)
{
+// if (m_fence)
+// {
+// uint64_t maxTimeout = 1000000000LL;
+// glClientWaitSync(m_fence, GL_SYNC_FLUSH_COMMANDS_BIT, maxTimeout);
+// glDeleteSync(m_fence);
+// m_fence = None;
+// }
+
CSingleLock lock(m_bufferPool.renderPicSec);
- if (m_config.useSharedSurfaces)
+ for (unsigned int i = 0; i < m_bufferPool.glSurfaces.size(); ++i)
{
- for (unsigned int i = 0; i < m_bufferPool.glSurfaces.size(); ++i)
+ if (m_bufferPool.glSurfaces[i].glSurface)
{
- if (!m_bufferPool.glSurfaces[i].glSurface)
- continue;
g_XVBA_vtable.DestroySurface(m_bufferPool.glSurfaces[i].glSurface);
+ m_bufferPool.glSurfaces[i].glSurface = 0;
+ }
+ if (m_bufferPool.glSurfaces[i].texture && !precleanup)
+ {
glDeleteTextures(1, &m_bufferPool.glSurfaces[i].texture);
+ m_bufferPool.glSurfaces[i].texture = 0;
}
- m_bufferPool.glSurfaces.clear();
+ m_bufferPool.glSurfaces[i].render = 0;
+ m_bufferPool.glSurfaces[i].used = true;
}
- // invalidate all used render pictures
- for (unsigned int i = 0; i < m_bufferPool.usedRenderPics.size(); ++i)
+
+ if (!precleanup)
{
- m_bufferPool.usedRenderPics[i]->valid = false;
- unsigned int idx = m_bufferPool.usedRenderPics[i]->sourceIdx;
- if (m_bufferPool.glSurfaces[idx].render)
+ m_bufferPool.glSurfaces.clear();
+
+ // invalidate all used render pictures
+ for (unsigned int i = 0; i < m_bufferPool.usedRenderPics.size(); ++i)
{
- { CSingleLock lock(*m_config.videoSurfaceSec);
- m_bufferPool.glSurfaces[idx].render->state &= ~(FF_XVBA_STATE_USED_FOR_RENDER | FF_XVBA_STATE_DECODED);
- m_bufferPool.glSurfaces[idx].render = 0;
- }
+ m_bufferPool.usedRenderPics[i]->valid = false;
}
}
}
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.h b/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.h
index 24331e9..f38444c 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.h
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/XVBA.h
@@ -144,7 +144,6 @@ class CXvbaRenderPicture
CDecoder *xvba;
CXvbaRenderPicture* Acquire();
long Release();
- void Transfer();
private:
void ReturnUnused();
int refCount;
@@ -226,7 +225,6 @@ class COutput : private CThread
virtual ~COutput();
void Start();
void Dispose();
- void TransferSurface(uint32_t source);
COutputControlProtocol m_controlPort;
COutputDataProtocol m_dataPort;
protected:
@@ -247,7 +245,7 @@ class COutput : private CThread
bool CreateGlxContext();
bool DestroyGlxContext();
bool EnsureBufferPool();
- void ReleaseBufferPool();
+ void ReleaseBufferPool(bool precleanup = false);
void PreReleaseBufferPool();
CEvent m_outMsgEvent;
CEvent *m_inMsgEvent;
@@ -265,6 +263,7 @@ class COutput : private CThread
GLXWindow m_glWindow;
Pixmap m_pixmap;
GLXPixmap m_glPixmap;
+ GLsync m_fence;
std::queue<CXvbaDecodedPicture> m_decodedPics;
CXvbaDecodedPicture m_processPicture;
XVBA_SURFACE_FLAG m_field;
@@ -338,7 +337,7 @@ class CDecoder : public CDVDVideoCodecFFmpeg::IHardwareDecoder,
protected:
bool CreateSession(AVCodecContext* avctx);
- void DestroySession();
+ void DestroySession(bool precleanup = false);
bool EnsureDataControlBuffers(unsigned int num);
void ResetState();
void SetError(const char* function, const char* msg, int line);
--
1.7.10

View File

@@ -0,0 +1,28 @@
From 97132cf318aa40823ba5af94b9f8ae18dbf5de36 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de>
Date: Sun, 14 Oct 2012 13:46:54 +0200
Subject: [PATCH] rendermanager: fix stuttering in non full-screen mode,
squash to add buffering
---
xbmc/cores/VideoRenderers/RenderManager.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
index ac31c32..4c7b48e 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
@@ -965,8 +965,9 @@ void CXBMCRenderManager::PrepareNextRender()
presenttime = clocktime + MAXPRESENTDELAY;
m_sleeptime = presenttime - clocktime;
+ double frametime = 1 / g_graphicsContext.GetFPS();
- if (g_graphicsContext.IsFullScreenVideo() || presenttime <= clocktime+0.01)
+ if (g_graphicsContext.IsFullScreenVideo() || presenttime <= clocktime + frametime)
{
m_presentPts = m_renderBuffers[idx].pts;
m_presenttime = presenttime;
--
1.7.10

View File

@@ -0,0 +1,30 @@
From 33d005b693b044d62f93a6449b4482f1dd1520aa Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de>
Date: Sun, 14 Oct 2012 14:34:01 +0200
Subject: [PATCH] rendermanger: used wrong flags for backport of:
d0c23ddfad95612c47bcf9ce430b00a414b42912
---
xbmc/cores/VideoRenderers/RenderManager.cpp | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
index 4c7b48e..4ece507 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
@@ -237,9 +237,9 @@ bool CXBMCRenderManager::Configure(unsigned int width, unsigned int height, unsi
// check if decoder supports buffering
m_bCodecSupportsBuffering = false;
- if ((flags & DVDVideoPicture::FMT_VDPAU)
- || (flags & DVDVideoPicture::FMT_VDPAU_420)
- || (flags & DVDVideoPicture::FMT_XVBA))
+ if ((CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_VDPAU)
+ || (CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_VDPAU_420)
+ || (CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_XVBA))
m_bCodecSupportsBuffering = true;
bool result = m_pRenderer->Configure(width, height, d_width, d_height, fps, flags, format);
--
1.7.10

View File

@@ -0,0 +1,45 @@
From 39836e3c8e5b89026ec6a270ca135d20f48d99ea Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de>
Date: Sun, 14 Oct 2012 17:54:02 +0200
Subject: [PATCH] rendermanager: forgot to set flip event if buffering is not
used
---
xbmc/cores/VideoRenderers/RenderManager.cpp | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
index b141c80..9290f80 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
@@ -1096,17 +1096,17 @@ void CXBMCRenderManager::NotifyDisplayFlip()
if (!m_pRenderer)
return;
- if (m_iNumRenderBuffers < 3)
- return;
-
- int last = m_iDisplayedRenderBuffer;
- m_iDisplayedRenderBuffer = (m_iCurrentRenderBuffer + m_iNumRenderBuffers - 1) % m_iNumRenderBuffers;
-
- if (last != m_iDisplayedRenderBuffer
- && m_iDisplayedRenderBuffer != m_iCurrentRenderBuffer)
+ if (m_iNumRenderBuffers >= 3)
{
- m_pRenderer->ReleaseBuffer(m_iDisplayedRenderBuffer);
- m_overlays.ReleaseBuffer(m_iDisplayedRenderBuffer);
+ int last = m_iDisplayedRenderBuffer;
+ m_iDisplayedRenderBuffer = (m_iCurrentRenderBuffer + m_iNumRenderBuffers - 1) % m_iNumRenderBuffers;
+
+ if (last != m_iDisplayedRenderBuffer
+ && m_iDisplayedRenderBuffer != m_iCurrentRenderBuffer)
+ {
+ m_pRenderer->ReleaseBuffer(m_iDisplayedRenderBuffer);
+ m_overlays.ReleaseBuffer(m_iDisplayedRenderBuffer);
+ }
}
lock.Leave();
--
1.7.10

View File

@@ -0,0 +1,12 @@
diff -Naur xbmc-11.0.3/language/Czech/strings.xml xbmc-11.0.3.patch/language/Czech/strings.xml
--- xbmc-11.0.3/language/Czech/strings.xml 2012-10-09 12:09:08.000000000 +0200
+++ xbmc-11.0.3.patch/language/Czech/strings.xml 2012-10-13 12:18:00.792572590 +0200
@@ -2830,7 +2830,7 @@
<string id="36011">Nepodařilo se najít CEC port. Nastavte jej ručně.</string>
<string id="36012">Nepodařilo se najít CEC adaptér.</string>
<string id="36013">Nepodporovaná verze libcec rozhraní. %d je vyšší než verze podporovaná XBMC (%d)</string>
- <string id="36014">/string>
+ <string id="36014"></string>
<string id="36015">HDMI port</string>
<string id="36016">Připojeno</string> <!-- maximálně 13 znaků -->
<string id="36017">Adaptér byl nalezen, ale libcec není k dispozici</string>

View File

@@ -0,0 +1,12 @@
diff -uNr libvdpau-0.5-orig/src/vdpau_wrapper.c libvdpau-0.5/src/vdpau_wrapper.c
--- libvdpau-0.5-orig/src/vdpau_wrapper.c 2012-09-04 19:26:33.000000000 +0200
+++ libvdpau-0.5/src/vdpau_wrapper.c 2012-10-14 17:05:52.000000000 +0200
@@ -320,7 +320,7 @@
}
buffer[ret] = '\0';
- if (strstr(buffer, "libflashplayer") != NULL) {
+ if (strstr(buffer, "libflashplayer") != NULL || strstr(buffer, "operapluginwrapper") != NULL) {
_running_under_flash = 1;
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -26,7 +26,6 @@ add_user system x 430 430 "service" "/var/run/connman" "/bin/sh"
add_group system 430
mkdir -p $INSTALL/etc
cp $PKG_DIR/config/services $INSTALL/etc
cp $PKG_DIR/config/resolv.conf $INSTALL/etc
mkdir -p $INSTALL/etc/connman

27
packages/network/iana-etc/build Executable file
View File

@@ -0,0 +1,27 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
cd $PKG_BUILD
make

View File

@@ -0,0 +1,28 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
mkdir -p $INSTALL/etc
cp $PKG_BUILD/protocols $INSTALL/etc
cp $PKG_BUILD/services $INSTALL/etc

View File

@@ -0,0 +1,36 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
PKG_NAME="iana-etc"
PKG_VERSION="2.30"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.linuxfromscratch.org/lfs/view/development/chapter06/iana-etc.html"
PKG_URL="http://anduin.linuxfromscratch.org/sources/LFS/lfs-packages/conglomeration/iana-etc/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_DEPENDS=""
PKG_BUILD_DEPENDS="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="network"
PKG_SHORTDESC="iana-etc: The Iana-Etc package provides data for network services and protocols."
PKG_LONGDESC="The Iana-Etc package provides data for network services and protocols."
PKG_IS_ADDON="no"
PKG_AUTORECONF="no"

View File

@@ -23,6 +23,7 @@
. config/options $1
$SCRIPTS/install connman
$SCRIPTS/install iana-etc
$SCRIPTS/install ethtool
$SCRIPTS/install openssh

View File

@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Busybox version: 1.20.2
# Wed Sep 26 00:23:57 2012
# Fri Oct 12 19:25:56 2012
#
CONFIG_HAVE_DOT_CONFIG=y
@@ -248,7 +248,7 @@ CONFIG_MKNOD=y
CONFIG_MV=y
CONFIG_FEATURE_MV_LONG_OPTIONS=y
CONFIG_NICE=y
# CONFIG_NOHUP is not set
CONFIG_NOHUP=y
CONFIG_OD=y
CONFIG_PRINTENV=y
CONFIG_PRINTF=y

View File

@@ -119,6 +119,7 @@ EOF
cat >configparms <<EOF
slibdir=/lib
libdir=/usr/lib
EOF
../configure --host=$TARGET_NAME \

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.2.30 Kernel Configuration
# Linux/i386 3.2.31 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -894,8 +894,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -915,7 +917,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.2.30 Kernel Configuration
# Linux/x86_64 3.2.31 Kernel Configuration
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
@@ -855,8 +855,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -876,7 +878,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.2.30 Kernel Configuration
# Linux/i386 3.2.31 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -906,8 +906,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -927,7 +929,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.2.30 Kernel Configuration
# Linux/i386 3.2.31 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -906,8 +906,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -927,7 +929,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.2.30 Kernel Configuration
# Linux/i386 3.2.31 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -902,8 +902,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -923,7 +925,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.2.30 Kernel Configuration
# Linux/x86_64 3.2.31 Kernel Configuration
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
@@ -852,8 +852,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -873,7 +875,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.2.30 Kernel Configuration
# Linux/i386 3.2.31 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -904,8 +904,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -925,7 +927,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.2.30 Kernel Configuration
# Linux/x86_64 3.2.31 Kernel Configuration
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
@@ -855,8 +855,10 @@ CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
CONFIG_SCSI_SAS_HOST_SMP=y
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
@@ -876,7 +878,9 @@ CONFIG_ISCSI_BOOT_SYSFS=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set