Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| docs:techref:hardware:soc:soc.broadcom.bcm63xx:smp [2018/03/31 23:22] – ↷ Page moved from docs:hardware:soc:soc.broadcom.bcm63xx:smp to docs:techref:hardware:soc:soc.broadcom.bcm63xx:smp bobafetthotmail | docs:techref:hardware:soc:soc.broadcom.bcm63xx:smp [2019/09/09 17:40] (current) – wip infobox vgaetera | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== SMP/CMT Broadcom 63xx ====== | ====== SMP/CMT Broadcom 63xx ====== | ||
| - | An example of SMP initialization on BCM6358 SoC: http:// | + | {{page> |
| + | |||
| + | An example of SMP initialization on BCM6358 SoC: [[http:// | ||
| < | < | ||
| Line 60: | Line 62: | ||
| Then the main thread will be the core1. This is important since the BCM6358 SoC cores haven' | Then the main thread will be the core1. This is important since the BCM6358 SoC cores haven' | ||
| - | ^ BCM6358 ^ Data cache ^ Instruction cache ^ | + | ^ BCM6358 |
| - | | core0 | 16kB | 32kB | | + | | |
| - | | core1 | ::: | 16kB | | + | | |
| - | This parameter is located between **offsets 0x014-0x017** in [[docs: | + | This parameter is located between **offsets 0x014-0x017** in [[docs: |
| Some CFEs allow to change the Main thread using the command line interface. This option is probably only present in most recent SoCs such as BCM6368. | Some CFEs allow to change the Main thread using the command line interface. This option is probably only present in most recent SoCs such as BCM6368. | ||
| BCM6368 SoC cores are identical: | BCM6368 SoC cores are identical: | ||
| - | ^ BCM6368 ^ Data cache ^ Instruction cache ^ | + | ^ BCM6368 |
| - | | core0 | 32kB | 64kB | | + | | |
| - | | core1 | ::: | 64kB | | + | | |
| So no benefit using a different core for the main thread. | So no benefit using a different core for the main thread. | ||
| - | |||
| ===== CP0 Registers ===== | ===== CP0 Registers ===== | ||
| - | |||
| ==== Configuration Registers ==== | ==== Configuration Registers ==== | ||
| To know if your CPU has concurrent multi-threading support (CMT) check **bit 18** at BRCM Configuration register (read_c0_brcm_config_0): | To know if your CPU has concurrent multi-threading support (CMT) check **bit 18** at BRCM Configuration register (read_c0_brcm_config_0): | ||
| 0 = 1 core\\ | 0 = 1 core\\ | ||
| 1 = 2 cores, multi-thread supported\\ | 1 = 2 cores, multi-thread supported\\ | ||
| - | |||
| Also check the **bit 12**:\\ | Also check the **bit 12**:\\ | ||
| Line 251: | Line 250: | ||
| </ | </ | ||
| - | -> http:// | + | |
| Note: | Note: | ||
| Line 261: | Line 260: | ||
| ===== OpenWrt status ===== | ===== OpenWrt status ===== | ||
| * No support in BCM6358, mainly caused by the shared TLB. | * No support in BCM6358, mainly caused by the shared TLB. | ||
| - | * BCM6362 and BCM6368 are supported. Available through the SMP subtarget in trunk versions:\\ https:// | + | * BCM6362 and BCM6368 are supported. Available through the SMP subtarget in trunk versions: |
| - | * Fatal bug causing jffs2 data corruption -> temporal workaround https:// | + | * Fatal bug causing jffs2 data corruption -> temporal workaround |
| + | |||
| + | ===== Devices ===== | ||
| + | The list of related devices: | ||
| + | {{tagpage> | ||
| - | {{tag> | ||