Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: shmobile: Remove obsolete zboot support

The last user of the zboot code was the KZM-A9-GT legacy board code,
which has been removed.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

authored by

Geert Uytterhoeven and committed by
Simon Horman
11e38671 b5872880

-197
-4
arch/arm/boot/compressed/Makefile
··· 51 51 endif 52 52 endif 53 53 54 - ifeq ($(CONFIG_ARCH_SHMOBILE_LEGACY),y) 55 - OBJS += head-shmobile.o 56 - endif 57 - 58 54 # 59 55 # We now have a PIC decompressor implementation. Decompressors running 60 56 # from RAM should not define ZTEXTADDR. Decompressors running directly
-71
arch/arm/boot/compressed/head-shmobile.S
··· 1 - /* 2 - * The head-file for SH-Mobile ARM platforms 3 - * 4 - * Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 5 - * Simon Horman <horms@verge.net.au> 6 - * 7 - * This program is free software; you can redistribute it and/or modify 8 - * it under the terms of the GNU General Public License as published by 9 - * the Free Software Foundation; version 2 of the License. 10 - * 11 - * This program is distributed in the hope that it will be useful, 12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 - * GNU General Public License for more details. 15 - * 16 - * You should have received a copy of the GNU General Public License 17 - * along with this program; if not, write to the Free Software 18 - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 - */ 20 - 21 - #ifdef CONFIG_ZBOOT_ROM 22 - 23 - .section ".start", "ax" 24 - 25 - /* load board-specific initialization code */ 26 - #include <mach/zboot.h> 27 - 28 - adr r0, dtb_info 29 - ldmia r0, {r1, r3, r4, r5, r7} 30 - 31 - sub r0, r0, r1 @ calculate the delta offset 32 - add r5, r5, r0 @ _edata 33 - 34 - ldr lr, [r5, #0] @ check if valid DTB is present 35 - cmp lr, r3 36 - bne 0f 37 - 38 - add r9, r7, #31 @ rounded up to a multiple 39 - bic r9, r9, #31 @ ... of 32 bytes 40 - 41 - add r6, r9, r5 @ copy from _edata 42 - add r9, r9, r4 @ to MEMORY_START 43 - 44 - 1: ldmdb r6!, {r0 - r3, r10 - r12, lr} 45 - cmp r6, r5 46 - stmdb r9!, {r0 - r3, r10 - r12, lr} 47 - bhi 1b 48 - 49 - /* Success: Zero board ID, pointer to start of memory for atag/dtb */ 50 - mov r7, #0 51 - mov r8, r4 52 - b 2f 53 - 54 - .align 2 55 - dtb_info: 56 - .word dtb_info 57 - #ifndef __ARMEB__ 58 - .word 0xedfe0dd0 @ sig is 0xd00dfeed big endian 59 - #else 60 - .word 0xd00dfeed 61 - #endif 62 - .word MEMORY_START 63 - .word _edata 64 - .word 0x4000 @ maximum DTB size 65 - 0: 66 - /* Failure: Zero board ID, NULL atag/dtb */ 67 - mov r7, #0 68 - mov r8, #0 @ pass null pointer as atag 69 - 2 : 70 - 71 - #endif /* CONFIG_ZBOOT_ROM */
-14
arch/arm/mach-shmobile/include/mach/zboot.h
··· 1 - #ifndef ZBOOT_H 2 - #define ZBOOT_H 3 - 4 - #include <mach/zboot_macros.h> 5 - 6 - /************************************************** 7 - * 8 - * board specific settings 9 - * 10 - **************************************************/ 11 - 12 - #error "unsupported board." 13 - 14 - #endif /* ZBOOT_H */
-108
arch/arm/mach-shmobile/include/mach/zboot_macros.h
··· 1 - #ifndef __ZBOOT_MACRO_H 2 - #define __ZBOOT_MACRO_H 3 - 4 - /* The LIST command is used to include comments in the script */ 5 - .macro LIST comment 6 - .endm 7 - 8 - /* The ED command is used to write a 32-bit word */ 9 - .macro ED, addr, data 10 - LDR r0, 1f 11 - LDR r1, 2f 12 - STR r1, [r0] 13 - B 3f 14 - 1 : .long \addr 15 - 2 : .long \data 16 - 3 : 17 - .endm 18 - 19 - /* The EW command is used to write a 16-bit word */ 20 - .macro EW, addr, data 21 - LDR r0, 1f 22 - LDR r1, 2f 23 - STRH r1, [r0] 24 - B 3f 25 - 1 : .long \addr 26 - 2 : .long \data 27 - 3 : 28 - .endm 29 - 30 - /* The EB command is used to write an 8-bit word */ 31 - .macro EB, addr, data 32 - LDR r0, 1f 33 - LDR r1, 2f 34 - STRB r1, [r0] 35 - B 3f 36 - 1 : .long \addr 37 - 2 : .long \data 38 - 3 : 39 - .endm 40 - 41 - /* The WAIT command is used to delay the execution */ 42 - .macro WAIT, time, reg 43 - LDR r1, 1f 44 - LDR r0, 2f 45 - STR r0, [r1] 46 - 10 : 47 - LDR r0, [r1] 48 - CMP r0, #0x00000000 49 - BNE 10b 50 - NOP 51 - B 3f 52 - 1 : .long \reg 53 - 2 : .long \time * 100 54 - 3 : 55 - .endm 56 - 57 - /* The DD command is used to read a 32-bit word */ 58 - .macro DD, start, end 59 - LDR r1, 1f 60 - B 2f 61 - 1 : .long \start 62 - 2 : 63 - .endm 64 - 65 - /* loop until a given value has been read (with mask) */ 66 - .macro WAIT_MASK, addr, data, cmp 67 - LDR r0, 2f 68 - LDR r1, 3f 69 - LDR r2, 4f 70 - 1: 71 - LDR r3, [r0, #0] 72 - AND r3, r1, r3 73 - CMP r2, r3 74 - BNE 1b 75 - B 5f 76 - 2: .long \addr 77 - 3: .long \data 78 - 4: .long \cmp 79 - 5: 80 - .endm 81 - 82 - /* read 32-bit value from addr, "or" an immediate and write back */ 83 - .macro ED_OR, addr, data 84 - LDR r4, 1f 85 - LDR r5, 2f 86 - LDR r6, [r4] 87 - ORR r5, r6, r5 88 - STR r5, [r4] 89 - B 3f 90 - 1: .long \addr 91 - 2: .long \data 92 - 3: 93 - .endm 94 - 95 - /* read 32-bit value from addr, "and" an immediate and write back */ 96 - .macro ED_AND, addr, data 97 - LDR r4, 1f 98 - LDR r5, 2f 99 - LDR r6, [r4] 100 - AND r5, r6, r5 101 - STR r5, [r4] 102 - B 3f 103 - 1: .long \addr 104 - 2: .long \data 105 - 3: 106 - .endm 107 - 108 - #endif /* __ZBOOT_MACRO_H */