<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/97720/tf-m-partition-alignment-assert-within-spu-might-fail-for-some-partition-manager-computed-configs</link><description>v2.3.0 of the sdk-nrf included this commit that checks for the alignment of the TF-M Non Secure partition (which hosts the `app` one) with CONFIG_NRF_SPU_FLASH_REGION_SIZE . 
 
 For stock/most cases (eg. hello_world code), the assertion holds and the</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 14 Apr 2023 09:44:35 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/97720/tf-m-partition-alignment-assert-within-spu-might-fail-for-some-partition-manager-computed-configs" /><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/420448?ContentTypeID=1</link><pubDate>Fri, 14 Apr 2023 09:44:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:de93063c-f08f-4444-bcaf-065d8a1ac947</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;My deepest apologies for this inconvenience, and thank you all for your patience.&lt;/p&gt;
&lt;p&gt;We recently found that adding debug configuration (CONFIG_DEBUG_OPTIMIZATIONS selected) causes this assertion to occur, and this is being addressed with this pull-request:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/nrfconnect/sdk-nrf/pull/10757"&gt;https://github.com/nrfconnect/sdk-nrf/pull/10757&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;We are also trying to improve the assertion message with this PR:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/nrfconnect/sdk-nrf/pull/10764"&gt;https://github.com/nrfconnect/sdk-nrf/pull/10764&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Please let me know if there&amp;#39;s anything still unclear or if you run into issues.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/417793?ContentTypeID=1</link><pubDate>Tue, 28 Mar 2023 06:28:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:35b52be7-5030-4931-8f81-554ef05b2372</guid><dc:creator>chmielewskiandreas</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/members/hkn"&gt;Håkon Alseth&lt;/a&gt;&amp;nbsp;, can you please put a link to the PR here once this issue is fixed. I want to backport it immediately into my project. Thx&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/417377?ContentTypeID=1</link><pubDate>Fri, 24 Mar 2023 11:12:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6831c72f-2632-4567-873a-f18b13c6806b</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;First I&amp;#39;d like to apologize for this issue and inconvenience.&lt;/p&gt;
&lt;p&gt;I have edit&amp;#39;ed my initial answer. The workaround is to adjust the partition layout via. pm_static.yml (ie. do not change CONFIG_FPROTECT).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s an example of an NCS v2.2.0 layout (with this 0x200 offset, which we do not want for NCS v2.3.0):&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;EMPTY_0:
  address: 0xf6000
  end_address: 0xf8000
  placement:
    after:
    - settings_storage
  region: flash_primary
  size: 0x2000
app:
  address: 0x4c200
  end_address: 0xf4000
  region: flash_primary
  size: 0xa7e00
external_flash:
  address: 0x128000
  end_address: 0x800000
  region: external_flash
  size: 0x6d8000
mcuboot:
  address: 0x0
  end_address: 0xc000
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0xc000
mcuboot_pad:
  address: 0xc000
  end_address: 0xc200
  placement:
    align:
      start: 0x4000
    before:
    - mcuboot_primary_app
  region: flash_primary
  size: 0x200
mcuboot_primary:
  address: 0xc000
  end_address: 0xf4000
  orig_span: &amp;amp;id001
  - mcuboot_pad
  - app
  - tfm
  region: flash_primary
  size: 0xe8000
  span: *id001
mcuboot_primary_1:
  address: 0x0
  device: nordic_ram_flash_controller
  end_address: 0x40000
  region: ram_flash
  size: 0x40000
mcuboot_primary_app:
  address: 0xc200
  end_address: 0xf4000
  orig_span: &amp;amp;id002
  - app
  - tfm
  region: flash_primary
  size: 0xe7e00
  span: *id002
mcuboot_secondary:
  address: 0x0
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xe8000
  placement:
    align:
      start: 0x4
  region: external_flash
  share_size:
  - mcuboot_primary
  size: 0xe8000
mcuboot_secondary_1:
  address: 0xe8000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0x128000
  region: external_flash
  size: 0x40000
nonsecure_storage:
  address: 0xf4000
  end_address: 0xf6000
  orig_span: &amp;amp;id003
  - settings_storage
  region: flash_primary
  size: 0x2000
  span: *id003
