static int __init MTD_New_Partion(char *line) { char string[MAX_NAME_SIZE]; int params[4]; get_options (get_string_option(string,sizeof(string),line),4,params); if(params[0]<3) { printk(MTD_FORTUNET_PK "Bad paramters for MTD Partion " " name,region-number,size,offset\n"); return 1; } if((params[1]<0)||(params[1]>=MAX_NUM_REGIONS)) { printk(MTD_FORTUNET_PK "Bad region index of %d only have 0..%u regions\n", params[1],MAX_NUM_REGIONS-1); return 1; } if(map_regions_parts[params[1]]>=MAX_NUM_PARTITIONS) { printk(MTD_FORTUNET_PK "Out of space for partion in this region\n"); return 1; } map_regions[params[1]].parts[map_regions_parts[params[1]]].name = map_regions[params[1]]. parts_name[map_regions_parts[params[1]]]; strcpy(map_regions[params[1]].parts[map_regions_parts[params[1]]].name,string); map_regions[params[1]].parts[map_regions_parts[params[1]]].size = params[2]; map_regions[params[1]].parts[map_regions_parts[params[1]]].offset = params[3]; map_regions[params[1]].parts[map_regions_parts[params[1]]].mask_flags = 0; map_regions_parts[params[1]]++; return 1; }
static GdkPixbuf *load_cow() { char *cow_path; const char *alt_image = get_string_option("alt_image"); if (*alt_image) cow_path = strdup(alt_image); else asprintf(&cow_path, "%s/%s_%s.png", DATADIR, get_string_option("image_base"), get_string_option("cow_size")); GdkPixbuf *pixbuf = gdk_pixbuf_new_from_file(cow_path, NULL); if (NULL == pixbuf) { fprintf(stderr, i18n("Failed to load cow image: %s\n"), cow_path); exit(EXIT_FAILURE); } free(cow_path); return pixbuf; }
static int __init MTD_New_Region(char *line) { char string[MAX_NAME_SIZE]; int params[6]; get_options (get_string_option(string,sizeof(string),line),6,params); if(params[0]<1) { printk(MTD_FORTUNET_PK "Bad paramters for MTD Region " " name,region-number[,base,size,buswidth,altbuswidth]\n"); return 1; } if((params[1]<0)||(params[1]>=MAX_NUM_REGIONS)) { printk(MTD_FORTUNET_PK "Bad region index of %d only have 0..%u regions\n", params[1],MAX_NUM_REGIONS-1); return 1; } memset(&map_regions[params[1]],0,sizeof(map_regions[params[1]])); memcpy(&map_regions[params[1]].map_info, &default_map,sizeof(map_regions[params[1]].map_info)); map_regions_set[params[1]] = 1; map_regions[params[1]].window_addr_phyical = DEF_WINDOW_ADDR_PHY; map_regions[params[1]].altbuswidth = 2; map_regions[params[1]].mymtd = NULL; map_regions[params[1]].map_info.name = map_regions[params[1]].map_name; strcpy(map_regions[params[1]].map_info.name,string); if(params[0]>1) { map_regions[params[1]].window_addr_phyical = params[2]; } if(params[0]>2) { map_regions[params[1]].map_info.size = params[3]; } if(params[0]>3) { map_regions[params[1]].map_info.buswidth = params[4]; } if(params[0]>4) { map_regions[params[1]].altbuswidth = params[5]; } return 1; }