Пример #1
0
char *
id_type_2_str(int type)
{
    assert(type >= 0 && type < ARRSZ(id_type_desc));

    return id_type_desc[type];
}
Пример #2
0
void
var_copy(struct variable *dst, struct variable *src)
{
	int types[] = {VAR_BIGNUM, VAR_OCTSTRING, VAR_STRING};
	int i;

	assert(dst != NULL && src != NULL);

	dst->type = 0;

	for (i = 0; i < ARRSZ(types); i++) {
		if ((src->type & types[i]) == 0)
			continue;
		convert_value(dst, types[i], src, types[i]);

		dst->type |= types[i];
	}
	DEBUG(LOG_VERBOSE, "after copy dst types %.4x\n", dst->type);
}
	{ {
		AVANTA_LP_CUSTOMER_MPP0_7,
		AVANTA_LP_CUSTOMER_MPP8_15,
		AVANTA_LP_CUSTOMER_MPP16_23,
		AVANTA_LP_CUSTOMER_MPP24_31,
		AVANTA_LP_CUSTOMER_MPP32_39,
		AVANTA_LP_CUSTOMER_MPP40_47,
		AVANTA_LP_CUSTOMER_MPP48_55,
		AVANTA_LP_CUSTOMER_MPP56_63,
		AVANTA_LP_CUSTOMER_MPP64_67,
	} }
};