otp:
  address: 0xff8100
  end_address: 0xff83fc
  region: otp
  size: 0x2fc
pcd_sram:
  address: 0x20000000
  end_address: 0x20002000
  placement:
    before:
    - tfm_sram
  region: sram_primary
  size: 0x2000
ram_flash:
  address: 0x40000
  end_address: 0x40000
  region: ram_flash
  size: 0x0
rpmsg_nrf53_sram:
  address: 0x20070000
  end_address: 0x20080000
  placement:
    before:
    - end
  region: sram_primary
  size: 0x10000
settings_storage:
  address: 0xf4000
  end_address: 0xf6000
  inside:
  - nonsecure_storage
  placement:
    align:
      start: 0x4000
    before:
    - tfm_storage
    - end
  region: flash_primary
  size: 0x2000
sram_nonsecure:
  address: 0x20042000
  end_address: 0x20080000
  orig_span: &amp;amp;id004
  - sram_primary
  - rpmsg_nrf53_sram
  region: sram_primary
  size: 0x3e000
  span: *id004
sram_primary:
  address: 0x20042000
  end_address: 0x20070000
  region: sram_primary
  size: 0x2e000
sram_secure:
  address: 0x20000000
  end_address: 0x20042000
  orig_span: &amp;amp;id005
  - pcd_sram
  - tfm_sram
  region: sram_primary
  size: 0x42000
  span: *id005
tfm:
  address: 0xc200
  end_address: 0x4c200
  inside:
  - mcuboot_primary_app
  placement:
    before:
    - app
  region: flash_primary
  size: 0x40000
tfm_its:
  address: 0xf8000
  end_address: 0xfa000
  inside:
  - tfm_storage
  placement:
    before:
    - tfm_otp_nv_counters
  region: flash_primary
  size: 0x2000
tfm_nonsecure:
  address: 0x4c200
  end_address: 0xf4000
  orig_span: &amp;amp;id006
  - app
  region: flash_primary
  size: 0xa7e00
  span: *id006
tfm_otp_nv_counters:
  address: 0xfa000
  end_address: 0xfc000
  inside:
  - tfm_storage
  placement:
    before:
    - tfm_ps
  region: flash_primary
  size: 0x2000
tfm_ps:
  address: 0xfc000
  end_address: 0x100000
  inside:
  - tfm_storage
  placement:
    align:
      start: 0x4000
    before:
    - end
  region: flash_primary
  size: 0x4000
tfm_secure:
  address: 0xc000
  end_address: 0x4c200
  orig_span: &amp;amp;id007
  - mcuboot_pad
  - tfm
  region: flash_primary
  size: 0x40200
  span: *id007
tfm_sram:
  address: 0x20002000
  end_address: 0x20042000
  inside:
  - sram_secure
  placement:
    after:
    - start
  region: sram_primary
  size: 0x40000
tfm_storage:
  address: 0xf8000
  end_address: 0x100000
  orig_span: &amp;amp;id008
  - tfm_ps
  - tfm_its
  - tfm_otp_nv_counters
  region: flash_primary
  size: 0x8000
  span: *id008&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;And here is the fixed partition layout, ie. one from ncs v2.3.0:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;EMPTY_0:
  address: 0xf6000
  end_address: 0xf8000
  placement:
    after:
    - settings_storage
  region: flash_primary
  size: 0x2000
app:
  address: 0x4c000
  end_address: 0xf4000
  region: flash_primary
  size: 0xa8000
external_flash:
  address: 0x128000
  end_address: 0x800000
  region: external_flash
  size: 0x6d8000
mcuboot:
  address: 0x0
  end_address: 0xc000
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0xc000
mcuboot_pad:
  address: 0xc000
  end_address: 0xc200
  placement:
    align:
      start: 0x4000
    before:
    - mcuboot_primary_app
  region: flash_primary
  size: 0x200
mcuboot_primary:
  address: 0xc000
  end_address: 0xf4000
  orig_span: &amp;amp;id001
  - app
  - mcuboot_pad
  - tfm
  region: flash_primary
  size: 0xe8000
  span: *id001
mcuboot_primary_1:
  address: 0x0
  device: nordic_ram_flash_controller
  end_address: 0x40000
  region: ram_flash
  size: 0x40000
