struct status_data dev_status_handle() { struct status_data dev_status; dev_status.cpu_usage = get_cpuoccupy_status(); dev_status.ibeacon_status = get_ibeacon_status(); dev_status.wifi_collect_module = get_wifi_module_status(); dev_status.net_type = get_net_type(); dev_status.mem_usage = get_memoccupy_status(); uagent_printf(MSG_ERROR,"The cpu occupy rate is %d, the ibeacon status" "is %d, the wifi collect module status is %d, the net type is %d," "the mem occupy is %d.\n", dev_status.cpu_usage, dev_status.ibeacon_status, dev_status.wifi_collect_module, dev_status.net_type,dev_status.mem_usage); return dev_status; }
void dru_init(void) { unsigned int i=0,data; unsigned char gain_test,en_test,lo; unsigned short temp_test,epld_test; power_sw_init(); power_sw_open(); #ifdef CONFIG_KSZ8873 dru_ksz8873_init(); printf("configure ksz8873\n"); #endif #ifdef CONFIG_AD9523 if(get_device_type()==DEVICE_TYPE_MAIN){ dru_ad9523_init_m(); }else{ dru_ad9523_init_s(); } //dru_ad9523_init(); spi_delay(SPI_CONFIG_DELAY); printf("configure ad9523\n"); #endif #ifdef DOWNLOAD_FPGA if(get_device_type()==DEVICE_TYPE_MAIN){ dru_fpga_download(FPGA_FILE_LENGTH,"/ramDisk/fpga_main.rbf");//1357101 }else if(get_device_type()==DEVICE_TYPE_RAU){ dru_fpga_download(FPGA_FILE_LENGTH,"/ramDisk/fpga_rrs.rbf");//1357101 }else if(get_device_type()==DEVICE_TYPE_EXPEND){ dru_fpga_download(FPGA_FILE_LENGTH,"/ramDisk/fpga_exp.rbf");//1357101 } printf("configure fpga\n"); #endif /*#ifdef CONFIG_LMX2531 if(get_net_group() == 0x331){ // µçÐÅÈýÍø // dru_lmx2531_cdma_init_m(); dru_lmx2531_fdd_lte1_config(1711400); dru_lmx2531_fdd_lte2_config(1711400); }else{ if(get_device_type()==DEVICE_TYPE_MAIN){ //dru_lmx2531_wcdma_config(1925340);// main dru_lmx2531_config(1879260,3,0,LQ1910E_6144M); }else{ dru_lmx2531_wcdma_config(1925340); //RAU }// if(get_net_type() == 1){ // 1:gsm 2:dcs dru_lmx2531_config(805760,1,1,LQ1650E_6144M); //dru_lmx2531_gsm_init_m(); }else{ dru_lmx2531_dcs_init(); } if(get_device_type()==DEVICE_TYPE_MAIN){ dru_lmx2531_config(2206760,2,0,LQ2265E_6144M); dru_lmx2531_config(2206760,4,0,LQ2265E_6144M); //dru_lmx2531_lte1_config(2252840);// main //dru_lmx2531_lte2_config(2252840);// main }else{ dru_lmx2531_lte1_config(2252840); // RAU dru_lmx2531_lte2_config(2252840); } }*/ if(get_net_group() == 0x331){ // µçÐÅÈýÍø // dru_lmx2531_cdma_init_m(); dru_lmx2531_fdd_lte1_config(1711400); dru_lmx2531_fdd_lte2_config(1711400); }else{ if(get_device_type()==DEVICE_TYPE_MAIN){ //dru_lmx2531_wcdma_config(1925340);// main if(dru_dev_p->dev_vco<0X20){ dru_lmx2531_config(1879260,3,0,LQ1910E_6144M); }else if((dru_dev_p->dev_vco>0X20)&&(dru_dev_p->dev_vco<0x30)){ dru_lmx2581_config(187926,3); } } if(get_net_type() == 1){ // 1:gsm 2:dcs //dru_lmx2531_config(805760,1,1,LQ1650E_6144M); if(dru_dev_p->dev_vco<0X20){ dru_lmx2531_config(805760,1,1,LQ1650E_6144M); }else if(dru_dev_p->dev_vco>0X20&&dru_dev_p->dev_vco<0x30){ dru_lmx2581_config(80576,1); } //dru_lmx2531_gsm_init_m(); }else{ dru_lmx2531_dcs_init(); } if(get_device_type()==DEVICE_TYPE_MAIN){ //dru_lmx2531_config(2206760,2,0,LQ2265E_6144M); //dru_lmx2531_config(2206760,4,0,LQ2265E_6144M); if(dru_dev_p->dev_vco==DEV_LM2531_CMGSM_LTEE){ //dru_lmx2531_config(805760,1,1,LQ1650E_6144M); dru_lmx2531_config(2206760,2,0,LQ2265E_6144M); dru_lmx2531_config(2206760,4,0,LQ2265E_6144M); }else if(dru_dev_p->dev_vco==DEV_LM2581_CMGSM_LTEE){ dru_lmx2581_config(220676,2); dru_lmx2581_config(220676,4); } if(dru_dev_p->dev_vco==DEV_LM2531_CMGSM_LTED){ //dru_lmx2531_config(805760,1,1,LQ1650E_6144M); dru_lmx2531_config(2466760,2,0,LQ2570E_6144M); dru_lmx2531_config(2466760,4,0,LQ2570E_6144M); }else if(dru_dev_p->dev_vco==DEV_LM2581_CMGSM_LTED){ dru_lmx2581_config(246676,2); dru_lmx2581_config(246676,4); } //dru_lmx2531_lte1_config(2252840);// main //dru_lmx2531_lte2_config(2252840);// main } } printf("%x\n",epld_test); emif_epld_spi_channel(10); emif_epld_spi_channel(10); emif_fpga_ddc_carrier_f8_write(0,25); emif_fpga_ddc_carrier_f8_write(1,50); emif_fpga_ddc_carrier_f8_write(2,75); emif_fpga_ddc_carrier_f8_write(3,100); emif_fpga_ddc_carrier_f8_write(4,125); emif_fpga_ddc_carrier_f8_write(5,150); emif_fpga_ddc_carrier_f8_write(6,175); emif_fpga_ddc_carrier_f8_write(7,200); emif_fpga_ddc_carrier_m8_write(0,768-200); emif_fpga_ddc_carrier_m8_write(1,768-175); emif_fpga_ddc_carrier_m8_write(2,768-150); emif_fpga_ddc_carrier_m8_write(3,768-125); emif_fpga_ddc_carrier_m8_write(4,768-100); emif_fpga_ddc_carrier_m8_write(5,768-75); emif_fpga_ddc_carrier_m8_write(6,768-50); emif_fpga_ddc_carrier_m8_write(7,768-25); // emif_fpga_duc_carrier_f8_write(0,25); emif_fpga_duc_carrier_f8_write(1,50); emif_fpga_duc_carrier_f8_write(2,75); emif_fpga_duc_carrier_f8_write(3,100); emif_fpga_duc_carrier_f8_write(4,125); emif_fpga_duc_carrier_f8_write(5,150); emif_fpga_duc_carrier_f8_write(6,175); emif_fpga_duc_carrier_f8_write(7,200); emif_fpga_duc_carrier_m8_write(0,768-200); emif_fpga_duc_carrier_m8_write(1,768-175); emif_fpga_duc_carrier_m8_write(2,768-150); emif_fpga_duc_carrier_m8_write(3,768-125); emif_fpga_duc_carrier_m8_write(4,768-100); emif_fpga_duc_carrier_m8_write(5,768-75); emif_fpga_duc_carrier_m8_write(6,768-50); emif_fpga_duc_carrier_m8_write(7,768-25); //*DRU_REGADDR(fpga_base_addr, ADC_SOURCE_SEL)= 1;//enable internal dds for adc_source //*DRU_REGADDR(fpga_base_addr, LOOP_BACK_SEL)= 1; //enable loop_back_sel *DRU_REGADDR(fpga_base_addr, MASK_CARRIER)= 0xfffe; *DRU_REGADDR(fpga_base_addr, DUC_RST)= 0; *DRU_REGADDR(fpga_base_addr, DUC_RST)= 1; // disable duc rst spi_delay(10000); *DRU_REGADDR(fpga_base_addr, DUC_RST)= 0; *DRU_REGADDR(fpga_base_addr, LTE1_ATT)= 13; *DRU_REGADDR(fpga_base_addr, LTE2_ATT)= 13; *DRU_REGADDR(fpga_base_addr, WCDMA_ATT)= 13; *DRU_REGADDR(fpga_base_addr, GSM_ATT)= 13; *DRU_REGADDR(fpga_base_addr, CPU_AGC_EN)= 0; *DRU_REGADDR(fpga_base_addr, CPU_AGC_EN)= 1; spi_delay(1000); *DRU_REGADDR(fpga_base_addr, CPU_AGC_EN)= 0; //#endif #ifdef CONFIG_ADS58C48 dru_ads58c48_init(); if(dru_dev_p->dev_vco<0X20){ dru_ads58c48_init(); }else{ dru_ads58c48_init_2581(); } printf("configure ads58c48\n"); #endif dru_dac3484_init(); *DRU_REGADDR(fpga_base_addr, DAC_SYNC)=0; *DRU_REGADDR(fpga_base_addr, DAC_SYNC)=1; printf("configure dac3484\n"); *DRU_REGADDR(fpga_base_addr, LOOP_BACK_SEL)=1; *DRU_REGADDR(fpga_base_addr, AGC_STEP)=1; //dac3484_td_qmc_phase_cd(10); *DRU_REGADDR(fpga_base_addr, DAC_SYNC)=0; *DRU_REGADDR(fpga_base_addr, DAC_SYNC)=1; *DRU_REGADDR(fpga_base_addr, LTE1_GAIN)=8192; *DRU_REGADDR(fpga_base_addr, LTE2_GAIN)= 8192; *DRU_REGADDR(fpga_base_addr, TD_GAIN)= 8192; *DRU_REGADDR(fpga_base_addr, GSM_GAIN)= 8192; *DRU_REGADDR(fpga_base_addr, ADC_SOURCE_FREQENCY)= 192+10; *DRU_REGADDR(fpga_base_addr, ADC_SOURCE_SEL)= 0; *DRU_REGADDR(fpga_base_addr, LOOP_BACK_SEL)= 1; //enable loop_back_sel lo=*DRU_REGADDR(epld_base_addr, 0x12); if((lo&(1<<0))!=0) printf("±¾Õñ1Ëø¶¨\n"); else printf("±¾Õñ1ʧËø\n"); if((lo&(1<<1))!=0) printf("±¾Õñ2Ëø¶¨\n"); else printf("±¾Õñ2ʧËø\n"); if((lo&(1<<2))!=0) printf("±¾Õñ3Ëø¶¨\n"); else printf("±¾Õñ3ʧËø\n"); if((lo&(1<<3))!=0) printf("±¾Õñ4Ëø¶¨\n"); else printf("±¾Õñ4ʧËø\n"); }