mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-libstb-hal.git
synced 2025-08-31 09:20:58 +02:00
Merge branch 'master' of https://bitbucket.org/max_10/libstb-hal-max
Origin commit data
------------------
Branch: master
Commit: 6e27b9bd7a
Author: TangoCash <eric@loxat.de>
Date: 2018-10-03 (Wed, 03 Oct 2018)
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
@@ -1011,6 +1011,44 @@ void cCA::setSource(eDVBCISlot* slot)
|
||||
case TUNER_D:
|
||||
fprintf(ci, "D");
|
||||
break;
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
case TUNER_E:
|
||||
fprintf(ci, "E");
|
||||
break;
|
||||
case TUNER_F:
|
||||
fprintf(ci, "F");
|
||||
break;
|
||||
case TUNER_G:
|
||||
fprintf(ci, "G");
|
||||
break;
|
||||
case TUNER_H:
|
||||
fprintf(ci, "H");
|
||||
break;
|
||||
case TUNER_I:
|
||||
fprintf(ci, "I");
|
||||
break;
|
||||
case TUNER_J:
|
||||
fprintf(ci, "J");
|
||||
break;
|
||||
case TUNER_K:
|
||||
fprintf(ci, "K");
|
||||
break;
|
||||
case TUNER_L:
|
||||
fprintf(ci, "L");
|
||||
break;
|
||||
case TUNER_M:
|
||||
fprintf(ci, "M");
|
||||
break;
|
||||
case TUNER_N:
|
||||
fprintf(ci, "N");
|
||||
break;
|
||||
case TUNER_O:
|
||||
fprintf(ci, "O");
|
||||
break;
|
||||
case TUNER_P:
|
||||
fprintf(ci, "P");
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
fclose(ci);
|
||||
}
|
||||
@@ -1025,7 +1063,11 @@ void cCA::setInputs()
|
||||
char choices[64];
|
||||
FILE * fd = 0;
|
||||
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
for (int number = 0; number < 16; number++) // tuner A to P, input 0 to 15
|
||||
#else
|
||||
for (int number = 0; number < 4; number++) // tuner A to D, input 0 to 3
|
||||
#endif
|
||||
{
|
||||
snprintf(choices, 64, "/proc/stb/tsmux/input%d_choices", number);
|
||||
if(access(choices, R_OK) < 0)
|
||||
@@ -1086,6 +1128,44 @@ void cCA::setInputSource(eDVBCISlot* slot, bool ci)
|
||||
case TUNER_D:
|
||||
fprintf(input, "D");
|
||||
break;
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
case TUNER_E:
|
||||
fprintf(input, "E");
|
||||
break;
|
||||
case TUNER_F:
|
||||
fprintf(input, "F");
|
||||
break;
|
||||
case TUNER_G:
|
||||
fprintf(input, "G");
|
||||
break;
|
||||
case TUNER_H:
|
||||
fprintf(input, "H");
|
||||
break;
|
||||
case TUNER_I:
|
||||
fprintf(input, "I");
|
||||
break;
|
||||
case TUNER_J:
|
||||
fprintf(input, "J");
|
||||
break;
|
||||
case TUNER_K:
|
||||
fprintf(input, "K");
|
||||
break;
|
||||
case TUNER_L:
|
||||
fprintf(input, "L");
|
||||
break;
|
||||
case TUNER_M:
|
||||
fprintf(input, "M");
|
||||
break;
|
||||
case TUNER_N:
|
||||
fprintf(input, "N");
|
||||
break;
|
||||
case TUNER_O:
|
||||
fprintf(input, "O");
|
||||
break;
|
||||
case TUNER_P:
|
||||
fprintf(input, "P");
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
fclose(input);
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#ifndef __CA_H_
|
||||
#define __CA_H_
|
||||
|
||||
#include <config.h>
|
||||
#include <stdint.h>
|
||||
#include <asm/types.h>
|
||||
#include <pthread.h>
|
||||
@@ -126,6 +127,20 @@ typedef enum {
|
||||
TUNER_B,
|
||||
TUNER_C,
|
||||
TUNER_D
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
, TUNER_E
|
||||
, TUNER_F
|
||||
, TUNER_G
|
||||
, TUNER_H
|
||||
, TUNER_I
|
||||
, TUNER_J
|
||||
, TUNER_K
|
||||
, TUNER_L
|
||||
, TUNER_M
|
||||
, TUNER_N
|
||||
, TUNER_O
|
||||
, TUNER_P
|
||||
#endif
|
||||
} source_t;
|
||||
|
||||
typedef enum {
|
||||
|
@@ -18,6 +18,7 @@
|
||||
#ifndef __dmx_hal__
|
||||
#define __dmx_hal__
|
||||
|
||||
#include <config.h>
|
||||
#include <cstdlib>
|
||||
#include <vector>
|
||||
#include <inttypes.h>
|
||||
@@ -36,7 +37,11 @@ extern "C" {
|
||||
|
||||
#include <cs_types.h>
|
||||
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
#define MAX_DMX_UNITS 16
|
||||
#else
|
||||
#define MAX_DMX_UNITS 4
|
||||
#endif
|
||||
|
||||
typedef enum
|
||||
{
|
||||
|
@@ -20,6 +20,7 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
@@ -75,7 +76,11 @@ static const char *DMX_T[] = {
|
||||
static int dmx_source[NUM_DEMUX] = { 0, 0, 0, 0 };
|
||||
|
||||
/* map the device numbers. */
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
#define NUM_DEMUXDEV 16
|
||||
#else
|
||||
#define NUM_DEMUXDEV 8
|
||||
#endif
|
||||
static const char *devname[NUM_DEMUXDEV] = {
|
||||
"/dev/dvb/adapter0/demux0",
|
||||
"/dev/dvb/adapter0/demux1",
|
||||
@@ -85,9 +90,23 @@ static const char *devname[NUM_DEMUXDEV] = {
|
||||
"/dev/dvb/adapter0/demux5",
|
||||
"/dev/dvb/adapter0/demux6",
|
||||
"/dev/dvb/adapter0/demux7"
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
, "/dev/dvb/adapter0/demux8"
|
||||
, "/dev/dvb/adapter0/demux9"
|
||||
, "/dev/dvb/adapter0/demux10"
|
||||
, "/dev/dvb/adapter0/demux11"
|
||||
, "/dev/dvb/adapter0/demux12"
|
||||
, "/dev/dvb/adapter0/demux13"
|
||||
, "/dev/dvb/adapter0/demux14"
|
||||
, "/dev/dvb/adapter0/demux15"
|
||||
#endif
|
||||
};
|
||||
/* did we already DMX_SET_SOURCE on that demux device? */
|
||||
#if BOXMODEL_VUSOLO4K
|
||||
static bool init[NUM_DEMUXDEV] = { false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false };
|
||||
#else
|
||||
static bool init[NUM_DEMUXDEV] = { false, false, false, false, false, false, false, false };
|
||||
#endif
|
||||
|
||||
typedef struct dmx_pdata {
|
||||
int last_source;
|
||||
|
@@ -48,6 +48,8 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.has_fan = 0;
|
||||
caps.has_CI = 2;
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_type = HW_DISPLAY_LINE_TEXT;
|
||||
caps.display_xres = 12;
|
||||
}
|
||||
else if (!strncmp(buf, "ufs912", 6)) {
|
||||
strcpy(caps.boxvendor, "DUCKBOX");
|
||||
@@ -111,6 +113,8 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.has_fan = 0;
|
||||
caps.has_CI = 2;
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_type = HW_DISPLAY_LINE_TEXT;
|
||||
caps.display_xres = 12;
|
||||
}
|
||||
else if (!strncmp(buf, "octagon1008", 11)) {
|
||||
strcpy(caps.boxvendor, "DUCKBOX");
|
||||
@@ -122,6 +126,8 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.has_fan = 0;
|
||||
caps.has_CI = 2;
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_type = HW_DISPLAY_LINE_TEXT;
|
||||
caps.display_xres = 8;
|
||||
}
|
||||
else if (!strncmp(buf, "hs7110", 6)) {
|
||||
strcpy(caps.boxvendor, "DUCKBOX");
|
||||
@@ -188,6 +194,8 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.has_fan = 1;
|
||||
caps.has_CI = 2;
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_type = HW_DISPLAY_LINE_TEXT;
|
||||
caps.display_xres = 14;
|
||||
}
|
||||
else if (!strncmp(buf, "cuberevo-250hd", 4)) {
|
||||
strcpy(caps.boxvendor, "DUCKBOX");
|
||||
@@ -274,10 +282,14 @@ hw_caps_t *get_hwcaps(void)
|
||||
strcpy(caps.boxname, buf);
|
||||
caps.can_shutdown = 1;
|
||||
caps.has_HDMI = 1;
|
||||
caps.has_SCART = 2;
|
||||
caps.can_cec = 0;
|
||||
caps.has_SCART = 1;
|
||||
caps.has_SCART_input = 1;
|
||||
caps.can_cec = 1;
|
||||
caps.has_fan = 0;
|
||||
caps.has_CI = 2;
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_type = HW_DISPLAY_LINE_TEXT;
|
||||
caps.display_xres = 8;
|
||||
}
|
||||
else if (!strncmp(buf, "arivalink200", 12)) {
|
||||
strcpy(caps.boxvendor, "DUCKBOX");
|
||||
|
@@ -679,6 +679,7 @@ static int ParseParams(int argc, char *argv[], PlayFiles_t *playbackFiles, int *
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
system("echo 'encoder' > /proc/stb/avs/0/input");
|
||||
|
||||
pthread_t termThread;
|
||||
int isTermThreadStarted = 0;
|
||||
|
||||
|
Reference in New Issue
Block a user