mcuboot_primary_app:
  address: 0xc200
  end_address: 0xf4000
  orig_span: &amp;amp;id002
  - app
  - tfm
  region: flash_primary
  size: 0xe7e00
  span: *id002
mcuboot_secondary:
  address: 0x0
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xe8000
  placement:
    align:
      start: 0x4
  region: external_flash
  share_size:
  - mcuboot_primary
  size: 0xe8000
mcuboot_secondary_1:
  address: 0xe8000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0x128000
  region: external_flash
  size: 0x40000
mcuboot_sram:
  address: 0x20000000
  end_address: 0x20042000
  orig_span: &amp;amp;id003
  - pcd_sram
  - tfm_sram
  region: sram_primary
  size: 0x42000
  span: *id003
nonsecure_storage:
  address: 0xf4000
  end_address: 0xf6000
  orig_span: &amp;amp;id004
  - settings_storage
  region: flash_primary
  size: 0x2000
  span: *id004
otp:
  address: 0xff8100
  end_address: 0xff83fc
  region: otp
  size: 0x2fc
pcd_sram:
  address: 0x20000000
  end_address: 0x20002000
  placement:
    before:
    - tfm_sram
  region: sram_primary
  size: 0x2000
ram_flash:
  address: 0x40000
  end_address: 0x40000
  region: ram_flash
  size: 0x0
rpmsg_nrf53_sram:
  address: 0x20070000
  end_address: 0x20080000
  placement:
    before:
    - end
  region: sram_primary
  size: 0x10000
settings_storage:
  address: 0xf4000
  end_address: 0xf6000
  inside:
  - nonsecure_storage
  placement:
    align:
      start: 0x4000
    before:
    - tfm_storage
    - end
  region: flash_primary
  size: 0x2000
sram_nonsecure:
  address: 0x20042000
  end_address: 0x20080000
  orig_span: &amp;amp;id005
  - sram_primary
  - rpmsg_nrf53_sram
  region: sram_primary
  size: 0x3e000
  span: *id005
sram_primary:
  address: 0x20042000
  end_address: 0x20070000
  region: sram_primary
  size: 0x2e000
sram_secure:
  address: 0x20000000
  end_address: 0x20042000
  orig_span: &amp;amp;id006
  - pcd_sram
  - tfm_sram
  region: sram_primary
  size: 0x42000
  span: *id006
tfm:
  address: 0xc200
  end_address: 0x4c000
  inside:
  - mcuboot_primary_app
  placement:
    before:
    - app
  region: flash_primary
  size: 0x3fe00
tfm_its:
  address: 0xf8000
  end_address: 0xfa000
  inside:
  - tfm_storage
  placement:
    before:
    - tfm_otp_nv_counters
  region: flash_primary
  size: 0x2000
tfm_nonsecure:
  address: 0x4c000
  end_address: 0xf4000
  orig_span: &amp;amp;id007
  - app
  region: flash_primary
  size: 0xa8000
  span: *id007
tfm_otp_nv_counters:
  address: 0xfa000
  end_address: 0xfc000
  inside:
  - tfm_storage
  placement:
    before:
    - tfm_ps
  region: flash_primary
  size: 0x2000
tfm_ps:
  address: 0xfc000
  end_address: 0x100000
  inside:
  - tfm_storage
  placement:
    align:
      start: 0x4000
    before:
    - end
  region: flash_primary
  size: 0x4000
tfm_secure:
  address: 0xc000
  end_address: 0x4c000
  orig_span: &amp;amp;id008
  - mcuboot_pad
  - tfm
  region: flash_primary
  size: 0x40000
  span: *id008
tfm_sram:
  address: 0x20002000
  end_address: 0x20042000
  inside:
  - sram_secure
  placement:
    after:
    - start
  region: sram_primary
  size: 0x40000
