您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ tag_next函数代码示例

51自学网 2021-06-03 08:39:33
  C++
这篇教程C++ tag_next函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中tag_next函数的典型用法代码示例。如果您正苦于以下问题:C++ tag_next函数的具体用法?C++ tag_next怎么用?C++ tag_next使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了tag_next函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: tag_size

static struct tag *setup_clock_tags(struct tag *params){	params->hdr.tag = ATAG_CLOCK;	params->hdr.size = tag_size(tag_clock);	params->u.clock.clock_id = ACLOCK_BOOTCPU;	params->u.clock.clock_flags = 0;	params->u.clock.clock_hz = gd->cpu_hz;#ifdef CONFIG_AT32AP7000	/*	 * New kernels don't need this, but we should be backwards	 * compatible for a while...	 */	params = tag_next(params);	params->hdr.tag = ATAG_CLOCK;	params->hdr.size = tag_size(tag_clock);	params->u.clock.clock_id = ACLOCK_HSB;	params->u.clock.clock_flags = 0;	params->u.clock.clock_hz = get_hsb_clk_rate();#endif	return tag_next(params);}
开发者ID:Februar0218,项目名称:u-boot-omap-pandora,代码行数:24,


示例2: tag_size

static struct tag *setup_ramdisk_tag(struct tag *params,				     unsigned long rd_start,				     unsigned long rd_end){	if (rd_start == rd_end)		return params;	params->hdr.tag = ATAG_RDIMG;	params->hdr.size = tag_size(tag_mem_range);	params->u.mem_range.addr = rd_start;	params->u.mem_range.size = rd_end - rd_start;	return tag_next(params);}
开发者ID:5victor,项目名称:u-boot-mini2440,代码行数:15,


示例3: tag_size

void *atag_build() {  struct memory_image image;  struct tag *tag = (struct tag*)ATAG_BASE_ADDR;	  tag->hdr.tag = ATAG_CORE;  tag->hdr.size = tag_size (tag_core);  tag->u.core.flags = 0;  tag->u.core.pagesize = 0x00001000;  tag->u.core.rootdev = 0x0000;  tag = tag_next(tag);  if (image_find(IMG_CMDLINE, &image) != NULL) {    char *atag_cmdline = tag->u.cmdline.cmdline;    tag->hdr.tag = ATAG_CMDLINE;    tag->hdr.size = (sizeof(struct tag_header) + image.size + 1 + 3) >> 2;    memcpy(atag_cmdline, image.data, image.size);    if (atag_cmdline[image.size-1] == '/xa') {      atag_cmdline[image.size-1] = '/0';    } else {      atag_cmdline[image.size] = '/0';    }    tag = tag_next(tag);  }
开发者ID:XVilka,项目名称:2ndboot-ng,代码行数:24,


示例4: setup_cmdline_tag

static voidsetup_cmdline_tag(const char * line){    int linelen = strlen(line);    if(!linelen)        return;                             /* do not insert a tag for an empty commandline */    params->hdr.tag = ATAG_CMDLINE;         /* Commandline tag */    params->hdr.size = (sizeof(struct atag_header) + linelen + 1 + 4) >> 2;    strcpy(params->u.cmdline.cmdline,line); /* place commandline into tag */    params = tag_next(params);              /* move pointer to next tag */}
开发者ID:BitThunder,项目名称:bitthunder,代码行数:15,


示例5: setup_serial16_tag

/* 16-byte serial number tag (alphanumeric string) */void setup_serial16_tag(struct tag **in_params){	const u8 *sn = 0;	sn = idme_get_board_serial();	if (!sn){                printf("Erro, failed to get_board_serial/n");		return; /* ignore if NULL was returned. */        }        printf("board serial: %s/n", sn);	params->hdr.tag = ATAG_SERIAL16;	params->hdr.size = tag_size (tag_id16);	memcpy(params->u.id16.data, sn, sizeof params->u.id16.data);	params = tag_next (params);}
开发者ID:verygreen,项目名称:u-boot-amazon-jed,代码行数:17,


示例6: setup_serial_tag

void setup_serial_tag (struct tag **tmp){	struct tag *params = *tmp;	struct tag_serialnr serialnr;	void get_board_serial(struct tag_serialnr *serialnr);	get_board_serial(&serialnr);	params->hdr.tag = ATAG_SERIAL;	params->hdr.size = tag_size (tag_serialnr);	params->u.serialnr.low = serialnr.low;	params->u.serialnr.high= serialnr.high;	params = tag_next (params);	*tmp = params;printf("config_serial_tag/n");}
开发者ID:Doxlon,项目名称:buildroot-uboot,代码行数:16,


示例7: sun6i_fixup

static void __init sun6i_fixup(struct tag *tags, char **from,			       struct meminfo *meminfo){	struct tag *t;	for (t = tags; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_MEM && t->u.mem.size) {			pr_debug("[%s]: From boot, get meminfo:/n"					"/tStart:/t0x%08x/n"					"/tSize:/t%dMB/n",					__func__,					t->u.mem.start,					t->u.mem.size >> 20);			return;		}	}
开发者ID:jiangdoudou,项目名称:a31_422_v33_lichee,代码行数:16,


示例8: tag_next

// fixmestruct tag *setup_mem_atag (struct tag *cur_tag){	int i;	for (i = 0; i < CONFIG_RAM_BANK_NUM; i++) {		cur_tag = tag_next(cur_tag);		cur_tag->hdr.tag  = ATAG_MEM;		cur_tag->hdr.size = tag_size(tag_mem32);		cur_tag->u.mem.start = SDRAM_BASE;		cur_tag->u.mem.size  = SDRAM_SIZE;	}	return cur_tag;}
开发者ID:JansZeng,项目名称:g-bios,代码行数:17,


示例9: setup_revision_tag

void setup_revision_tag(struct tag **in_params){	u32 rev = 0;#ifdef CONFIG_BOARD_REVISION	rev = gd->bd->bi_board_revision;#else	u32 get_board_rev(void);	rev = get_board_rev();#endif	params->hdr.tag = ATAG_REVISION;	params->hdr.size = tag_size (tag_revision);	params->u.revision.rev = rev;	params = tag_next (params);}
开发者ID:verygreen,项目名称:u-boot-amazon-jed,代码行数:16,


示例10: init_atags_procfs

static int __init init_atags_procfs(void){	/*	 * This cannot go into save_atags() because kmalloc and proc don't work	 * yet when it is called.	 */	struct proc_dir_entry *tags_entry;	struct tag *tag = (struct tag *)atags_copy;	struct buffer *b;	size_t size;	if (tag->hdr.tag != ATAG_CORE) {		printk(KERN_INFO "No ATAGs?");		return -EINVAL;	}	for (; tag->hdr.size; tag = tag_next(tag))		;	/* include the terminating ATAG_NONE */	size = (char *)tag - atags_copy + sizeof(struct tag_header);	WARN_ON(tag->hdr.tag != ATAG_NONE);	b = kmalloc(sizeof(*b) + size, GFP_KERNEL);	if (!b)		goto nomem;	b->size = size;	memcpy(b->data, atags_copy, size);	tags_entry = proc_create_data("atags", 0400, NULL, &atags_fops, b);	if (!tags_entry)		goto nomem;	atags_buffer = b;	return 0;nomem:	kfree(b);	printk(KERN_ERR "Exporting ATAGs: not enough memory/n");	return -ENOMEM;}
开发者ID:DSMKexec,项目名称:kexec-kernel-e100,代码行数:47,


示例11: setup_bootmode_tag

/* bootmode tag (alphanumeric strings) */void setup_bootmode_tag(struct tag **in_params){#ifdef CONFIG_ENABLE_IDME      char bootmode_buf[IDME_MAX_BOOTMODE_LEN+1];    char postmode_buf[IDME_MAX_BOOTMODE_LEN+1];        unsigned long count = 0;    memset(bootmode_buf, 0, IDME_MAX_BOOTMODE_LEN+1);    memset(postmode_buf, 0, IDME_MAX_BOOTMODE_LEN+1);    if (idme_get_var("bootmode", bootmode_buf, sizeof(bootmode_buf))){            printf("Error, failed to get the bootmode/n");            return;    }    printf("bootmode: %s/n",bootmode_buf);    if (idme_get_var("postmode", postmode_buf, sizeof(postmode_buf))){            printf("Error, failed to get postmode/n");            return;    }    memcpy(&count, postmode_buf, sizeof(unsigned long));    printf("count in postmode buf = %lu/n", count);    //    printf("postmode: %s/n", postmode_buf);    params->hdr.tag = ATAG_BOOTMODE;    params->hdr.size = tag_size (tag_bootmode);    memcpy (params->u.bootmode.boot,             bootmode_buf,             sizeof params->u.bootmode.boot);    memcpy (params->u.bootmode.post,             postmode_buf,             sizeof params->u.bootmode.post);	    memcpy((char*)&count, params->u.bootmode.post, sizeof(unsigned long));    printf("postmode in atag = %lu/n", count);    params = tag_next (params);#endif}
开发者ID:verygreen,项目名称:u-boot-amazon-jed,代码行数:48,


示例12: tag_size

static struct tag *setup_memory_tags(struct tag *params){	bd_t *bd = gd->bd;	int i;	for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {		params->hdr.tag = ATAG_MEM;		params->hdr.size = tag_size(tag_mem_range);		params->u.mem_range.addr = bd->bi_dram[i].start;		params->u.mem_range.size = bd->bi_dram[i].size;		params = tag_next(params);	}	return params;}
开发者ID:247a,项目名称:lenovo_b6000-8000_kernel_source,代码行数:17,


示例13: parse_tag_monodie

int __init parse_tag_monodie(const struct tag *tags){#if !defined(CONFIG_MSM_AMSS_VERSION_WINCE)	struct tag *t = (struct tag *)tags;	int find = 0;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_MONODIE) {			printk(KERN_DEBUG "find the flash id tag/n");			find = 1;			break;		}	}	if (find)		mono_die = t->u.revision.rev;	printk(KERN_DEBUG "parse_tag_monodie: mono-die = 0x%x/n", mono_die);	return mono_die;#else	/* We need CONFIG_DEBUG_LL, otherwise our readl() will freeze the device	 * on boot. (HaRET boot at least.)	 */#if !defined(CONFIG_DEBUG_LL) && !defined(CONFIG_MSM_AMSS_BREW)#error CONFIG_DEBUG_LL is required!#endif	int die_selection;	// restrict to htctopaz for now	if (!machine_is_htctopaz())		return mono_die;	/* Dynamic memory die detection via phys 0x081c94.	 *   dualdie: 0x00000001	 *   monodie: 0x00000002	 */	die_selection = readl(0x00081c94);	printk(KERN_DEBUG "%s: die_selection=0x%08x/n", __func__, die_selection);	mono_die = die_selection == 0x00000002;	printk(KERN_DEBUG "%s: mono-die = 0x%x/n", __func__, mono_die);	return mono_die;#endif}
开发者ID:tripleoxygen,项目名称:kernel_zeebo,代码行数:45,


示例14: parse_tag_hwid

int __init parse_tag_hwid(const struct tag *tags){	int hwid = 0, find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_HWID) {			printk(KERN_DEBUG "[K] find the hwid tag/n");			find = 1;			break;		}	}	if (find)		hwid = t->u.revision.rev;	printk(KERN_DEBUG "[K] parse_tag_hwid: hwid = 0x%x/n", hwid);	return hwid;}
开发者ID:Ateeq72,项目名称:htc_pico_kernel_3.x,代码行数:18,


示例15: parse_tag_monodie

int __init parse_tag_monodie(const struct tag *tags){	int find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_MONODIE) {			printk(KERN_DEBUG "find the flash id tag/n");			find = 1;			break;		}	}	if (find)		mono_die = t->u.revision.rev;	printk(KERN_DEBUG "parse_tag_monodie: mono-die = 0x%x/n", mono_die);	return mono_die;}
开发者ID:MongooseHelix,项目名称:kernel_desirec_2.6.35_ics,代码行数:18,


示例16: parse_tag_skuid

int __init parse_tag_skuid(const struct tag *tags){	int skuid = 0, find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_SKUID) {			printk(KERN_DEBUG "find the skuid tag/n");			find = 1;			break;		}	}	if (find)		skuid = t->u.revision.rev;	printk(KERN_DEBUG "parse_tag_skuid: hwid = 0x%x/n", skuid);	return skuid;}
开发者ID:RuNuH,项目名称:Glacier-HTC2,代码行数:18,


