/*
 * Copyright (C) 2016 Freescale Semiconductor, Inc.
 * Copyright 2017 NXP
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#include "imx7ulp-evk.dts"

&qspi1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_qspi1_1>;
	status = "okay";

	flash0: mx25r6435f@0 {
		reg = <0>;
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "macronix,mx25r6435f", "jedec,spi-nor";
		spi-max-frequency = <29000000>;
	};
};

&iomuxc {
	status = "okay";
};

&iomuxc {
	imx7ulp-evk {
		pinctrl_qspi1_1: qspi1grp_1 {
			fsl,pins = <
				IMX7ULP_PAD_PTB7__QSPIA_SS1_B   0x43 /* SS1 */
				IMX7ULP_PAD_PTB8__QSPIA_SS0_B   0x43 /* SS0 */
				IMX7ULP_PAD_PTB15__QSPIA_SCLK   0x43 /* SCLK */
				IMX7ULP_PAD_PTB9__QSPIA_DQS     0x43 /* DQS */
				IMX7ULP_PAD_PTB16__QSPIA_DATA3  0x43 /* D3 */
				IMX7ULP_PAD_PTB17__QSPIA_DATA2  0x43 /* D2 */
				IMX7ULP_PAD_PTB18__QSPIA_DATA1  0x43 /* D1 */
				IMX7ULP_PAD_PTB19__QSPIA_DATA0  0x43 /* D0 */
			>;
		};
	};
};