tfm_storage:
  address: 0xf8000
  end_address: 0x100000
  orig_span: &amp;amp;id009
  - tfm_ps
  - tfm_its
  - tfm_otp_nv_counters
  region: flash_primary
  size: 0x8000
  span: *id009
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;There are some id&amp;#39;s and others that are different here, but the major difference are these:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1679656067883v1.png" alt=" " /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1679656109891v2.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;On the left hand side, all the 0x200 byte offsets are adjusted and rounded down to the correct base address.&lt;/p&gt;
&lt;p&gt;At this moment, I do not have any other fix than to manually adjust these. This can be done by adjusting your already present pm_static.yml, or generating a new build with NCS v2.3.0, and comparing this with your &amp;quot;old pm_static.yml&amp;quot; and adjusting accordingly.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="chmielewskiandreas"]Is there already a bug ticket for this that I can track?[/quote]
&lt;p&gt;I have reported this issue internally and made the team aware of this migration issue.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/417190?ContentTypeID=1</link><pubDate>Thu, 23 Mar 2023 16:29:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f947e6b-b9ae-4938-a599-c74605547513</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;Where are these suppose to be opened? I see that the sdk-nrf github repo doesn&amp;#39;t have issues enabled.&lt;/p&gt;
&lt;p&gt;V&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/417186?ContentTypeID=1</link><pubDate>Thu, 23 Mar 2023 16:23:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:84a41296-4fbd-4a94-bda1-e40c42363a4b</guid><dc:creator>chmielewskiandreas</dc:creator><description>&lt;p&gt;Is there already a bug ticket for this that I can track? I am also facing this issue and interested in a fix of the partition manager.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416779?ContentTypeID=1</link><pubDate>Wed, 22 Mar 2023 12:03:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fbb1e007-a7f5-42a9-a149-6a36e0ab6547</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;H&amp;aring;kon,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Unfortunately&lt;span&gt;, the &lt;strong&gt;pm_static.yml&lt;/strong&gt; override doesn&amp;#39;t seam to work. It looks like the kernel is faulting immediately after entering mcuboot so I don&amp;#39;t quite know what&amp;#39;s happening there and I don&amp;#39;t have the proper time to investigate.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;For now, we&amp;#39;ll just go with cloning the sdk-nrf repo and removing the PSU assert.c check via a commit + referencing our own, patched, sdk-nrf module when &amp;#39;whest update&amp;#39;-ing. We&amp;#39;ll plan on coming back to this, as time permits, and try to manually align it. If upstream won&amp;#39;t do it first, that is.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I have found another issue with the partition-manager when resolving the settings partition (in some scenario). I&amp;#39;ll open another ticket for this.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you once again,&amp;nbsp;H&amp;aring;kon!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best wishes,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;V&lt;/span&gt;&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416603?ContentTypeID=1</link><pubDate>Tue, 21 Mar 2023 14:48:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ea6d0f12-c09d-496f-9bb0-5f0d97d0aea2</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi V,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Let me know if you run into any issues.&lt;/p&gt;
&lt;p&gt;I just had a talk with the tfm-team, and they assured me that it is a bug in the first place that the partitions were offset with 0x200, and the fix is to manually &amp;quot;port&amp;quot; the pm_static.yml file, similar to how it was done here with the thingy91 pm_static file:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/nrfconnect/sdk-nrf/commit/e736590c05bcb806c3d8a86e1629d2c0ec85a383#diff-55fb0a1775752c61c872a06f6b7aa14df324356f352ad7c73210531e43c672ec"&gt;https://github.com/nrfconnect/sdk-nrf/commit/e736590c05bcb806c3d8a86e1629d2c0ec85a383#diff-55fb0a1775752c61c872a06f6b7aa14df324356f352ad7c73210531e43c672ec&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Another alternative can be to generate a new build on ncs v2.3.0, without the &amp;quot;ncs v2.2.0 pm_static.yml&amp;quot;, and&amp;nbsp;copy build-folder/partitions.yml to pm_static.yml and conform it to your expected layout.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I have an action here to properly highlight and document this, either as a migration guide or similar.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416594?ContentTypeID=1</link><pubDate>Tue, 21 Mar 2023 14:31:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e44d371-4b3d-4d23-8291-9f5b8b5232d0</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;It will be a bit difficult, but I will give it a try with &lt;em&gt;pm_static&lt;/em&gt; and come back to you,&amp;nbsp;&lt;span&gt;H&amp;aring;kon!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you soo much for looking into it!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best wishes,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;V&lt;/span&gt;&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416211?ContentTypeID=1</link><pubDate>Mon, 20 Mar 2023 09:28:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6438057a-1935-49ad-b902-23bda3c40000</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you for&amp;nbsp;your patience in this matter.&lt;/p&gt;
&lt;p&gt;I have been able to recreate the issue with your pm_static.yml, and as you mention; it is related to the 0x200 offset (ie. after the ISR vector table) in the &amp;quot;tfm_nonsecure&amp;quot; region:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;grep -r PM_TFM_NONSECURE_ADDRESS
zephyr/include/generated/pm_config.h:#define PM_TFM_NONSECURE_ADDRESS 0x20200
pm.config:PM_TFM_NONSECURE_ADDRESS=0x20200
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Thank you very much for making us aware of this issue. This is highly appreciated.&lt;/p&gt;
&lt;p&gt;I was able to see this issue when using matter/light_bulb, and building for v2.2.0 and v2.3.0. The partitions.yml generated for v2.2.0 has a +0x200 offset in the non-secure partitions, while the v2.3.0 generated build does not have this.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could you try a manual&amp;nbsp;workaround to the issue, which is to change the &amp;quot;app&amp;quot; and &amp;quot;tfm_nonsecure&amp;quot; offset and size?&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s an example specific for your pm_static.yml:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;app:
  address: 0x20000
  end_address: 0x100000
  region: flash_primary
  size: 0xe0000

