亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? booting-without-of.txt

?? linux 內核源代碼
?? TXT
?? 第 1 頁 / 共 5 頁
字號:
           Booting the Linux/ppc kernel without Open Firmware           --------------------------------------------------(c) 2005 Benjamin Herrenschmidt <benh at kernel.crashing.org>,    IBM Corp.(c) 2005 Becky Bruce <becky.bruce at freescale.com>,    Freescale Semiconductor, FSL SOC and 32-bit additions(c) 2006 MontaVista Software, Inc.    Flash chip node definitionTable of Contents=================  I - Introduction    1) Entry point for arch/powerpc    2) Board support  II - The DT block format    1) Header    2) Device tree generalities    3) Device tree "structure" block    4) Device tree "strings" block  III - Required content of the device tree    1) Note about cells and address representation    2) Note about "compatible" properties    3) Note about "name" properties    4) Note about node and property names and character set    5) Required nodes and properties      a) The root node      b) The /cpus node      c) The /cpus/* nodes      d) the /memory node(s)      e) The /chosen node      f) the /soc<SOCname> node  IV - "dtc", the device tree compiler  V - Recommendations for a bootloader  VI - System-on-a-chip devices and nodes    1) Defining child nodes of an SOC    2) Representing devices without a current OF specification      a) MDIO IO device      b) Gianfar-compatible ethernet nodes      c) PHY nodes      d) Interrupt controllers      e) I2C      f) Freescale SOC USB controllers      g) Freescale SOC SEC Security Engines      h) Board Control and Status (BCSR)      i) Freescale QUICC Engine module (QE)      j) CFI or JEDEC memory-mapped NOR flash      k) Global Utilities Block      l) Xilinx IP cores  VII - Specifying interrupt information for devices    1) interrupts property    2) interrupt-parent property    3) OpenPIC Interrupt Controllers    4) ISA Interrupt Controllers  Appendix A - Sample SOC node for MPC8540Revision Information====================   May 18, 2005: Rev 0.1 - Initial draft, no chapter III yet.   May 19, 2005: Rev 0.2 - Add chapter III and bits & pieces here or                           clarifies the fact that a lot of things are                           optional, the kernel only requires a very                           small device tree, though it is encouraged                           to provide an as complete one as possible.   May 24, 2005: Rev 0.3 - Precise that DT block has to be in RAM			 - Misc fixes			 - Define version 3 and new format version 16			   for the DT block (version 16 needs kernel			   patches, will be fwd separately).			   String block now has a size, and full path			   is replaced by unit name for more			   compactness.			   linux,phandle is made optional, only nodes			   that are referenced by other nodes need it.			   "name" property is now automatically			   deduced from the unit name   June 1, 2005: Rev 0.4 - Correct confusion between OF_DT_END and                           OF_DT_END_NODE in structure definition.                         - Change version 16 format to always align                           property data to 4 bytes. Since tokens are                           already aligned, that means no specific                           required alignment between property size                           and property data. The old style variable                           alignment would make it impossible to do                           "simple" insertion of properties using                           memmove (thanks Milton for                           noticing). Updated kernel patch as well			 - Correct a few more alignment constraints			 - Add a chapter about the device-tree                           compiler and the textural representation of                           the tree that can be "compiled" by dtc.   November 21, 2005: Rev 0.5			 - Additions/generalizations for 32-bit			 - Changed to reflect the new arch/powerpc			   structure			 - Added chapter VI ToDo:	- Add some definitions of interrupt tree (simple/complex)	- Add some definitions for PCI host bridges	- Add some common address format examples	- Add definitions for standard properties and "compatible"	  names for cells that are not already defined by the existing	  OF spec.	- Compare FSL SOC use of PCI to standard and make sure no new	  node definition required.	- Add more information about node definitions for SOC devices  	  that currently have no standard, like the FSL CPM.I - Introduction================During the recent development of the Linux/ppc64 kernel, and morespecifically, the addition of new platform types outside of the oldIBM pSeries/iSeries pair, it was decided to enforce some strict rulesregarding the kernel entry and bootloader <-> kernel interfaces, inorder to avoid the degeneration that had become the ppc32 kernel entrypoint and the way a new platform should be added to the kernel. Thelegacy iSeries platform breaks those rules as it predates this scheme,but no new board support will be accepted in the main tree thatdoesn't follows them properly.  In addition, since the advent of thearch/powerpc merged architecture for ppc32 and ppc64, new 32-bitplatforms and 32-bit platforms which move into arch/powerpc will berequired to use these rules as well.The main requirement that will be defined in more detail below isthe presence of a device-tree whose format is defined after OpenFirmware specification. However, in order to make life easierto embedded board vendors, the kernel doesn't require the device-treeto represent every device in the system and only requires some nodesand properties to be present. This will be described in detail insection III, but, for example, the kernel does not require you tocreate a node for every PCI device in the system. It is a requirementto have a node for PCI host bridges in order to provide interruptrouting informations and memory/IO ranges, among others. It is alsorecommended to define nodes for on chip devices and other busses thatdon't specifically fit in an existing OF specification. This creates agreat flexibility in the way the kernel can then probe those and matchdrivers to device, without having to hard code all sorts of tables. Italso makes it more flexible for board vendors to do minor hardwareupgrades without significantly impacting the kernel code or clutteringit with special cases.1) Entry point for arch/powerpc-------------------------------   There is one and one single entry point to the kernel, at the start   of the kernel image. That entry point supports two calling   conventions:        a) Boot from Open Firmware. If your firmware is compatible        with Open Firmware (IEEE 1275) or provides an OF compatible        client interface API (support for "interpret" callback of        forth words isn't required), you can enter the kernel with:              r5 : OF callback pointer as defined by IEEE 1275              bindings to powerpc. Only the 32-bit client interface              is currently supported              r3, r4 : address & length of an initrd if any or 0              The MMU is either on or off; the kernel will run the              trampoline located in arch/powerpc/kernel/prom_init.c to              extract the device-tree and other information from open              firmware and build a flattened device-tree as described              in b). prom_init() will then re-enter the kernel using              the second method. This trampoline code runs in the              context of the firmware, which is supposed to handle all              exceptions during that time.        b) Direct entry with a flattened device-tree block. This entry        point is called by a) after the OF trampoline and can also be        called directly by a bootloader that does not support the Open        Firmware client interface. It is also used by "kexec" to        implement "hot" booting of a new kernel from a previous        running one. This method is what I will describe in more        details in this document, as method a) is simply standard Open        Firmware, and thus should be implemented according to the        various standard documents defining it and its binding to the        PowerPC platform. The entry point definition then becomes:                r3 : physical pointer to the device-tree block                (defined in chapter II) in RAM                r4 : physical pointer to the kernel itself. This is                used by the assembly code to properly disable the MMU                in case you are entering the kernel with MMU enabled                and a non-1:1 mapping.                r5 : NULL (as to differentiate with method a)        Note about SMP entry: Either your firmware puts your other        CPUs in some sleep loop or spin loop in ROM where you can get        them out via a soft reset or some other means, in which case        you don't need to care, or you'll have to enter the kernel        with all CPUs. The way to do that with method b) will be        described in a later revision of this document.2) Board support----------------64-bit kernels:   Board supports (platforms) are not exclusive config options. An   arbitrary set of board supports can be built in a single kernel   image. The kernel will "know" what set of functions to use for a   given platform based on the content of the device-tree. Thus, you   should:        a) add your platform support as a _boolean_ option in        arch/powerpc/Kconfig, following the example of PPC_PSERIES,        PPC_PMAC and PPC_MAPLE. The later is probably a good        example of a board support to start from.        b) create your main platform file as        "arch/powerpc/platforms/myplatform/myboard_setup.c" and add it        to the Makefile under the condition of your CONFIG_        option. This file will define a structure of type "ppc_md"        containing the various callbacks that the generic code will        use to get to your platform specific code        c) Add a reference to your "ppc_md" structure in the        "machines" table in arch/powerpc/kernel/setup_64.c if you are        a 64-bit platform.        d) request and get assigned a platform number (see PLATFORM_*        constants in include/asm-powerpc/processor.h32-bit embedded kernels:  Currently, board support is essentially an exclusive config option.  The kernel is configured for a single platform.  Part of the reason  for this is to keep kernels on embedded systems small and efficient;  part of this is due to the fact the code is already that way. In the  future, a kernel may support multiple platforms, but only if the  platforms feature the same core architecture.  A single kernel build  cannot support both configurations with Book E and configurations  with classic Powerpc architectures.  32-bit embedded platforms that are moved into arch/powerpc using a  flattened device tree should adopt the merged tree practice of  setting ppc_md up dynamically, even though the kernel is currently  built with support for only a single platform at a time.  This allows  unification of the setup code, and will make it easier to go to a  multiple-platform-support model in the future.NOTE: I believe the above will be true once Ben's done with the mergeof the boot sequences.... someone speak up if this is wrong!  To add a 32-bit embedded platform support, follow the instructions  for 64-bit platforms above, with the exception that the Kconfig  option should be set up such that the kernel builds exclusively for  the platform selected.  The processor type for the platform should  enable another config option to select the specific board  supported.NOTE: If Ben doesn't merge the setup files, may need to change this topoint to setup_32.c   I will describe later the boot process and various callbacks that   your platform should implement.II - The DT block format========================This chapter defines the actual format of the flattened device-treepassed to the kernel. The actual content of it and kernel requirementsare described later. You can find example of code manipulating thatformat in various places, including arch/powerpc/kernel/prom_init.cwhich will generate a flattened device-tree from the Open Firmwarerepresentation, or the fs2dt utility which is part of the kexec toolswhich will generate one from a filesystem representation. It isexpected that a bootloader like uboot provides a bit more support,that will be discussed later as well.Note: The block has to be in main memory. It has to be accessible inboth real mode and virtual mode with no mapping other than mainmemory. If you are writing a simple flash bootloader, it should copythe block to RAM before passing it to the kernel.1) Header---------   The kernel is entered with r3 pointing to an area of memory that is   roughly described in include/asm-powerpc/prom.h by the structure   boot_param_header:struct boot_param_header {        u32     magic;                  /* magic word OF_DT_HEADER */        u32     totalsize;              /* total size of DT block */        u32     off_dt_struct;          /* offset to structure */        u32     off_dt_strings;         /* offset to strings */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区四区蜜桃| 国产99久久久国产精品| 国产综合色视频| 色狠狠一区二区| 精品少妇一区二区三区| 亚洲在线视频免费观看| 国产成人av影院| 欧美一级爆毛片| 亚洲午夜视频在线观看| 国产福利精品一区| 欧美mv日韩mv国产网站app| 亚洲精品乱码久久久久久| 国产在线播放一区三区四| 欧美夫妻性生活| 亚洲一区二区三区四区在线观看 | 在线成人高清不卡| 一区二区中文视频| 国产精品一二三区在线| 欧美一级日韩一级| 午夜av一区二区| 欧美日韩高清一区二区三区| 国产精品少妇自拍| 成人免费观看男女羞羞视频| 久久久久国产精品厨房| 另类成人小视频在线| 国产精品无码永久免费888| 久草热8精品视频在线观看| 欧美精品日日鲁夜夜添| 天天色综合成人网| 欧美日韩国产一级二级| 亚洲va国产va欧美va观看| 在线精品视频小说1| 一区二区免费看| 欧美性大战久久久久久久蜜臀 | 午夜伦欧美伦电影理论片| 色综合天天狠狠| 亚洲免费三区一区二区| 色天使色偷偷av一区二区| 亚洲黄色性网站| 97se亚洲国产综合在线| 亚洲乱码日产精品bd| 91成人在线精品| 午夜久久久久久久久| 日韩一区二区三区免费看| 日韩中文字幕区一区有砖一区 | 一本大道久久a久久综合| 国产乱码精品一区二区三| 日韩av二区在线播放| 国产精品国产三级国产aⅴ原创| 国产麻豆日韩欧美久久| eeuss鲁一区二区三区| 91日韩在线专区| 制服丝袜在线91| 亚洲va在线va天堂| 7777精品伊人久久久大香线蕉完整版 | 黄色精品一二区| 国产日韩欧美a| 一道本成人在线| 日韩高清电影一区| 久久精品一区二区| 色婷婷精品大在线视频| 亚洲福利视频导航| 久久免费美女视频| 日本黄色一区二区| 久久电影网站中文字幕| 中文字幕成人av| 欧美日韩夫妻久久| 国产一区二区三区黄视频| 亚洲免费观看高清| 精品国产污污免费网站入口| 欧美精选在线播放| 国产精品系列在线播放| 亚洲一区中文在线| 26uuu另类欧美| 色老头久久综合| 韩国三级在线一区| 一区二区久久久| 国产午夜亚洲精品午夜鲁丝片| 91免费小视频| 国产一区二区调教| 亚洲国产综合视频在线观看| 久久久久国产精品麻豆ai换脸| 色婷婷久久99综合精品jk白丝| 麻豆精品在线看| 亚洲黄色尤物视频| 欧美韩日一区二区三区四区| 欧美久久久久久久久中文字幕| 北条麻妃国产九九精品视频| 视频在线观看91| 亚洲免费电影在线| 中文字幕不卡在线播放| 日韩欧美一区二区久久婷婷| 在线免费观看一区| 成人国产一区二区三区精品| 婷婷国产在线综合| 一区二区三区欧美在线观看| 久久久91精品国产一区二区精品| 欧美日韩大陆在线| 在线观看欧美黄色| 99久久99久久综合| 风间由美一区二区三区在线观看| 日韩国产成人精品| 午夜精品一区二区三区免费视频 | 成人综合婷婷国产精品久久| 91麻豆蜜桃一区二区三区| 狠狠色狠狠色综合日日91app| 亚洲国产成人91porn| 一区二区三区在线视频播放| 国产精品久久久久影院色老大| 精品国产乱码久久久久久久| 日韩欧美一级二级三级| 91精品啪在线观看国产60岁| 欧美日韩不卡在线| 欧美人妖巨大在线| 欧美在线免费观看视频| 欧美调教femdomvk| 欧美日韩一区成人| 欧美三级日韩三级| 91麻豆精品国产91久久久更新时间 | 日韩精品成人一区二区在线| 亚洲成人av电影在线| 亚洲国产成人porn| 亚洲福利视频三区| 免费看欧美美女黄的网站| 免费观看久久久4p| 黄色资源网久久资源365| 久久99精品久久久| 国产高清精品网站| 波多野结衣一区二区三区| 成人av网站免费观看| 精品国产污污免费网站入口| 欧美精品一区二区三区很污很色的| 精品国偷自产国产一区| 久久久久久久久蜜桃| 国产精品激情偷乱一区二区∴| 亚洲丝袜美腿综合| 亚洲国产视频直播| 久久se精品一区二区| 国产91精品在线观看| 99re8在线精品视频免费播放| 欧洲另类一二三四区| 日韩一区二区三区四区五区六区 | 国产精品久久久久久福利一牛影视| 亚洲欧美自拍偷拍色图| 一区二区三区欧美亚洲| 美脚の诱脚舐め脚责91 | www.成人网.com| 欧美性色黄大片手机版| 欧美精品一区二区三区在线| 国产精品久久久久四虎| 天堂一区二区在线免费观看| 国产精品99久久久久久似苏梦涵 | 国产一区二区视频在线| 91丨porny丨户外露出| 欧美妇女性影城| 国产精品乱码妇女bbbb| 午夜欧美视频在线观看| 丁香激情综合国产| 91精品国产免费| 激情综合网天天干| 91激情在线视频| 久久久久久久综合| 亚洲成人tv网| 成人精品免费网站| 欧美一级艳片视频免费观看| 国产精品久久精品日日| 日韩电影在线一区二区三区| 粉嫩欧美一区二区三区高清影视 | 成人av免费在线观看| 欧美精品黑人性xxxx| 亚洲欧美综合在线精品| 国产最新精品精品你懂的| 欧美午夜精品久久久| 国产精品久久网站| 麻豆中文一区二区| 在线观看欧美日本| 综合在线观看色| 国产精品一二一区| 精品福利二区三区| 免费久久99精品国产| 欧美视频在线一区二区三区 | 亚洲精品在线一区二区| 视频一区二区国产| 日本电影欧美片| 中文字幕一区二区在线观看| 国产精品1024久久| 精品国产区一区| 美女被吸乳得到大胸91| 9191国产精品| 91亚洲资源网| 中文字幕视频一区| 从欧美一区二区三区| 久久嫩草精品久久久久| 国内精品写真在线观看| 日韩视频在线一区二区| 欧美bbbbb| 精品国内片67194| 久久99蜜桃精品| 久久久久一区二区三区四区| 久久狠狠亚洲综合|