perr
    试图通过dtb启动,遇到以下问题.请求站长给看看 http://www.21qa.net/questions/713/713
    Device Tree(三):代码分析  发表时间:2014-09-25 21:05
    linuxer
    你可以先用arm-linux-objdump的命令看看是否你编译的异常向量表就是这样的。 指令“EAFFFFFE”应该是被翻译成一个跳转指令,跳转范围是24-bit的立即数,对于“EAFFFFFE”,显然还没有填入这个立即数,一般而言,当你编译出.o文件的时候,异常向量表的反汇编结果就是: __vectors_start(): arch/arm/kernel/entry-armv.S:1134 0: eaffffff b 4 <__vectors_start+0x4> arch/arm/kernel/entry-armv.S:1135 4: eafffffe b 1a0 <vector_und> arch/arm/kernel/entry-armv.S:1136 8: e59ffff0 ldr pc, [pc, #4080] ; 1000 <.vectors+0x1000> arch/arm/kernel/entry-armv.S:1137 c: eafffffe b 120 <vector_pabt> arch/arm/kernel/entry-armv.S:1138 10: eafffffe b a0 <vector_dabt> arch/arm/kernel/entry-armv.S:1139 14: ea000086 b 220 <vector_swi> arch/arm/kernel/entry-armv.S:1140 18: eafffffe b 20 <vector_irq> arch/arm/kernel/entry-armv.S:1141 1c: ea000087 b 224 <vector_fiq_offset> 这时候,还没有link,因此地址还是reallocated。当连接完成,“EAFFFFFE”会被修正,其24-bit的立即数的位置会被填入真正跳转的地址,例如: __vectors_start(): c000e4e4: ef9f0000 svc 0x009f0000 c000e4e8: ea0000dd b c000e864 <early_mem+0x8> c000e4ec: e59ff410 ldr pc, [pc, #1040] ; c000e904 <early_initrd+0x38> c000e4f0: ea0000bb b c000e7e4 <parse_tag_serialnr+0x8> c000e4f4: ea00009a b c000e764 <parse_tag_ramdisk+0x20> c000e4f8: ea0000fa b c000e8e8 <early_initrd+0x1c> c000e4fc: ea000078 b c000e6e4 <parse_tag_videotext+0x20> c000e500: ea0000f7 b c000e8e4 <early_initrd+0x18> 我建议你一步一步的检查: 1、先检查你编译出来的kernel image 2、完成early_trap_init之后,检查看看exception table的copy的对不对 3、是否运行时,有些代码误操作了exception table
    forion
    hi linuxer 我现在遇到一个问题,就是很多时候我看到0xffff000c的地方是一个机器码为EAFFFFFE也就是 while(1)一样的指令,我不知道什么情况下vector table 会变成这样,不知道你有什么思路没有
    linuxer
    @741342765:我参与的平台比较多,但2440没有用过,我用过2410和2451这两个SOC
    Device Tree(二):基本概念  发表时间:2014-09-24 08:42
    741342765
    博主,都是用2440的开发板写的代码吗?
    Device Tree(二):基本概念  发表时间:2014-09-24 00:21
    linuxer
    @linuxer:感謝linuxer的說明,看來我原先的理解應該是正確的 再多請教一個問題,在中斷時序圖T64到T126的中間,如果有更高優先權的外設P發生了中斷,nFIQCPU在這段時間內是不是又會assert low? 另外,是的,我來自台灣。感謝蝸窩提供這麼多優質文章,這裡每篇文章我都慢慢吸收,再配著內核代碼看,真的是種享受。 以前很急著想要短時間看很多東西,理解不紮實,結果最後也是都忘記。 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 目前回复的次数有限制,因此我重新开一个评论。 我的理解:T64到T126之间,如果有更高优先级的中断进来,nFIQCPU会assert low的,当然,对于linux kernel,这时候由于关中断不能响应。 欢迎来自台湾的朋友,其实我现在就职于一家台湾公司,也算是有缘了。大家都是对linux kernel有兴趣才走到一起,多交流,多提出问题,一起进步吧!
    linux kernel的中断子系统之(七):GIC代码分析  发表时间:2014-09-19 18:54
    Xiang
    @linuxer:感謝linuxer的說明,看來我原先的理解應該是正確的 再多請教一個問題,在中斷時序圖T64到T126的中間,如果有更高優先權的外設P發生了中斷,nFIQCPU在這段時間內是不是又會assert low? 另外,是的,我來自台灣。感謝蝸窩提供這麼多優質文章,這裡每篇文章我都慢慢吸收,再配著內核代碼看,真的是種享受。 以前很急著想要短時間看很多東西,理解不紮實,結果最後也是都忘記。
    linux kernel的中断子系统之(七):GIC代码分析  发表时间:2014-09-19 16:40
    蜗蜗
    @海:不用客气,我的理解也不一定准确,可以多讨论。
    Linux电源管理(8)_Wakeup count功能  发表时间:2014-09-18 23:47
    蜗蜗
    @海:好的,欢迎多讨论。
    Linux电源管理(7)_Wakeup events framework  发表时间:2014-09-18 23:46
    linuxer
    @Xiang:可能我这里描述的不清楚。"当然,我上面的话对于linux kernel而言是正确的",这里“上面的话”是指上一个回复中的话,具体如下: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 一个中断抢占的窗口size是从发生中断的那一刻到ack中断前16个clock这段时间。之所以抢占窗口的end point是ack中断前16个clock,是因为GIC需要时间(16个clock)来识别该中断(更新GICC_IAR寄存器) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 对于GIC而言(从硬件角度看),它的抢占就是更新GICC_IAR寄存器病assert CPU,具体CPU是否响应就不是我家的事情了。 对于linux kernel而言(从软件角度看),抢占是中断handler的抢占,因此,上面++++符号围起来的那段描述对linux kernel而言是正确的,因为一旦读出了GICC_IAR寄存器,中断handler将不会再被抢占,因为整个handler中都是关闭中断的。 BTW,您使用繁体中文,冒昧的问一句:你是不是来自台湾或者香港?
    linux kernel的中断子系统之(七):GIC代码分析  发表时间:2014-09-18 22:27

共7901条755/791上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 下一页
Copyright @ 2013-2015 蜗窝科技 All rights reserved. Powered by emlog