tfm_nonsecure:
  address: 0x20000
  end_address: 0x100000
  orig_span: &amp;amp;id006
  - app
  region: flash_primary
  size: 0xe0000
  span: *id006&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416077?ContentTypeID=1</link><pubDate>Fri, 17 Mar 2023 15:26:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43ea1f9d-787f-462c-a494-829c7083049d</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;Thank you for such a quick response and looking into it,&amp;nbsp;&lt;span&gt;&lt;em&gt;H&amp;aring;kon&lt;/em&gt; . &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;As for your suggestion (and in my defense), I was playing with&amp;nbsp;&lt;/span&gt;&lt;strong&gt;CONFIG_PM_PARTITION_SIZE_MCUBOOT&lt;/strong&gt; a while back and forgot about it. Did what you suggested and now there is no&amp;nbsp;&lt;strong&gt;EMPTY_0&lt;/strong&gt; region. Thank you.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;  external_flash (0x1000000 - 16384kB):
+-----------------------------------------------+
| 0x0: mcuboot_secondary (0xf0000 - 960kB)      |
| 0xf0000: settings_storage (0x2000 - 8kB)      |
| 0xf2000: littlefs_storage (0x800000 - 8192kB) |
| 0x8f2000: external_flash (0x70e000 - 7224kB)  |
+-----------------------------------------------+

  flash_primary (0x100000 - 1024kB):
+--------------------------------------------------+
| 0x0: mcuboot (0x10000 - 64kB)                    |
+---0x10000: mcuboot_primary (0xf0000 - 960kB)-----+
+---0x10000: tfm_secure (0x10200 - 64kB)-----------+
| 0x10000: mcuboot_pad (0x200 - 512B)              |
+---0x10200: mcuboot_primary_app (0xefe00 - 959kB)-+
| 0x10200: tfm (0x10000 - 64kB)                    |
+---0x20200: tfm_nonsecure (0xdfe00 - 895kB)-------+
| 0x20200: app (0xdfe00 - 895kB)                   |
+--------------------------------------------------+

  otp (0x2fc - 764B):
+------------------------------+
| 0xff8100: otp (0x2fc - 764B) |
+------------------------------+

  sram_primary (0x80000 - 512kB):
+------------------------------------------------+
+---0x20000000: mcuboot_sram (0x8000 - 32kB)-----+
+---0x20000000: sram_secure (0x8000 - 32kB)------+
| 0x20000000: tfm_sram (0x8000 - 32kB)           |
+---0x20008000: sram_nonsecure (0x78000 - 480kB)-+
| 0x20008000: sram_primary (0x68000 - 416kB)     |
| 0x20070000: rpmsg_nrf53_sram (0x10000 - 64kB)  |
+------------------------------------------------+

 CPUNET flash_primary (0x40000 - 256kB):
