<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Kinetis 20 MPU Trouble in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465103#M28014</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This worked. Can you explain why?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 05 Feb 2016 13:05:51 GMT</pubDate>
    <dc:creator>leifzars</dc:creator>
    <dc:date>2016-02-05T13:05:51Z</dc:date>
    <item>
      <title>Kinetis 20 MPU Trouble</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465101#M28012</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am trying to use the MPU on the k20 and am very confused. My goal is to have three regions two full access surrounding a region of supervisor access only.&lt;/P&gt;&lt;P&gt;Supervisor\User Access from 0 to 0x1fffc350-1&lt;/P&gt;&lt;P&gt;Supervisor Only Access from 0x1fffc350 to 0x1fffce54-1&lt;/P&gt;&lt;P&gt;Supervisor\User Access from 0x1fffce54 to 0xffffffff-1&lt;/P&gt;&lt;P&gt;So I set up this test below and am unable to prevent access to the middle region when in User Mode. In the example the 'xxx' variable is located in the middle region.&lt;/P&gt;&lt;P&gt;Can someone tell me what I am doing wrong?&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_macro_code jive_text_macro _jivemacro_uid_14538163499178905" data-renderedposition="155_8_1232_1120" jivemacro_uid="_14538163499178905" modifiedtitle="true"&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;#define&lt;/STRONG&gt;&lt;/SPAN&gt; MPU_REGION_ALL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MPU_WORD_M3SM(MPU_SM_RWX) | MPU_WORD_M3UM(MPU_UM_R | MPU_UM_W | MPU_UM_X) | \&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD_M2SM(MPU_SM_RWX) | MPU_WORD_M2UM(MPU_UM_R | MPU_UM_W | MPU_UM_X) | \&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD_M1SM(MPU_SM_RWX) | MPU_WORD_M1UM(MPU_UM_R | MPU_UM_W | MPU_UM_X) | \&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD_M0SM(MPU_SM_RWX) | MPU_WORD_M0UM(MPU_UM_R | MPU_UM_W | MPU_UM_X)&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;__attribute__&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s2"&gt; ((section (&lt;/SPAN&gt;".system_task_1_private_vars"&lt;SPAN class="s2"&gt;)))&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;static&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;int&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s2"&gt; xxx; &lt;/SPAN&gt;//placed at middle of protected region 0x1fffcc34&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;STRONG&gt;mpu_init&lt;/STRONG&gt;() {&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;uint32_t&lt;SPAN class="s2"&gt; i;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_CESR &amp;amp;= ~MPU_CESR_VLD_MASK;&amp;nbsp; &lt;SPAN class="s3"&gt;//disable MPU&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s1"&gt;&lt;STRONG&gt;for&lt;/STRONG&gt;&lt;/SPAN&gt; (i = 0; i &amp;lt; CORTEX_MPU_REC; i++) {&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD(i, 2) = 0;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; }&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s4"&gt;uint32_t&lt;/SPAN&gt; sectionStart = 0x1fffc350;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s4"&gt;uint32_t&lt;/SPAN&gt; sectionEnd =&amp;nbsp;&amp;nbsp; 0x1fffce54;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s5"&gt;_set_region(1, 0, sectionStart - 1, MPU_REGION_ALL);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s5"&gt;_set_region(2, sectionEnd, 0xFFFFFFFF, MPU_REGION_ALL);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; _set_region(3, sectionStart, sectionEnd - 1,&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD_M1SM(MPU_SM_RWX) | MPU_WORD_M1UM(0) |&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; &lt;SPAN class="s5"&gt;MPU_WORD_M0SM(MPU_SM_RWX) | MPU_WORD_M0UM(0));&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;// Control == 0x02 before and after the call to sys_mpu_MakePrivileged()&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; sys_mpu_MakePrivileged();&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_CESR |= MPU_CESR_VLD_MASK;&amp;nbsp; &lt;SPAN class="s3"&gt;//enable MPU&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; xxx++;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; sys_mpu_MakeUnPrivileged();&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;// Control now equals 0x03&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; xxx++; //*****Not sure why/how this works, expecting fault ********&lt;/P&gt;&lt;P class="p2"&gt;}&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;STRONG&gt;_set_region&lt;/STRONG&gt;(&lt;SPAN class="s4"&gt;uint32_t&lt;/SPAN&gt; region, &lt;SPAN class="s1"&gt;&lt;STRONG&gt;unsigned&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN class="s1"&gt;&lt;STRONG&gt;char&lt;/STRONG&gt;&lt;/SPAN&gt; *start, &lt;SPAN class="s1"&gt;&lt;STRONG&gt;unsigned&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN class="s1"&gt;&lt;STRONG&gt;char&lt;/STRONG&gt;&lt;/SPAN&gt; *end, &lt;SPAN class="s4"&gt;_mqx_uint&lt;/SPAN&gt; flags) {&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD(region, 0) = (&lt;SPAN class="s4"&gt;_mem_size&lt;/SPAN&gt;) start &amp;amp; MPU_WORD_SRTADDR_MASK;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD(region, 1) = ((&lt;SPAN class="s4"&gt;_mem_size&lt;/SPAN&gt;) end &amp;amp; MPU_WORD_ENDADDR_MASK) | 0x01f;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD(region, 2) = flags;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp; MPU_WORD(region, 3) = MPU_WORD_VLD_MASK;&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P class="p2"&gt;}&lt;/P&gt;&lt;P class="p1"&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;STRONG&gt;sys_mpu_MakePrivileged&lt;/STRONG&gt;() {&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;&lt;STRONG&gt;__asm&lt;/STRONG&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;&lt;STRONG&gt;volatile&lt;/STRONG&gt;&lt;SPAN class="s2"&gt; (&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;mrs&lt;/SPAN&gt; r0, CONTROL \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"bic.w r0, r0, #1 \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;msr&lt;/SPAN&gt; CONTROL, r0 \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;isb&lt;/SPAN&gt; #15 \n"&lt;/P&gt;&lt;P class="p1"&gt;&amp;nbsp; ::: &lt;SPAN class="s4"&gt;"r0"&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&amp;nbsp; );&lt;/P&gt;&lt;P class="p1"&gt;}&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;STRONG&gt;sys_mpu_MakeUnPrivileged&lt;/STRONG&gt;() {&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;&lt;STRONG&gt;__asm&lt;/STRONG&gt;&lt;SPAN class="s2"&gt; &lt;/SPAN&gt;&lt;STRONG&gt;volatile&lt;/STRONG&gt;&lt;SPAN class="s2"&gt; (&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;mrs&lt;/SPAN&gt; r0, CONTROL \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;orr&lt;/SPAN&gt; r0, r0, #1 \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;msr&lt;/SPAN&gt; CONTROL, r0 \n"&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp; &lt;/SPAN&gt;"&lt;SPAN class="s3"&gt;isb&lt;/SPAN&gt; #15 \n"&lt;/P&gt;&lt;P class="p1"&gt;&amp;nbsp; ::: &lt;SPAN class="s4"&gt;"r0"&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&amp;nbsp; );&lt;/P&gt;&lt;P class="p1"&gt;}&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jan 2016 14:02:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465101#M28012</guid>
      <dc:creator>leifzars</dc:creator>
      <dc:date>2016-01-26T14:02:09Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis 20 MPU Trouble</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465102#M28013</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you check using below code to let core enter into user mode instead of using &lt;SPAN class="keyword"&gt;void sys_mpu_MakeUnPrivileged() function&lt;/SPAN&gt;?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void __ENTER_USER_MODE(void){ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; asm(&amp;nbsp;&amp;nbsp; "MOV r1, #0x0001 \n"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "MSR control, r1 \n"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "bx lr&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jan 2016 05:19:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465102#M28013</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2016-01-27T05:19:39Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis 20 MPU Trouble</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465103#M28014</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This worked. Can you explain why?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Feb 2016 13:05:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465103#M28014</guid>
      <dc:creator>leifzars</dc:creator>
      <dc:date>2016-02-05T13:05:51Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis 20 MPU Trouble</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465104#M28015</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I abstracted the ARM Cortex M4 core enter into unprivileged mode code from Kinetis product validation project.&lt;/P&gt;&lt;P&gt;About ARM Cortex-M4 assembly instruction application, you could get support from ARM with below link:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.arm.com/support/index.php" title="http://www.arm.com/support/index.php"&gt;Support - ARM&lt;/A&gt; &lt;/P&gt;&lt;P&gt;Thank you for the understanding.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Feb 2016 06:01:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-20-MPU-Trouble/m-p/465104#M28015</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2016-02-15T06:01:33Z</dc:date>
    </item>
  </channel>
</rss>