示例17: parse_tag_security

int __init parse_tag_security(const struct tag *tags){	int security = 0, find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_SECURITY) {			printk(KERN_DEBUG "find the security tag/n");			find = 1;			break;		}	}	if (find)		security = t->u.revision.rev;	printk(KERN_DEBUG "parse_tag_security: %d/n", security);	return security;}
开发者ID:pasomnica,项目名称:doubleslash-kernel-protou,代码行数:18,


示例18: setup_cmdline_tag

static voidsetup_cmdline_tag(const char line[]){    int i=0;    char *ptr = params->u.cmdline.cmdline;    while( line[i] != 0x00){	*(ptr+i) = line[i];	i++;    }    if(i <= 0)        return;                             /* do not insert a tag for an empty commandline */    params->hdr.tag = ATAG_CMDLINE;         /* Commandline tag */    params->hdr.size = (sizeof(struct atag_header) + i + 1 + 4) >> 2;    params = tag_next(params);              /* move pointer to next tag */}
开发者ID:sergeyz,项目名称:ipaq21x,代码行数:18,


示例19: sun8i_fixup

static void __init sun8i_fixup(struct tag *tags, char **from,			       struct meminfo *meminfo){#ifdef CONFIG_EVB_PLATFORM	struct tag *t;	for (t = tags; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_MEM && t->u.mem.size) {			early_printk("[%s]: From boot, get meminfo:/n"					"/tStart:/t0x%08x/n"					"/tSize:/t%dMB/n",					__func__,					t->u.mem.start,					t->u.mem.size >> 20);			mem_start = t->u.mem.start;			mem_size = t->u.mem.size;			return;		}	}
开发者ID:alex-deng,项目名称:a33_linux,代码行数:19,


示例20: setup_videolfb_tag

static void setup_videolfb_tag (gd_t *gd){	/* An ATAG_VIDEOLFB node tells the kernel where and how large	 * the framebuffer for video was allocated (among other things).	 * Note that a _physical_ address is passed !	 *	 * We only use it to pass the address and size, the other entries	 * in the tag_videolfb are not of interest.	 */	params->hdr.tag = ATAG_VIDEOLFB;	params->hdr.size = tag_size (tag_videolfb);	params->u.videolfb.lfb_base = (u32) gd->fb_base;	/* Fb size is calculated according to parameters for our panel	 */	params->u.videolfb.lfb_size = calc_fbsize();	params = tag_next (params);}
开发者ID:succulent,项目名称:u-boot-hummingbird-ovation,代码行数:19,


示例21: parse_tag_ddr_id

int __init parse_tag_ddr_id(const struct tag *tags){	int ddr_id = -1, find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_DDR_ID) {			printk(KERN_DEBUG "find the DDR-ID tag/n");			find = 1;			break;		}	}	if (find)		ddr_id = t->u.revision.rev;	printk(KERN_DEBUG "parse_tag_ddr_id: %d/n", ddr_id);	return ddr_id;}
开发者ID:Braccoz,项目名称:htc-kernel-doubleshot,代码行数:19,