+----------------------------------------+
+---0x1000000: app (0x40000 - 256kB)-----+
| 0x1000000: hci_rpmsg (0x40000 - 256kB) |
+----------------------------------------+

 CPUNET sram_primary (0x10000 - 64kB):
+-------------------------------------------+
| 0x21000000: sram_primary (0x10000 - 64kB) |
+-------------------------------------------+&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;And here is the new &lt;strong&gt;partitions.yml&lt;/strong&gt; file:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;app:
  address: 0x20200
  end_address: 0x100000
  region: flash_primary
  size: 0xdfe00
external_flash:
  address: 0x8f2000
  end_address: 0x1000000
  region: external_flash
  size: 0x70e000
littlefs_storage:
  address: 0xf2000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0x8f2000
  placement:
    before:
    - tfm_storage
    - end
  region: external_flash
  size: 0x800000
mcuboot:
  address: 0x0
  end_address: 0x10000
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0x10000
mcuboot_pad:
  address: 0x10000
  end_address: 0x10200
  placement:
    align:
      start: 0x4000
    before:
    - mcuboot_primary_app
  region: flash_primary
  size: 0x200
mcuboot_primary:
  address: 0x10000
  end_address: 0x100000
  orig_span: &amp;amp;id001
  - mcuboot_pad
  - app
  - tfm
  region: flash_primary
  size: 0xf0000
  span: *id001
mcuboot_primary_app:
  address: 0x10200
  end_address: 0x100000
  orig_span: &amp;amp;id002
  - app
  - tfm
  region: flash_primary
  size: 0xefe00
  span: *id002
mcuboot_secondary:
  address: 0x0
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xf0000
  placement:
    align:
      start: 0x4
  region: external_flash
  share_size:
  - mcuboot_primary
  size: 0xf0000
mcuboot_sram:
  address: 0x20000000
  end_address: 0x20008000
  orig_span: &amp;amp;id003
  - tfm_sram
  region: sram_primary
  size: 0x8000
  span: *id003
otp:
  address: 0xff8100
  end_address: 0xff83fc
  region: otp
  size: 0x2fc
rpmsg_nrf53_sram:
  address: 0x20070000
  end_address: 0x20080000
  placement:
    before:
    - end
  region: sram_primary
  size: 0x10000
settings_storage:
  address: 0xf0000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xf2000
  inside:
  - nonsecure_storage
  placement:
    before:
    - tfm_storage
    - end
  region: external_flash
  size: 0x2000
sram_nonsecure:
  address: 0x20008000
  end_address: 0x20080000
  orig_span: &amp;amp;id004
  - sram_primary
  - rpmsg_nrf53_sram
  region: sram_primary
  size: 0x78000
  span: *id004
sram_primary:
  address: 0x20008000
  end_address: 0x20070000
  region: sram_primary
  size: 0x68000
sram_secure:
  address: 0x20000000
  end_address: 0x20008000
  orig_span: &amp;amp;id005
  - tfm_sram
  region: sram_primary
  size: 0x8000
  span: *id005
tfm:
  address: 0x10200
  end_address: 0x20200
  inside:
  - mcuboot_primary_app
  placement:
    before:
    - app
  region: flash_primary
  size: 0x10000
tfm_nonsecure:
  address: 0x20200
  end_address: 0x100000
  orig_span: &amp;amp;id006
  - app
  region: flash_primary
  size: 0xdfe00
  span: *id006
tfm_secure:
  address: 0x10000
  end_address: 0x20200
  orig_span: &amp;amp;id007
  - mcuboot_pad
  - tfm
  region: flash_primary
  size: 0x10200
  span: *id007
tfm_sram:
  address: 0x20000000
  end_address: 0x20008000
  inside:
  - sram_secure
  placement:
    after:
    - start
  region: sram_primary
  size: 0x8000
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Unfortunately, as you might expect, I&amp;#39;m still getting the &lt;strong&gt;&amp;quot;TF-M non-secure address start is not aligned on SPU region size&lt;/strong&gt;&amp;quot; compile-time error.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;V&lt;/span&gt;&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416070?ContentTypeID=1</link><pubDate>Fri, 17 Mar 2023 15:05:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dd4da5e7-8338-4c4d-acd5-c1fd8627ae6c</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It looks like your mcuboot partition is generated with 0x100 bytes less than normal:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;EMPTY_0:
  address: 0xff00
  end_address: 0x10000
  placement:
    before:
    - mcuboot_pad
  region: flash_primary
  size: 0x100
