U-Boot
Threads by month
- ----- 2025 -----
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2000 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
February 2015
- 190 participants
- 588 discussions

06 Feb '15
Commit 90bac29a76bc8d649b41a55f2786c0abef9bb2c1 claims to fix this bug
that was introduced in commit a92fd6577ea17751ead9b50243e3c562125cf581
but doesn't actually make the change that the commit message describes.
Actually fix the bug this time.
Signed-off-by: Joe Hershberger <joe.hershberger(a)ni.com>
---
common/cmd_fdt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/common/cmd_fdt.c b/common/cmd_fdt.c
index dc59fab..51c585b 100644
--- a/common/cmd_fdt.c
+++ b/common/cmd_fdt.c
@@ -123,7 +123,7 @@ static int do_fdt(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
if (control)
gd->fdt_blob = blob;
else
- set_working_fdt_addr((void *)blob);
+ set_working_fdt_addr((void *)addr);
if (argc >= 2) {
int len;
--
1.7.11.5
3
13
Allow r0 to be used for other purposes in this file.
Signed-off-by: Simon Glass <sjg(a)chromium.org>
---
arch/arm/cpu/armv7/start.S | 88 +++++++++++++++++++++++-----------------------
1 file changed, 44 insertions(+), 44 deletions(-)
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S
index 70048c1..c5f94ef 100644
--- a/arch/arm/cpu/armv7/start.S
+++ b/arch/arm/cpu/armv7/start.S
@@ -38,13 +38,13 @@ reset:
* disable interrupts (FIQ and IRQ), also set the cpu to SVC32 mode,
* except if in HYP mode already
*/
- mrs r0, cpsr
- and r1, r0, #0x1f @ mask mode bits
+ mrs r2, cpsr
+ and r1, r2, #0x1f @ mask mode bits
teq r1, #0x1a @ test for HYP mode
- bicne r0, r0, #0x1f @ clear all mode bits
- orrne r0, r0, #0x13 @ set SVC mode
- orr r0, r0, #0xc0 @ disable FIQ and IRQ
- msr cpsr,r0
+ bicne r2, r2, #0x1f @ clear all mode bits
+ orrne r2, r2, #0x13 @ set SVC mode
+ orr r2, r2, #0xc0 @ disable FIQ and IRQ
+ msr cpsr, r2
/*
* Setup vector:
@@ -53,13 +53,13 @@ reset:
*/
#if !(defined(CONFIG_OMAP44XX) && defined(CONFIG_SPL_BUILD))
/* Set V=0 in CP15 SCTLR register - for VBAR to point to vector */
- mrc p15, 0, r0, c1, c0, 0 @ Read CP15 SCTLR Register
- bic r0, #CR_V @ V = 0
- mcr p15, 0, r0, c1, c0, 0 @ Write CP15 SCTLR Register
+ mrc p15, 0, r2, c1, c0, 0 @ Read CP15 SCTLR Register
+ bic r2, #CR_V @ V = 0
+ mcr p15, 0, r2, c1, c0, 0 @ Write CP15 SCTLR Register
/* Set vector address in CP15 VBAR register */
- ldr r0, =_start
- mcr p15, 0, r0, c12, c0, 0 @Set VBAR
+ ldr r2, =_start
+ mcr p15, 0, r2, c12, c0, 0 @Set VBAR
#endif
/* the mask ROM code should have PLL and others stable */
@@ -77,9 +77,9 @@ ENTRY(c_runtime_cpu_setup)
* If I-cache is enabled invalidate it
*/
#ifndef CONFIG_SYS_ICACHE_OFF
- mcr p15, 0, r0, c7, c5, 0 @ invalidate icache
- mcr p15, 0, r0, c7, c10, 4 @ DSB
- mcr p15, 0, r0, c7, c5, 4 @ ISB
+ mcr p15, 0, r2, c7, c5, 0 @ invalidate icache
+ mcr p15, 0, r2, c7, c10, 4 @ DSB
+ mcr p15, 0, r2, c7, c5, 4 @ ISB
#endif
bx lr
@@ -88,7 +88,7 @@ ENDPROC(c_runtime_cpu_setup)
/*************************************************************************
*
- * void save_boot_params(u32 r0, u32 r1, u32 r2, u32 r3)
+ * void save_boot_params(u32 r2, u32 r1, u32 r2, u32 r3)
* __attribute__((weak));
*
* Stack pointer is not yet initialized at this moment
@@ -112,55 +112,55 @@ ENTRY(cpu_init_cp15)
/*
* Invalidate L1 I/D
*/
- mov r0, #0 @ set up for MCR
- mcr p15, 0, r0, c8, c7, 0 @ invalidate TLBs
- mcr p15, 0, r0, c7, c5, 0 @ invalidate icache
- mcr p15, 0, r0, c7, c5, 6 @ invalidate BP array
- mcr p15, 0, r0, c7, c10, 4 @ DSB
- mcr p15, 0, r0, c7, c5, 4 @ ISB
+ mov r2, #0 @ set up for MCR
+ mcr p15, 0, r2, c8, c7, 0 @ invalidate TLBs
+ mcr p15, 0, r2, c7, c5, 0 @ invalidate icache
+ mcr p15, 0, r2, c7, c5, 6 @ invalidate BP array
+ mcr p15, 0, r2, c7, c10, 4 @ DSB
+ mcr p15, 0, r2, c7, c5, 4 @ ISB
/*
* disable MMU stuff and caches
*/
- mrc p15, 0, r0, c1, c0, 0
- bic r0, r0, #0x00002000 @ clear bits 13 (--V-)
- bic r0, r0, #0x00000007 @ clear bits 2:0 (-CAM)
- orr r0, r0, #0x00000002 @ set bit 1 (--A-) Align
- orr r0, r0, #0x00000800 @ set bit 11 (Z---) BTB
+ mrc p15, 0, r2, c1, c0, 0
+ bic r2, r2, #0x00002000 @ clear bits 13 (--V-)
+ bic r2, r2, #0x00000007 @ clear bits 2:0 (-CAM)
+ orr r2, r2, #0x00000002 @ set bit 1 (--A-) Align
+ orr r2, r2, #0x00000800 @ set bit 11 (Z---) BTB
#ifdef CONFIG_SYS_ICACHE_OFF
- bic r0, r0, #0x00001000 @ clear bit 12 (I) I-cache
+ bic r2, r2, #0x00001000 @ clear bit 12 (I) I-cache
#else
- orr r0, r0, #0x00001000 @ set bit 12 (I) I-cache
+ orr r2, r2, #0x00001000 @ set bit 12 (I) I-cache
#endif
- mcr p15, 0, r0, c1, c0, 0
+ mcr p15, 0, r2, c1, c0, 0
#ifdef CONFIG_ARM_ERRATA_716044
- mrc p15, 0, r0, c1, c0, 0 @ read system control register
- orr r0, r0, #1 << 11 @ set bit #11
- mcr p15, 0, r0, c1, c0, 0 @ write system control register
+ mrc p15, 0, r2, c1, c0, 0 @ read system control register
+ orr r2, r2, #1 << 11 @ set bit #11
+ mcr p15, 0, r2, c1, c0, 0 @ write system control register
#endif
#if (defined(CONFIG_ARM_ERRATA_742230) || defined(CONFIG_ARM_ERRATA_794072))
- mrc p15, 0, r0, c15, c0, 1 @ read diagnostic register
- orr r0, r0, #1 << 4 @ set bit #4
- mcr p15, 0, r0, c15, c0, 1 @ write diagnostic register
+ mrc p15, 0, r2, c15, c0, 1 @ read diagnostic register
+ orr r2, r2, #1 << 4 @ set bit #4
+ mcr p15, 0, r2, c15, c0, 1 @ write diagnostic register
#endif
#ifdef CONFIG_ARM_ERRATA_743622
- mrc p15, 0, r0, c15, c0, 1 @ read diagnostic register
- orr r0, r0, #1 << 6 @ set bit #6
- mcr p15, 0, r0, c15, c0, 1 @ write diagnostic register
+ mrc p15, 0, r2, c15, c0, 1 @ read diagnostic register
+ orr r2, r2, #1 << 6 @ set bit #6
+ mcr p15, 0, r2, c15, c0, 1 @ write diagnostic register
#endif
#ifdef CONFIG_ARM_ERRATA_751472
- mrc p15, 0, r0, c15, c0, 1 @ read diagnostic register
- orr r0, r0, #1 << 11 @ set bit #11
- mcr p15, 0, r0, c15, c0, 1 @ write diagnostic register
+ mrc p15, 0, r2, c15, c0, 1 @ read diagnostic register
+ orr r2, r2, #1 << 11 @ set bit #11
+ mcr p15, 0, r2, c15, c0, 1 @ write diagnostic register
#endif
#ifdef CONFIG_ARM_ERRATA_761320
- mrc p15, 0, r0, c15, c0, 1 @ read diagnostic register
- orr r0, r0, #1 << 21 @ set bit #21
- mcr p15, 0, r0, c15, c0, 1 @ write diagnostic register
+ mrc p15, 0, r2, c15, c0, 1 @ read diagnostic register
+ orr r2, r2, #1 << 21 @ set bit #21
+ mcr p15, 0, r2, c15, c0, 1 @ write diagnostic register
#endif
mov pc, lr @ back to my caller
--
2.2.0.rc0.207.ga3a616c
5
19

[U-Boot] [PATCH][v2] crypto/fsl - Add progressive hashing support using hardware acceleration.
by Gaurav Rana 06 Feb '15
by Gaurav Rana 06 Feb '15
06 Feb '15
Currently only normal hashing is supported using hardware acceleration.
Added support for progressinve hashing using h/w.
Signed-off-by: Ruchika Gupta <ruchika.gupta(a)freescale.com>
Signed-off-by: Gaurav Rana <gaurav.rana(a)freescale.com>
CC: Simon Glass <sjg(a)chromium.org>
---
Changes in v2:
Merge to common functions for SHA1 and SHA256.
Incorporate comments.
README | 4 ++
common/hash.c | 10 +++
drivers/crypto/fsl/fsl_hash.c | 137 +++++++++++++++++++++++++++++++++++++++++-
drivers/crypto/fsl/fsl_hash.h | 33 ++++++++++
include/fsl_sec.h | 26 ++++++++
include/hw_sha.h | 39 ++++++++++++
6 files changed, 248 insertions(+), 1 deletion(-)
create mode 100644 drivers/crypto/fsl/fsl_hash.h
diff --git a/README b/README
index cac7978..4c72baa 100644
--- a/README
+++ b/README
@@ -3151,6 +3151,10 @@ CBFS (Coreboot Filesystem) support
CONFIG_SHA1 - support SHA1 hashing
CONFIG_SHA256 - support SHA256 hashing
+ CONFIG_SHA_HW_ACCEL - support SHA1 and SHA256 hashing using
+ hardware acceleration
+ CONFIG_SHA_PROG_HW_ACCEL - support SHA1 and SHA256 progressive
+ hashing using hw acceleration
Note: There is also a sha1sum command, which should perhaps
be deprecated in favour of 'hash sha1'.
diff --git a/common/hash.c b/common/hash.c
index d154d02..9e9f84b 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -127,11 +127,21 @@ static struct hash_algo hash_algo[] = {
SHA1_SUM_LEN,
hw_sha1,
CHUNKSZ_SHA1,
+#ifdef CONFIG_SHA_PROG_HW_ACCEL
+ hw_sha_init,
+ hw_sha_update,
+ hw_sha_finish,
+#endif
}, {
"sha256",
SHA256_SUM_LEN,
hw_sha256,
CHUNKSZ_SHA256,
+#ifdef CONFIG_SHA_PROG_HW_ACCEL
+ hw_sha_init,
+ hw_sha_update,
+ hw_sha_finish,
+#endif
},
#endif
#ifdef CONFIG_SHA1
diff --git a/drivers/crypto/fsl/fsl_hash.c b/drivers/crypto/fsl/fsl_hash.c
index d77f257..65c35d7 100644
--- a/drivers/crypto/fsl/fsl_hash.c
+++ b/drivers/crypto/fsl/fsl_hash.c
@@ -10,6 +10,8 @@
#include "jobdesc.h"
#include "desc.h"
#include "jr.h"
+#include "fsl_hash.h"
+#include <hw_sha.h>
#define CRYPTO_MAX_ALG_NAME 80
#define SHA1_DIGEST_SIZE 20
@@ -39,6 +41,113 @@ static struct caam_hash_template driver_hash[] = {
},
};
+/* Create the context for progressive hashing using h/w acceleration.
+ *
+ * @ctxp: Pointer to the pointer of the context for hashing
+ * @caam_algo: Enum for SHA1 or SHA256
+ * @return 0 if ok, -ENOMEM on error
+ */
+static int caam_hash_init(void **ctxp, enum caam_hash_algos caam_algo)
+{
+ *ctxp = calloc(1, sizeof(struct sha_ctx));
+ if (*ctxp == NULL) {
+ debug("Cannot allocate memory for context\n");
+ return -ENOMEM;
+ }
+ return 0;
+}
+
+/*
+ * Update sg table for progressive hashing using h/w acceleration
+ *
+ * The context is freed by this function if an error occurs.
+ *
+ * @hash_ctx: Pointer to the context for hashing
+ * @buf: Pointer to the buffer being hashed
+ * @size: Size of the buffer being hashed
+ * @is_last: 1 if this is the last update; 0 otherwise
+ * @caam_algo: Enum for SHA1 or SHA256
+ * @return 0 if ok, -EINVAL on error
+ */
+static int caam_hash_update(void *hash_ctx, const void *buf,
+ unsigned int size, int is_last,
+ enum caam_hash_algos caam_algo)
+{
+ uint32_t final = 0;
+ dma_addr_t addr = virt_to_phys((void *)buf);
+ struct sha_ctx *ctx = hash_ctx;
+
+ if (ctx->sg_num >= MAX_SG) {
+ free(ctx);
+ return -EINVAL;
+ }
+
+#ifdef CONFIG_PHYS_64BIT
+ ctx->sg_tbl[ctx->sg_num].addr_hi = addr >> 32;
+#else
+ ctx->sg_tbl[ctx->sg_num].addr_hi = 0x0;
+#endif
+ ctx->sg_tbl[ctx->sg_num].addr_lo = addr;
+
+ sec_out32(&ctx->sg_tbl[ctx->sg_num].len_flag,
+ (size & SG_ENTRY_LENGTH_MASK));
+
+ ctx->sg_num++;
+
+ if (is_last) {
+ final = sec_in32(&ctx->sg_tbl[ctx->sg_num - 1].len_flag) |
+ SG_ENTRY_FINAL_BIT;
+ sec_out32(&ctx->sg_tbl[ctx->sg_num - 1].len_flag, final);
+ }
+
+ return 0;
+}
+
+/*
+ * Perform progressive hashing on the given buffer and copy hash at
+ * destination buffer
+ *
+ * The context is freed after completion of hash operation.
+ *
+ * @hash_ctx: Pointer to the context for hashing
+ * @dest_buf: Pointer to the destination buffer where hash is to be copied
+ * @size: Size of the buffer being hashed
+ * @caam_algo: Enum for SHA1 or SHA256
+ * @return 0 if ok, -EINVAL on error
+ */
+static int caam_hash_finish(void *hash_ctx, void *dest_buf,
+ int size, enum caam_hash_algos caam_algo)
+{
+ uint32_t len = 0;
+ struct sha_ctx *ctx = hash_ctx;
+ int i = 0, ret = 0;
+
+ if (size < driver_hash[caam_algo].digestsize) {
+ free(ctx);
+ return -EINVAL;
+ }
+
+ for (i = 0; i < ctx->sg_num; i++)
+ len += (sec_in32(&ctx->sg_tbl[i].len_flag) &
+ SG_ENTRY_LENGTH_MASK);
+
+ inline_cnstr_jobdesc_hash(ctx->sha_desc, (uint8_t *)ctx->sg_tbl, len,
+ ctx->hash,
+ driver_hash[caam_algo].alg_type,
+ driver_hash[caam_algo].digestsize,
+ 1);
+
+ ret = run_descriptor_jr(ctx->sha_desc);
+
+ if (ret)
+ debug("Error %x\n", ret);
+ else
+ memcpy(dest_buf, ctx->hash, sizeof(ctx->hash));
+
+ free(ctx);
+ return ret;
+}
+
int caam_hash(const unsigned char *pbuf, unsigned int buf_len,
unsigned char *pout, enum caam_hash_algos algo)
{
@@ -48,7 +157,7 @@ int caam_hash(const unsigned char *pbuf, unsigned int buf_len,
desc = malloc(sizeof(int) * MAX_CAAM_DESCSIZE);
if (!desc) {
debug("Not enough memory for descriptor allocation\n");
- return -1;
+ return -ENOMEM;
}
inline_cnstr_jobdesc_hash(desc, pbuf, buf_len, pout,
@@ -75,3 +184,29 @@ void hw_sha1(const unsigned char *pbuf, unsigned int buf_len,
if (caam_hash(pbuf, buf_len, pout, SHA1))
printf("CAAM was not setup properly or it is faulty\n");
}
+
+int hw_sha_init(struct hash_algo *algo, void **ctxp)
+{
+ if (!strcmp(algo->name, driver_hash[SHA1].name))
+ return caam_hash_init(ctxp, SHA1);
+ else
+ return caam_hash_init(ctxp, SHA256);
+}
+
+int hw_sha_update(struct hash_algo *algo, void *ctx, const void *buf,
+ unsigned int size, int is_last)
+{
+ if (!strcmp(algo->name, driver_hash[SHA1].name))
+ return caam_hash_update(ctx, buf, size, is_last, SHA1);
+ else
+ return caam_hash_update(ctx, buf, size, is_last, SHA256);
+}
+
+int hw_sha_finish(struct hash_algo *algo, void *ctx, void *dest_buf,
+ int size)
+{
+ if (!strcmp(algo->name, driver_hash[SHA1].name))
+ return caam_hash_finish(ctx, dest_buf, size, SHA1);
+ else
+ return caam_hash_finish(ctx, dest_buf, size, SHA256);
+}
diff --git a/drivers/crypto/fsl/fsl_hash.h b/drivers/crypto/fsl/fsl_hash.h
new file mode 100644
index 0000000..4e840e6
--- /dev/null
+++ b/drivers/crypto/fsl/fsl_hash.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2014 Freescale Semiconductor, Inc.
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ *
+ */
+
+#ifndef _SHA_H
+#define _SHA_H
+
+#include <fsl_sec.h>
+#include <hash.h>
+#include "jr.h"
+
+#define MAX_SG 16
+
+/*
+ * Hash context contains the following fields
+ * @sha_desc: Sha Descriptor
+ * @sg_num: number of entries in sg table
+ * @len: total length of buffer
+ * @sg_tbl: sg entry table
+ * @hash: index to the hash calculated
+ */
+struct sha_ctx {
+ uint32_t sha_desc[64];
+ uint32_t sg_num;
+ uint32_t len;
+ struct sg_entry sg_tbl[MAX_SG];
+ u8 hash[HASH_MAX_DIGEST_SIZE];
+};
+
+#endif
diff --git a/include/fsl_sec.h b/include/fsl_sec.h
index aa850a3..b6e6f04 100644
--- a/include/fsl_sec.h
+++ b/include/fsl_sec.h
@@ -175,6 +175,32 @@ struct jr_regs {
u32 jrcr;
};
+/*
+ * Scatter Gather Entry - Specifies the the Scatter Gather Format
+ * related information
+ */
+struct sg_entry {
+#ifdef CONFIG_SYS_FSL_SEC_LE
+ uint32_t addr_lo; /* Memory Address - lo */
+ uint16_t addr_hi; /* Memory Address of start of buffer - hi */
+ uint16_t reserved_zero;
+#else
+ uint16_t reserved_zero;
+ uint16_t addr_hi; /* Memory Address of start of buffer - hi */
+ uint32_t addr_lo; /* Memory Address - lo */
+#endif
+
+ uint32_t len_flag; /* Length of the data in the frame */
+#define SG_ENTRY_LENGTH_MASK 0x3FFFFFFF
+#define SG_ENTRY_EXTENSION_BIT 0x80000000
+#define SG_ENTRY_FINAL_BIT 0x40000000
+ uint32_t bpid_offset;
+#define SG_ENTRY_BPID_MASK 0x00FF0000
+#define SG_ENTRY_BPID_SHIFT 16
+#define SG_ENTRY_OFFSET_MASK 0x00001FFF
+#define SG_ENTRY_OFFSET_SHIFT 0
+};
+
int sec_init(void);
#endif
diff --git a/include/hw_sha.h b/include/hw_sha.h
index 783350d..3d8213e 100644
--- a/include/hw_sha.h
+++ b/include/hw_sha.h
@@ -34,4 +34,43 @@ void hw_sha256(const uchar * in_addr, uint buflen,
*/
void hw_sha1(const uchar * in_addr, uint buflen,
uchar * out_addr, uint chunk_size);
+
+/*
+ * Create the context for sha progressive hashing using h/w acceleration
+ *
+ * @algo: Pointer to the hash_algo struct
+ * @ctxp: Pointer to the pointer of the context for hashing
+ * @return 0 if ok, -ve on error
+ */
+int hw_sha_init(struct hash_algo *algo, void **ctxp);
+
+/*
+ * Update buffer for sha progressive hashing using h/w acceleration
+ *
+ * The context is freed by this function if an error occurs.
+ *
+ * @algo: Pointer to the hash_algo struct
+ * @ctx: Pointer to the context for hashing
+ * @buf: Pointer to the buffer being hashed
+ * @size: Size of the buffer being hashed
+ * @is_last: 1 if this is the last update; 0 otherwise
+ * @return 0 if ok, -ve on error
+ */
+int hw_sha_update(struct hash_algo *algo, void *ctx, const void *buf,
+ unsigned int size, int is_last);
+
+/*
+ * Copy sha hash result at destination location
+ *
+ * The context is freed after completion of hash operation or after an error.
+ *
+ * @algo: Pointer to the hash_algo struct
+ * @ctx: Pointer to the context for hashing
+ * @dest_buf: Pointer to the destination buffer where hash is to be copied
+ * @size: Size of the buffer being hashed
+ * @return 0 if ok, -ve on error
+ */
+int hw_sha_finish(struct hash_algo *algo, void *ctx, void *dest_buf,
+ int size);
+
#endif
--
1.8.1.4
2
1

06 Feb '15
This adds driver model support with this driver. This was tested by Koelsch
board and Gose board.
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj(a)renesas.com>
Acked-by: Simon Glass <sjg(a)chromium.org>
---
V4: Fix build with SH.
V3: Add function of checking -EAGAIN without DM.
V2: Fix loop for tx fifo and tx fifo.
Fix write return code writing with DM.
drivers/serial/serial_sh.c | 323 ++++++++++++++++++++++++-----------
drivers/serial/serial_sh.h | 10 +-
include/dm/platform_data/serial_sh.h | 37 ++++
3 files changed, 262 insertions(+), 108 deletions(-)
create mode 100644 include/dm/platform_data/serial_sh.h
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index 7c1f271..9e1e3a2 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -1,78 +1,21 @@
/*
* SuperH SCIF device driver.
* Copyright (C) 2013 Renesas Electronics Corporation
- * Copyright (C) 2007,2008,2010 Nobuhiro Iwamatsu
+ * Copyright (C) 2007,2008,2010, 2014 Nobuhiro Iwamatsu
* Copyright (C) 2002 - 2008 Paul Mundt
*
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
+#include <errno.h>
+#include <dm.h>
#include <asm/io.h>
#include <asm/processor.h>
-#include "serial_sh.h"
#include <serial.h>
#include <linux/compiler.h>
-
-#if defined(CONFIG_CONS_SCIF0)
-# define SCIF_BASE SCIF0_BASE
-#elif defined(CONFIG_CONS_SCIF1)
-# define SCIF_BASE SCIF1_BASE
-#elif defined(CONFIG_CONS_SCIF2)
-# define SCIF_BASE SCIF2_BASE
-#elif defined(CONFIG_CONS_SCIF3)
-# define SCIF_BASE SCIF3_BASE
-#elif defined(CONFIG_CONS_SCIF4)
-# define SCIF_BASE SCIF4_BASE
-#elif defined(CONFIG_CONS_SCIF5)
-# define SCIF_BASE SCIF5_BASE
-#elif defined(CONFIG_CONS_SCIF6)
-# define SCIF_BASE SCIF6_BASE
-#elif defined(CONFIG_CONS_SCIF7)
-# define SCIF_BASE SCIF7_BASE
-#else
-# error "Default SCIF doesn't set....."
-#endif
-
-#if defined(CONFIG_SCIF_A)
- #define SCIF_BASE_PORT PORT_SCIFA
-#else
- #define SCIF_BASE_PORT PORT_SCIF
-#endif
-
-static struct uart_port sh_sci = {
- .membase = (unsigned char*)SCIF_BASE,
- .mapbase = SCIF_BASE,
- .type = SCIF_BASE_PORT,
-};
-
-static void sh_serial_setbrg(void)
-{
- DECLARE_GLOBAL_DATA_PTR;
-#ifdef CONFIG_SCIF_USE_EXT_CLK
- unsigned short dl = DL_VALUE(gd->baudrate, CONFIG_SH_SCIF_CLK_FREQ);
- sci_out(&sh_sci, DL, dl);
- /* Need wait: Clock * 1/dl $B!_(B 1/16 */
- udelay((1000000 * dl * 16 / CONFIG_SYS_CLK_FREQ) * 1000 + 1);
-#else
- sci_out(&sh_sci, SCBRR,
- SCBRR_VALUE(gd->baudrate, CONFIG_SH_SCIF_CLK_FREQ));
-#endif
-}
-
-static int sh_serial_init(void)
-{
- sci_out(&sh_sci, SCSCR , SCSCR_INIT(&sh_sci));
- sci_out(&sh_sci, SCSCR , SCSCR_INIT(&sh_sci));
- sci_out(&sh_sci, SCSMR, 0);
- sci_out(&sh_sci, SCSMR, 0);
- sci_out(&sh_sci, SCFCR, SCFCR_RFRST|SCFCR_TFRST);
- sci_in(&sh_sci, SCFCR);
- sci_out(&sh_sci, SCFCR, 0);
-
- serial_setbrg();
- return 0;
-}
+#include <dm/platform_data/serial_sh.h>
+#include "serial_sh.h"
#if defined(CONFIG_CPU_SH7760) || \
defined(CONFIG_CPU_SH7780) || \
@@ -86,7 +29,7 @@ static int scif_rxfill(struct uart_port *port)
static int scif_rxfill(struct uart_port *port)
{
if ((port->mapbase == 0xffe00000) ||
- (port->mapbase == 0xffe08000)) {
+ (port->mapbase == 0xffe08000)) {
/* SCIF0/1*/
return sci_in(port, SCRFDR) & 0xff;
} else {
@@ -109,80 +52,255 @@ static int scif_rxfill(struct uart_port *port)
}
#endif
-static int serial_rx_fifo_level(void)
+static void sh_serial_init_generic(struct uart_port *port)
{
- return scif_rxfill(&sh_sci);
+ sci_out(port, SCSCR , SCSCR_INIT(port));
+ sci_out(port, SCSCR , SCSCR_INIT(port));
+ sci_out(port, SCSMR, 0);
+ sci_out(port, SCSMR, 0);
+ sci_out(port, SCFCR, SCFCR_RFRST|SCFCR_TFRST);
+ sci_in(port, SCFCR);
+ sci_out(port, SCFCR, 0);
}
-static void handle_error(void)
+static void
+sh_serial_setbrg_generic(struct uart_port *port, int clk, int baudrate)
{
- sci_in(&sh_sci, SCxSR);
- sci_out(&sh_sci, SCxSR, SCxSR_ERROR_CLEAR(&sh_sci));
- sci_in(&sh_sci, SCLSR);
- sci_out(&sh_sci, SCLSR, 0x00);
+#if defined(CONFIG_R8A7790) || defined(CONFIG_R8A7791) || \
+ defined(CONFIG_R8A7793) || defined(CONFIG_R8A7794)
+ if (port->clk_mode == EXT_CLK) {
+ unsigned short dl = DL_VALUE(baudrate, clk);
+ sci_out(port, DL, dl);
+ /* Need wait: Clock * 1/dl $B!_(B 1/16 */
+ udelay((1000000 * dl * 16 / clk) * 1000 + 1);
+ } else
+#endif
+ sci_out(port, SCBRR, SCBRR_VALUE(baudrate, clk));
}
-static void serial_raw_putc(const char c)
+static void handle_error(struct uart_port *port)
{
- while (1) {
- /* Tx fifo is empty */
- if (sci_in(&sh_sci, SCxSR) & SCxSR_TEND(&sh_sci))
- break;
- }
+ sci_in(port, SCxSR);
+ sci_out(port, SCxSR, SCxSR_ERROR_CLEAR(port));
+ sci_in(port, SCLSR);
+ sci_out(port, SCLSR, 0x00);
+}
+
+static int serial_raw_putc(struct uart_port *port, const char c)
+{
+ /* Tx fifo is empty */
+ if (!(sci_in(port, SCxSR) & SCxSR_TEND(port)))
+ return -EAGAIN;
- sci_out(&sh_sci, SCxTDR, c);
- sci_out(&sh_sci, SCxSR, sci_in(&sh_sci, SCxSR) & ~SCxSR_TEND(&sh_sci));
+ sci_out(port, SCxTDR, c);
+ sci_out(port, SCxSR, sci_in(port, SCxSR) & ~SCxSR_TEND(port));
+
+ return 0;
}
-static void sh_serial_putc(const char c)
+static int serial_rx_fifo_level(struct uart_port *port)
{
- if (c == '\n')
- serial_raw_putc('\r');
- serial_raw_putc(c);
+ return scif_rxfill(port);
}
-static int sh_serial_tstc(void)
+static int sh_serial_tstc_generic(struct uart_port *port)
{
- if (sci_in(&sh_sci, SCxSR) & SCIF_ERRORS) {
- handle_error();
+ if (sci_in(port, SCxSR) & SCIF_ERRORS) {
+ handle_error(port);
return 0;
}
- return serial_rx_fifo_level() ? 1 : 0;
+ return serial_rx_fifo_level(port) ? 1 : 0;
}
-
-static int serial_getc_check(void)
+static int serial_getc_check(struct uart_port *port)
{
unsigned short status;
- status = sci_in(&sh_sci, SCxSR);
+ status = sci_in(port, SCxSR);
if (status & SCIF_ERRORS)
- handle_error();
- if (sci_in(&sh_sci, SCLSR) & SCxSR_ORER(&sh_sci))
- handle_error();
- return status & (SCIF_DR | SCxSR_RDxF(&sh_sci));
+ handle_error(port);
+ if (sci_in(port, SCLSR) & SCxSR_ORER(port))
+ handle_error(port);
+ return status & (SCIF_DR | SCxSR_RDxF(port));
}
-static int sh_serial_getc(void)
+static int sh_serial_getc_generic(struct uart_port *port)
{
unsigned short status;
char ch;
- while (!serial_getc_check())
- ;
+ if (!serial_getc_check(port))
+ return -EAGAIN;
- ch = sci_in(&sh_sci, SCxRDR);
- status = sci_in(&sh_sci, SCxSR);
+ ch = sci_in(port, SCxRDR);
+ status = sci_in(port, SCxSR);
- sci_out(&sh_sci, SCxSR, SCxSR_RDxF_CLEAR(&sh_sci));
+ sci_out(port, SCxSR, SCxSR_RDxF_CLEAR(port));
if (status & SCIF_ERRORS)
- handle_error();
+ handle_error(port);
+
+ if (sci_in(port, SCLSR) & SCxSR_ORER(port))
+ handle_error(port);
+
+ return ch;
+}
+
+#ifdef CONFIG_DM_SERIAL
+
+static int sh_serial_pending(struct udevice *dev, bool input)
+{
+ struct uart_port *priv = dev_get_priv(dev);
+
+ return sh_serial_tstc_generic(priv);
+}
+
+static int sh_serial_putc(struct udevice *dev, const char ch)
+{
+ struct uart_port *priv = dev_get_priv(dev);
+
+ return serial_raw_putc(priv, ch);
+}
+
+static int sh_serial_getc(struct udevice *dev)
+{
+ struct uart_port *priv = dev_get_priv(dev);
+
+ return sh_serial_getc_generic(priv);
+}
+
+static int sh_serial_setbrg(struct udevice *dev, int baudrate)
+{
+ struct sh_serial_platdata *plat = dev_get_platdata(dev);
+ struct uart_port *priv = dev_get_priv(dev);
+
+ sh_serial_setbrg_generic(priv, plat->clk, baudrate);
+
+ return 0;
+}
+
+static int sh_serial_probe(struct udevice *dev)
+{
+ struct sh_serial_platdata *plat = dev_get_platdata(dev);
+ struct uart_port *priv = dev_get_priv(dev);
+
+ priv->membase = (unsigned char *)plat->base;
+ priv->mapbase = plat->base;
+ priv->type = plat->type;
+ priv->clk_mode = plat->clk_mode;
+
+ sh_serial_init_generic(priv);
+
+ return 0;
+}
+
+static const struct dm_serial_ops sh_serial_ops = {
+ .putc = sh_serial_putc,
+ .pending = sh_serial_pending,
+ .getc = sh_serial_getc,
+ .setbrg = sh_serial_setbrg,
+};
+
+U_BOOT_DRIVER(serial_sh) = {
+ .name = "serial_sh",
+ .id = UCLASS_SERIAL,
+ .probe = sh_serial_probe,
+ .ops = &sh_serial_ops,
+ .flags = DM_FLAG_PRE_RELOC,
+ .priv_auto_alloc_size = sizeof(struct uart_port),
+};
+
+#else /* CONFIG_DM_SERIAL */
+
+#if defined(CONFIG_CONS_SCIF0)
+# define SCIF_BASE SCIF0_BASE
+#elif defined(CONFIG_CONS_SCIF1)
+# define SCIF_BASE SCIF1_BASE
+#elif defined(CONFIG_CONS_SCIF2)
+# define SCIF_BASE SCIF2_BASE
+#elif defined(CONFIG_CONS_SCIF3)
+# define SCIF_BASE SCIF3_BASE
+#elif defined(CONFIG_CONS_SCIF4)
+# define SCIF_BASE SCIF4_BASE
+#elif defined(CONFIG_CONS_SCIF5)
+# define SCIF_BASE SCIF5_BASE
+#elif defined(CONFIG_CONS_SCIF6)
+# define SCIF_BASE SCIF6_BASE
+#elif defined(CONFIG_CONS_SCIF7)
+# define SCIF_BASE SCIF7_BASE
+#else
+# error "Default SCIF doesn't set....."
+#endif
+
+#if defined(CONFIG_SCIF_A)
+ #define SCIF_BASE_PORT PORT_SCIFA
+#else
+ #define SCIF_BASE_PORT PORT_SCIF
+#endif
+
+static struct uart_port sh_sci = {
+ .membase = (unsigned char *)SCIF_BASE,
+ .mapbase = SCIF_BASE,
+ .type = SCIF_BASE_PORT,
+#ifdef CONFIG_SCIF_USE_EXT_CLK
+ .clk_mode = EXT_CLK,
+#endif
+};
+
+static void sh_serial_setbrg(void)
+{
+ DECLARE_GLOBAL_DATA_PTR;
+ struct uart_port *port = &sh_sci;
+
+ sh_serial_setbrg_generic(port, CONFIG_SH_SCIF_CLK_FREQ, gd->baudrate);
+}
+
+static int sh_serial_init(void)
+{
+ struct uart_port *port = &sh_sci;
+
+ sh_serial_init_generic(port);
+ serial_setbrg();
+
+ return 0;
+}
+
+static void sh_serial_putc(const char c)
+{
+ struct uart_port *port = &sh_sci;
+
+ if (c == '\n') {
+ while (1) {
+ if (serial_raw_putc(port, '\r') != -EAGAIN)
+ break;
+ }
+ }
+ while (1) {
+ if (serial_raw_putc(port, c) != -EAGAIN)
+ break;
+ }
+}
+
+static int sh_serial_tstc(void)
+{
+ struct uart_port *port = &sh_sci;
+
+ return sh_serial_tstc_generic(port);
+}
+
+static int sh_serial_getc(void)
+{
+ struct uart_port *port = &sh_sci;
+ int ch;
+
+ while (1) {
+ ch = sh_serial_getc_generic(port);
+ if (ch != -EAGAIN)
+ break;
+ }
- if (sci_in(&sh_sci, SCLSR) & SCxSR_ORER(&sh_sci))
- handle_error();
return ch;
}
@@ -206,3 +324,4 @@ __weak struct serial_device *default_serial_console(void)
{
return &sh_serial_drv;
}
+#endif /* CONFIG_DM_SERIAL */
diff --git a/drivers/serial/serial_sh.h b/drivers/serial/serial_sh.h
index ef88c8f..4b6199a 100644
--- a/drivers/serial/serial_sh.h
+++ b/drivers/serial/serial_sh.h
@@ -2,18 +2,16 @@
* Copy and modify from linux/drivers/serial/sh-sci.h
*/
+#include <dm/platform_data/serial_sh.h>
+
struct uart_port {
unsigned long iobase; /* in/out[bwl] */
unsigned char *membase; /* read/write[bwl] */
unsigned long mapbase; /* for ioremap */
- unsigned int type; /* port type */
+ enum sh_serial_type type; /* port type */
+ enum sh_clk_mode clk_mode; /* clock mode */
};
-#define PORT_SCI 52
-#define PORT_SCIF 53
-#define PORT_SCIFA 83
-#define PORT_SCIFB 93
-
#if defined(CONFIG_H83007) || defined(CONFIG_H83068)
#include <asm/regs306x.h>
#endif
diff --git a/include/dm/platform_data/serial_sh.h b/include/dm/platform_data/serial_sh.h
new file mode 100644
index 0000000..0271ad6
--- /dev/null
+++ b/include/dm/platform_data/serial_sh.h
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2014 Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj(a)renesas.com>
+ * Copyright (c) 2014 Renesas Electronics Corporation
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#ifndef __serial_sh_h
+#define __serial_sh_h
+
+enum sh_clk_mode {
+ INT_CLK,
+ EXT_CLK,
+};
+
+enum sh_serial_type {
+ PORT_SCI,
+ PORT_SCIF,
+ PORT_SCIFA,
+ PORT_SCIFB,
+};
+
+/*
+ * Information about SCIF port
+ *
+ * @base: Register base address
+ * @clk: Input clock rate, used for calculating the baud rate divisor
+ * @clk_mode: Clock mode, set internal (INT) or external (EXT)
+ * @type: Type of SCIF
+ */
+struct sh_serial_platdata {
+ unsigned long base;
+ unsigned int clk;
+ enum sh_clk_mode clk_mode;
+ enum sh_serial_type type;
+};
+#endif /* __serial_sh_h */
--
2.1.1
2
3
This patch set adds i.MX6 thermal sensor driver
and enables it for mx6sabre boards. Also adds
various anadig bit definitions as required for
upcoming drivers.
Changes in v7:
-Convert the imx thermal driver to DM.
-Enable DM drivers for mx6sabre boards.
Changes in v6:
-Aligned imx thermal driver macro defines with kernel
Changes in v5:
-Don't modify the copyright of cpu.c and crm_regs.h file
Changes in v4:
-Added imx6 thermal sensor as a driver
-Renamed the config define to be more meaningful
-Move the clock code to clock.c
-Reusing ocotp driver for reading fuse
-Fix check for calibration fuse not programmed
-Aligned the slope computation with kernel
-Added Anadig register defines as seperate commit
Changes in v3:
-adds the mx6 thermal driver support
-adds the mx6 thermal support to mx6sabresd board.
Changes in v2:
-run checkpatch and fix reported issues
Nitin Garg (1):
mx6: clock: Add thermal clock enable function
Ye.Li (3):
DM: thermal: Add imx thermal DM driver
mx6: thermal: Check cpu temperature via thermal sensor
mx6: mx6sabre common: Enable i.MX thermal DM driver
arch/arm/cpu/armv7/mx6/clock.c | 30 ++++++
arch/arm/cpu/armv7/mx6/soc.c | 15 +++
arch/arm/imx-common/cpu.c | 21 ++++
arch/arm/include/asm/arch-mx6/clock.h | 1 +
drivers/Makefile | 1 +
drivers/thermal/Makefile | 9 ++
drivers/thermal/imx_thermal.c | 177 +++++++++++++++++++++++++++++++++
drivers/thermal/thermal-uclass.c | 30 ++++++
include/configs/mx6sabre_common.h | 7 +-
include/dm/uclass-id.h | 1 +
include/imx_thermal.h | 17 +++
include/thermal.h | 42 ++++++++
12 files changed, 350 insertions(+), 1 deletions(-)
create mode 100644 drivers/thermal/Makefile
create mode 100644 drivers/thermal/imx_thermal.c
create mode 100644 drivers/thermal/thermal-uclass.c
create mode 100644 include/imx_thermal.h
create mode 100644 include/thermal.h
--
1.7.4.1
3
10
Dear all,
I have already used u-boot several times on various ARM-based platforms but I need to go to unknown territories this time.
On an ARM-based platform again, we have a u-boot port (v2010.09) available loaded by a ROM bootloader into the internal RAM.
For some reasons, the ROM bootloader limits the size of the loaded code to 128kB which is a bit short for the functionality needed.
What I'd like to do is have the already available u-boot (say Level-1) to load a second u-boot (say Level-2) into DDR where size is not an issue which will then load Linux.
For the Level-1, I haven't changed anything for now. I'm still using the Linux kernel load address.
For the Level-2, I have found the following interesting configuration flags:
CONFIG_SKIP_LOWLEVEL_INIT -> to suppress the CPU & external RAM initialization that is already done by Level-1
CONFIG_SKIP_RELOCATE_UBOOT -> to avoid the relocation that was not looking interesting in the scope of a Level-2 but is that correct?
TEXT_BASE -> modified to match the kernel load address used in Level-1
I have constructed my Level-2 U-boot image using the same kind of commands as for my kernel but specifying Firmware type
./u-boot/tools/mkimage -A arm -O U-boot -T Firmware -C none -a 70008000 -e 70008000 -n 'u-boot L2' -d ./u-boot/u-boot.bin ./u-boot/u-boot.uImage
When I try to run the loaded Level-2, my board freezes.
I've also tried to hack the bootm command so that my Firmware image is seen as a stand-alone application so that it runs it directly without the cleanup stuff but that does not work either.
Before I go on debug this intensively, I just want to make sure I've not missed something very obvious in the process?
Thanks in advance,
JC
3
2
Dear all,
I am trying to write a file to SD card in spl_mmc.c. During compilation
gcc moans: undefined reference 'file_fat_write'. I don't understand why.
Directly after the (original) code in mmc_load_image_fat():
err = file_fat_read(payloadname,
(u8 *)spl_image.load_addr, 0);
I insert the following code:
file_fat_write("foo", "foo", 3);
Why doesn't gcc know this function as it is also declared in
include/fat.h just as file_fat_read() is?
Did someone manage to write to fat out of the SPL?
Best,
André
1
0
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 02/02/2015 01:19 AM, Heiko Schocher wrote:
> Hello Tom,
>
> please pull from u-boot-ubi.git
>
> The following changes since commit
> ab92da9f47d51d363c7de42e2a7bd807e2c1bd54:
>
> Merge branch 'master' of git://git.denx.de/u-boot-x86 (2015-01-26
> 17:44:49 -0500)
>
> are available in the git repository at:
>
> git://git.denx.de/u-boot-ubi.git master
>
> for you to fetch changes up to 040cc7b3beedecd971274a065564e39aac7fc76e:
>
> ubifs: Enable journal replay during mount (2015-01-29 09:34:03 +0100)
>
> ----------------------------------------------------------------
> Anton Habegger (2):
> ubifs: Import atomic_long operations from Linux
> ubifs: Enable journal replay during mount
>
> Heiko Schocher (1):
> ubi: reset mtd_devs when ubi part fail
>
> drivers/mtd/ubi/build.c | 8 ++
> fs/ubifs/Makefile | 2 +-
> fs/ubifs/gc.c | 976
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
> fs/ubifs/replay.c | 4 -
> fs/ubifs/super.c | 8 +-
> fs/ubifs/tnc.c | 2 -
> fs/ubifs/ubifs.c | 6 +
> fs/ubifs/ubifs.h | 12 +-
> include/asm-generic/atomic-long.h | 260
> +++++++++++++++++++++++++++++++++++++++
> include/linux/compat.h | 1 -
> 10 files changed, 1254 insertions(+), 25 deletions(-)
> create mode 100644 fs/ubifs/gc.c
> create mode 100644 include/asm-generic/atomic-long.h
Applied to u-boot/master, thanks!
- --
Tom
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQIcBAEBAgAGBQJU03diAAoJENk4IS6UOR1WHjoP/Rcyp3J2xzxAjatjbpG6Au0R
DqrECIzk9G5nReBadn83Y7MSzJ3VHWLgNZrTYa/b3B5KIAWCfzNUYWcRPX3CRaSb
v0tfazdAeNNuzvJe2+WKaJvx9vShBRfJiqPeqxhfPdeC1lqQaUzMBBlO7F8nyyi6
z15ALiqsjNwouirw5UJFPWOIA7j3j2BWATTtF+dpX1aPAuxIgdlUqko91PEKaVJX
/XGNmHO6AVVuQR7QV/w3DppPvTvyTnJ7GRJD1BQP2nxgh+q0WVL10AP30Zb7E0MX
6ghNcfl3pp9OHlrKekWwmRuxYUHSd0AujJxtanhK4Wjh9pUT4Mhm04OP/fAb/1Nd
VvKvD37cwVnV6j0plMLu1kDlQu7twjG2CNplj4I5MxekjzkMiwIidVQT3JMWCWRy
iRODOrsztK6ZLdYJ1zpO7FGAQlor62tBH2Au2bkjTun6EMwHU3ezJAacIH/CEXFv
SAtkq4qSoX8hg+dbYEyUYlKDKutaAUrX2iIa7oIMFaXPRRtCNwYMh2AIWikuemtm
KcYcx437N5mUHs87T9a4PaoWQQJXcqYbIgQWwduZHuNNBVsMb8kUWhERPMdRfrmg
d5BmAMNsmLD1q/aBlU9CsbENAAJSRYzmqwmrk7AH4pY9OKeJRMUtE7oH26eynUs0
XHon98hKLUnyuL1/e1sQ
=UH0H
-----END PGP SIGNATURE-----
1
0
Hi all,
during the execution of th MLO I create a variable, whose value I want
to make accessible to user space applications in Android. How can this
be achieved?
One way would be to write the contents of the variable to external
memory and let it read by the user space process. However, I would need
to make sure that during boot no other process is overwriting the address.
Do you know of any other ways?
Best,
André
3
3

[U-Boot] [RFC PATCH 0/21] ARM: start to move SoC code into arch/arm/mach-*
by Masahiro Yamada 05 Feb '15
by Masahiro Yamada 05 Feb '15
05 Feb '15
This series can be applied on the current u-boot/master
(commit 37b608a52dcb133)
Buildman test passed.
$ tools/buildman/buildman -s -b mach arm
boards.cfg is up to date. Nothing to do.
Summary of 22 commits for 474 boards (8 threads, 1 job per thread)
01: powerpc: remove icecube_5200, Lite5200, cpci5200, mecp5200, pf5200
arm: + openrd_base s5pc210_universal maxbcm odroid smdkv310 snow openrd_ultimate smdk5250 peach-pi openrd_client smdk5420 origen odroid-xu3 db-mv784mp-gp trats arndale peach-pit trats2
02: ARM: at91: move board select menu and common settings
03: ARM: prepare for moving SoC sources into mach-*
04: ARM: at91: collect SoC sources into mach-at91
05: ARM: tegra: collect SoC sources into mach-tegra
06: ARM: UniPhier: move SoC sources to mach-uniphier
07: ARM: davinci: move SoC sources to mach-davinci
08: ARM: kirkwood: move SOC sources to mach-kirkwood
09: ARM: nomadik: move SoC sources to mach-nomadik
10: ARM: highbank: move SoC sources to mach-highbank
11: ARM: orion5x: move SoC sources to mach-orion5x
12: ARM: versatile: move SoC sources to mach-versatile
13: ARM: keystone: move SoC sources to mach-keystone
14: kbuild: prepare for moving headers into mach-*/include/mach
15: ARM: at91: move SoC headers to mach-at91/include/mach
16: ARM: UniPhier: move SoC headers to mach-uniphier/include/mach
17: ARM: davinci: move SoC headers to mach-davinci/include/mach
18: ARM: kirkwood: move SoC headers to mach-kirkwood/include/mach
19: ARM: nomadik: move SoC headers to mach-nomadik/include/mach
20: ARM: orion5x: move SoC headers to mach-orion5x/include/mach
21: ARM: keystone: move SoC headers to mach-keystone/include/mach
22: ARM: prepare for including <mach/*.h>
Masahiro Yamada (21):
ARM: at91: move board select menu and common settings
ARM: prepare for moving SoC sources into mach-*
ARM: at91: collect SoC sources into mach-at91
ARM: tegra: collect SoC sources into mach-tegra
ARM: UniPhier: move SoC sources to mach-uniphier
ARM: davinci: move SoC sources to mach-davinci
ARM: kirkwood: move SOC sources to mach-kirkwood
ARM: nomadik: move SoC sources to mach-nomadik
ARM: highbank: move SoC sources to mach-highbank
ARM: orion5x: move SoC sources to mach-orion5x
ARM: versatile: move SoC sources to mach-versatile
ARM: keystone: move SoC sources to mach-keystone
kbuild: prepare for moving headers into mach-*/include/mach
ARM: at91: move SoC headers to mach-at91/include/mach
ARM: UniPhier: move SoC headers to mach-uniphier/include/mach
ARM: davinci: move SoC headers to mach-davinci/include/mach
ARM: kirkwood: move SoC headers to mach-kirkwood/include/mach
ARM: nomadik: move SoC headers to mach-nomadik/include/mach
ARM: orion5x: move SoC headers to mach-orion5x/include/mach
ARM: keystone: move SoC headers to mach-keystone/include/mach
ARM: prepare for including <mach/*.h>
MAINTAINERS | 14 +-
arch/arm/Kconfig | 175 ++-------------------
arch/arm/Makefile | 25 +++
arch/arm/cpu/Makefile | 7 +-
arch/arm/cpu/arm720t/Makefile | 6 -
arch/arm/cpu/arm720t/tegra-common/Makefile | 11 --
arch/arm/cpu/arm720t/tegra114/Makefile | 21 ---
arch/arm/cpu/arm720t/tegra124/Makefile | 8 -
arch/arm/cpu/arm720t/tegra20/Makefile | 10 --
arch/arm/cpu/arm720t/tegra30/Makefile | 20 ---
arch/arm/cpu/arm920t/Makefile | 1 -
arch/arm/cpu/arm926ejs/Makefile | 6 -
arch/arm/cpu/arm926ejs/at91/config.mk | 2 -
arch/arm/cpu/armv7/Makefile | 6 -
arch/arm/cpu/armv7/at91/config.mk | 8 -
arch/arm/cpu/armv7/tegra-common/Makefile | 10 --
arch/arm/cpu/armv7/tegra20/Makefile | 11 --
arch/arm/mach-at91/Kconfig | 166 +++++++++++++++++++
arch/arm/{cpu/at91-common => mach-at91}/Makefile | 14 +-
.../arm920t/at91 => mach-at91/arm920t}/Makefile | 0
.../arm920t}/at91rm9200_devices.c | 0
.../arm920t/at91 => mach-at91/arm920t}/clock.c | 0
.../{cpu/arm920t/at91 => mach-at91/arm920t}/cpu.c | 0
.../at91 => mach-at91/arm920t}/lowlevel_init.S | 0
.../arm920t/at91 => mach-at91/arm920t}/reset.c | 0
.../arm920t/at91 => mach-at91/arm920t}/timer.c | 0
.../at91 => mach-at91/arm926ejs}/Makefile | 0
.../arm926ejs}/at91cap9_devices.c | 0
.../arm926ejs}/at91sam9260_devices.c | 0
.../arm926ejs}/at91sam9261_devices.c | 0
.../arm926ejs}/at91sam9263_devices.c | 0
.../arm926ejs}/at91sam9m10g45_devices.c | 0
.../arm926ejs}/at91sam9n12_devices.c | 0
.../arm926ejs}/at91sam9rl_devices.c | 0
.../arm926ejs}/at91sam9x5_devices.c | 0
.../arm926ejs/at91 => mach-at91/arm926ejs}/clock.c | 0
.../arm926ejs/at91 => mach-at91/arm926ejs}/cpu.c | 0
.../at91 => mach-at91/arm926ejs}/eflash.c | 0
.../arm926ejs/at91 => mach-at91/arm926ejs}/led.c | 0
.../at91 => mach-at91/arm926ejs}/lowlevel_init.S | 0
.../arm926ejs/at91 => mach-at91/arm926ejs}/reset.c | 0
.../arm926ejs/at91 => mach-at91/arm926ejs}/timer.c | 0
.../{cpu/armv7/at91 => mach-at91/armv7}/Makefile | 0
.../{cpu/armv7/at91 => mach-at91/armv7}/clock.c | 0
arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/cpu.c | 0
.../{cpu/armv7/at91 => mach-at91/armv7}/reset.c | 0
.../at91 => mach-at91/armv7}/sama5d3_devices.c | 0
.../at91 => mach-at91/armv7}/sama5d4_devices.c | 0
.../{cpu/armv7/at91 => mach-at91/armv7}/timer.c | 0
arch/arm/mach-at91/config.mk | 9 ++
.../include/mach}/at91_common.h | 0
.../include/mach}/at91_dbu.h | 0
.../include/mach}/at91_eefc.h | 0
.../include/mach}/at91_emac.h | 0
.../include/mach}/at91_gpbr.h | 0
.../include/mach}/at91_matrix.h | 0
.../arch-at91 => mach-at91/include/mach}/at91_mc.h | 0
.../include/mach}/at91_pdc.h | 0
.../include/mach}/at91_pio.h | 0
.../include/mach}/at91_pit.h | 0
.../include/mach}/at91_pmc.h | 0
.../include/mach}/at91_rstc.h | 0
.../include/mach}/at91_rtt.h | 0
.../include/mach}/at91_spi.h | 0
.../arch-at91 => mach-at91/include/mach}/at91_st.h | 0
.../arch-at91 => mach-at91/include/mach}/at91_tc.h | 0
.../include/mach}/at91_wdt.h | 0
.../include/mach}/at91cap9.h | 0
.../include/mach}/at91cap9_matrix.h | 0
.../include/mach}/at91rm9200.h | 0
.../include/mach}/at91sam9260.h | 0
.../include/mach}/at91sam9260_matrix.h | 0
.../include/mach}/at91sam9261.h | 0
.../include/mach}/at91sam9261_matrix.h | 0
.../include/mach}/at91sam9263.h | 0
.../include/mach}/at91sam9263_matrix.h | 0
.../include/mach}/at91sam9_matrix.h | 0
.../include/mach}/at91sam9_sdramc.h | 0
.../include/mach}/at91sam9_smc.h | 0
.../include/mach}/at91sam9g45.h | 0
.../include/mach}/at91sam9g45_matrix.h | 0
.../include/mach}/at91sam9rl.h | 0
.../include/mach}/at91sam9rl_matrix.h | 0
.../include/mach}/at91sam9x5.h | 0
.../include/mach}/at91sam9x5_matrix.h | 0
.../include/mach}/atmel_mpddrc.h | 0
.../include/mach}/atmel_serial.h | 0
.../include/mach}/atmel_usba_udc.h | 0
.../asm/arch-at91 => mach-at91/include/mach}/clk.h | 0
.../arch-at91 => mach-at91/include/mach}/gpio.h | 0
.../include/mach}/hardware.h | 0
.../arch-at91 => mach-at91/include/mach}/sama5d3.h | 0
.../include/mach}/sama5d3_smc.h | 0
.../arch-at91 => mach-at91/include/mach}/sama5d4.h | 0
arch/arm/{cpu/at91-common => mach-at91}/mpddrc.c | 0
arch/arm/{cpu/at91-common => mach-at91}/phy.c | 0
arch/arm/{cpu/at91-common => mach-at91}/sdram.c | 0
arch/arm/{cpu/at91-common => mach-at91}/spl.c | 0
arch/arm/{cpu/at91-common => mach-at91}/spl_at91.c | 0
.../arm/{cpu/at91-common => mach-at91}/spl_atmel.c | 0
.../{cpu/at91-common => mach-at91}/u-boot-spl.lds | 0
.../arm926ejs/davinci => mach-davinci}/Kconfig | 0
.../arm926ejs/davinci => mach-davinci}/Makefile | 0
.../arm926ejs/davinci => mach-davinci}/config.mk | 0
.../{cpu/arm926ejs/davinci => mach-davinci}/cpu.c | 0
.../davinci => mach-davinci}/da830_pinmux.c | 0
.../davinci => mach-davinci}/da850_lowlevel.c | 0
.../davinci => mach-davinci}/da850_pinmux.c | 0
.../arm926ejs/davinci => mach-davinci}/dm355.c | 0
.../arm926ejs/davinci => mach-davinci}/dm365.c | 0
.../davinci => mach-davinci}/dm365_lowlevel.c | 0
.../arm926ejs/davinci => mach-davinci}/dm644x.c | 0
.../arm926ejs/davinci => mach-davinci}/dm646x.c | 0
.../arm926ejs/davinci => mach-davinci}/dp83848.c | 2 +-
.../arm926ejs/davinci => mach-davinci}/et1011c.c | 2 +-
.../include/mach}/aintc_defs.h | 0
.../include/mach}/da850_lowlevel.h | 0
.../include/mach}/da8xx-usb.h | 0
.../include/mach}/davinci_misc.h | 0
.../include/mach}/ddr2_defs.h | 0
.../include/mach}/dm365_lowlevel.h | 0
.../include/mach}/emac_defs.h | 0
.../include/mach}/gpio.h | 0
.../include/mach}/hardware.h | 0
.../include/mach}/i2c_defs.h | 0
.../include/mach}/pinmux_defs.h | 0
.../include/mach}/pll_defs.h | 0
.../include/mach}/psc_defs.h | 0
.../include/mach}/sdmmc_defs.h | 0
.../include/mach}/syscfg_defs.h | 0
.../include/mach}/timer_defs.h | 0
.../arm926ejs/davinci => mach-davinci}/ksz8873.c | 2 +-
.../davinci => mach-davinci}/lowlevel_init.S | 0
.../arm926ejs/davinci => mach-davinci}/lxt972.c | 2 +-
.../{cpu/arm926ejs/davinci => mach-davinci}/misc.c | 0
.../arm926ejs/davinci => mach-davinci}/pinmux.c | 0
.../{cpu/arm926ejs/davinci => mach-davinci}/psc.c | 0
.../arm926ejs/davinci => mach-davinci}/reset.c | 0
.../{cpu/arm926ejs/davinci => mach-davinci}/spl.c | 0
.../arm926ejs/davinci => mach-davinci}/timer.c | 0
.../{cpu/armv7/highbank => mach-highbank}/Kconfig | 0
.../{cpu/armv7/highbank => mach-highbank}/Makefile | 0
.../{cpu/armv7/highbank => mach-highbank}/timer.c | 0
.../{cpu/armv7/keystone => mach-keystone}/Kconfig | 0
.../{cpu/armv7/keystone => mach-keystone}/Makefile | 0
.../armv7/keystone => mach-keystone}/clock-k2e.c | 0
.../armv7/keystone => mach-keystone}/clock-k2hk.c | 0
.../armv7/keystone => mach-keystone}/clock-k2l.c | 0
.../{cpu/armv7/keystone => mach-keystone}/clock.c | 0
.../armv7/keystone => mach-keystone}/cmd_clock.c | 0
.../armv7/keystone => mach-keystone}/cmd_ddr3.c | 0
.../armv7/keystone => mach-keystone}/cmd_mon.c | 0
.../{cpu/armv7/keystone => mach-keystone}/ddr3.c | 0
.../include/mach}/clock-k2e.h | 0
.../include/mach}/clock-k2hk.h | 0
.../include/mach}/clock-k2l.h | 0
.../include/mach}/clock.h | 0
.../include/mach}/clock_defs.h | 0
.../include/mach}/ddr3.h | 0
.../include/mach}/hardware-k2e.h | 0
.../include/mach}/hardware-k2hk.h | 0
.../include/mach}/hardware-k2l.h | 0
.../include/mach}/hardware.h | 0
.../include/mach}/i2c_defs.h | 0
.../include/mach}/mon.h | 0
.../include/mach}/msmc.h | 0
.../include/mach}/psc_defs.h | 0
.../include/mach}/xhci-keystone.h | 0
.../{cpu/armv7/keystone => mach-keystone}/init.c | 0
.../armv7/keystone => mach-keystone}/keystone.c | 0
.../{cpu/armv7/keystone => mach-keystone}/msmc.c | 0
.../{cpu/armv7/keystone => mach-keystone}/psc.c | 0
.../arm926ejs/kirkwood => mach-kirkwood}/Kconfig | 0
.../arm926ejs/kirkwood => mach-kirkwood}/Makefile | 0
.../arm926ejs/kirkwood => mach-kirkwood}/cache.c | 0
.../arm926ejs/kirkwood => mach-kirkwood}/cpu.c | 0
.../include/mach}/config.h | 0
.../include/mach}/cpu.h | 0
.../include/mach}/gpio.h | 0
.../include/mach}/kw88f6192.h | 0
.../include/mach}/kw88f6281.h | 0
.../include/mach}/mpp.h | 0
.../include/mach}/soc.h | 0
.../arm926ejs/kirkwood => mach-kirkwood}/mpp.c | 0
.../arm926ejs/nomadik => mach-nomadik}/Kconfig | 0
.../arm926ejs/nomadik => mach-nomadik}/Makefile | 0
.../{cpu/arm926ejs/nomadik => mach-nomadik}/gpio.c | 0
.../include/mach}/gpio.h | 0
.../include/mach}/mtu.h | 0
.../arm926ejs/nomadik => mach-nomadik}/reset.S | 0
.../arm926ejs/nomadik => mach-nomadik}/timer.c | 0
.../arm926ejs/orion5x => mach-orion5x}/Kconfig | 0
.../arm926ejs/orion5x => mach-orion5x}/Makefile | 0
.../{cpu/arm926ejs/orion5x => mach-orion5x}/cpu.c | 0
.../{cpu/arm926ejs/orion5x => mach-orion5x}/dram.c | 0
.../include/mach}/cpu.h | 0
.../include/mach}/mv88f5182.h | 0
.../include/mach}/orion5x.h | 0
.../orion5x => mach-orion5x}/lowlevel_init.S | 0
.../arm926ejs/orion5x => mach-orion5x}/timer.c | 0
.../{cpu/armv7/tegra-common => mach-tegra}/Kconfig | 8 +-
arch/arm/{cpu/tegra-common => mach-tegra}/Makefile | 12 ++
arch/arm/{cpu/tegra-common => mach-tegra}/ap.c | 0
arch/arm/{cpu/tegra-common => mach-tegra}/board.c | 0
arch/arm/{cpu/tegra-common => mach-tegra}/cache.c | 0
arch/arm/{cpu/tegra-common => mach-tegra}/clock.c | 0
.../tegra-common => mach-tegra}/cmd_enterrcm.c | 0
.../{cpu/arm720t/tegra-common => mach-tegra}/cpu.c | 0
.../{cpu/arm720t/tegra-common => mach-tegra}/cpu.h | 0
.../tegra-common => mach-tegra}/lowlevel_init.S | 0
.../tegra-common => mach-tegra}/pinmux-common.c | 0
.../{cpu/tegra-common => mach-tegra}/powergate.c | 0
.../{cpu/arm720t/tegra-common => mach-tegra}/spl.c | 0
.../{cpu/tegra-common => mach-tegra}/sys_info.c | 0
.../arm/{cpu/armv7 => mach-tegra}/tegra114/Kconfig | 0
.../tegra114}/Makefile | 5 +-
.../tegra114}/clock.c | 0
.../arm/{cpu/arm720t => mach-tegra}/tegra114/cpu.c | 2 +-
.../tegra114}/funcmux.c | 0
.../tegra114}/pinmux.c | 0
.../arm/{cpu/armv7 => mach-tegra}/tegra124/Kconfig | 0
.../tegra124}/Makefile | 2 +
.../tegra124}/clock.c | 0
.../arm/{cpu/arm720t => mach-tegra}/tegra124/cpu.c | 2 +-
.../tegra124}/funcmux.c | 0
.../tegra124}/pinmux.c | 0
.../tegra124}/xusb-padctl.c | 0
arch/arm/{cpu/armv7 => mach-tegra}/tegra20/Kconfig | 0
.../tegra20-common => mach-tegra/tegra20}/Makefile | 10 +-
.../tegra20-common => mach-tegra/tegra20}/clock.c | 0
arch/arm/{cpu/arm720t => mach-tegra}/tegra20/cpu.c | 2 +-
.../tegra20-common => mach-tegra/tegra20}/crypto.c | 0
.../tegra20-common => mach-tegra/tegra20}/crypto.h | 0
.../{cpu/armv7 => mach-tegra}/tegra20/display.c | 0
.../tegra20-common => mach-tegra/tegra20}/emc.c | 0
.../tegra20}/funcmux.c | 0
.../tegra20-common => mach-tegra/tegra20}/pinmux.c | 0
.../tegra20-common => mach-tegra/tegra20}/pmu.c | 0
arch/arm/{cpu/armv7 => mach-tegra}/tegra20/pwm.c | 0
.../tegra20}/warmboot.c | 0
.../tegra20}/warmboot_avp.c | 0
.../tegra20}/warmboot_avp.h | 0
arch/arm/{cpu/armv7 => mach-tegra}/tegra30/Kconfig | 0
.../tegra30-common => mach-tegra/tegra30}/Makefile | 5 +-
.../tegra30-common => mach-tegra/tegra30}/clock.c | 0
arch/arm/{cpu/arm720t => mach-tegra}/tegra30/cpu.c | 2 +-
.../tegra30}/funcmux.c | 0
.../tegra30-common => mach-tegra/tegra30}/pinmux.c | 0
arch/arm/{cpu/tegra-common => mach-tegra}/vpr.c | 0
.../{cpu/tegra-common => mach-tegra}/xusb-padctl.c | 0
.../{cpu/armv7/uniphier => mach-uniphier}/Kconfig | 0
.../{cpu/armv7/uniphier => mach-uniphier}/Makefile | 0
.../uniphier => mach-uniphier}/board_common.c | 0
.../board_early_init_r.c | 0
.../uniphier => mach-uniphier}/board_late_init.c | 0
.../board_postclk_init.c | 0
.../uniphier => mach-uniphier}/cache_uniphier.c | 0
.../armv7/uniphier => mach-uniphier}/cmd_ddrphy.c | 0
.../armv7/uniphier => mach-uniphier}/cmd_pinmon.c | 0
.../armv7/uniphier => mach-uniphier}/cpu_info.c | 0
.../uniphier => mach-uniphier}/ddrphy_training.c | 0
.../armv7/uniphier => mach-uniphier}/dram_init.c | 0
.../include/mach}/arm-mpcore.h | 0
.../include/mach}/bcu-regs.h | 0
.../include/mach}/board.h | 0
.../include/mach}/boot-device.h | 0
.../include/mach}/ddrphy-regs.h | 0
.../include/mach}/debug-uart.S | 0
.../include/mach}/ehci-uniphier.h | 0
.../include/mach}/gpio.h | 0
.../include/mach}/led.h | 0
.../include/mach}/mio-regs.h | 0
.../include/mach}/platdevice.h | 0
.../include/mach}/sbc-regs.h | 0
.../include/mach}/sc-regs.h | 0
.../include/mach}/sg-regs.h | 0
.../include/mach}/ssc-regs.h | 0
.../include/mach}/umc-regs.h | 0
.../uniphier => mach-uniphier}/init_page_table.S | 0
.../uniphier => mach-uniphier}/lowlevel_init.S | 0
.../uniphier => mach-uniphier}/ph1-ld4/Makefile | 0
.../uniphier => mach-uniphier}/ph1-ld4/bcu_init.c | 0
.../ph1-ld4/board_info.c | 0
.../uniphier => mach-uniphier}/ph1-ld4/boot-mode.c | 0
.../ph1-ld4/clkrst_init.c | 0
.../ph1-ld4/ddrphy_init.c | 0
.../ph1-ld4/lowlevel_debug.S | 0
.../uniphier => mach-uniphier}/ph1-ld4/pinctrl.c | 0
.../ph1-ld4/platdevice.c | 0
.../uniphier => mach-uniphier}/ph1-ld4/pll_init.c | 0
.../ph1-ld4/pll_spectrum.c | 0
.../uniphier => mach-uniphier}/ph1-ld4/sbc_init.c | 0
.../uniphier => mach-uniphier}/ph1-ld4/sg_init.c | 0
.../uniphier => mach-uniphier}/ph1-ld4/umc_init.c | 0
.../uniphier => mach-uniphier}/ph1-pro4/Makefile | 0
.../ph1-pro4/board_info.c | 0
.../ph1-pro4/boot-mode.c | 0
.../ph1-pro4/clkrst_init.c | 0
.../ph1-pro4/ddrphy_init.c | 0
.../ph1-pro4/lowlevel_debug.S | 0
.../uniphier => mach-uniphier}/ph1-pro4/pinctrl.c | 0
.../ph1-pro4/platdevice.c | 0
.../uniphier => mach-uniphier}/ph1-pro4/pll_init.c | 0
.../ph1-pro4/pll_spectrum.c | 0
.../uniphier => mach-uniphier}/ph1-pro4/sbc_init.c | 0
.../uniphier => mach-uniphier}/ph1-pro4/sg_init.c | 0
.../uniphier => mach-uniphier}/ph1-pro4/umc_init.c | 0
.../uniphier => mach-uniphier}/ph1-sld8/Makefile | 0
.../uniphier => mach-uniphier}/ph1-sld8/bcu_init.c | 0
.../ph1-sld8/board_info.c | 0
.../ph1-sld8/boot-mode.c | 0
.../ph1-sld8/clkrst_init.c | 0
.../ph1-sld8/ddrphy_init.c | 0
.../ph1-sld8/lowlevel_debug.S | 0
.../uniphier => mach-uniphier}/ph1-sld8/pinctrl.c | 0
.../ph1-sld8/platdevice.c | 0
.../uniphier => mach-uniphier}/ph1-sld8/pll_init.c | 0
.../ph1-sld8/pll_spectrum.c | 0
.../uniphier => mach-uniphier}/ph1-sld8/sbc_init.c | 0
.../uniphier => mach-uniphier}/ph1-sld8/sg_init.c | 0
.../uniphier => mach-uniphier}/ph1-sld8/umc_init.c | 0
.../{cpu/armv7/uniphier => mach-uniphier}/reset.c | 0
.../{cpu/armv7/uniphier => mach-uniphier}/smp.S | 0
.../{cpu/armv7/uniphier => mach-uniphier}/spl.c | 0
.../uniphier => mach-uniphier}/support_card.c | 0
.../{cpu/armv7/uniphier => mach-uniphier}/timer.c | 0
.../arm926ejs/versatile => mach-versatile}/Kconfig | 0
.../versatile => mach-versatile}/Makefile | 0
.../arm926ejs/versatile => mach-versatile}/reset.S | 0
.../arm926ejs/versatile => mach-versatile}/timer.c | 0
board/BuS/eb_cpux9k2/Kconfig | 3 -
board/BuS/vl_ma2sc/Kconfig | 3 -
board/afeb9260/Kconfig | 3 -
board/atmel/at91rm9200ek/Kconfig | 3 -
board/atmel/at91sam9260ek/Kconfig | 3 -
board/atmel/at91sam9261ek/Kconfig | 3 -
board/atmel/at91sam9263ek/Kconfig | 3 -
board/atmel/at91sam9m10g45ek/Kconfig | 3 -
board/atmel/at91sam9n12ek/Kconfig | 3 -
board/atmel/at91sam9rlek/Kconfig | 3 -
board/atmel/at91sam9x5ek/Kconfig | 3 -
board/atmel/sama5d3_xplained/Kconfig | 3 -
board/atmel/sama5d3xek/Kconfig | 3 -
board/atmel/sama5d4_xplained/Kconfig | 3 -
board/atmel/sama5d4ek/Kconfig | 3 -
board/bluewater/snapper9260/Kconfig | 3 -
board/calao/sbc35_a9g20/Kconfig | 3 -
board/calao/tny_a9260/Kconfig | 3 -
board/calao/usb_a9263/Kconfig | 3 -
board/egnite/ethernut5/Kconfig | 3 -
board/esd/meesc/Kconfig | 3 -
board/esd/otc570/Kconfig | 3 -
board/eukrea/cpu9260/Kconfig | 3 -
board/eukrea/cpuat91/Kconfig | 3 -
board/ronetix/pm9261/Kconfig | 3 -
board/ronetix/pm9263/Kconfig | 3 -
board/ronetix/pm9g45/Kconfig | 3 -
board/siemens/corvus/Kconfig | 3 -
board/siemens/taurus/Kconfig | 3 -
board/taskit/stamp9g20/Kconfig | 3 -
configs/afeb9260_defconfig | 1 +
configs/at91rm9200ek_defconfig | 1 +
configs/at91rm9200ek_ram_defconfig | 1 +
configs/at91sam9260ek_dataflash_cs0_defconfig | 1 +
configs/at91sam9260ek_dataflash_cs1_defconfig | 1 +
configs/at91sam9260ek_nandflash_defconfig | 1 +
configs/at91sam9261ek_dataflash_cs0_defconfig | 1 +
configs/at91sam9261ek_dataflash_cs3_defconfig | 1 +
configs/at91sam9261ek_nandflash_defconfig | 1 +
configs/at91sam9263ek_dataflash_cs0_defconfig | 1 +
configs/at91sam9263ek_dataflash_defconfig | 1 +
configs/at91sam9263ek_nandflash_defconfig | 1 +
configs/at91sam9263ek_norflash_boot_defconfig | 1 +
configs/at91sam9263ek_norflash_defconfig | 1 +
configs/at91sam9g10ek_dataflash_cs0_defconfig | 1 +
configs/at91sam9g10ek_dataflash_cs3_defconfig | 1 +
configs/at91sam9g10ek_nandflash_defconfig | 1 +
configs/at91sam9g20ek_2mmc_nandflash_defconfig | 1 +
configs/at91sam9g20ek_dataflash_cs0_defconfig | 1 +
configs/at91sam9g20ek_dataflash_cs1_defconfig | 1 +
configs/at91sam9g20ek_mmc_defconfig | 1 +
configs/at91sam9g20ek_nandflash_defconfig | 1 +
configs/at91sam9m10g45ek_mmc_defconfig | 1 +
configs/at91sam9m10g45ek_nandflash_defconfig | 1 +
configs/at91sam9n12ek_mmc_defconfig | 1 +
configs/at91sam9n12ek_nandflash_defconfig | 1 +
configs/at91sam9n12ek_spiflash_defconfig | 1 +
configs/at91sam9rlek_dataflash_defconfig | 1 +
configs/at91sam9rlek_nandflash_defconfig | 1 +
configs/at91sam9x5ek_dataflash_defconfig | 1 +
configs/at91sam9x5ek_mmc_defconfig | 1 +
configs/at91sam9x5ek_nandflash_defconfig | 1 +
configs/at91sam9x5ek_spiflash_defconfig | 1 +
configs/at91sam9xeek_dataflash_cs0_defconfig | 1 +
configs/at91sam9xeek_dataflash_cs1_defconfig | 1 +
configs/at91sam9xeek_nandflash_defconfig | 1 +
configs/axm_defconfig | 1 +
configs/corvus_defconfig | 1 +
configs/cpu9260_128M_defconfig | 1 +
configs/cpu9260_defconfig | 1 +
configs/cpu9260_nand_128M_defconfig | 1 +
configs/cpu9260_nand_defconfig | 1 +
configs/cpu9G20_128M_defconfig | 1 +
configs/cpu9G20_defconfig | 1 +
configs/cpu9G20_nand_128M_defconfig | 1 +
configs/cpu9G20_nand_defconfig | 1 +
configs/cpuat91_defconfig | 1 +
configs/cpuat91_ram_defconfig | 1 +
configs/eb_cpux9k2_defconfig | 1 +
configs/eb_cpux9k2_ram_defconfig | 1 +
configs/ethernut5_defconfig | 1 +
configs/meesc_dataflash_defconfig | 1 +
configs/meesc_defconfig | 1 +
configs/otc570_dataflash_defconfig | 1 +
configs/otc570_defconfig | 1 +
configs/pm9261_defconfig | 1 +
configs/pm9263_defconfig | 1 +
configs/pm9g45_defconfig | 1 +
configs/portuxg20_defconfig | 1 +
configs/sama5d3_xplained_mmc_defconfig | 1 +
configs/sama5d3_xplained_nandflash_defconfig | 1 +
configs/sama5d3xek_mmc_defconfig | 1 +
configs/sama5d3xek_nandflash_defconfig | 1 +
configs/sama5d3xek_spiflash_defconfig | 1 +
configs/sama5d4_xplained_mmc_defconfig | 1 +
configs/sama5d4_xplained_nandflash_defconfig | 1 +
configs/sama5d4_xplained_spiflash_defconfig | 1 +
configs/sama5d4ek_mmc_defconfig | 1 +
configs/sama5d4ek_nandflash_defconfig | 1 +
configs/sama5d4ek_spiflash_defconfig | 1 +
configs/sbc35_a9g20_eeprom_defconfig | 1 +
configs/sbc35_a9g20_nandflash_defconfig | 1 +
configs/snapper9260_defconfig | 1 +
configs/snapper9g20_defconfig | 1 +
configs/stamp9g20_defconfig | 1 +
configs/taurus_defconfig | 1 +
configs/tny_a9260_eeprom_defconfig | 1 +
configs/tny_a9260_nandflash_defconfig | 1 +
configs/tny_a9g20_eeprom_defconfig | 1 +
configs/tny_a9g20_nandflash_defconfig | 1 +
configs/usb_a9263_dataflash_defconfig | 1 +
configs/vl_ma2sc_defconfig | 1 +
configs/vl_ma2sc_ram_defconfig | 1 +
include/configs/km/km_arm.h | 2 +-
include/configs/sama5d3_xplained.h | 2 +-
include/configs/sama5d3xek.h | 2 +-
scripts/Makefile.autoconf | 19 ++-
447 files changed, 360 insertions(+), 426 deletions(-)
delete mode 100644 arch/arm/cpu/arm720t/tegra-common/Makefile
delete mode 100644 arch/arm/cpu/arm720t/tegra114/Makefile
delete mode 100644 arch/arm/cpu/arm720t/tegra124/Makefile
delete mode 100644 arch/arm/cpu/arm720t/tegra20/Makefile
delete mode 100644 arch/arm/cpu/arm720t/tegra30/Makefile
delete mode 100644 arch/arm/cpu/arm926ejs/at91/config.mk
delete mode 100644 arch/arm/cpu/armv7/at91/config.mk
delete mode 100644 arch/arm/cpu/armv7/tegra-common/Makefile
delete mode 100644 arch/arm/cpu/armv7/tegra20/Makefile
create mode 100644 arch/arm/mach-at91/Kconfig
rename arch/arm/{cpu/at91-common => mach-at91}/Makefile (54%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/Makefile (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/at91rm9200_devices.c (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/clock.c (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/cpu.c (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/lowlevel_init.S (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/reset.c (100%)
rename arch/arm/{cpu/arm920t/at91 => mach-at91/arm920t}/timer.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91cap9_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9260_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9261_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9263_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9m10g45_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9n12_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9rl_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/at91sam9x5_devices.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/clock.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/cpu.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/eflash.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/led.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/lowlevel_init.S (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/reset.c (100%)
rename arch/arm/{cpu/arm926ejs/at91 => mach-at91/arm926ejs}/timer.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/Makefile (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/clock.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/cpu.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/reset.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/sama5d3_devices.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/sama5d4_devices.c (100%)
rename arch/arm/{cpu/armv7/at91 => mach-at91/armv7}/timer.c (100%)
create mode 100644 arch/arm/mach-at91/config.mk
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_common.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_dbu.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_eefc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_emac.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_gpbr.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_mc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pdc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pio.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pit.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pmc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rstc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rtt.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_spi.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_st.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_tc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_wdt.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91cap9.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91cap9_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91rm9200.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9260.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9260_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9261.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9261_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9263.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9263_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_sdramc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_smc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9g45.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9g45_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9rl.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9rl_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9x5.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9x5_matrix.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/atmel_mpddrc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/atmel_serial.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/atmel_usba_udc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/clk.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/gpio.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/hardware.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d3.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d3_smc.h (100%)
rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d4.h (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/mpddrc.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/phy.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/sdram.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/spl.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/spl_at91.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/spl_atmel.c (100%)
rename arch/arm/{cpu/at91-common => mach-at91}/u-boot-spl.lds (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Kconfig (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/config.mk (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/cpu.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da830_pinmux.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_lowlevel.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_pinmux.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm355.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365_lowlevel.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm644x.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm646x.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dp83848.c (98%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/et1011c.c (94%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/aintc_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/da850_lowlevel.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/da8xx-usb.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/davinci_misc.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/ddr2_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/dm365_lowlevel.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/emac_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/gpio.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/hardware.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/i2c_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/pinmux_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/pll_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/psc_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/sdmmc_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/syscfg_defs.h (100%)
rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/timer_defs.h (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/ksz8873.c (95%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lowlevel_init.S (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lxt972.c (97%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/misc.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/pinmux.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/psc.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/reset.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/spl.c (100%)
rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/timer.c (100%)
rename arch/arm/{cpu/armv7/highbank => mach-highbank}/Kconfig (100%)
rename arch/arm/{cpu/armv7/highbank => mach-highbank}/Makefile (100%)
rename arch/arm/{cpu/armv7/highbank => mach-highbank}/timer.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/Kconfig (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/Makefile (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2e.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2hk.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2l.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_clock.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_ddr3.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_mon.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/ddr3.c (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock-k2e.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock-k2hk.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock-k2l.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock_defs.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/ddr3.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/hardware-k2e.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/hardware-k2hk.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/hardware-k2l.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/hardware.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/i2c_defs.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/mon.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/msmc.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/psc_defs.h (100%)
rename arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/xhci-keystone.h (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/init.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/keystone.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/msmc.c (100%)
rename arch/arm/{cpu/armv7/keystone => mach-keystone}/psc.c (100%)
rename arch/arm/{cpu/arm926ejs/kirkwood => mach-kirkwood}/Kconfig (100%)
rename arch/arm/{cpu/arm926ejs/kirkwood => mach-kirkwood}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/kirkwood => mach-kirkwood}/cache.c (100%)
rename arch/arm/{cpu/arm926ejs/kirkwood => mach-kirkwood}/cpu.c (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/config.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/cpu.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/gpio.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/kw88f6192.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/kw88f6281.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/mpp.h (100%)
rename arch/arm/{include/asm/arch-kirkwood => mach-kirkwood/include/mach}/soc.h (100%)
rename arch/arm/{cpu/arm926ejs/kirkwood => mach-kirkwood}/mpp.c (100%)
rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Kconfig (100%)
rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/gpio.c (100%)
rename arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/gpio.h (100%)
rename arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/mtu.h (100%)
rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/reset.S (100%)
rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/timer.c (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Kconfig (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/cpu.c (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/dram.c (100%)
rename arch/arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/cpu.h (100%)
rename arch/arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/mv88f5182.h (100%)
rename arch/arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/orion5x.h (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/lowlevel_init.S (100%)
rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/timer.c (100%)
rename arch/arm/{cpu/armv7/tegra-common => mach-tegra}/Kconfig (60%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/Makefile (61%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/ap.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/board.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/cache.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/clock.c (100%)
rename arch/arm/{cpu/armv7/tegra-common => mach-tegra}/cmd_enterrcm.c (100%)
rename arch/arm/{cpu/arm720t/tegra-common => mach-tegra}/cpu.c (100%)
rename arch/arm/{cpu/arm720t/tegra-common => mach-tegra}/cpu.h (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/lowlevel_init.S (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/pinmux-common.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/powergate.c (100%)
rename arch/arm/{cpu/arm720t/tegra-common => mach-tegra}/spl.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/sys_info.c (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra114/Kconfig (100%)
rename arch/arm/{cpu/tegra114-common => mach-tegra/tegra114}/Makefile (89%)
rename arch/arm/{cpu/tegra114-common => mach-tegra/tegra114}/clock.c (100%)
rename arch/arm/{cpu/arm720t => mach-tegra}/tegra114/cpu.c (99%)
rename arch/arm/{cpu/tegra114-common => mach-tegra/tegra114}/funcmux.c (100%)
rename arch/arm/{cpu/tegra114-common => mach-tegra/tegra114}/pinmux.c (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra124/Kconfig (100%)
rename arch/arm/{cpu/tegra124-common => mach-tegra/tegra124}/Makefile (84%)
rename arch/arm/{cpu/tegra124-common => mach-tegra/tegra124}/clock.c (100%)
rename arch/arm/{cpu/arm720t => mach-tegra}/tegra124/cpu.c (99%)
rename arch/arm/{cpu/tegra124-common => mach-tegra/tegra124}/funcmux.c (100%)
rename arch/arm/{cpu/tegra124-common => mach-tegra/tegra124}/pinmux.c (100%)
rename arch/arm/{cpu/tegra124-common => mach-tegra/tegra124}/xusb-padctl.c (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra20/Kconfig (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/Makefile (77%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/clock.c (100%)
rename arch/arm/{cpu/arm720t => mach-tegra}/tegra20/cpu.c (98%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/crypto.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/crypto.h (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra20/display.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/emc.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/funcmux.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/pinmux.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/pmu.c (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra20/pwm.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/warmboot.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/warmboot_avp.c (100%)
rename arch/arm/{cpu/tegra20-common => mach-tegra/tegra20}/warmboot_avp.h (100%)
rename arch/arm/{cpu/armv7 => mach-tegra}/tegra30/Kconfig (100%)
rename arch/arm/{cpu/tegra30-common => mach-tegra/tegra30}/Makefile (89%)
rename arch/arm/{cpu/tegra30-common => mach-tegra/tegra30}/clock.c (100%)
rename arch/arm/{cpu/arm720t => mach-tegra}/tegra30/cpu.c (99%)
rename arch/arm/{cpu/tegra30-common => mach-tegra/tegra30}/funcmux.c (100%)
rename arch/arm/{cpu/tegra30-common => mach-tegra/tegra30}/pinmux.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/vpr.c (100%)
rename arch/arm/{cpu/tegra-common => mach-tegra}/xusb-padctl.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/Kconfig (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/Makefile (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/board_common.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/board_early_init_r.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/board_late_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/board_postclk_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/cache_uniphier.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/cmd_ddrphy.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/cmd_pinmon.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/cpu_info.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ddrphy_training.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/dram_init.c (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/arm-mpcore.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/bcu-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/board.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/boot-device.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/ddrphy-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/debug-uart.S (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/ehci-uniphier.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/gpio.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/led.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/mio-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/platdevice.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/sbc-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/sc-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/sg-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/ssc-regs.h (100%)
rename arch/arm/{include/asm/arch-uniphier => mach-uniphier/include/mach}/umc-regs.h (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/init_page_table.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/lowlevel_init.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/Makefile (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/bcu_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/board_info.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/boot-mode.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/clkrst_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/ddrphy_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/lowlevel_debug.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/pinctrl.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/platdevice.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/pll_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/pll_spectrum.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/sbc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/sg_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-ld4/umc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/Makefile (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/board_info.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/boot-mode.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/clkrst_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/ddrphy_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/lowlevel_debug.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/pinctrl.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/platdevice.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/pll_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/pll_spectrum.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/sbc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/sg_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-pro4/umc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/Makefile (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/bcu_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/board_info.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/boot-mode.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/clkrst_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/ddrphy_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/lowlevel_debug.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/pinctrl.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/platdevice.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/pll_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/pll_spectrum.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/sbc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/sg_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/ph1-sld8/umc_init.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/reset.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/smp.S (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/spl.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/support_card.c (100%)
rename arch/arm/{cpu/armv7/uniphier => mach-uniphier}/timer.c (100%)
rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Kconfig (100%)
rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Makefile (100%)
rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/reset.S (100%)
rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/timer.c (100%)
--
1.9.1
8
39