示例22: parse_tag_pcbid

int __init parse_tag_pcbid(const struct tag *tags){	int find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_PCBID) {			printk(KERN_DEBUG "found the pcbid tag/n");			find = 1;			break;		}	}	if (find) {		pcbid = t->u.revision.rev;	}	printk(KERN_DEBUG "parse_tag_pcbid: 0x%x/n", pcbid);	return pcbid;}
开发者ID:vaskomobile,项目名称:One_X-2.6.39.4,代码行数:19,


示例23: tag_size

static struct tag *setup_memory_tags(struct tag *ktags){	for (int i = 0; i < lib_sysinfo.n_memranges; i++) {		struct memrange *range = &lib_sysinfo.memrange[i];		if (range->type != CB_MEM_RAM)			continue;		ktags->hdr.tag = ATAG_MEM;		ktags->hdr.size = tag_size(tag_mem32);		ktags->u.mem.start = (uint32_t) range->base;		ktags->u.mem.size = (uint32_t) range->size;		printf("MEM tag added %#8.8x..%#8.8x/n",		       ktags->u.mem.start,		       ktags->u.mem.start + ktags->u.mem.size - 1);		ktags = tag_next(ktags);	}	return ktags;}
开发者ID:coreboot,项目名称:depthcharge,代码行数:19,


