[xen-arm]关于Goldfish设备初始化

在移植goldfish的时候,如果没有module机制,怎么做呢?从pdev_bus_driver开始.
 143 asmlinkage void do_softirq(void)
144 {
145     unsigned int i, cpu = smp_processor_id();
146     unsigned long pending;
147     pending = softirq_pending(cpu);
148     ASSERT(pending != 0);
149 
150     do {
151         i = find_first_set_bit(pending);
152         if(flag < 2 || sched_flag == 1)
153         {
154             if(flag == 0)
155                 switch_init();
156             local_irq_enable();
157             if(flag == 1){//设备初始化
158                 goldfish_pdev_bus_driver.probe(&goldfish_pdev_bus_device);
159                 printk("init screen\n");
160                 testfb();
161             //  mnt_init();
162             }
163             flag = 2;
164             sched_flag = 0;
165             monitor();
166         }
167         clear_bit(i, &softirq_pending(cpu));
168         (*softirq_handlers[i])();
169 
170         if(flag >=2 && flag <= 60)
171             flag++;
172         if(flag > 60)
173         {
174             flag++;
175         }
176     } while ( (pending = softirq_pending(cpu)) != 0 );
177 }

评论

此博客中的热门博文

Linux/ARM Page Table Entry 属性设置分析

提交了30次才AC ---【附】POJ 2488解题报告

笔记