9
0
Fork 0

ARM: i.MX: central SOC type definition

Move the definition of iMX CPU types to an individual file to allow
on-purpose inclusion. Eliminate magic number CPU type encoding in the
scripts/imx subdir using the new include file.

Signed-off-by: Alexander Kurz <akurz@blala.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Alexander Kurz 2016-06-30 11:10:20 +02:00 committed by Sascha Hauer
parent c8608f0772
commit 7e97af8858
5 changed files with 26 additions and 18 deletions

View File

@ -4,6 +4,7 @@
#include <linux/compiler.h>
#include <linux/types.h>
#include <bootsource.h>
#include <mach/imx_cpu_types.h>
u64 imx_uid(void);
@ -42,16 +43,6 @@ void imx6_cpu_lowlevel_init(void);
/* range e.g. GPIO_1_5 is gpio 5 under linux */
#define IMX_GPIO_NR(bank, nr) (((bank) - 1) * 32 + (nr))
#define IMX_CPU_IMX1 1
#define IMX_CPU_IMX21 21
#define IMX_CPU_IMX25 25
#define IMX_CPU_IMX27 27
#define IMX_CPU_IMX31 31
#define IMX_CPU_IMX35 35
#define IMX_CPU_IMX51 51
#define IMX_CPU_IMX53 53
#define IMX_CPU_IMX6 6
extern unsigned int __imx_cpu_type;
#ifdef CONFIG_ARCH_IMX1

View File

@ -0,0 +1,14 @@
#ifndef __MACH_IMX_CPU_TYPES_H
#define __MACH_IMX_CPU_TYPES_H
#define IMX_CPU_IMX1 1
#define IMX_CPU_IMX21 21
#define IMX_CPU_IMX25 25
#define IMX_CPU_IMX27 27
#define IMX_CPU_IMX31 31
#define IMX_CPU_IMX35 35
#define IMX_CPU_IMX51 51
#define IMX_CPU_IMX53 53
#define IMX_CPU_IMX6 6
#endif /* __MACH_IMX_CPU_TYPES_H */

View File

@ -6,7 +6,8 @@ always := $(hostprogs-y)
HOSTCFLAGS_imx-usb-loader.o = `pkg-config --cflags libusb-1.0`
HOSTLOADLIBES_imx-usb-loader = `pkg-config --libs libusb-1.0`
HOSTCFLAGS_imx-image.o = -I$(srctree)
HOSTCFLAGS_imx.o = -I$(srctree)/arch/arm/mach-imx/include
HOSTCFLAGS_imx-image.o = -I$(srctree) -I$(srctree)/arch/arm/mach-imx/include
ifdef CONFIG_ARCH_IMX_IMXIMAGE_SSL_SUPPORT
HOSTCFLAGS_imx-image.o += -DIMXIMAGE_SSL_SUPPORT
HOSTLOADLIBES_imx-image = `pkg-config --libs openssl`

View File

@ -29,6 +29,7 @@
#include <endian.h>
#include <linux/kernel.h>
#include <sys/file.h>
#include <mach/imx_cpu_types.h>
#include "imx.h"
@ -788,7 +789,7 @@ int main(int argc, char *argv[])
exit(1);
}
if (data.cpu_type == 35) {
if (data.cpu_type == IMX_CPU_IMX35) {
ret = xwrite(outfd, buf, HEADER_LEN);
if (ret < 0) {
perror("write");

View File

@ -23,6 +23,7 @@
#include <stdint.h>
#include <errno.h>
#include <linux/kernel.h>
#include <mach/imx_cpu_types.h>
#include "imx.h"
@ -216,11 +217,11 @@ struct soc_type {
};
static struct soc_type socs[] = {
{ .name = "imx25", .header_version = 1, .cpu_type = 25},
{ .name = "imx35", .header_version = 1, .cpu_type = 35 },
{ .name = "imx51", .header_version = 1, .cpu_type = 51 },
{ .name = "imx53", .header_version = 2, .cpu_type = 53 },
{ .name = "imx6", .header_version = 2, .cpu_type = 6 },
{ .name = "imx25", .header_version = 1, .cpu_type = IMX_CPU_IMX25 },
{ .name = "imx35", .header_version = 1, .cpu_type = IMX_CPU_IMX35 },
{ .name = "imx51", .header_version = 1, .cpu_type = IMX_CPU_IMX51 },
{ .name = "imx53", .header_version = 2, .cpu_type = IMX_CPU_IMX53 },
{ .name = "imx6", .header_version = 2, .cpu_type = IMX_CPU_IMX6 },
};
static int do_soc(struct config_data *data, int argc, char *argv[])
@ -238,7 +239,7 @@ static int do_soc(struct config_data *data, int argc, char *argv[])
data->header_version = socs[i].header_version;
data->cpu_type = socs[i].cpu_type;
if (data->cpu_type == 35)
if (data->cpu_type == IMX_CPU_IMX35)
data->load_size += HEADER_LEN;
return 0;