mcuboot:
  address: 0x0
  end_address: 0xff00
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0xff00&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could you try to copy the my_app/build-folder/partitions.yml to my_app/pm_static.yml?&lt;/p&gt;
&lt;p&gt;Then make the following change by removing EMPTY_0 and adjusting mcuboot to 0x10000?&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;mcuboot:
  address: 0x0
  end_address: 0x10000
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0x10000&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416058?ContentTypeID=1</link><pubDate>Fri, 17 Mar 2023 14:36:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2aa296c4-9b6c-430d-a31f-cc07226174c7</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;Sure! Here is the &lt;strong&gt;partitions.yml&lt;/strong&gt; file:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;EMPTY_0:
  address: 0xff00
  end_address: 0x10000
  placement:
    before:
    - mcuboot_pad
  region: flash_primary
  size: 0x100
app:
  address: 0x20200
  end_address: 0x100000
  region: flash_primary
  size: 0xdfe00
external_flash:
  address: 0x8f2000
  end_address: 0x1000000
  region: external_flash
  size: 0x70e000
littlefs_storage:
  address: 0xf2000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0x8f2000
  placement:
    before:
    - tfm_storage
    - end
  region: external_flash
  size: 0x800000
mcuboot:
  address: 0x0
  end_address: 0xff00
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0xff00
mcuboot_pad:
  address: 0x10000
  end_address: 0x10200
  placement:
    align:
      start: 0x4000
    before:
    - mcuboot_primary_app
  region: flash_primary
  size: 0x200
mcuboot_primary:
  address: 0x10000
  end_address: 0x100000
  orig_span: &amp;amp;id001
  - mcuboot_pad
  - app
  - tfm
  region: flash_primary
  size: 0xf0000
  span: *id001
mcuboot_primary_app:
  address: 0x10200
  end_address: 0x100000
  orig_span: &amp;amp;id002
  - app
  - tfm
  region: flash_primary
  size: 0xefe00
  span: *id002
mcuboot_secondary:
  address: 0x0
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xf0000
  placement:
    align:
      start: 0x4
  region: external_flash
  share_size:
  - mcuboot_primary
  size: 0xf0000
mcuboot_sram:
  address: 0x20000000
  end_address: 0x20008000
  orig_span: &amp;amp;id003
  - tfm_sram
  region: sram_primary
  size: 0x8000
  span: *id003
otp:
  address: 0xff8100
  end_address: 0xff83fc
  region: otp
  size: 0x2fc
rpmsg_nrf53_sram:
  address: 0x20070000
  end_address: 0x20080000
  placement:
    before:
    - end
  region: sram_primary
  size: 0x10000
settings_storage:
  address: 0xf0000
  device: DT_CHOSEN(nordic_pm_ext_flash)
  end_address: 0xf2000
  inside:
  - nonsecure_storage
  placement:
    before:
    - tfm_storage
    - end
  region: external_flash
  size: 0x2000
sram_nonsecure:
  address: 0x20008000
  end_address: 0x20080000
  orig_span: &amp;amp;id004
  - sram_primary
  - rpmsg_nrf53_sram
  region: sram_primary
  size: 0x78000
  span: *id004
sram_primary:
  address: 0x20008000
  end_address: 0x20070000
  region: sram_primary
  size: 0x68000
sram_secure:
  address: 0x20000000
  end_address: 0x20008000
  orig_span: &amp;amp;id005
  - tfm_sram
  region: sram_primary
  size: 0x8000
  span: *id005
tfm:
  address: 0x10200
  end_address: 0x20200
  inside:
  - mcuboot_primary_app
  placement:
    before:
    - app
  region: flash_primary
  size: 0x10000
tfm_nonsecure:
  address: 0x20200
  end_address: 0x100000
  orig_span: &amp;amp;id006
  - app
  region: flash_primary
  size: 0xdfe00
  span: *id006
tfm_secure:
  address: 0x10000
  end_address: 0x20200
  orig_span: &amp;amp;id007
  - mcuboot_pad
  - tfm
  region: flash_primary
  size: 0x10200
  span: *id007
