提交 514d00e5 编写于 作者: T Tom Rini

Merge branch '2020-01-30-master-imports'

- Assorted minor fixes
- Revert 6dcb8ba4 from upstream libfdt to restore boot-time speed on
  many platforms.
...@@ -983,7 +983,7 @@ ifneq ($(CONFIG_DM_MMC)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy) ...@@ -983,7 +983,7 @@ ifneq ($(CONFIG_DM_MMC)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy)
@echo >&2 "This board does not use CONFIG_DM_MMC. Please update" @echo >&2 "This board does not use CONFIG_DM_MMC. Please update"
@echo >&2 "the board to use CONFIG_DM_MMC before the v2019.04 release." @echo >&2 "the board to use CONFIG_DM_MMC before the v2019.04 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -993,7 +993,7 @@ ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy) ...@@ -993,7 +993,7 @@ ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy)
@echo >&2 "This board does not use CONFIG_DM_USB. Please update" @echo >&2 "This board does not use CONFIG_DM_USB. Please update"
@echo >&2 "the board to use CONFIG_DM_USB before the v2019.07 release." @echo >&2 "the board to use CONFIG_DM_USB before the v2019.07 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -1004,7 +1004,7 @@ ifeq ($(CONFIG_MVSATA_IDE),y) ...@@ -1004,7 +1004,7 @@ ifeq ($(CONFIG_MVSATA_IDE),y)
@echo >&2 "controller driver to use CONFIG_AHCI before the v2019.07" @echo >&2 "controller driver to use CONFIG_AHCI before the v2019.07"
@echo >&2 "release." @echo >&2 "release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
ifeq ($(CONFIG_LIBATA),y) ifeq ($(CONFIG_LIBATA),y)
...@@ -1014,7 +1014,7 @@ ifneq ($(CONFIG_AHCI),y) ...@@ -1014,7 +1014,7 @@ ifneq ($(CONFIG_AHCI),y)
@echo >&2 "enabled. Please update the storage controller driver to use" @echo >&2 "enabled. Please update the storage controller driver to use"
@echo >&2 "CONFIG_AHCI before the v2019.07 release." @echo >&2 "CONFIG_AHCI before the v2019.07 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -1024,7 +1024,7 @@ ifneq ($(CONFIG_DM_PCI),y) ...@@ -1024,7 +1024,7 @@ ifneq ($(CONFIG_DM_PCI),y)
@echo >&2 "This board does not use CONFIG_DM_PCI Please update" @echo >&2 "This board does not use CONFIG_DM_PCI Please update"
@echo >&2 "the board to use CONFIG_DM_PCI before the v2019.07 release." @echo >&2 "the board to use CONFIG_DM_PCI before the v2019.07 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -1034,7 +1034,7 @@ ifneq ($(CONFIG_DM_VIDEO),y) ...@@ -1034,7 +1034,7 @@ ifneq ($(CONFIG_DM_VIDEO),y)
@echo >&2 "This board does not use CONFIG_DM_VIDEO Please update" @echo >&2 "This board does not use CONFIG_DM_VIDEO Please update"
@echo >&2 "the board to use CONFIG_DM_VIDEO before the v2019.07 release." @echo >&2 "the board to use CONFIG_DM_VIDEO before the v2019.07 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -1052,7 +1052,7 @@ ifneq ($(CONFIG_DM_SPI_FLASH)$(CONFIG_OF_CONTROL),yy) ...@@ -1052,7 +1052,7 @@ ifneq ($(CONFIG_DM_SPI_FLASH)$(CONFIG_OF_CONTROL),yy)
@echo >&2 "This board does not use CONFIG_DM_SPI_FLASH. Please update" @echo >&2 "This board does not use CONFIG_DM_SPI_FLASH. Please update"
@echo >&2 "the board to use CONFIG_SPI_FLASH before the v2019.07 release." @echo >&2 "the board to use CONFIG_SPI_FLASH before the v2019.07 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
...@@ -1063,7 +1063,7 @@ ifneq ($(CONFIG_WDT),y) ...@@ -1063,7 +1063,7 @@ ifneq ($(CONFIG_WDT),y)
@echo >&2 "Please update the board to use CONFIG_WDT before the" @echo >&2 "Please update the board to use CONFIG_WDT before the"
@echo >&2 "v2019.10 release." @echo >&2 "v2019.10 release."
@echo >&2 "Failure to update by the deadline may result in board removal." @echo >&2 "Failure to update by the deadline may result in board removal."
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "See doc/driver-model/migration.rst for more info."
@echo >&2 "====================================================" @echo >&2 "===================================================="
endif endif
endif endif
......
CROSS_COMPILE := aarch64-linux-gnu- CROSS_COMPILE := aarch64-linux-gnu-
output_dir := $(PWD)/../bin output_dir := $(PWD)/../bin
makejobs := $(shell grep '^processor' /proc/cpuinfo | sort -u | wc -l) makejobs := $(nproc)
makethreads := $(shell dc -e "$(makejobs) 1 + p") makethreads := $(shell dc -e "$(makejobs) 1 + p")
make_options := GCC49_AARCH64_PREFIX=$CROSS_COMPILE \ make_options := GCC49_AARCH64_PREFIX=$CROSS_COMPILE \
-j$(makethreads) -l$(makejobs) -j$(makethreads) -l$(makejobs)
......
Poplar BOARD Poplar BOARD
M: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> M: Jorge Ramirez-Ortiz <jorge.ramirez.ortiz@gmail.com>
M: Shawn Guo <shawn.guo@linaro.org> M: Shawn Guo <shawn.guo@linaro.org>
S: Maintained S: Maintained
F: board/hisilicon/poplar F: board/hisilicon/poplar
......
DRAGONBOARD820C BOARD DRAGONBOARD820C BOARD
M: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> M: Jorge Ramirez-Ortiz <jorge.ramirez.ortiz@gmail.com>
S: Maintained S: Maintained
F: board/qualcomm/dragonboard820c/ F: board/qualcomm/dragonboard820c/
F: include/configs/dragonboard820c.h F: include/configs/dragonboard820c.h
......
...@@ -633,21 +633,6 @@ static int do_disk_guid(struct blk_desc *dev_desc, char * const namestr) ...@@ -633,21 +633,6 @@ static int do_disk_guid(struct blk_desc *dev_desc, char * const namestr)
} }
#ifdef CONFIG_CMD_GPT_RENAME #ifdef CONFIG_CMD_GPT_RENAME
/*
* There are 3 malloc() calls in set_gpt_info() and there is no info about which
* failed.
*/
static void set_gpt_cleanup(char **str_disk_guid,
disk_partition_t **partitions)
{
#ifdef CONFIG_RANDOM_UUID
if (str_disk_guid)
free(str_disk_guid);
#endif
if (partitions)
free(partitions);
}
static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm, static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm,
char *name1, char *name2) char *name1, char *name2)
{ {
...@@ -655,7 +640,7 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm, ...@@ -655,7 +640,7 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm,
struct disk_part *curr; struct disk_part *curr;
disk_partition_t *new_partitions = NULL; disk_partition_t *new_partitions = NULL;
char disk_guid[UUID_STR_LEN + 1]; char disk_guid[UUID_STR_LEN + 1];
char *partitions_list, *str_disk_guid; char *partitions_list, *str_disk_guid = NULL;
u8 part_count = 0; u8 part_count = 0;
int partlistlen, ret, numparts = 0, partnum, i = 1, ctr1 = 0, ctr2 = 0; int partlistlen, ret, numparts = 0, partnum, i = 1, ctr1 = 0, ctr2 = 0;
...@@ -697,14 +682,8 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm, ...@@ -697,14 +682,8 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm,
/* set_gpt_info allocates new_partitions and str_disk_guid */ /* set_gpt_info allocates new_partitions and str_disk_guid */
ret = set_gpt_info(dev_desc, partitions_list, &str_disk_guid, ret = set_gpt_info(dev_desc, partitions_list, &str_disk_guid,
&new_partitions, &part_count); &new_partitions, &part_count);
if (ret < 0) { if (ret < 0)
del_gpt_info(); goto out;
free(partitions_list);
if (ret == -ENOMEM)
set_gpt_cleanup(&str_disk_guid, &new_partitions);
else
goto out;
}
if (!strcmp(subcomm, "swap")) { if (!strcmp(subcomm, "swap")) {
if ((strlen(name1) > PART_NAME_LEN) || (strlen(name2) > PART_NAME_LEN)) { if ((strlen(name1) > PART_NAME_LEN) || (strlen(name2) > PART_NAME_LEN)) {
...@@ -766,14 +745,8 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm, ...@@ -766,14 +745,8 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm,
* Even though valid pointers are here passed into set_gpt_info(), * Even though valid pointers are here passed into set_gpt_info(),
* it mallocs again, and there's no way to tell which failed. * it mallocs again, and there's no way to tell which failed.
*/ */
if (ret < 0) { if (ret < 0)
del_gpt_info(); goto out;
free(partitions_list);
if (ret == -ENOMEM)
set_gpt_cleanup(&str_disk_guid, &new_partitions);
else
goto out;
}
debug("Writing new partition table\n"); debug("Writing new partition table\n");
ret = gpt_restore(dev_desc, disk_guid, new_partitions, numparts); ret = gpt_restore(dev_desc, disk_guid, new_partitions, numparts);
...@@ -795,10 +768,14 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm, ...@@ -795,10 +768,14 @@ static int do_rename_gpt_parts(struct blk_desc *dev_desc, char *subcomm,
} }
printf("new partition table with %d partitions is:\n", numparts); printf("new partition table with %d partitions is:\n", numparts);
print_gpt_info(); print_gpt_info();
del_gpt_info();
out: out:
free(new_partitions); del_gpt_info();
free(str_disk_guid); #ifdef CONFIG_RANDOM_UUID
if (str_disk_guid)
free(str_disk_guid);
#endif
if (new_partitions)
free(new_partitions);
free(partitions_list); free(partitions_list);
return ret; return ret;
} }
......
...@@ -862,6 +862,11 @@ __weak int arch_cpu_init_dm(void) ...@@ -862,6 +862,11 @@ __weak int arch_cpu_init_dm(void)
return 0; return 0;
} }
__weak int checkcpu(void)
{
return 0;
}
static const init_fnc_t init_sequence_f[] = { static const init_fnc_t init_sequence_f[] = {
setup_mon_len, setup_mon_len,
#ifdef CONFIG_OF_CONTROL #ifdef CONFIG_OF_CONTROL
...@@ -904,9 +909,7 @@ static const init_fnc_t init_sequence_f[] = { ...@@ -904,9 +909,7 @@ static const init_fnc_t init_sequence_f[] = {
console_init_f, /* stage 1 init of console */ console_init_f, /* stage 1 init of console */
display_options, /* say that we are here */ display_options, /* say that we are here */
display_text_info, /* show debugging info if required */ display_text_info, /* show debugging info if required */
#if defined(CONFIG_PPC) || defined(CONFIG_SH) || defined(CONFIG_X86)
checkcpu, checkcpu,
#endif
#if defined(CONFIG_SYSRESET) #if defined(CONFIG_SYSRESET)
print_resetinfo, print_resetinfo,
#endif #endif
......
...@@ -580,7 +580,7 @@ enum mv_netc_lanes { ...@@ -580,7 +580,7 @@ enum mv_netc_lanes {
/* Default number of TXQs in use */ /* Default number of TXQs in use */
#define MVPP2_DEFAULT_TXQ 1 #define MVPP2_DEFAULT_TXQ 1
/* Dfault number of RXQs in use */ /* Default number of RXQs in use */
#define MVPP2_DEFAULT_RXQ 1 #define MVPP2_DEFAULT_RXQ 1
#define CONFIG_MV_ETH_RXQ 8 /* increment by 8 */ #define CONFIG_MV_ETH_RXQ 8 /* increment by 8 */
......
...@@ -183,8 +183,8 @@ int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size) ...@@ -183,8 +183,8 @@ int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size)
if (fdt_chk_extra() && !re) if (fdt_chk_extra() && !re)
return -FDT_ERR_BADOFFSET; return -FDT_ERR_BADOFFSET;
*address = fdt64_ld(&re->address); *address = fdt64_to_cpu(re->address);
*size = fdt64_ld(&re->size); *size = fdt64_to_cpu(re->size);
return 0; return 0;
} }
...@@ -194,7 +194,7 @@ int fdt_num_mem_rsv(const void *fdt) ...@@ -194,7 +194,7 @@ int fdt_num_mem_rsv(const void *fdt)
const struct fdt_reserve_entry *re; const struct fdt_reserve_entry *re;
for (i = 0; (re = fdt_mem_rsv(fdt, i)) != NULL; i++) { for (i = 0; (re = fdt_mem_rsv(fdt, i)) != NULL; i++) {
if (fdt64_ld(&re->size) == 0) if (fdt64_to_cpu(re->size) == 0)
return i; return i;
} }
return -FDT_ERR_TRUNCATED; return -FDT_ERR_TRUNCATED;
...@@ -372,7 +372,7 @@ static const struct fdt_property *fdt_get_property_by_offset_(const void *fdt, ...@@ -372,7 +372,7 @@ static const struct fdt_property *fdt_get_property_by_offset_(const void *fdt,
prop = fdt_offset_ptr_(fdt, offset); prop = fdt_offset_ptr_(fdt, offset);
if (lenp) if (lenp)
*lenp = fdt32_ld(&prop->len); *lenp = fdt32_to_cpu(prop->len);
return prop; return prop;
} }
...@@ -410,7 +410,7 @@ static const struct fdt_property *fdt_get_property_namelen_(const void *fdt, ...@@ -410,7 +410,7 @@ static const struct fdt_property *fdt_get_property_namelen_(const void *fdt,
offset = -FDT_ERR_INTERNAL; offset = -FDT_ERR_INTERNAL;
break; break;
} }
if (fdt_string_eq_(fdt, fdt32_ld(&prop->nameoff), if (fdt_string_eq_(fdt, fdt32_to_cpu(prop->nameoff),
name, namelen)) { name, namelen)) {
if (poffset) if (poffset)
*poffset = offset; *poffset = offset;
...@@ -463,7 +463,7 @@ const void *fdt_getprop_namelen(const void *fdt, int nodeoffset, ...@@ -463,7 +463,7 @@ const void *fdt_getprop_namelen(const void *fdt, int nodeoffset,
/* Handle realignment */ /* Handle realignment */
if (fdt_chk_version() && fdt_version(fdt) < 0x10 && if (fdt_chk_version() && fdt_version(fdt) < 0x10 &&
(poffset + sizeof(*prop)) % 8 && fdt32_ld(&prop->len) >= 8) (poffset + sizeof(*prop)) % 8 && fdt32_to_cpu(prop->len) >= 8)
return prop->data + 4; return prop->data + 4;
return prop->data; return prop->data;
} }
...@@ -481,7 +481,7 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset, ...@@ -481,7 +481,7 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset,
int namelen; int namelen;
if (fdt_chk_extra()) { if (fdt_chk_extra()) {
name = fdt_get_string(fdt, fdt32_ld(&prop->nameoff), name = fdt_get_string(fdt, fdt32_to_cpu(prop->nameoff),
&namelen); &namelen);
if (!name) { if (!name) {
if (lenp) if (lenp)
...@@ -490,13 +490,13 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset, ...@@ -490,13 +490,13 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset,
} }
*namep = name; *namep = name;
} else { } else {
*namep = fdt_string(fdt, fdt32_ld(&prop->nameoff)); *namep = fdt_string(fdt, fdt32_to_cpu(prop->nameoff));
} }
} }
/* Handle realignment */ /* Handle realignment */
if (fdt_chk_version() && fdt_version(fdt) < 0x10 && if (fdt_chk_version() && fdt_version(fdt) < 0x10 &&
(offset + sizeof(*prop)) % 8 && fdt32_ld(&prop->len) >= 8) (offset + sizeof(*prop)) % 8 && fdt32_to_cpu(prop->len) >= 8)
return prop->data + 4; return prop->data + 4;
return prop->data; return prop->data;
} }
...@@ -521,7 +521,7 @@ uint32_t fdt_get_phandle(const void *fdt, int nodeoffset) ...@@ -521,7 +521,7 @@ uint32_t fdt_get_phandle(const void *fdt, int nodeoffset)
return 0; return 0;
} }
return fdt32_ld(php); return fdt32_to_cpu(*php);
} }
const char *fdt_get_alias_namelen(const void *fdt, const char *fdt_get_alias_namelen(const void *fdt,
......
...@@ -92,7 +92,7 @@ static int optee_copy_firmware_node(const void *old_blob, void *fdt_blob) ...@@ -92,7 +92,7 @@ static int optee_copy_firmware_node(const void *old_blob, void *fdt_blob)
offs = fdt_add_subnode(fdt_blob, offs, "optee"); offs = fdt_add_subnode(fdt_blob, offs, "optee");
if (offs < 0) if (offs < 0)
return ret; return offs;
/* copy the compatible property */ /* copy the compatible property */
prop = fdt_getprop(old_blob, old_offs, "compatible", &len); prop = fdt_getprop(old_blob, old_offs, "compatible", &len);
......
...@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n ...@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n
#include "srcpos.h" #include "srcpos.h"
#include "dtc-parser.tab.h" #include "dtc-parser.tab.h"
YYLTYPE yylloc;
extern bool treesource_error; extern bool treesource_error;
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */ /* CAUTION: this will stop working if we ever use yyless() or yyunput() */
......
...@@ -179,8 +179,8 @@ int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size) ...@@ -179,8 +179,8 @@ int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size)
if (fdt_chk_extra() && !re) if (fdt_chk_extra() && !re)
return -FDT_ERR_BADOFFSET; return -FDT_ERR_BADOFFSET;
*address = fdt64_ld(&re->address); *address = fdt64_to_cpu(re->address);
*size = fdt64_ld(&re->size); *size = fdt64_to_cpu(re->size);
return 0; return 0;
} }
...@@ -190,7 +190,7 @@ int fdt_num_mem_rsv(const void *fdt) ...@@ -190,7 +190,7 @@ int fdt_num_mem_rsv(const void *fdt)
const struct fdt_reserve_entry *re; const struct fdt_reserve_entry *re;
for (i = 0; (re = fdt_mem_rsv(fdt, i)) != NULL; i++) { for (i = 0; (re = fdt_mem_rsv(fdt, i)) != NULL; i++) {
if (fdt64_ld(&re->size) == 0) if (fdt64_to_cpu(re->size) == 0)
return i; return i;
} }
return -FDT_ERR_TRUNCATED; return -FDT_ERR_TRUNCATED;
...@@ -368,7 +368,7 @@ static const struct fdt_property *fdt_get_property_by_offset_(const void *fdt, ...@@ -368,7 +368,7 @@ static const struct fdt_property *fdt_get_property_by_offset_(const void *fdt,
prop = fdt_offset_ptr_(fdt, offset); prop = fdt_offset_ptr_(fdt, offset);
if (lenp) if (lenp)
*lenp = fdt32_ld(&prop->len); *lenp = fdt32_to_cpu(prop->len);
return prop; return prop;
} }
...@@ -406,7 +406,7 @@ static const struct fdt_property *fdt_get_property_namelen_(const void *fdt, ...@@ -406,7 +406,7 @@ static const struct fdt_property *fdt_get_property_namelen_(const void *fdt,
offset = -FDT_ERR_INTERNAL; offset = -FDT_ERR_INTERNAL;
break; break;
} }
if (fdt_string_eq_(fdt, fdt32_ld(&prop->nameoff), if (fdt_string_eq_(fdt, fdt32_to_cpu(prop->nameoff),
name, namelen)) { name, namelen)) {
if (poffset) if (poffset)
*poffset = offset; *poffset = offset;
...@@ -459,7 +459,7 @@ const void *fdt_getprop_namelen(const void *fdt, int nodeoffset, ...@@ -459,7 +459,7 @@ const void *fdt_getprop_namelen(const void *fdt, int nodeoffset,
/* Handle realignment */ /* Handle realignment */
if (fdt_chk_version() && fdt_version(fdt) < 0x10 && if (fdt_chk_version() && fdt_version(fdt) < 0x10 &&
(poffset + sizeof(*prop)) % 8 && fdt32_ld(&prop->len) >= 8) (poffset + sizeof(*prop)) % 8 && fdt32_to_cpu(prop->len) >= 8)
return prop->data + 4; return prop->data + 4;
return prop->data; return prop->data;
} }
...@@ -477,7 +477,7 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset, ...@@ -477,7 +477,7 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset,
int namelen; int namelen;
if (fdt_chk_extra()) { if (fdt_chk_extra()) {
name = fdt_get_string(fdt, fdt32_ld(&prop->nameoff), name = fdt_get_string(fdt, fdt32_to_cpu(prop->nameoff),
&namelen); &namelen);
if (!name) { if (!name) {
if (lenp) if (lenp)
...@@ -486,13 +486,13 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset, ...@@ -486,13 +486,13 @@ const void *fdt_getprop_by_offset(const void *fdt, int offset,
} }
*namep = name; *namep = name;
} else { } else {
*namep = fdt_string(fdt, fdt32_ld(&prop->nameoff)); *namep = fdt_string(fdt, fdt32_to_cpu(prop->nameoff));
} }
} }
/* Handle realignment */ /* Handle realignment */
if (fdt_chk_version() && fdt_version(fdt) < 0x10 && if (fdt_chk_version() && fdt_version(fdt) < 0x10 &&
(offset + sizeof(*prop)) % 8 && fdt32_ld(&prop->len) >= 8) (offset + sizeof(*prop)) % 8 && fdt32_to_cpu(prop->len) >= 8)
return prop->data + 4; return prop->data + 4;
return prop->data; return prop->data;
} }
...@@ -517,7 +517,7 @@ uint32_t fdt_get_phandle(const void *fdt, int nodeoffset) ...@@ -517,7 +517,7 @@ uint32_t fdt_get_phandle(const void *fdt, int nodeoffset)
return 0; return 0;
} }
return fdt32_ld(php); return fdt32_to_cpu(*php);
} }
const char *fdt_get_alias_namelen(const void *fdt, const char *fdt_get_alias_namelen(const void *fdt,
......
...@@ -117,23 +117,6 @@ static inline void *fdt_offset_ptr_w(void *fdt, int offset, int checklen) ...@@ -117,23 +117,6 @@ static inline void *fdt_offset_ptr_w(void *fdt, int offset, int checklen)
uint32_t fdt_next_tag(const void *fdt, int offset, int *nextoffset); uint32_t fdt_next_tag(const void *fdt, int offset, int *nextoffset);
/*
* Alignment helpers:
* These helpers access words from a device tree blob. They're
* built to work even with unaligned pointers on platforms (ike
* ARM) that don't like unaligned loads and stores
*/
static inline uint32_t fdt32_ld(const fdt32_t *p)
{
const uint8_t *bp = (const uint8_t *)p;
return ((uint32_t)bp[0] << 24)
| ((uint32_t)bp[1] << 16)
| ((uint32_t)bp[2] << 8)
| bp[3];
}
static inline void fdt32_st(void *property, uint32_t value) static inline void fdt32_st(void *property, uint32_t value)
{ {
uint8_t *bp = (uint8_t *)property; uint8_t *bp = (uint8_t *)property;
...@@ -144,20 +127,6 @@ static inline void fdt32_st(void *property, uint32_t value) ...@@ -144,20 +127,6 @@ static inline void fdt32_st(void *property, uint32_t value)
bp[3] = value & 0xff; bp[3] = value & 0xff;
} }
static inline uint64_t fdt64_ld(const fdt64_t *p)
{
const uint8_t *bp = (const uint8_t *)p;
return ((uint64_t)bp[0] << 56)
| ((uint64_t)bp[1] << 48)
| ((uint64_t)bp[2] << 40)
| ((uint64_t)bp[3] << 32)
| ((uint64_t)bp[4] << 24)
| ((uint64_t)bp[5] << 16)
| ((uint64_t)bp[6] << 8)
| bp[7];
}
static inline void fdt64_st(void *property, uint64_t value) static inline void fdt64_st(void *property, uint64_t value)
{ {
uint8_t *bp = (uint8_t *)property; uint8_t *bp = (uint8_t *)property;
...@@ -232,7 +201,7 @@ int fdt_next_subnode(const void *fdt, int offset); ...@@ -232,7 +201,7 @@ int fdt_next_subnode(const void *fdt, int offset);
/* General functions */ /* General functions */
/**********************************************************************/ /**********************************************************************/
#define fdt_get_header(fdt, field) \ #define fdt_get_header(fdt, field) \
(fdt32_ld(&((const struct fdt_header *)(fdt))->field)) (fdt32_to_cpu(((const struct fdt_header *)(fdt))->field))
#define fdt_magic(fdt) (fdt_get_header(fdt, magic)) #define fdt_magic(fdt) (fdt_get_header(fdt, magic))
#define fdt_totalsize(fdt) (fdt_get_header(fdt, totalsize)) #define fdt_totalsize(fdt) (fdt_get_header(fdt, totalsize))
#define fdt_off_dt_struct(fdt) (fdt_get_header(fdt, off_dt_struct)) #define fdt_off_dt_struct(fdt) (fdt_get_header(fdt, off_dt_struct))
......
...@@ -13,7 +13,7 @@ fail() { ...@@ -13,7 +13,7 @@ fail() {
build_uboot() { build_uboot() {
echo "Build sandbox" echo "Build sandbox"
OPTS="O=${OUTPUT_DIR} $1" OPTS="O=${OUTPUT_DIR} $1"
NUM_CPUS=$(grep -c processor /proc/cpuinfo) NUM_CPUS=$(nproc)
echo ${OPTS} echo ${OPTS}
make ${OPTS} sandbox_config make ${OPTS} sandbox_config
make ${OPTS} -s -j${NUM_CPUS} make ${OPTS} -s -j${NUM_CPUS}
......
...@@ -87,7 +87,7 @@ function check_clean() { ...@@ -87,7 +87,7 @@ function check_clean() {
# Generate sandbox U-Boot - gleaned from /test/dm/test-dm.sh # Generate sandbox U-Boot - gleaned from /test/dm/test-dm.sh
function compile_sandbox() { function compile_sandbox() {
unset CROSS_COMPILE unset CROSS_COMPILE
NUM_CPUS=$(cat /proc/cpuinfo |grep -c processor) NUM_CPUS=$(nproc)
make O=sandbox sandbox_config make O=sandbox sandbox_config
make O=sandbox -s -j${NUM_CPUS} make O=sandbox -s -j${NUM_CPUS}
......
...@@ -979,7 +979,7 @@ class Builder: ...@@ -979,7 +979,7 @@ class Builder:
The summary takes the form of one line per architecture. The The summary takes the form of one line per architecture. The
line contains deltas for each of the sections (+ means the section line contains deltas for each of the sections (+ means the section
got bigger, - means smaller). The nunmbers are the average number got bigger, - means smaller). The numbers are the average number
of bytes that a board in this section increased by. of bytes that a board in this section increased by.
For example: For example:
......
...@@ -16,8 +16,8 @@ pip install concurrencytest ...@@ -16,8 +16,8 @@ pip install concurrencytest
Requires: Requires:
* [testtools](https://pypi.python.org/pypi/testtools) : `pip install testtools` * [testtools](https://pypi.python.org/pypi/testtools) : `pip install testtools`
* [python-subunit](https://pypi.python.org/pypi/python-subunit) : `pip install python-subunit` * [python-subunit](https://pypi.python.org/pypi/python-subunit) : `pip install python-subunit`
---- ----
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册