示例24: cmdline_filter

/*=======================================================================*/static void cmdline_filter(struct tag *cmdline_tag, char *default_cmdline){	const char *undesired_cmds[] = {		"console=",		"root=",	};	int i;	int ck_f = 0;	char *cs, *ce;	cs = cmdline_tag->u.cmdline.cmdline;	ce = cs;	while ((__u32) ce < (__u32) tag_next(cmdline_tag)) {		while (*cs == ' ' || *cs == '/0') {			cs++;			ce = cs;		}		if (*ce == ' ' || *ce == '/0') {			for (i = 0; i < sizeof(undesired_cmds) / sizeof(char *); i++) {				if (memcmp(cs, undesired_cmds[i], strlen(undesired_cmds[i])) == 0) {					ck_f = 1;					break;				}			}			if (ck_f == 0) {				*ce = '/0';				/* Append to the default command line */				strcat(default_cmdline, " ");				strcat(default_cmdline, cs);			}			ck_f = 0;			cs = ce + 1;		}		ce++;	}	if (strlen(default_cmdline) >= COMMAND_LINE_SIZE)		panic("Command line length is too long./n/r");}
开发者ID:JmzTaylor,项目名称:android_kernel_amazon_ariel,代码行数:43,


示例25: parse_tag_skuid

