linuxer
    @forion:多谢你的建议,等完成目前手头的中断处理这部分再考虑吧,毕竟现在还要工作,业余时间也是有限的。 PS:说到回馈开源社区的问题,我还是比较汗颜的,没有提交过patch。当然,一定发现过内核的bug,但是很少去主动提交一个patch,我这个人本质上比较懒惰。原来在芯片公司工作的时候,有考虑将代码提交到linux kernel的main line,不过最终也没有实现。 如果想真正参与到内核的开发中,最好是在red hat或者芯片公司,因为提交patch就是你的工作。
    Device Tree(一):背景介绍  发表时间:2014-09-02 18:02
    linuxer
    @linuxer:其实是我写的不清楚,因此才会废弃这份文档的。新的GIC代码分析文档本星期会出来,相信会把这些描述清楚。
    GIC驱动代码分析(废弃)  发表时间:2014-09-02 16:36
    linuxer
    @maotou:你的第一个问题我要思考一下,先回答第二个问题。 GIC其实是一个ARM公司的architecture specification,它最大可以支持1024个中断号,但是,实际的产品应该是GIC-400或者GIC-500这样具体型号的东西。我们以GIC-400为例,它最大支持480个SPI,那么实际上GIC-400就是要提供480个实际的信号线作为interrupt source,当然,实际vendor在整合SOC系统的时候未必需要这么多signal,因此可以进行裁剪(GIC-400是一个可配置的IP),也就是说,你配置了多少个SPI,就有有多少个实际的物理引脚,这里不是说SOC的物理引脚,因为很多GIC的SPI interrupt signal是SOC内部的。 上面说的是SPI,对于SGI,不需物理上的signal信号。 对于PPI,还要复杂一些,我们假设你的SOC配置了6个PPI interrupt signal,CPU的数目是4个,那么实际的interrupt source signal需要6x4=24个实际的物理signal
    GIC驱动代码分析(废弃)  发表时间:2014-09-02 16:35
    forion
    需要提醒的是interrupt controller也是可以级联的,上图中没有表示出来。 ------------------------------------------------------------------------------- PCI host bridge设备中有一些下游的设备,也会产生中断,但是他们的中断都是连接到PCI host bridge上的interrupt controller(术语叫做interrupt nexus), ------------------------------------------------------------------------------- 这个PCI host bridge 就是一个interrupt controller,那这不就是级联的吗?
    Device Tree(二):基本概念  发表时间:2014-09-02 16:08
    maotou
    hi linuxer,看了好几遍您的文章,我刚接触linux内核,从arm中的中断处理开始,看了一个月还是挺迷茫,虽然感觉自己对原理理解了,可还是不知道怎么从代码中去看,因为各个代码都是散的,没有一个很清楚的调理.linuxer前辈有些什么好的建议么? 还有对于GIC有个不能理解的是,一个GIC能提供1024个中断号,那么他是有1024个引脚去接到设备中么?
    GIC驱动代码分析(废弃)  发表时间:2014-09-02 15:19
    forion
    重新读了一遍这篇文章,楼主的思路真清晰啊。 ps:后面是不是可以有个专题叫做【porting内核到ARM-based的平台上】,可以讲一下整个的porting过程,我想这样实用的文章就跟device tree的这几篇文章一样,阅读量一定也很大。 另外:楼主可以写篇文章吹吹牛说说给内核提了多少patch等等,到时候名利双收。哈哈~~~~
    Device Tree(一):背景介绍  发表时间:2014-09-02 14:14
    linuxer
    @linuxer:因此实际的系统是千奇百怪的--->因为实际的系统是千奇百怪的 ------------------------------- 这里没有精确的表达我的意思,本来我想说的是:目前我还不掌握足够的底层知识,需要积累到一定程度才能领会上层逻辑的精妙。因此,我准备先潜心研究一下具体的中断控制器再回头看看怎么修改这份文档。目前考虑先看看ARM+GIC系统,X86+Multi APIC系统和PowerPC+MPIC系统
    forion
    @linuxer:辛苦了,前辈~~
    Androider
    @linuxer:博主太好太有耐心了。我觉得我找到原因了,自己不好好学还想些乱七八糟的事情。。。以后要踏踏实实的学习!谢谢博主的指点,从来没有博主那么耐心的解答问题,感动啊。如果能点赞,我就给你用力的点个大赞!
    Linux kernel的中断子系统之(一):综述  发表时间:2014-09-01 12:56
    linuxer
    @Androider:第一次接触GNU/linux是在98年,用JDK,perl开发一些应用程序,2002年开始进入内核,版本是2.4.18。毫无疑问,最开始时候是最困难的,每一步都很困难,有两年的时间,我几乎是把所有的业余时间都用来阅读linux源代码,因为要补充的知识是在是太多了。这个阶段,情景分析那本书给了我很多帮助,我一直觉得对于刚入门的年轻人,《情景分析》要好过《深入理解linux内核》。《情景分析》那两本书几乎被我翻烂了。对于驱动部分,我选取了USB作为突破点,阅读协议,购买开发板学习等等。准备了2~3年,我才转投一家芯片公司真正开始了linux 内核的开发。做linux内核以及驱动,做好是去一家芯片公司,可以了解很多底层硬件的知识。真正进入驱动开发的角色反而比较简单,慢慢熟悉每一个硬件,调试各种驱动,fix各种issue,经过3~5年,总是可以成为一个较为资深的驱动工程师。 总结一下: 1、linux或者unix上的用户空间的系统编程对理解linux kernel帮助很大 2、最开始的时候是《情景分析》加上网络搜索来获取大量的细节的知识 3、《深入理解linux内核》给了很多框架性的指导 4、勤于思考,找到问题所在
    Linux kernel的中断子系统之(一):综述  发表时间:2014-09-01 12:42

共7862条758/787上一页 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 755 756 757 758759 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 下一页
Copyright @ 2013-2015 蜗窝科技 All rights reserved. Powered by emlog