Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 728dd198 authored by Rob Herring's avatar Rob Herring
Browse files

Merge branch 'earlycon-dt' into for-next

parents e723e442 45e0f0f5
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
* NXP SC16IS7xx advanced Universal Asynchronous Receiver-Transmitter (UART)

Required properties:
- compatible: Should be one of the following:
  - "nxp,sc16is740" for NXP SC16IS740,
  - "nxp,sc16is741" for NXP SC16IS741,
  - "nxp,sc16is750" for NXP SC16IS750,
  - "nxp,sc16is752" for NXP SC16IS752,
  - "nxp,sc16is760" for NXP SC16IS760,
  - "nxp,sc16is762" for NXP SC16IS762.
- reg: I2C address of the SC16IS7xx device.
- interrupt-parent: The phandle for the interrupt controller that
  services interrupts for this IC.
- interrupts: Should contain the UART interrupt
- clocks: Reference to the IC source clock.

Optional properties:
- gpio-controller: Marks the device node as a GPIO controller.
- #gpio-cells: Should be two. The first cell is the GPIO number and
  the second cell is used to specify the GPIO polarity:
    0 = active high,
    1 = active low.

Example:
        sc16is750: sc16is750@51 {
                compatible = "nxp,sc16is750";
                reg = <0x51>;
                clocks = <&clk20m>;
                interrupt-parent = <&gpio3>;
                interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
                gpio-controller;
                #gpio-cells = <2>;
        };
+9 −0
Original line number Diff line number Diff line
@@ -883,6 +883,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
			which are not unmapped.

	earlycon=	[KNL] Output early console device and options.

		uart[8250],io,<addr>[,options]
		uart[8250],mmio,<addr>[,options]
		uart[8250],mmio32,<addr>[,options]
@@ -892,6 +893,14 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
			(mmio) or 32-bit (mmio32).
			The options are the same as for ttyS, above.

		pl011,<addr>
			Start an early, polled-mode console on a pl011 serial
			port at the specified address. The pl011 serial port
			must already be setup and configured. Options are not
			yet supported.

		smh	Use ARM semihosting calls for early console.

	earlyprintk=	[X86,SH,BLACKFIN,ARM]
			earlyprintk=vga
			earlyprintk=efi
+7 −4
Original line number Diff line number Diff line
@@ -33,18 +33,21 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
}

#ifdef CONFIG_SMP
extern struct of_cpu_method __cpu_method_of_table_begin[];
extern struct of_cpu_method __cpu_method_of_table_end[];
extern struct of_cpu_method __cpu_method_of_table[];

static const struct of_cpu_method __cpu_method_of_table_sentinel
	__used __section(__cpu_method_of_table_end);


static int __init set_smp_ops_by_method(struct device_node *node)
{
	const char *method;
	struct of_cpu_method *m = __cpu_method_of_table_begin;
	struct of_cpu_method *m = __cpu_method_of_table;

	if (of_property_read_string(node, "enable-method", &method))
		return 0;

	for (; m < __cpu_method_of_table_end; m++)
	for (; m->method; m++)
		if (!strcmp(m->method, method)) {
			smp_set_ops(m->ops);
			return 1;
+1 −3
Original line number Diff line number Diff line
@@ -289,14 +289,12 @@ int __init mx35_clocks_init(void)
	return 0;
}

static int __init mx35_clocks_init_dt(struct device_node *ccm_node)
static void __init mx35_clocks_init_dt(struct device_node *ccm_node)
{
	clk_data.clks = clk;
	clk_data.clk_num = ARRAY_SIZE(clk);
	of_clk_add_provider(ccm_node, of_clk_src_onecell_get, &clk_data);

	mx35_clocks_init();

	return 0;
}
CLK_OF_DECLARE(imx35, "fsl,imx35-ccm", mx35_clocks_init_dt);
+3 −0
Original line number Diff line number Diff line
@@ -112,6 +112,9 @@ config IOMMU_HELPER
config KERNEL_MODE_NEON
	def_bool y

config FIX_EARLYCON_MEM
	def_bool y

source "init/Kconfig"

source "kernel/Kconfig.freezer"
Loading