int __init parse_tag_skuid(const struct tag *tags){	int find = 0;	struct tag *t = (struct tag *)tags;	for (; t->hdr.size; t = tag_next(t)) {		if (t->hdr.tag == ATAG_SKUID) {			printk(KERN_DEBUG "find the skuid tag/n");			find = 1;			break;		}	}	if (find) {		unsigned char *dptr = (unsigned char *)(&t->u);		unsigned int sku_id_int = 0;		char *ptr = SKUID + sizeof(SKUID) - 1;		int rate = 1;		int index= 0;		memcpy(SKUID, dptr, 16);		for (index = 0;index < sizeof(SKUID);index++) {			if (0 == *ptr) {				ptr--;				continue;			}			if (*ptr >= '0' && *ptr <= '9')				sku_id_int += (*ptr - '0') * rate;			else if (*ptr >= 'a' && *ptr <= 'f')				sku_id_int += ((*ptr - 'a') + 10) * rate;			else if (*ptr >= 'A' && *ptr <= 'F')				sku_id_int += ((*ptr - 'A') + 10) * rate;			ptr--;			rate *= 16;		}		sku_id = sku_id_int;	}	printk(KERN_INFO "parse_tag_skuid: 0x%s/n", SKUID);	printk(KERN_INFO "parse_tag_skuid: 0x%x/n", sku_id);	return 0;}
开发者ID:SimonSickle,项目名称:android_kernel_htc_evitareul,代码行数:42,



注:本文中的tag_next函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ tag_size函数代码示例
C++ tag_fixnum函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。