tfm_sram:
  address: 0x20000000
  end_address: 0x20008000
  inside:
  - sram_secure
  placement:
    after:
    - start
  region: sram_primary
  size: 0x8000
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you once again,&lt;/p&gt;
&lt;p&gt;Take care,&lt;/p&gt;
&lt;p&gt;V&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/416022?ContentTypeID=1</link><pubDate>Fri, 17 Mar 2023 13:25:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:309e221e-c383-4cd8-a124-badb73d9e7af</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="3Nigma"]Yes, we are planning on doing fota-s, but have not yet shipped the initial version. We are striving to have FPROTECT on since the device is considered a high-security, critical, application.[/quote]
&lt;p&gt;Could you share your pm_static.yml (or the build/partitions.yml) file?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="3Nigma"]It would be nice if the partition_manage.py script would be aware of this alignment constraint and generate solutions accordingly. As it is now, I do see it causing issues for others: outputting a valid layout config while failing the SPU alignment guard.[/quote]
&lt;p&gt;I will report this internally, and make the developers aware of this.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/415629?ContentTypeID=1</link><pubDate>Thu, 16 Mar 2023 08:54:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a5778efb-67f3-4788-a5f3-c962b63dde94</guid><dc:creator>3Nigma</dc:creator><description>&lt;p&gt;Thank you for the reply, &lt;span&gt;H&amp;aring;kon&lt;/span&gt;!&lt;/p&gt;
&lt;p&gt;Yes, we are planning on doing fota-s, but have not yet shipped the initial version. We are striving to have FPROTECT on since the device is considered a high-security, critical, application.&lt;/p&gt;
&lt;p&gt;It would be nice if the partition_manage.py script would be aware of this alignment constraint and generate solutions accordingly. As it is now, I do see it causing issues for others: outputting a valid layout config while failing the SPU alignment guard.&lt;/p&gt;
&lt;div class="bladeContent"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/415545?ContentTypeID=1</link><pubDate>Wed, 15 Mar 2023 15:55:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2519f4ba-7997-4ab0-b1cd-70c96f8a0e62</guid><dc:creator>Voxorin</dc:creator><description>&lt;p&gt;I&amp;#39;ll add that I am also running into this issue building for the NRF9160 after updating to v2.3.0 from v2.2.0.&lt;/p&gt;
&lt;p&gt;For more information I&amp;#39;m building for the Circuit Dojo NRF9160 Feather. I&amp;#39;m using all upstream partition sizes with no app specific configs or overrides.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TF-M partition alignment assert within SPU might fail for some partition-manager computed configs</title><link>https://devzone.nordicsemi.com/thread/415463?ContentTypeID=1</link><pubDate>Wed, 15 Mar 2023 13:14:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:325f54db-6f4f-4fc0-a83f-fcd1b26103c6</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:line-through;"&gt;On the nRF5340, each flash protect region is 16kB aligned:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:line-through;"&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf5340/spu.html?cp=4_0_0_6_31_1#flash_access_control"&gt;https://infocenter.nordicsemi.com/topic/ps_nrf5340/spu.html?cp=4_0_0_6_31_1#flash_access_control&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:line-through;"&gt;If your partitions do not align on 16kB regions, you must disable the CONFIG_FPROTECT in addition to the change that you have already done.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user=""]&lt;p&gt;Is this a safe thing to do or is there any other better solution to this?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;Disabling the FPROTECT has its drawbacks, security-wise, so if possible; I would recommend that you keep FPROTECT enabled and rather align your partitions in pm_static.yml in such a way that it passes this specific test.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Are you creating FOTA images for a product out in the field?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Update 24th of March:&lt;/p&gt;
&lt;p&gt;My initial striked out comment is incorrect. This 16k (32k for nRF9160) alignment is based on the &amp;quot;app&amp;quot; region, which holds both the TFM image&amp;nbsp;&lt;strong&gt;and&lt;/strong&gt; the non-secure application.&lt;/p&gt;
&lt;p&gt;Mcuboot will see the TFM+non_secure application as one whole section. This means that all FOTA images can be dynamically aligned for TFM+non_secure-app, and thus be able to use FPROTECT.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>