MV_BOARD_INFO avanta_lp_customer_board_0_info = {
	.boardName			= "AVANTA-LP-Customer-Board-0",
	.numBoardMppTypeValue		= ARRSZ(avanta_lp_customer_board_0_InfoBoardModTypeInfo),
	.pBoardModTypeValue		= avanta_lp_customer_board_0_InfoBoardModTypeInfo,
	.pBoardMppConfigValue		= avanta_lp_customer_board_0_InfoBoardMppConfigValue,
	.intsGppMaskLow			= 0,
	.intsGppMaskMid			= 0,
	.intsGppMaskHigh		= 0,
	.numBoardDeviceIf		= ARRSZ(avanta_lp_customer_board_0_InfoBoardDeCsInfo),
	.pDevCsInfo			= avanta_lp_customer_board_0_InfoBoardDeCsInfo,
	.numBoardTwsiDev		= ARRSZ(avanta_lp_customer_board_0_InfoBoardTwsiDev),
	.pBoardTwsiDev			= avanta_lp_customer_board_0_InfoBoardTwsiDev,
	.numBoardMacInfo		= ARRSZ(avanta_lp_customer_board_0_InfoBoardMacInfo),
	.pBoardMacInfo			= avanta_lp_customer_board_0_InfoBoardMacInfo,
	.numBoardGppInfo		= 0,
	.pBoardGppInfo			= 0,
	.activeLedsNumber		= 0,
	.pLedGppPin			= NULL,
Пример #4
0
int
main(int argc, char *argv[])
{
	struct memory_buffer mb = {{0, 0, 0}, NULL};
	struct file_buffer fb = {{0, 0, 0}, -1};
	struct pollfd pfds[2] = {{STDIN_FILENO, POLLIN, 0}, {-1, POLLOUT, 0}};
	int flags;
	char *mem;
	struct options opts = parse_options(argc, argv);
	mem = malloc(opts.memory);
	if(mem == NULL)
	{
		fprintf(stderr, "Could not allocate requested memory\n");
		exit(EXIT_FAILURE);
	}
	mb.data = mem;
	mb.buffer.size = opts.memory;
	fb.buffer.size = opts.filesize;
	flags = fcntl(STDOUT_FILENO, F_GETFL);
	if(flags == -1)
	{
		perror("fcntl");
		exit(EXIT_FAILURE);
	}
	flags = fcntl(STDOUT_FILENO, F_SETFL, flags | O_NONBLOCK);
	if(flags == -1)
	{
		perror("fcntl");
		exit(EXIT_FAILURE);
	}
	fb.fd = open(opts.filename, O_RDWR);
	if(fb.fd == -1)
	{
		perror("open");
		exit(EXIT_FAILURE);
	}
	do
	{
		int n = poll(pfds, 2, -1);
		if(n == -1)
		{
			perror("poll");
			exit(EXIT_FAILURE);
		}
		else if(pfds[1].revents & POLLOUT)
		{
			if(buffer_data_available(&mb.buffer))
			{
				int w;
				char *offset = mb.data + buffer_consume_at(&mb.buffer);
				int towrite = buffer_data_available(&mb.buffer);
				while((w = write(STDOUT_FILENO, offset, towrite)) == -1 && errno == EAGAIN)
				{
					towrite >>= 1;
				}
				if(w == -1)
				{
					perror("write");
					exit(EXIT_FAILURE);
				}
				mb.buffer.consumed += w;
				if(w)
				{
					pfds[0].fd = pfds[0].fd == -2 ? -2 : 0;
				}
			}
			else if(buffer_data_available(&fb.buffer))
			{
				int toread = ARRSZ(buf) < buffer_data_available(&fb.buffer) ? ARRSZ(buf) : buffer_data_available(&fb.buffer);
				int w = lseek(fb.fd, buffer_consume_at(&fb.buffer), SEEK_SET);
				int r = read(fb.fd, buf, toread);
				if(r == -1)
				{
					perror("lseek");
					exit(EXIT_FAILURE);
				}
				if(r == -1)
				{
					perror("read");
					exit(EXIT_FAILURE);
				}
				while((w = write(STDOUT_FILENO, buf, r)) == -1 && errno == EAGAIN)
				{
					r >>= 1;
				}
				if(w == -1)
				{
					perror("write");
					exit(EXIT_FAILURE);
				}
				fb.buffer.consumed += w;
				if(w)
				{
					pfds[0].fd = pfds[0].fd == -2 ? -2 : 0;
				}
			}
MV_SERDES_CFG db88f78XX0InfoBoardSerdesConfigValue[] = {
	/* Z1B */
	{MV_TRUE, 0x32221111, 0x11111111, PEX_BUS_MODE_X1, PEX_BUS_DISABLED,PEX_BUS_MODE_X4, PEX_BUS_MODE_X4, 0x00000030},	/* Default */
	{MV_TRUE, 0x31211111, 0x11111111, PEX_BUS_MODE_X1, PEX_BUS_MODE_X1,PEX_BUS_MODE_X4, PEX_BUS_MODE_X4, 0x00000030},	/* PEX module */
	/* Z1A */
	{MV_TRUE, 0x32220000, 0x00000000, PEX_BUS_DISABLED, PEX_BUS_DISABLED,PEX_BUS_DISABLED, PEX_BUS_DISABLED, 0x00000030},	/* Default - Z1A */
	{MV_TRUE, 0x31210000, 0x00000000, PEX_BUS_DISABLED, PEX_BUS_MODE_X1,PEX_BUS_DISABLED, PEX_BUS_DISABLED, 0x00000030}	/* PEX module - Z1A */
};

MV_BOARD_TDM_INFO	db88f78XX0Tdm880[]	= { {1}, {2} };
MV_BOARD_TDM_INFO	db88f78XX0Tdm792[]	= { {1}, {2}, {3}, {4}, {6}, {7} };
MV_BOARD_TDM_INFO	db88f78XX0Tdm3215[]	= { {1} };

MV_BOARD_INFO db88f78XX0Info = {
	.boardName			= "DB-78460-BP",
	.numBoardMppTypeValue		= ARRSZ(db88f78XX0InfoBoardModTypeInfo),
	.pBoardModTypeValue		= db88f78XX0InfoBoardModTypeInfo,
	.numBoardMppConfigValue		= ARRSZ(db88f78XX0InfoBoardMppConfigValue),
	.pBoardMppConfigValue		= db88f78XX0InfoBoardMppConfigValue,
	.numBoardSerdesConfigValue	= ARRSZ(db88f78XX0InfoBoardSerdesConfigValue),
	.pBoardSerdesConfigValue	= db88f78XX0InfoBoardSerdesConfigValue,
	.intsGppMaskLow			= 0,
	.intsGppMaskMid			= 0,
	.intsGppMaskHigh		= 0,
	.numBoardDeviceIf		= ARRSZ(db88f78XX0InfoBoardDeCsInfo),
	.pDevCsInfo			= db88f78XX0InfoBoardDeCsInfo,
	.numBoardTwsiDev		= ARRSZ(db88f78XX0InfoBoardTwsiDev),
	.pBoardTwsiDev			= db88f78XX0InfoBoardTwsiDev,
	.numBoardMacInfo		= ARRSZ(db88f78XX0InfoBoardMacInfo),
	.pBoardMacInfo			= db88f78XX0InfoBoardMacInfo,
	.numBoardGppInfo		= ARRSZ(db88f78XX0InfoBoardGppInfo),
Пример #6
0
		DB_88F6710_MPP40_47,
		DB_88F6710_MPP48_55,
		DB_88F6710_MPP56_63,
		DB_88F6710_MPP64_67,
	} }
};


MV_BOARD_TDM_INFO	db88f6710Tdm880[]	= { {0} }; /* SPI Cs */

MV_BOARD_TDM_SPI_INFO db88f6710TdmSpiInfo[] = { {1} }; /* SPI controller ID */

MV_BOARD_INFO db88f6710Info = {
	.boardName				= "DB-88F6710-BP",
	.enableModuleScan 			= MV_TRUE,
	.numBoardMppTypeValue		= ARRSZ(db88f6710InfoBoardModTypeInfo),
	.pBoardModTypeValue			= db88f6710InfoBoardModTypeInfo,
	.numBoardMppConfigValue		= ARRSZ(db88f6710InfoBoardMppConfigValue),
	.pBoardMppConfigValue		= db88f6710InfoBoardMppConfigValue,
	.intsGppMaskLow				= BIT31,	/* for Switch link interrupt */
	.intsGppMaskMid				= 0,
	.intsGppMaskHigh			= 0,
	.numBoardDeviceIf			= ARRSZ(db88f6710InfoBoardDeCsInfo),
	.pDevCsInfo					= db88f6710InfoBoardDeCsInfo,
	.numBoardTwsiDev			= ARRSZ(db88f6710InfoBoardTwsiDev),
	.pBoardTwsiDev				= db88f6710InfoBoardTwsiDev,
	.numBoardMacInfo			= ARRSZ(db88f6710InfoBoardMacInfo),
	.pBoardMacInfo				= db88f6710InfoBoardMacInfo,
	.numBoardGppInfo			= ARRSZ(db88f6710InfoBoardGppInfo),
	.pBoardGppInfo				= db88f6710InfoBoardGppInfo,
	.activeLedsNumber			= ARRSZ(db88f6710InfoBoardDebugLedIf),