Commit 8f7b130d2b86d8e939052277aabcf71cd141c6a7
1 parent
f88566037c
Exists in
smarc-imx_3.10.53_1.1.0_ga
Stable release for 3.10.53 kernel branch
Showing 20 changed files with 1786 additions and 359 deletions Inline Diff
- Documentation/devicetree/bindings/power/bq2477x-charger.txt
- arch/arm/boot/dts/imx6dl-smarcfimx6-1080p.dts
- arch/arm/boot/dts/imx6dl-smarcfimx6-wvga.dts
- arch/arm/boot/dts/imx6dl-smarcfimx6-wxga.dts
- arch/arm/boot/dts/imx6dl-smarcfimx6-xga.dts
- arch/arm/boot/dts/imx6dl-smarcfimx6.dts
- arch/arm/boot/dts/imx6q-smarcfimx6-1080p.dts
- arch/arm/boot/dts/imx6q-smarcfimx6-wvga.dts
- arch/arm/boot/dts/imx6q-smarcfimx6-wxga.dts
- arch/arm/boot/dts/imx6q-smarcfimx6-xga.dts
- arch/arm/boot/dts/imx6q-smarcfimx6.dts
- arch/arm/boot/dts/imx6qdl-smarc.dtsi
- arch/arm/boot/dts/imx6qdl-smarcfimx6.dtsi
- arch/arm/configs/smarcfimx6_defconfig
- arch/arm/mach-imx/clk-imx6q.c
- drivers/pci/host/pci-imx6.c
- drivers/power/Kconfig
- drivers/power/Makefile
- drivers/power/bq2477x-charger.c
- include/linux/power/bq2477x-charger.h
Documentation/devicetree/bindings/power/bq2477x-charger.txt
File was created | 1 | bq2477x charger | |
2 | ~~~~~~~~~~~~~~~ | ||
3 | |||
4 | Required properties : | ||
5 | - compatible : should contain "ti,bq2477x". | ||
6 | - ti,dac-ichg : Charge current that must be programmed | ||
7 | - ti,dac-v : The maximum charge voltage that must be programmed | ||
8 | - ti,dac-minsv : The minimum System voltage that must be programmed | ||
9 | - ti,dac-iin : The input current that must be programmed | ||
10 | - ti,wdt-refresh-timeout : watch dog timer that must be programmed | ||
11 | - ti,charger-detect-gpio : a GPIO spec for AC adapter detection. The flag | ||
12 | that determines if AC adapter presence is indicated by active low. | ||
13 | Set this to GPIO_ACTIVE_LOW if active low indicates adapter is present, | ||
14 | else GPIO_ACTIVE_HIGH. | ||
15 | |||
16 | Example: | ||
17 | |||
18 | bq2477x@6a { | ||
19 | compatible = "ti,bq2477x"; | ||
20 | reg = <0x6a>; | ||
21 | ti,dac-ichg = <2240>; | ||
22 | ti,dac-v = <9008>; | ||
23 | ti,dac-minsv = <4608>; | ||
24 | ti,dac-iin = <4992>; | ||
25 | ti,wdt-refresh-timeout = <40>; | ||
26 | ti,charger-detect-gpio = <&gpio TEGRA_GPIO(J, 0) GPIO_ACTIVE_LOW>; | ||
27 | }; | ||
28 |
arch/arm/boot/dts/imx6dl-smarcfimx6-1080p.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6dl-smarcfimx6.dts" | ||
10 | |||
11 | /* Dual-Channel LVDS Panel for AUO G240HW01 V0 24-inch Color TFT 1920x1080 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | split-mode; | ||
15 | |||
16 | lvds-channel@0 { | ||
17 | fsl,data-mapping = "spwg"; | ||
18 | fsl,data-width = <24>; | ||
19 | primary; | ||
20 | status = "okay"; | ||
21 | |||
22 | display-timings { | ||
23 | native-mode = <&timing0>; | ||
24 | timing0: g24hw01 { | ||
25 | clock-frequency = <130005200>; | ||
26 | hactive = <1920>; | ||
27 | vactive = <1080>; | ||
28 | hback-porch = <100>; | ||
29 | hfront-porch = <40>; | ||
30 | vback-porch = <30>; | ||
31 | vfront-porch = <3>; | ||
32 | hsync-len = <10>; | ||
33 | vsync-len = <2>; | ||
34 | }; | ||
35 | }; | ||
36 | }; | ||
37 | |||
38 | lvds-channel@1 { | ||
39 | fsl,data-mapping = "spwg"; | ||
40 | fsl,data-width = <24>; | ||
41 | status = "okay"; | ||
42 | |||
43 | display-timings { | ||
44 | native-mode = <&timing1>; | ||
45 | timing1: g24hw01 { | ||
46 | clock-frequency = <130005200>; | ||
47 | hactive = <1920>; | ||
48 | vactive = <1080>; | ||
49 | hback-porch = <100>; | ||
50 | hfront-porch = <40>; | ||
51 | vback-porch = <30>; | ||
52 | vfront-porch = <3>; | ||
53 | hsync-len = <10>; | ||
54 | vsync-len = <2>; | ||
55 | }; | ||
56 | }; | ||
57 | }; | ||
58 | }; | ||
59 |
arch/arm/boot/dts/imx6dl-smarcfimx6-wvga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6dl-smarcfimx6.dts" | ||
10 | |||
11 | /* LVDS Panel for AUO G070VW01 V0 7-inch Color TFT 800x480 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | |||
15 | lvds-channel@0 { | ||
16 | fsl,data-mapping = "spwg"; | ||
17 | fsl,data-width = <24>; | ||
18 | primary; | ||
19 | status = "okay"; | ||
20 | |||
21 | display-timings { | ||
22 | native-mode = <&timing0>; | ||
23 | timing0: g070vw01 { | ||
24 | clock-frequency = <33300000>; | ||
25 | hactive = <800>; | ||
26 | vactive = <480>; | ||
27 | hback-porch = <64>; | ||
28 | hfront-porch = <64>; | ||
29 | vback-porch = <12>; | ||
30 | vfront-porch = <4>; | ||
31 | hsync-len = <128>; | ||
32 | vsync-len = <12>; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | |||
37 | lvds-channel@1 { | ||
38 | fsl,data-mapping = "spwg"; | ||
39 | fsl,data-width = <24>; | ||
40 | status = "okay"; | ||
41 | |||
42 | display-timings { | ||
43 | native-mode = <&timing1>; | ||
44 | timing1: g070vw01 { | ||
45 | clock-frequency = <33300000>; | ||
46 | hactive = <800>; | ||
47 | vactive = <480>; | ||
48 | hback-porch = <64>; | ||
49 | hfront-porch = <64>; | ||
50 | vback-porch = <12>; | ||
51 | vfront-porch = <4>; | ||
52 | hsync-len = <128>; | ||
53 | vsync-len = <12>; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 | }; | ||
58 |
arch/arm/boot/dts/imx6dl-smarcfimx6-wxga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6dl-smarcfimx6.dts" | ||
10 | |||
11 | /* LVDS Panel for AUO G185XW01 V2 18.5-inch Color TFT 1360x768 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | |||
15 | lvds-channel@0 { | ||
16 | fsl,data-mapping = "spwg"; | ||
17 | fsl,data-width = <24>; | ||
18 | primary; | ||
19 | status = "okay"; | ||
20 | |||
21 | display-timings { | ||
22 | native-mode = <&timing0>; | ||
23 | timing0: g185xw01 { | ||
24 | clock-frequency = <78000000>; | ||
25 | hactive = <1360>; | ||
26 | vactive = <768>; | ||
27 | hback-porch = <60>; | ||
28 | hfront-porch = <60>; | ||
29 | vback-porch = <18>; | ||
30 | vfront-porch = <4>; | ||
31 | hsync-len = <120>; | ||
32 | vsync-len = <18>; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | |||
37 | lvds-channel@1 { | ||
38 | fsl,data-mapping = "spwg"; | ||
39 | fsl,data-width = <24>; | ||
40 | status = "okay"; | ||
41 | |||
42 | display-timings { | ||
43 | native-mode = <&timing1>; | ||
44 | timing1: g185xw01 { | ||
45 | clock-frequency = <78000000>; | ||
46 | hactive = <1360>; | ||
47 | vactive = <768>; | ||
48 | hback-porch = <60>; | ||
49 | hfront-porch = <60>; | ||
50 | vback-porch = <18>; | ||
51 | vfront-porch = <4>; | ||
52 | hsync-len = <120>; | ||
53 | vsync-len = <18>; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 | }; | ||
58 |
arch/arm/boot/dts/imx6dl-smarcfimx6-xga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6dl-smarcfimx6.dts" | ||
10 | |||
11 | &ldb { | ||
12 | status = "okay"; | ||
13 | |||
14 | lvds-channel@0 { | ||
15 | fsl,data-mapping = "spwg"; | ||
16 | fsl,data-width = <24>; | ||
17 | primary; | ||
18 | status = "okay"; | ||
19 | |||
20 | display-timings { | ||
21 | native-mode = <&timing0>; | ||
22 | timing0: hsd100pxn1 { | ||
23 | clock-frequency = <65000000>; | ||
24 | hactive = <1024>; | ||
25 | vactive = <768>; | ||
26 | hback-porch = <220>; | ||
27 | hfront-porch = <40>; | ||
28 | vback-porch = <21>; | ||
29 | vfront-porch = <7>; | ||
30 | hsync-len = <60>; | ||
31 | vsync-len = <10>; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
35 | |||
36 | lvds-channel@1 { | ||
37 | fsl,data-mapping = "spwg"; | ||
38 | fsl,data-width = <24>; | ||
39 | status = "okay"; | ||
40 | |||
41 | display-timings { | ||
42 | native-mode = <&timing1>; | ||
43 | timing1: hsd100pxn1 { | ||
44 | clock-frequency = <65000000>; | ||
45 | hactive = <1024>; | ||
46 | vactive = <768>; | ||
47 | hback-porch = <220>; | ||
48 | hfront-porch = <40>; | ||
49 | vback-porch = <21>; | ||
50 | vfront-porch = <7>; | ||
51 | hsync-len = <60>; | ||
52 | vsync-len = <10>; | ||
53 | }; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 |
arch/arm/boot/dts/imx6dl-smarcfimx6.dts
1 | /* | 1 | /* |
2 | * Copyright (C) 2013-2014 Freescale Semiconductor, Inc. | 2 | * Copyright (C) 2013-2014 Freescale Semiconductor, Inc. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify | 4 | * This program is free software; you can redistribute it and/or modify |
5 | * it under the terms of the GNU General Public License version 2 as | 5 | * it under the terms of the GNU General Public License version 2 as |
6 | * published by the Free Software Foundation. | 6 | * published by the Free Software Foundation. |
7 | */ | 7 | */ |
8 | 8 | ||
9 | /dts-v1/; | 9 | /dts-v1/; |
10 | 10 | ||
11 | #include "imx6dl-smarc.dtsi" | 11 | #include "imx6dl-smarc.dtsi" |
12 | #include "imx6qdl-smarcfimx6.dtsi" | 12 | #include "imx6qdl-smarcfimx6.dtsi" |
13 | #include "imx6dl-smarc-common.dtsi" | 13 | #include "imx6dl-smarc-common.dtsi" |
14 | 14 | ||
15 | / { | 15 | / { |
16 | model = "Freescale i.MX6 DualLite SABRE Smart Device Board(PFUZE100)"; | 16 | model = "Freescale i.MX6 DualLite SABRE Smart Device Board(PFUZE100)"; |
17 | compatible = "fsl,imx6dl-sabresd", "fsl,imx6dl", "fsl, imx6dl-smarcfimx6"; | 17 | compatible = "fsl,imx6dl-sabresd", "fsl,imx6dl", "fsl, imx6dl-smarcfimx6"; |
18 | }; | 18 | }; |
19 | 19 | ||
20 | &cpu0 { | 20 | &ldb { |
21 | arm-supply = <®_arm>; | 21 | lvds-channel@0 { |
22 | soc-supply = <®_soc>; | 22 | crtc = "ipu1-di0"; |
23 | pu-supply = <®_pu>; /* use pu_dummy if VDDSOC share with VDDPU */ | 23 | }; |
24 | |||
25 | lvds-channel@1 { | ||
26 | crtc = "ipu1-di1"; | ||
27 | }; | ||
24 | }; | 28 | }; |
25 | 29 | ||
26 | &gpc { | 30 | &mxcfb1 { |
27 | fsl,ldo-bypass = <0>; /* use ldo-bypass, u-boot will check it and configure */ | 31 | status = "okay"; |
28 | fsl,wdog-reset = <1>; /* watchdog select of reset source */ | ||
29 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | ||
30 | }; | 32 | }; |
31 | 33 | ||
32 | &gpu { | 34 | &mxcfb2 { |
33 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | 35 | status = "okay"; |
36 | }; | ||
37 | |||
38 | &pxp { | ||
39 | status = "okay"; | ||
34 | }; | 40 | }; |
35 | 41 | ||
36 | &vpu { | 42 | &vpu { |
37 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | 43 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
38 | }; | 44 | }; |
39 | 45 | ||
40 | &wdog1 { | 46 | &wdog1 { |
41 | status = "okay"; | 47 | status = "okay"; |
42 | }; | 48 | }; |
43 | 49 | ||
44 | &wdog2 { | 50 | &wdog2 { |
45 | status = "disabled"; | 51 | status = "disabled"; |
arch/arm/boot/dts/imx6q-smarcfimx6-1080p.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6q-smarcfimx6.dts" | ||
10 | |||
11 | /* Dual-Channel LVDS Panel for AUO G240HW01 V0 24-inch Color TFT 1920x1080 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | split-mode; | ||
15 | |||
16 | lvds-channel@0 { | ||
17 | fsl,data-mapping = "spwg"; | ||
18 | fsl,data-width = <24>; | ||
19 | primary; | ||
20 | status = "okay"; | ||
21 | |||
22 | display-timings { | ||
23 | native-mode = <&timing0>; | ||
24 | timing0: g24hw01 { | ||
25 | clock-frequency = <130005200>; | ||
26 | hactive = <1920>; | ||
27 | vactive = <1080>; | ||
28 | hback-porch = <100>; | ||
29 | hfront-porch = <40>; | ||
30 | vback-porch = <30>; | ||
31 | vfront-porch = <3>; | ||
32 | hsync-len = <10>; | ||
33 | vsync-len = <2>; | ||
34 | }; | ||
35 | }; | ||
36 | }; | ||
37 | |||
38 | lvds-channel@1 { | ||
39 | fsl,data-mapping = "spwg"; | ||
40 | fsl,data-width = <24>; | ||
41 | status = "okay"; | ||
42 | |||
43 | display-timings { | ||
44 | native-mode = <&timing1>; | ||
45 | timing1: g24hw01 { | ||
46 | clock-frequency = <130005200>; | ||
47 | hactive = <1920>; | ||
48 | vactive = <1080>; | ||
49 | hback-porch = <100>; | ||
50 | hfront-porch = <40>; | ||
51 | vback-porch = <30>; | ||
52 | vfront-porch = <3>; | ||
53 | hsync-len = <10>; | ||
54 | vsync-len = <2>; | ||
55 | }; | ||
56 | }; | ||
57 | }; | ||
58 | }; | ||
59 |
arch/arm/boot/dts/imx6q-smarcfimx6-wvga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6q-smarcfimx6.dts" | ||
10 | |||
11 | /* LVDS Panel for AUO G070VW01 V0 7-inch Color TFT 800x480 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | |||
15 | lvds-channel@0 { | ||
16 | fsl,data-mapping = "spwg"; | ||
17 | fsl,data-width = <24>; | ||
18 | primary; | ||
19 | status = "okay"; | ||
20 | |||
21 | display-timings { | ||
22 | native-mode = <&timing0>; | ||
23 | timing0: g070vw01 { | ||
24 | clock-frequency = <33300000>; | ||
25 | hactive = <800>; | ||
26 | vactive = <480>; | ||
27 | hback-porch = <64>; | ||
28 | hfront-porch = <64>; | ||
29 | vback-porch = <12>; | ||
30 | vfront-porch = <4>; | ||
31 | hsync-len = <128>; | ||
32 | vsync-len = <12>; | ||
33 | /*hsync-active = <0>; | ||
34 | vsync-active = <0>;*/ | ||
35 | }; | ||
36 | }; | ||
37 | }; | ||
38 | |||
39 | lvds-channel@1 { | ||
40 | fsl,data-mapping = "spwg"; | ||
41 | fsl,data-width = <24>; | ||
42 | status = "okay"; | ||
43 | |||
44 | display-timings { | ||
45 | native-mode = <&timing1>; | ||
46 | timing1: g070vw01 { | ||
47 | clock-frequency = <33300000>; | ||
48 | hactive = <800>; | ||
49 | vactive = <480>; | ||
50 | hback-porch = <64>; | ||
51 | hfront-porch = <64>; | ||
52 | vback-porch = <12>; | ||
53 | vfront-porch = <4>; | ||
54 | hsync-len = <128>; | ||
55 | vsync-len = <12>; | ||
56 | /*hsync-active = <0>; | ||
57 | vsync-active = <0>;*/ | ||
58 | }; | ||
59 | }; | ||
60 | }; | ||
61 | }; | ||
62 |
arch/arm/boot/dts/imx6q-smarcfimx6-wxga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6q-smarcfimx6.dts" | ||
10 | |||
11 | /* LVDS Panel for AUO G185XW01 V2 18.5-inch Color TFT 1360x768 Panel Settings */ | ||
12 | &ldb { | ||
13 | status = "okay"; | ||
14 | |||
15 | lvds-channel@0 { | ||
16 | fsl,data-mapping = "spwg"; | ||
17 | fsl,data-width = <24>; | ||
18 | primary; | ||
19 | status = "okay"; | ||
20 | |||
21 | display-timings { | ||
22 | native-mode = <&timing0>; | ||
23 | timing0: g185xw01 { | ||
24 | clock-frequency = <78000000>; | ||
25 | hactive = <1360>; | ||
26 | vactive = <768>; | ||
27 | hback-porch = <60>; | ||
28 | hfront-porch = <60>; | ||
29 | vback-porch = <18>; | ||
30 | vfront-porch = <4>; | ||
31 | hsync-len = <120>; | ||
32 | vsync-len = <18>; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | |||
37 | lvds-channel@1 { | ||
38 | fsl,data-mapping = "spwg"; | ||
39 | fsl,data-width = <24>; | ||
40 | status = "okay"; | ||
41 | |||
42 | display-timings { | ||
43 | native-mode = <&timing1>; | ||
44 | timing1: g185xw01 { | ||
45 | clock-frequency = <78000000>; | ||
46 | hactive = <1360>; | ||
47 | vactive = <768>; | ||
48 | hback-porch = <60>; | ||
49 | hfront-porch = <60>; | ||
50 | vback-porch = <18>; | ||
51 | vfront-porch = <4>; | ||
52 | hsync-len = <120>; | ||
53 | vsync-len = <18>; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 | }; | ||
58 |
arch/arm/boot/dts/imx6q-smarcfimx6-xga.dts
File was created | 1 | /* | |
2 | * Copyright (C) 2015 Embedian, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6q-smarcfimx6.dts" | ||
10 | |||
11 | &ldb { | ||
12 | status = "okay"; | ||
13 | |||
14 | lvds-channel@0 { | ||
15 | fsl,data-mapping = "spwg"; | ||
16 | fsl,data-width = <24>; | ||
17 | primary; | ||
18 | status = "okay"; | ||
19 | |||
20 | display-timings { | ||
21 | native-mode = <&timing0>; | ||
22 | timing0: hsd100pxn1 { | ||
23 | clock-frequency = <65000000>; | ||
24 | hactive = <1024>; | ||
25 | vactive = <768>; | ||
26 | hback-porch = <220>; | ||
27 | hfront-porch = <40>; | ||
28 | vback-porch = <21>; | ||
29 | vfront-porch = <7>; | ||
30 | hsync-len = <60>; | ||
31 | vsync-len = <10>; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
35 | |||
36 | lvds-channel@1 { | ||
37 | fsl,data-mapping = "spwg"; | ||
38 | fsl,data-width = <24>; | ||
39 | status = "okay"; | ||
40 | |||
41 | display-timings { | ||
42 | native-mode = <&timing1>; | ||
43 | timing1: hsd100pxn1 { | ||
44 | clock-frequency = <65000000>; | ||
45 | hactive = <1024>; | ||
46 | vactive = <768>; | ||
47 | hback-porch = <220>; | ||
48 | hfront-porch = <40>; | ||
49 | vback-porch = <21>; | ||
50 | vfront-porch = <7>; | ||
51 | hsync-len = <60>; | ||
52 | vsync-len = <10>; | ||
53 | }; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 |
arch/arm/boot/dts/imx6q-smarcfimx6.dts
1 | /* | 1 | /* |
2 | * Copyright 2012 Freescale Semiconductor, Inc. | 2 | * Copyright 2012 Freescale Semiconductor, Inc. |
3 | * Copyright 2011 Linaro Ltd. | 3 | * Copyright 2011 Linaro Ltd. |
4 | * | 4 | * |
5 | * The code contained herein is licensed under the GNU General Public | 5 | * The code contained herein is licensed under the GNU General Public |
6 | * License. You may obtain a copy of the GNU General Public License | 6 | * License. You may obtain a copy of the GNU General Public License |
7 | * Version 2 or later at the following locations: | 7 | * Version 2 or later at the following locations: |
8 | * | 8 | * |
9 | * http://www.opensource.org/licenses/gpl-license.html | 9 | * http://www.opensource.org/licenses/gpl-license.html |
10 | * http://www.gnu.org/copyleft/gpl.html | 10 | * http://www.gnu.org/copyleft/gpl.html |
11 | */ | 11 | */ |
12 | 12 | ||
13 | /dts-v1/; | 13 | /dts-v1/; |
14 | 14 | ||
15 | #include "imx6q-smarc.dtsi" | 15 | #include "imx6q-smarc.dtsi" |
16 | #include "imx6qdl-smarcfimx6.dtsi" | 16 | #include "imx6qdl-smarcfimx6.dtsi" |
17 | 17 | ||
18 | / { | 18 | / { |
19 | model = "Freescale i.MX6 Dual/Quad SMARC-FiMX6 Computer on Module"; | 19 | model = "Freescale i.MX6 Dual/Quad SMARC-FiMX6 Computer on Module"; |
20 | compatible = "fsl,imx6q-sabresd", "fsl,imx6q", "fsl,imx6q-smarcfimx6"; | 20 | compatible = "fsl,imx6q-sabresd", "fsl,imx6q", "fsl,imx6q-smarcfimx6"; |
21 | }; | 21 | }; |
22 | 22 | ||
23 | &battery { | ||
24 | offset-charger = <1900>; | ||
25 | offset-discharger = <1694>; | ||
26 | offset-usb-charger = <1685>; | ||
27 | }; | ||
28 | |||
29 | &ldb { | 23 | &ldb { |
30 | lvds-channel@0 { | 24 | lvds-channel@0 { |
31 | crtc = "ipu2-di0"; | 25 | crtc = "ipu2-di0"; |
32 | }; | 26 | }; |
33 | 27 | ||
34 | lvds-channel@1 { | 28 | lvds-channel@1 { |
35 | crtc = "ipu2-di1"; | 29 | crtc = "ipu2-di1"; |
36 | }; | 30 | }; |
37 | }; | 31 | }; |
38 | 32 | ||
39 | &mxcfb1 { | 33 | &mxcfb1 { |
40 | status = "okay"; | 34 | status = "okay"; |
41 | }; | 35 | }; |
42 | 36 | ||
43 | &mxcfb2 { | 37 | &mxcfb2 { |
44 | status = "okay"; | 38 | status = "okay"; |
45 | }; | 39 | }; |
46 | 40 | ||
47 | &mxcfb3 { | 41 | &mxcfb3 { |
48 | status = "okay"; | 42 | status = "okay"; |
49 | }; | 43 | }; |
50 | 44 | ||
51 | &mxcfb4 { | 45 | &mxcfb4 { |
52 | status = "okay"; | 46 | status = "okay"; |
53 | }; | 47 | }; |
54 | 48 | ||
55 | &sata { | 49 | &sata { |
56 | status = "okay"; | 50 | status = "okay"; |
57 | }; | ||
58 | |||
59 | &cpu0 { | ||
60 | arm-supply = <®_arm>; | ||
61 | soc-supply = <®_soc>; | ||
62 | pu-supply = <®_pu>; /* use pu_dummy if VDDSOC share with VDDPU */ | ||
63 | }; | ||
64 | |||
65 | &gpc { | ||
66 | fsl,ldo-bypass = <0>; /* use ldo-bypass, u-boot will check it and configure */ | ||
67 | fsl,wdog-reset = <1>; /* watchdog select of reset source */ | ||
68 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | ||
69 | }; | 51 | }; |
70 | 52 | ||
71 | &gpu { | 53 | &gpu { |
72 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | 54 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
73 | }; | 55 | }; |
74 | 56 | ||
75 | &vpu { | 57 | &vpu { |
76 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | 58 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
77 | }; | 59 | }; |
78 | 60 | ||
79 | &wdog1 { | 61 | &wdog1 { |
80 | status = "okay"; | 62 | status = "okay"; |
81 | }; | 63 | }; |
82 | 64 | ||
83 | &wdog2 { | 65 | &wdog2 { |
84 | status = "disabled"; | 66 | status = "disabled"; |
85 | }; | 67 | }; |
86 | 68 |
arch/arm/boot/dts/imx6qdl-smarc.dtsi
1 | /* | 1 | /* |
2 | * Copyright 2011 Freescale Semiconductor, Inc. | 2 | * Copyright 2011 Freescale Semiconductor, Inc. |
3 | * Copyright 2011 Linaro Ltd. | 3 | * Copyright 2011 Linaro Ltd. |
4 | * | 4 | * |
5 | * The code contained herein is licensed under the GNU General Public | 5 | * The code contained herein is licensed under the GNU General Public |
6 | * License. You may obtain a copy of the GNU General Public License | 6 | * License. You may obtain a copy of the GNU General Public License |
7 | * Version 2 or later at the following locations: | 7 | * Version 2 or later at the following locations: |
8 | * | 8 | * |
9 | * http://www.opensource.org/licenses/gpl-license.html | 9 | * http://www.opensource.org/licenses/gpl-license.html |
10 | * http://www.gnu.org/copyleft/gpl.html | 10 | * http://www.gnu.org/copyleft/gpl.html |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #include "skeleton.dtsi" | 13 | #include "skeleton.dtsi" |
14 | #include <dt-bindings/gpio/gpio.h> | 14 | #include <dt-bindings/gpio/gpio.h> |
15 | 15 | ||
16 | / { | 16 | / { |
17 | aliases { | 17 | aliases { |
18 | gpio0 = &gpio1; | 18 | gpio0 = &gpio1; |
19 | gpio1 = &gpio2; | 19 | gpio1 = &gpio2; |
20 | gpio2 = &gpio3; | 20 | gpio2 = &gpio3; |
21 | gpio3 = &gpio4; | 21 | gpio3 = &gpio4; |
22 | gpio4 = &gpio5; | 22 | gpio4 = &gpio5; |
23 | gpio5 = &gpio6; | 23 | gpio5 = &gpio6; |
24 | gpio6 = &gpio7; | 24 | gpio6 = &gpio7; |
25 | ipu0 = &ipu1; | 25 | ipu0 = &ipu1; |
26 | mmc0 = &usdhc1; | 26 | mmc0 = &usdhc1; |
27 | mmc1 = &usdhc2; | 27 | mmc1 = &usdhc2; |
28 | mmc2 = &usdhc3; | 28 | mmc2 = &usdhc3; |
29 | mmc3 = &usdhc4; | 29 | mmc3 = &usdhc4; |
30 | serial0 = &uart1; | 30 | serial0 = &uart1; |
31 | serial1 = &uart2; | 31 | serial1 = &uart2; |
32 | serial2 = &uart3; | 32 | serial2 = &uart3; |
33 | serial3 = &uart4; | 33 | serial3 = &uart4; |
34 | serial4 = &uart5; | 34 | serial4 = &uart5; |
35 | usbphy0 = &usbphy1; | 35 | usbphy0 = &usbphy1; |
36 | usbphy1 = &usbphy2; | 36 | usbphy1 = &usbphy2; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | intc: interrupt-controller@00a01000 { | 39 | intc: interrupt-controller@00a01000 { |
40 | compatible = "arm,cortex-a9-gic"; | 40 | compatible = "arm,cortex-a9-gic"; |
41 | #interrupt-cells = <3>; | 41 | #interrupt-cells = <3>; |
42 | #address-cells = <1>; | 42 | /*#address-cells = <1>; |
43 | #size-cells = <1>; | 43 | #size-cells = <1>;*/ |
44 | interrupt-controller; | 44 | interrupt-controller; |
45 | reg = <0x00a01000 0x1000>, | 45 | reg = <0x00a01000 0x1000>, |
46 | <0x00a00100 0x100>; | 46 | <0x00a00100 0x100>; |
47 | }; | 47 | }; |
48 | 48 | ||
49 | clocks { | 49 | clocks { |
50 | #address-cells = <1>; | 50 | #address-cells = <1>; |
51 | #size-cells = <0>; | 51 | #size-cells = <0>; |
52 | 52 | ||
53 | ckil { | 53 | ckil { |
54 | compatible = "fsl,imx-ckil", "fixed-clock"; | 54 | compatible = "fsl,imx-ckil", "fixed-clock"; |
55 | clock-frequency = <32768>; | 55 | clock-frequency = <32768>; |
56 | }; | 56 | }; |
57 | 57 | ||
58 | ckih1 { | 58 | ckih1 { |
59 | compatible = "fsl,imx-ckih1", "fixed-clock"; | 59 | compatible = "fsl,imx-ckih1", "fixed-clock"; |
60 | clock-frequency = <0>; | 60 | clock-frequency = <0>; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | osc { | 63 | osc { |
64 | compatible = "fsl,imx-osc", "fixed-clock"; | 64 | compatible = "fsl,imx-osc", "fixed-clock"; |
65 | clock-frequency = <24000000>; | 65 | clock-frequency = <24000000>; |
66 | }; | 66 | }; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | pu_dummy: pudummy_reg { | 69 | pu_dummy: pudummy_reg { |
70 | compatible = "fsl,imx6-dummy-pureg"; /* only used in ldo-bypass */ | 70 | compatible = "fsl,imx6-dummy-pureg"; /* only used in ldo-bypass */ |
71 | }; | 71 | }; |
72 | 72 | ||
73 | mxs_viim { | 73 | mxs_viim { |
74 | compatible = "fsl,mxs_viim"; | 74 | compatible = "fsl,mxs_viim"; |
75 | reg = <0x02098000 0x1000>, /* GPT base */ | 75 | reg = <0x02098000 0x1000>, /* GPT base */ |
76 | <0x021bc000 0x1000>; /* OCOTP base */ | 76 | <0x021bc000 0x1000>; /* OCOTP base */ |
77 | }; | 77 | }; |
78 | 78 | ||
79 | soc { | 79 | soc { |
80 | #address-cells = <1>; | 80 | #address-cells = <1>; |
81 | #size-cells = <1>; | 81 | #size-cells = <1>; |
82 | compatible = "simple-bus"; | 82 | compatible = "simple-bus"; |
83 | interrupt-parent = <&intc>; | 83 | interrupt-parent = <&intc>; |
84 | ranges; | 84 | ranges; |
85 | 85 | ||
86 | caam_sm: caam-sm@00100000 { | 86 | caam_sm: caam-sm@00100000 { |
87 | compatible = "fsl,imx6q-caam-sm"; | 87 | compatible = "fsl,imx6q-caam-sm"; |
88 | reg = <0x00100000 0x3fff>; | 88 | reg = <0x00100000 0x3fff>; |
89 | }; | 89 | }; |
90 | 90 | ||
91 | dma_apbh: dma-apbh@00110000 { | 91 | dma_apbh: dma-apbh@00110000 { |
92 | compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh"; | 92 | compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh"; |
93 | reg = <0x00110000 0x2000>; | 93 | reg = <0x00110000 0x2000>; |
94 | interrupts = <0 13 0x04>, <0 13 0x04>, <0 13 0x04>, <0 13 0x04>; | 94 | interrupts = <0 13 0x04>, <0 13 0x04>, <0 13 0x04>, <0 13 0x04>; |
95 | interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3"; | 95 | interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3"; |
96 | #dma-cells = <1>; | 96 | #dma-cells = <1>; |
97 | dma-channels = <4>; | 97 | dma-channels = <4>; |
98 | clocks = <&clks 106>; | 98 | clocks = <&clks 106>; |
99 | }; | 99 | }; |
100 | 100 | ||
101 | irq_sec_vio: caam_secvio { | 101 | irq_sec_vio: caam_secvio { |
102 | compatible = "fsl,imx6q-caam-secvio"; | 102 | compatible = "fsl,imx6q-caam-secvio"; |
103 | interrupts = <0 20 0x04>; | 103 | interrupts = <0 20 0x04>; |
104 | secvio_src = <0x8000001d>; | 104 | secvio_src = <0x8000001d>; |
105 | }; | 105 | }; |
106 | 106 | ||
107 | gpmi: gpmi-nand@00112000 { | 107 | gpmi: gpmi-nand@00112000 { |
108 | compatible = "fsl,imx6q-gpmi-nand"; | 108 | compatible = "fsl,imx6q-gpmi-nand"; |
109 | #address-cells = <1>; | 109 | #address-cells = <1>; |
110 | #size-cells = <1>; | 110 | #size-cells = <1>; |
111 | reg = <0x00112000 0x2000>, <0x00114000 0x2000>; | 111 | reg = <0x00112000 0x2000>, <0x00114000 0x2000>; |
112 | reg-names = "gpmi-nand", "bch"; | 112 | reg-names = "gpmi-nand", "bch"; |
113 | interrupts = <0 15 0x04>; | 113 | interrupts = <0 15 0x04>; |
114 | interrupt-names = "bch"; | 114 | interrupt-names = "bch"; |
115 | clocks = <&clks 152>, <&clks 153>, <&clks 151>, | 115 | clocks = <&clks 152>, <&clks 153>, <&clks 151>, |
116 | <&clks 150>, <&clks 149>; | 116 | <&clks 150>, <&clks 149>; |
117 | clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch", | 117 | clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch", |
118 | "gpmi_bch_apb", "per1_bch"; | 118 | "gpmi_bch_apb", "per1_bch"; |
119 | dmas = <&dma_apbh 0>; | 119 | dmas = <&dma_apbh 0>; |
120 | dma-names = "rx-tx"; | 120 | dma-names = "rx-tx"; |
121 | status = "disabled"; | 121 | status = "disabled"; |
122 | }; | 122 | }; |
123 | 123 | ||
124 | timer@00a00600 { | 124 | timer@00a00600 { |
125 | compatible = "arm,cortex-a9-twd-timer"; | 125 | compatible = "arm,cortex-a9-twd-timer"; |
126 | reg = <0x00a00600 0x20>; | 126 | reg = <0x00a00600 0x20>; |
127 | interrupts = <1 13 0xf01>; | 127 | interrupts = <1 13 0xf01>; |
128 | clocks = <&clks 15>; | 128 | clocks = <&clks 15>; |
129 | }; | 129 | }; |
130 | 130 | ||
131 | L2: l2-cache@00a02000 { | 131 | L2: l2-cache@00a02000 { |
132 | compatible = "arm,pl310-cache"; | 132 | compatible = "arm,pl310-cache"; |
133 | reg = <0x00a02000 0x1000>; | 133 | reg = <0x00a02000 0x1000>; |
134 | interrupts = <0 92 0x04>; | 134 | interrupts = <0 92 0x04>; |
135 | cache-unified; | 135 | cache-unified; |
136 | cache-level = <2>; | 136 | cache-level = <2>; |
137 | arm,tag-latency = <4 2 3>; | 137 | arm,tag-latency = <4 2 3>; |
138 | arm,data-latency = <4 2 3>; | 138 | arm,data-latency = <4 2 3>; |
139 | }; | 139 | }; |
140 | 140 | ||
141 | pcie: pcie@0x01000000 { | 141 | pcie: pcie@0x01000000 { |
142 | compatible = "fsl,imx6q-pcie", "snps,dw-pcie"; | 142 | compatible = "fsl,imx6q-pcie", "snps,dw-pcie"; |
143 | reg = <0x01ffc000 0x4000>; /* DBI */ | 143 | reg = <0x01ffc000 0x4000>; /* DBI */ |
144 | #address-cells = <3>; | 144 | #address-cells = <3>; |
145 | #size-cells = <2>; | 145 | #size-cells = <2>; |
146 | device_type = "pci"; | 146 | device_type = "pci"; |
147 | ranges = <0x00000800 0 0x01f00000 0x01f00000 0 0x00080000 /* configuration space */ | 147 | ranges = <0x00000800 0 0x01f00000 0x01f00000 0 0x00080000 /* configuration space */ |
148 | 0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */ | 148 | 0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */ |
149 | 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */ | 149 | 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */ |
150 | num-lanes = <1>; | 150 | num-lanes = <1>; |
151 | interrupts = <0 123 0x04>; | 151 | interrupts = <0 123 0x04>; |
152 | clocks = <&clks 189>, <&clks 187>, <&clks 144>, <&clks 212>; | 152 | clocks = <&clks 189>, <&clks 187>, <&clks 144>, <&clks 212>; |
153 | clock-names = "pcie_ref_125m", "sata_ref_100m", "pcie_axi", "lvds_gate"; | 153 | clock-names = "pcie_ref_125m", "sata_ref_100m", "pcie_axi", "lvds_gate"; |
154 | status = "disabled"; | 154 | status = "disabled"; |
155 | }; | 155 | }; |
156 | 156 | ||
157 | pmu { | 157 | pmu { |
158 | compatible = "arm,cortex-a9-pmu"; | 158 | compatible = "arm,cortex-a9-pmu"; |
159 | interrupts = <0 94 0x04>; | 159 | interrupts = <0 94 0x04>; |
160 | }; | 160 | }; |
161 | 161 | ||
162 | aips-bus@02000000 { /* AIPS1 */ | 162 | aips-bus@02000000 { /* AIPS1 */ |
163 | compatible = "fsl,aips-bus", "simple-bus"; | 163 | compatible = "fsl,aips-bus", "simple-bus"; |
164 | #address-cells = <1>; | 164 | #address-cells = <1>; |
165 | #size-cells = <1>; | 165 | #size-cells = <1>; |
166 | reg = <0x02000000 0x100000>; | 166 | reg = <0x02000000 0x100000>; |
167 | ranges; | 167 | ranges; |
168 | 168 | ||
169 | spba-bus@02000000 { | 169 | spba-bus@02000000 { |
170 | compatible = "fsl,spba-bus", "simple-bus"; | 170 | compatible = "fsl,spba-bus", "simple-bus"; |
171 | #address-cells = <1>; | 171 | #address-cells = <1>; |
172 | #size-cells = <1>; | 172 | #size-cells = <1>; |
173 | reg = <0x02000000 0x40000>; | 173 | reg = <0x02000000 0x40000>; |
174 | ranges; | 174 | ranges; |
175 | 175 | ||
176 | spdif: spdif@02004000 { | 176 | spdif: spdif@02004000 { |
177 | compatible = "fsl,imx6q-spdif", | 177 | compatible = "fsl,imx6q-spdif", |
178 | "fsl,imx35-spdif"; | 178 | "fsl,imx35-spdif"; |
179 | reg = <0x02004000 0x4000>; | 179 | reg = <0x02004000 0x4000>; |
180 | interrupts = <0 52 0x04>; | 180 | interrupts = <0 52 0x04>; |
181 | dmas = <&sdma 14 18 0>, | 181 | dmas = <&sdma 14 18 0>, |
182 | <&sdma 15 18 0>; | 182 | <&sdma 15 18 0>; |
183 | dma-names = "rx", "tx"; | 183 | dma-names = "rx", "tx"; |
184 | clocks = <&clks 197>, <&clks 3>, | 184 | clocks = <&clks 197>, <&clks 3>, |
185 | <&clks 197>, <&clks 0>, | 185 | <&clks 197>, <&clks 0>, |
186 | <&clks 0>, <&clks 0>, | 186 | <&clks 0>, <&clks 0>, |
187 | <&clks 62>, <&clks 0>, | 187 | <&clks 62>, <&clks 0>, |
188 | <&clks 0>, <&clks 156>; | 188 | <&clks 0>, <&clks 156>; |
189 | clock-names = "core", "rxtx0", | 189 | clock-names = "core", "rxtx0", |
190 | "rxtx1", "rxtx2", | 190 | "rxtx1", "rxtx2", |
191 | "rxtx3", "rxtx4", | 191 | "rxtx3", "rxtx4", |
192 | "rxtx5", "rxtx6", | 192 | "rxtx5", "rxtx6", |
193 | "rxtx7", "dma"; | 193 | "rxtx7", "dma"; |
194 | status = "disabled"; | 194 | status = "disabled"; |
195 | }; | 195 | }; |
196 | 196 | ||
197 | ecspi1: ecspi@02008000 { | 197 | ecspi1: ecspi@02008000 { |
198 | #address-cells = <1>; | 198 | #address-cells = <1>; |
199 | #size-cells = <0>; | 199 | #size-cells = <0>; |
200 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; | 200 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; |
201 | reg = <0x02008000 0x4000>; | 201 | reg = <0x02008000 0x4000>; |
202 | interrupts = <0 31 0x04>; | 202 | interrupts = <0 31 0x04>; |
203 | clocks = <&clks 112>, <&clks 112>; | 203 | clocks = <&clks 112>, <&clks 112>; |
204 | clock-names = "ipg", "per"; | 204 | clock-names = "ipg", "per"; |
205 | status = "disabled"; | 205 | status = "disabled"; |
206 | }; | 206 | }; |
207 | 207 | ||
208 | ecspi2: ecspi@0200c000 { | 208 | ecspi2: ecspi@0200c000 { |
209 | #address-cells = <1>; | 209 | #address-cells = <1>; |
210 | #size-cells = <0>; | 210 | #size-cells = <0>; |
211 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; | 211 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; |
212 | reg = <0x0200c000 0x4000>; | 212 | reg = <0x0200c000 0x4000>; |
213 | interrupts = <0 32 0x04>; | 213 | interrupts = <0 32 0x04>; |
214 | clocks = <&clks 113>, <&clks 113>; | 214 | clocks = <&clks 113>, <&clks 113>; |
215 | clock-names = "ipg", "per"; | 215 | clock-names = "ipg", "per"; |
216 | status = "disabled"; | 216 | status = "disabled"; |
217 | }; | 217 | }; |
218 | 218 | ||
219 | ecspi3: ecspi@02010000 { | 219 | ecspi3: ecspi@02010000 { |
220 | #address-cells = <1>; | 220 | #address-cells = <1>; |
221 | #size-cells = <0>; | 221 | #size-cells = <0>; |
222 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; | 222 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; |
223 | reg = <0x02010000 0x4000>; | 223 | reg = <0x02010000 0x4000>; |
224 | interrupts = <0 33 0x04>; | 224 | interrupts = <0 33 0x04>; |
225 | clocks = <&clks 114>, <&clks 114>; | 225 | clocks = <&clks 114>, <&clks 114>; |
226 | clock-names = "ipg", "per"; | 226 | clock-names = "ipg", "per"; |
227 | status = "disabled"; | 227 | status = "disabled"; |
228 | }; | 228 | }; |
229 | 229 | ||
230 | ecspi4: ecspi@02014000 { | 230 | ecspi4: ecspi@02014000 { |
231 | #address-cells = <1>; | 231 | #address-cells = <1>; |
232 | #size-cells = <0>; | 232 | #size-cells = <0>; |
233 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; | 233 | compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi"; |
234 | reg = <0x02014000 0x4000>; | 234 | reg = <0x02014000 0x4000>; |
235 | interrupts = <0 34 0x04>; | 235 | interrupts = <0 34 0x04>; |
236 | clocks = <&clks 115>, <&clks 115>; | 236 | clocks = <&clks 115>, <&clks 115>; |
237 | clock-names = "ipg", "per"; | 237 | clock-names = "ipg", "per"; |
238 | status = "disabled"; | 238 | status = "disabled"; |
239 | }; | 239 | }; |
240 | 240 | ||
241 | uart1: serial@02020000 { | 241 | uart1: serial@02020000 { |
242 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; | 242 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; |
243 | reg = <0x02020000 0x4000>; | 243 | reg = <0x02020000 0x4000>; |
244 | interrupts = <0 26 0x04>; | 244 | interrupts = <0 26 0x04>; |
245 | clocks = <&clks 160>, <&clks 161>; | 245 | clocks = <&clks 160>, <&clks 161>; |
246 | clock-names = "ipg", "per"; | 246 | clock-names = "ipg", "per"; |
247 | dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; | 247 | dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; |
248 | dma-names = "rx", "tx"; | 248 | dma-names = "rx", "tx"; |
249 | status = "disabled"; | 249 | status = "disabled"; |
250 | }; | 250 | }; |
251 | 251 | ||
252 | esai: esai@02024000 { | 252 | esai: esai@02024000 { |
253 | compatible = "fsl,imx35-esai"; | 253 | compatible = "fsl,imx35-esai"; |
254 | reg = <0x02024000 0x4000>; | 254 | reg = <0x02024000 0x4000>; |
255 | interrupts = <0 51 0x04>; | 255 | interrupts = <0 51 0x04>; |
256 | clocks = <&clks 228>, <&clks 229>, <&clks 118>, <&clks 228>, <&clks 156>; | 256 | clocks = <&clks 228>, <&clks 229>, <&clks 118>, <&clks 228>, <&clks 156>; |
257 | clock-names = "core", "mem", "extal", "fsys", "dma"; | 257 | clock-names = "core", "mem", "extal", "fsys", "dma"; |
258 | fsl,esai-dma-events = <24 23>; | 258 | fsl,esai-dma-events = <24 23>; |
259 | fsl,flags = <1>; | 259 | fsl,flags = <1>; |
260 | status = "disabled"; | 260 | status = "disabled"; |
261 | }; | 261 | }; |
262 | 262 | ||
263 | ssi1: ssi@02028000 { | 263 | ssi1: ssi@02028000 { |
264 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; | 264 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; |
265 | reg = <0x02028000 0x4000>; | 265 | reg = <0x02028000 0x4000>; |
266 | interrupts = <0 46 0x04>; | 266 | interrupts = <0 46 0x04>; |
267 | clocks = <&clks 178>, <&clks 157>; | 267 | clocks = <&clks 178>, <&clks 157>; |
268 | clock-names = "ipg", "baud"; | 268 | clock-names = "ipg", "baud"; |
269 | dmas = <&sdma 37 1 0>, | 269 | dmas = <&sdma 37 1 0>, |
270 | <&sdma 38 1 0>; | 270 | <&sdma 38 1 0>; |
271 | dma-names = "rx", "tx"; | 271 | dma-names = "rx", "tx"; |
272 | status = "disabled"; | 272 | status = "disabled"; |
273 | }; | 273 | }; |
274 | 274 | ||
275 | ssi2: ssi@0202c000 { | 275 | ssi2: ssi@0202c000 { |
276 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; | 276 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; |
277 | reg = <0x0202c000 0x4000>; | 277 | reg = <0x0202c000 0x4000>; |
278 | interrupts = <0 47 0x04>; | 278 | interrupts = <0 47 0x04>; |
279 | clocks = <&clks 179>, <&clks 158>; | 279 | clocks = <&clks 179>, <&clks 158>; |
280 | clock-names = "ipg", "baud"; | 280 | clock-names = "ipg", "baud"; |
281 | dmas = <&sdma 41 1 0>, | 281 | dmas = <&sdma 41 1 0>, |
282 | <&sdma 42 1 0>; | 282 | <&sdma 42 1 0>; |
283 | dma-names = "rx", "tx"; | 283 | dma-names = "rx", "tx"; |
284 | status = "disabled"; | 284 | status = "disabled"; |
285 | }; | 285 | }; |
286 | 286 | ||
287 | ssi3: ssi@02030000 { | 287 | ssi3: ssi@02030000 { |
288 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; | 288 | compatible = "fsl,imx6q-ssi","fsl,imx21-ssi"; |
289 | reg = <0x02030000 0x4000>; | 289 | reg = <0x02030000 0x4000>; |
290 | interrupts = <0 48 0x04>; | 290 | interrupts = <0 48 0x04>; |
291 | clocks = <&clks 180>, <&clks 159>; | 291 | clocks = <&clks 180>, <&clks 159>; |
292 | clock-names = "ipg", "baud"; | 292 | clock-names = "ipg", "baud"; |
293 | dmas = <&sdma 45 1 0>, | 293 | dmas = <&sdma 45 1 0>, |
294 | <&sdma 46 1 0>; | 294 | <&sdma 46 1 0>; |
295 | dma-names = "rx", "tx"; | 295 | dma-names = "rx", "tx"; |
296 | status = "disabled"; | 296 | status = "disabled"; |
297 | }; | 297 | }; |
298 | 298 | ||
299 | asrc: asrc@02034000 { | 299 | asrc: asrc@02034000 { |
300 | compatible = "fsl,imx53-asrc"; | 300 | compatible = "fsl,imx53-asrc"; |
301 | reg = <0x02034000 0x4000>; | 301 | reg = <0x02034000 0x4000>; |
302 | interrupts = <0 50 0x04>; | 302 | interrupts = <0 50 0x04>; |
303 | clocks = <&clks 227>, <&clks 226>, | 303 | clocks = <&clks 227>, <&clks 226>, |
304 | <&clks 225>, <&clks 156>; | 304 | <&clks 225>, <&clks 156>; |
305 | clock-names = "mem", "ipg", "asrck", "dma"; | 305 | clock-names = "mem", "ipg", "asrck", "dma"; |
306 | dmas = <&sdma 17 20 1>, <&sdma 18 20 1>, <&sdma 19 20 1>, | 306 | dmas = <&sdma 17 20 1>, <&sdma 18 20 1>, <&sdma 19 20 1>, |
307 | <&sdma 20 20 1>, <&sdma 21 20 1>, <&sdma 22 20 1>; | 307 | <&sdma 20 20 1>, <&sdma 21 20 1>, <&sdma 22 20 1>; |
308 | dma-names = "rxa", "rxb", "rxc", | 308 | dma-names = "rxa", "rxb", "rxc", |
309 | "txa", "txb", "txc"; | 309 | "txa", "txb", "txc"; |
310 | status = "okay"; | 310 | status = "okay"; |
311 | }; | 311 | }; |
312 | 312 | ||
313 | asrc_p2p: asrc_p2p { | 313 | asrc_p2p: asrc_p2p { |
314 | compatible = "fsl,imx6q-asrc-p2p"; | 314 | compatible = "fsl,imx6q-asrc-p2p"; |
315 | fsl,p2p-rate = <48000>; | 315 | fsl,p2p-rate = <48000>; |
316 | fsl,p2p-width = <16>; | 316 | fsl,p2p-width = <16>; |
317 | fsl,asrc-dma-rx-events = <17 18 19>; | 317 | fsl,asrc-dma-rx-events = <17 18 19>; |
318 | fsl,asrc-dma-tx-events = <20 21 22>; | 318 | fsl,asrc-dma-tx-events = <20 21 22>; |
319 | status = "okay"; | 319 | status = "okay"; |
320 | }; | 320 | }; |
321 | 321 | ||
322 | spba@0203c000 { | 322 | spba@0203c000 { |
323 | reg = <0x0203c000 0x4000>; | 323 | reg = <0x0203c000 0x4000>; |
324 | }; | 324 | }; |
325 | }; | 325 | }; |
326 | 326 | ||
327 | vpu: vpu@02040000 { | 327 | vpu: vpu@02040000 { |
328 | compatible = "fsl,imx6-vpu"; | 328 | compatible = "fsl,imx6-vpu"; |
329 | reg = <0x02040000 0x3c000>; | 329 | reg = <0x02040000 0x3c000>; |
330 | reg-names = "vpu_regs"; | 330 | reg-names = "vpu_regs"; |
331 | interrupts = <0 3 0x01>, <0 12 0x04>; | 331 | interrupts = <0 3 0x01>, <0 12 0x04>; |
332 | interrupt-names = "vpu_jpu_irq", "vpu_ipi_irq"; | 332 | interrupt-names = "vpu_jpu_irq", "vpu_ipi_irq"; |
333 | clocks = <&clks 168>, <&clks 140>, <&clks 142>; | 333 | clocks = <&clks 168>, <&clks 140>, <&clks 142>; |
334 | clock-names = "vpu_clk", "mmdc_ch0_axi", "ocram"; | 334 | clock-names = "vpu_clk", "mmdc_ch0_axi", "ocram"; |
335 | iramsize = <0x21000>; | 335 | iramsize = <0x21000>; |
336 | iram = <&ocram>; | 336 | iram = <&ocram>; |
337 | resets = <&src 1>; | 337 | resets = <&src 1>; |
338 | pu-supply = <®_pu>; | 338 | pu-supply = <®_pu>; |
339 | status = "disabled"; | 339 | status = "disabled"; |
340 | }; | 340 | }; |
341 | 341 | ||
342 | aipstz@0207c000 { /* AIPSTZ1 */ | 342 | aipstz@0207c000 { /* AIPSTZ1 */ |
343 | reg = <0x0207c000 0x4000>; | 343 | reg = <0x0207c000 0x4000>; |
344 | }; | 344 | }; |
345 | 345 | ||
346 | pwm1: pwm@02080000 { | 346 | pwm1: pwm@02080000 { |
347 | #pwm-cells = <2>; | 347 | #pwm-cells = <2>; |
348 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; | 348 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; |
349 | reg = <0x02080000 0x4000>; | 349 | reg = <0x02080000 0x4000>; |
350 | interrupts = <0 83 0x04>; | 350 | interrupts = <0 83 0x04>; |
351 | clocks = <&clks 62>, <&clks 145>; | 351 | clocks = <&clks 62>, <&clks 145>; |
352 | clock-names = "ipg", "per"; | 352 | clock-names = "ipg", "per"; |
353 | }; | 353 | }; |
354 | 354 | ||
355 | pwm2: pwm@02084000 { | 355 | pwm2: pwm@02084000 { |
356 | #pwm-cells = <2>; | 356 | #pwm-cells = <2>; |
357 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; | 357 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; |
358 | reg = <0x02084000 0x4000>; | 358 | reg = <0x02084000 0x4000>; |
359 | interrupts = <0 84 0x04>; | 359 | interrupts = <0 84 0x04>; |
360 | clocks = <&clks 62>, <&clks 146>; | 360 | clocks = <&clks 62>, <&clks 146>; |
361 | clock-names = "ipg", "per"; | 361 | clock-names = "ipg", "per"; |
362 | }; | 362 | }; |
363 | 363 | ||
364 | pwm3: pwm@02088000 { | 364 | pwm3: pwm@02088000 { |
365 | #pwm-cells = <2>; | 365 | #pwm-cells = <2>; |
366 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; | 366 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; |
367 | reg = <0x02088000 0x4000>; | 367 | reg = <0x02088000 0x4000>; |
368 | interrupts = <0 85 0x04>; | 368 | interrupts = <0 85 0x04>; |
369 | clocks = <&clks 62>, <&clks 147>; | 369 | clocks = <&clks 62>, <&clks 147>; |
370 | clock-names = "ipg", "per"; | 370 | clock-names = "ipg", "per"; |
371 | }; | 371 | }; |
372 | 372 | ||
373 | pwm4: pwm@0208c000 { | 373 | pwm4: pwm@0208c000 { |
374 | #pwm-cells = <2>; | 374 | #pwm-cells = <2>; |
375 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; | 375 | compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm"; |
376 | reg = <0x0208c000 0x4000>; | 376 | reg = <0x0208c000 0x4000>; |
377 | interrupts = <0 86 0x04>; | 377 | interrupts = <0 86 0x04>; |
378 | clocks = <&clks 62>, <&clks 148>; | 378 | clocks = <&clks 62>, <&clks 148>; |
379 | clock-names = "ipg", "per"; | 379 | clock-names = "ipg", "per"; |
380 | }; | 380 | }; |
381 | 381 | ||
382 | flexcan1: can@02090000 { | 382 | flexcan1: can@02090000 { |
383 | compatible = "fsl,imx6q-flexcan"; | 383 | compatible = "fsl,imx6q-flexcan"; |
384 | reg = <0x02090000 0x4000>; | 384 | reg = <0x02090000 0x4000>; |
385 | interrupts = <0 110 0x04>; | 385 | interrupts = <0 110 0x04>; |
386 | clocks = <&clks 108>, <&clks 109>; | 386 | clocks = <&clks 108>, <&clks 109>; |
387 | clock-names = "ipg", "per"; | 387 | clock-names = "ipg", "per"; |
388 | stop-mode = <&gpr 0x34 28 0x10 17>; | 388 | stop-mode = <&gpr 0x34 28 0x10 17>; |
389 | status = "disabled"; | 389 | status = "disabled"; |
390 | }; | 390 | }; |
391 | 391 | ||
392 | flexcan2: can@02094000 { | 392 | flexcan2: can@02094000 { |
393 | compatible = "fsl,imx6q-flexcan"; | 393 | compatible = "fsl,imx6q-flexcan"; |
394 | reg = <0x02094000 0x4000>; | 394 | reg = <0x02094000 0x4000>; |
395 | interrupts = <0 111 0x04>; | 395 | interrupts = <0 111 0x04>; |
396 | clocks = <&clks 110>, <&clks 111>; | 396 | clocks = <&clks 110>, <&clks 111>; |
397 | clock-names = "ipg", "per"; | 397 | clock-names = "ipg", "per"; |
398 | stop-mode = <&gpr 0x34 29 0x10 18>; | 398 | stop-mode = <&gpr 0x34 29 0x10 18>; |
399 | status = "disabled"; | 399 | status = "disabled"; |
400 | }; | 400 | }; |
401 | 401 | ||
402 | gpt: gpt@02098000 { | 402 | gpt: gpt@02098000 { |
403 | compatible = "fsl,imx6q-gpt"; | 403 | compatible = "fsl,imx6q-gpt"; |
404 | reg = <0x02098000 0x4000>; | 404 | reg = <0x02098000 0x4000>; |
405 | interrupts = <0 55 0x04>; | 405 | interrupts = <0 55 0x04>; |
406 | clocks = <&clks 119>, <&clks 120>; | 406 | clocks = <&clks 119>, <&clks 120>; |
407 | clock-names = "ipg", "per"; | 407 | clock-names = "ipg", "per"; |
408 | }; | 408 | }; |
409 | 409 | ||
410 | gpio1: gpio@0209c000 { | 410 | gpio1: gpio@0209c000 { |
411 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 411 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
412 | reg = <0x0209c000 0x4000>; | 412 | reg = <0x0209c000 0x4000>; |
413 | interrupts = <0 66 0x04 0 67 0x04>; | 413 | interrupts = <0 66 0x04 0 67 0x04>; |
414 | gpio-controller; | 414 | gpio-controller; |
415 | #gpio-cells = <2>; | 415 | #gpio-cells = <2>; |
416 | interrupt-controller; | 416 | interrupt-controller; |
417 | #interrupt-cells = <2>; | 417 | #interrupt-cells = <2>; |
418 | }; | 418 | }; |
419 | 419 | ||
420 | gpio2: gpio@020a0000 { | 420 | gpio2: gpio@020a0000 { |
421 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 421 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
422 | reg = <0x020a0000 0x4000>; | 422 | reg = <0x020a0000 0x4000>; |
423 | interrupts = <0 68 0x04 0 69 0x04>; | 423 | interrupts = <0 68 0x04 0 69 0x04>; |
424 | gpio-controller; | 424 | gpio-controller; |
425 | #gpio-cells = <2>; | 425 | #gpio-cells = <2>; |
426 | interrupt-controller; | 426 | interrupt-controller; |
427 | #interrupt-cells = <2>; | 427 | #interrupt-cells = <2>; |
428 | }; | 428 | }; |
429 | 429 | ||
430 | gpio3: gpio@020a4000 { | 430 | gpio3: gpio@020a4000 { |
431 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 431 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
432 | reg = <0x020a4000 0x4000>; | 432 | reg = <0x020a4000 0x4000>; |
433 | interrupts = <0 70 0x04 0 71 0x04>; | 433 | interrupts = <0 70 0x04 0 71 0x04>; |
434 | gpio-controller; | 434 | gpio-controller; |
435 | #gpio-cells = <2>; | 435 | #gpio-cells = <2>; |
436 | interrupt-controller; | 436 | interrupt-controller; |
437 | #interrupt-cells = <2>; | 437 | #interrupt-cells = <2>; |
438 | }; | 438 | }; |
439 | 439 | ||
440 | gpio4: gpio@020a8000 { | 440 | gpio4: gpio@020a8000 { |
441 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 441 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
442 | reg = <0x020a8000 0x4000>; | 442 | reg = <0x020a8000 0x4000>; |
443 | interrupts = <0 72 0x04 0 73 0x04>; | 443 | interrupts = <0 72 0x04 0 73 0x04>; |
444 | gpio-controller; | 444 | gpio-controller; |
445 | #gpio-cells = <2>; | 445 | #gpio-cells = <2>; |
446 | interrupt-controller; | 446 | interrupt-controller; |
447 | #interrupt-cells = <2>; | 447 | #interrupt-cells = <2>; |
448 | }; | 448 | }; |
449 | 449 | ||
450 | gpio5: gpio@020ac000 { | 450 | gpio5: gpio@020ac000 { |
451 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 451 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
452 | reg = <0x020ac000 0x4000>; | 452 | reg = <0x020ac000 0x4000>; |
453 | interrupts = <0 74 0x04 0 75 0x04>; | 453 | interrupts = <0 74 0x04 0 75 0x04>; |
454 | gpio-controller; | 454 | gpio-controller; |
455 | #gpio-cells = <2>; | 455 | #gpio-cells = <2>; |
456 | interrupt-controller; | 456 | interrupt-controller; |
457 | #interrupt-cells = <2>; | 457 | #interrupt-cells = <2>; |
458 | }; | 458 | }; |
459 | 459 | ||
460 | gpio6: gpio@020b0000 { | 460 | gpio6: gpio@020b0000 { |
461 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 461 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
462 | reg = <0x020b0000 0x4000>; | 462 | reg = <0x020b0000 0x4000>; |
463 | interrupts = <0 76 0x04 0 77 0x04>; | 463 | interrupts = <0 76 0x04 0 77 0x04>; |
464 | gpio-controller; | 464 | gpio-controller; |
465 | #gpio-cells = <2>; | 465 | #gpio-cells = <2>; |
466 | interrupt-controller; | 466 | interrupt-controller; |
467 | #interrupt-cells = <2>; | 467 | #interrupt-cells = <2>; |
468 | }; | 468 | }; |
469 | 469 | ||
470 | gpio7: gpio@020b4000 { | 470 | gpio7: gpio@020b4000 { |
471 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; | 471 | compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio"; |
472 | reg = <0x020b4000 0x4000>; | 472 | reg = <0x020b4000 0x4000>; |
473 | interrupts = <0 78 0x04 0 79 0x04>; | 473 | interrupts = <0 78 0x04 0 79 0x04>; |
474 | gpio-controller; | 474 | gpio-controller; |
475 | #gpio-cells = <2>; | 475 | #gpio-cells = <2>; |
476 | interrupt-controller; | 476 | interrupt-controller; |
477 | #interrupt-cells = <2>; | 477 | #interrupt-cells = <2>; |
478 | }; | 478 | }; |
479 | 479 | ||
480 | kpp: kpp@020b8000 { | 480 | kpp: kpp@020b8000 { |
481 | reg = <0x020b8000 0x4000>; | 481 | reg = <0x020b8000 0x4000>; |
482 | interrupts = <0 82 0x04>; | 482 | interrupts = <0 82 0x04>; |
483 | }; | 483 | }; |
484 | 484 | ||
485 | wdog1: wdog@020bc000 { | 485 | wdog1: wdog@020bc000 { |
486 | compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt"; | 486 | compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt"; |
487 | reg = <0x020bc000 0x4000>; | 487 | reg = <0x020bc000 0x4000>; |
488 | interrupts = <0 80 0x04>; | 488 | interrupts = <0 80 0x04>; |
489 | clocks = <&clks 0>; | 489 | clocks = <&clks 0>; |
490 | }; | 490 | }; |
491 | 491 | ||
492 | wdog2: wdog@020c0000 { | 492 | wdog2: wdog@020c0000 { |
493 | compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt"; | 493 | compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt"; |
494 | reg = <0x020c0000 0x4000>; | 494 | reg = <0x020c0000 0x4000>; |
495 | interrupts = <0 81 0x04>; | 495 | interrupts = <0 81 0x04>; |
496 | clocks = <&clks 0>; | 496 | clocks = <&clks 0>; |
497 | status = "disabled"; | 497 | status = "disabled"; |
498 | }; | 498 | }; |
499 | 499 | ||
500 | clks: ccm@020c4000 { | 500 | clks: ccm@020c4000 { |
501 | compatible = "fsl,imx6q-ccm"; | 501 | compatible = "fsl,imx6q-ccm"; |
502 | reg = <0x020c4000 0x4000>; | 502 | reg = <0x020c4000 0x4000>; |
503 | interrupts = <0 87 0x04 0 88 0x04>; | 503 | interrupts = <0 87 0x04 0 88 0x04>; |
504 | #clock-cells = <1>; | 504 | #clock-cells = <1>; |
505 | }; | 505 | }; |
506 | 506 | ||
507 | anatop: anatop@020c8000 { | 507 | anatop: anatop@020c8000 { |
508 | compatible = "fsl,imx6q-anatop", "syscon", "simple-bus"; | 508 | compatible = "fsl,imx6q-anatop", "syscon", "simple-bus"; |
509 | reg = <0x020c8000 0x1000>; | 509 | reg = <0x020c8000 0x1000>; |
510 | interrupts = <0 49 0x04 0 54 0x04 0 127 0x04>; | 510 | interrupts = <0 49 0x04 0 54 0x04 0 127 0x04>; |
511 | 511 | ||
512 | regulator-1p1@110 { | 512 | regulator-1p1@110 { |
513 | compatible = "fsl,anatop-regulator"; | 513 | compatible = "fsl,anatop-regulator"; |
514 | regulator-name = "vdd1p1"; | 514 | regulator-name = "vdd1p1"; |
515 | regulator-min-microvolt = <800000>; | 515 | regulator-min-microvolt = <800000>; |
516 | regulator-max-microvolt = <1375000>; | 516 | regulator-max-microvolt = <1375000>; |
517 | regulator-always-on; | 517 | regulator-always-on; |
518 | anatop-reg-offset = <0x110>; | 518 | anatop-reg-offset = <0x110>; |
519 | anatop-vol-bit-shift = <8>; | 519 | anatop-vol-bit-shift = <8>; |
520 | anatop-vol-bit-width = <5>; | 520 | anatop-vol-bit-width = <5>; |
521 | anatop-min-bit-val = <4>; | 521 | anatop-min-bit-val = <4>; |
522 | anatop-min-voltage = <800000>; | 522 | anatop-min-voltage = <800000>; |
523 | anatop-max-voltage = <1375000>; | 523 | anatop-max-voltage = <1375000>; |
524 | }; | 524 | }; |
525 | 525 | ||
526 | regulator-3p0@120 { | 526 | regulator-3p0@120 { |
527 | compatible = "fsl,anatop-regulator"; | 527 | compatible = "fsl,anatop-regulator"; |
528 | regulator-name = "vdd3p0"; | 528 | regulator-name = "vdd3p0"; |
529 | regulator-min-microvolt = <2800000>; | 529 | regulator-min-microvolt = <2800000>; |
530 | regulator-max-microvolt = <3150000>; | 530 | regulator-max-microvolt = <3150000>; |
531 | regulator-always-on; | 531 | regulator-always-on; |
532 | anatop-reg-offset = <0x120>; | 532 | anatop-reg-offset = <0x120>; |
533 | anatop-vol-bit-shift = <8>; | 533 | anatop-vol-bit-shift = <8>; |
534 | anatop-vol-bit-width = <5>; | 534 | anatop-vol-bit-width = <5>; |
535 | anatop-min-bit-val = <0>; | 535 | anatop-min-bit-val = <0>; |
536 | anatop-min-voltage = <2625000>; | 536 | anatop-min-voltage = <2625000>; |
537 | anatop-max-voltage = <3400000>; | 537 | anatop-max-voltage = <3400000>; |
538 | }; | 538 | }; |
539 | 539 | ||
540 | regulator-2p5@130 { | 540 | regulator-2p5@130 { |
541 | compatible = "fsl,anatop-regulator"; | 541 | compatible = "fsl,anatop-regulator"; |
542 | regulator-name = "vdd2p5"; | 542 | regulator-name = "vdd2p5"; |
543 | regulator-min-microvolt = <2000000>; | 543 | regulator-min-microvolt = <2000000>; |
544 | regulator-max-microvolt = <2750000>; | 544 | regulator-max-microvolt = <2750000>; |
545 | regulator-always-on; | 545 | regulator-always-on; |
546 | anatop-reg-offset = <0x130>; | 546 | anatop-reg-offset = <0x130>; |
547 | anatop-vol-bit-shift = <8>; | 547 | anatop-vol-bit-shift = <8>; |
548 | anatop-vol-bit-width = <5>; | 548 | anatop-vol-bit-width = <5>; |
549 | anatop-min-bit-val = <0>; | 549 | anatop-min-bit-val = <0>; |
550 | anatop-min-voltage = <2000000>; | 550 | anatop-min-voltage = <2000000>; |
551 | anatop-max-voltage = <2750000>; | 551 | anatop-max-voltage = <2750000>; |
552 | }; | 552 | }; |
553 | 553 | ||
554 | reg_arm: regulator-vddcore@140 { | 554 | reg_arm: regulator-vddcore@140 { |
555 | compatible = "fsl,anatop-regulator"; | 555 | compatible = "fsl,anatop-regulator"; |
556 | regulator-name = "cpu"; | 556 | regulator-name = "cpu"; |
557 | regulator-min-microvolt = <725000>; | 557 | regulator-min-microvolt = <725000>; |
558 | regulator-max-microvolt = <1450000>; | 558 | regulator-max-microvolt = <1450000>; |
559 | regulator-always-on; | 559 | regulator-always-on; |
560 | anatop-reg-offset = <0x140>; | 560 | anatop-reg-offset = <0x140>; |
561 | anatop-vol-bit-shift = <0>; | 561 | anatop-vol-bit-shift = <0>; |
562 | anatop-vol-bit-width = <5>; | 562 | anatop-vol-bit-width = <5>; |
563 | anatop-delay-reg-offset = <0x170>; | 563 | anatop-delay-reg-offset = <0x170>; |
564 | anatop-delay-bit-shift = <24>; | 564 | anatop-delay-bit-shift = <24>; |
565 | anatop-delay-bit-width = <2>; | 565 | anatop-delay-bit-width = <2>; |
566 | anatop-min-bit-val = <1>; | 566 | anatop-min-bit-val = <1>; |
567 | anatop-min-voltage = <725000>; | 567 | anatop-min-voltage = <725000>; |
568 | anatop-max-voltage = <1450000>; | 568 | anatop-max-voltage = <1450000>; |
569 | }; | 569 | }; |
570 | 570 | ||
571 | reg_pu: regulator-vddpu@140 { | 571 | reg_pu: regulator-vddpu@140 { |
572 | compatible = "fsl,anatop-regulator"; | 572 | compatible = "fsl,anatop-regulator"; |
573 | regulator-name = "vddpu"; | 573 | regulator-name = "vddpu"; |
574 | regulator-min-microvolt = <725000>; | 574 | regulator-min-microvolt = <725000>; |
575 | regulator-max-microvolt = <1450000>; | 575 | regulator-max-microvolt = <1450000>; |
576 | anatop-reg-offset = <0x140>; | 576 | anatop-reg-offset = <0x140>; |
577 | anatop-vol-bit-shift = <9>; | 577 | anatop-vol-bit-shift = <9>; |
578 | anatop-vol-bit-width = <5>; | 578 | anatop-vol-bit-width = <5>; |
579 | anatop-delay-reg-offset = <0x170>; | 579 | anatop-delay-reg-offset = <0x170>; |
580 | anatop-delay-bit-shift = <26>; | 580 | anatop-delay-bit-shift = <26>; |
581 | anatop-delay-bit-width = <2>; | 581 | anatop-delay-bit-width = <2>; |
582 | anatop-min-bit-val = <1>; | 582 | anatop-min-bit-val = <1>; |
583 | anatop-min-voltage = <725000>; | 583 | anatop-min-voltage = <725000>; |
584 | anatop-max-voltage = <1450000>; | 584 | anatop-max-voltage = <1450000>; |
585 | }; | 585 | }; |
586 | 586 | ||
587 | reg_soc: regulator-vddsoc@140 { | 587 | reg_soc: regulator-vddsoc@140 { |
588 | compatible = "fsl,anatop-regulator"; | 588 | compatible = "fsl,anatop-regulator"; |
589 | regulator-name = "vddsoc"; | 589 | regulator-name = "vddsoc"; |
590 | regulator-min-microvolt = <725000>; | 590 | regulator-min-microvolt = <725000>; |
591 | regulator-max-microvolt = <1450000>; | 591 | regulator-max-microvolt = <1450000>; |
592 | regulator-always-on; | 592 | regulator-always-on; |
593 | anatop-reg-offset = <0x140>; | 593 | anatop-reg-offset = <0x140>; |
594 | anatop-vol-bit-shift = <18>; | 594 | anatop-vol-bit-shift = <18>; |
595 | anatop-vol-bit-width = <5>; | 595 | anatop-vol-bit-width = <5>; |
596 | anatop-delay-reg-offset = <0x170>; | 596 | anatop-delay-reg-offset = <0x170>; |
597 | anatop-delay-bit-shift = <28>; | 597 | anatop-delay-bit-shift = <28>; |
598 | anatop-delay-bit-width = <2>; | 598 | anatop-delay-bit-width = <2>; |
599 | anatop-min-bit-val = <1>; | 599 | anatop-min-bit-val = <1>; |
600 | anatop-min-voltage = <725000>; | 600 | anatop-min-voltage = <725000>; |
601 | anatop-max-voltage = <1450000>; | 601 | anatop-max-voltage = <1450000>; |
602 | }; | 602 | }; |
603 | }; | 603 | }; |
604 | 604 | ||
605 | tempmon: tempmon { | 605 | tempmon: tempmon { |
606 | compatible = "fsl,imx6q-tempmon"; | 606 | compatible = "fsl,imx6q-tempmon"; |
607 | interrupts = <0 49 0x04>; | 607 | interrupts = <0 49 0x04>; |
608 | fsl,tempmon = <&anatop>; | 608 | fsl,tempmon = <&anatop>; |
609 | fsl,tempmon-data = <&ocotp>; | 609 | fsl,tempmon-data = <&ocotp>; |
610 | clocks = <&clks 172>; | 610 | clocks = <&clks 172>; |
611 | }; | 611 | }; |
612 | 612 | ||
613 | usbphy1: usbphy@020c9000 { | 613 | usbphy1: usbphy@020c9000 { |
614 | compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; | 614 | compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; |
615 | reg = <0x020c9000 0x1000>; | 615 | reg = <0x020c9000 0x1000>; |
616 | interrupts = <0 44 0x04>; | 616 | interrupts = <0 44 0x04>; |
617 | clocks = <&clks 182>; | 617 | clocks = <&clks 182>; |
618 | fsl,anatop = <&anatop>; | 618 | fsl,anatop = <&anatop>; |
619 | }; | 619 | }; |
620 | 620 | ||
621 | usbphy2: usbphy@020ca000 { | 621 | usbphy2: usbphy@020ca000 { |
622 | compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; | 622 | compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; |
623 | reg = <0x020ca000 0x1000>; | 623 | reg = <0x020ca000 0x1000>; |
624 | interrupts = <0 45 0x04>; | 624 | interrupts = <0 45 0x04>; |
625 | clocks = <&clks 183>; | 625 | clocks = <&clks 183>; |
626 | fsl,anatop = <&anatop>; | 626 | fsl,anatop = <&anatop>; |
627 | }; | 627 | }; |
628 | 628 | ||
629 | usbphy_nop1: usbphy_nop1 { | 629 | usbphy_nop1: usbphy_nop1 { |
630 | compatible = "usb-nop-xceiv"; | 630 | compatible = "usb-nop-xceiv"; |
631 | clocks = <&clks 182>; | 631 | clocks = <&clks 182>; |
632 | clock-names = "main_clk"; | 632 | clock-names = "main_clk"; |
633 | }; | 633 | }; |
634 | 634 | ||
635 | usbphy_nop2: usbphy_nop2 { | 635 | usbphy_nop2: usbphy_nop2 { |
636 | compatible = "usb-nop-xceiv"; | 636 | compatible = "usb-nop-xceiv"; |
637 | clocks = <&clks 182>; | 637 | clocks = <&clks 182>; |
638 | clock-names = "main_clk"; | 638 | clock-names = "main_clk"; |
639 | }; | 639 | }; |
640 | 640 | ||
641 | caam_snvs: caam-snvs@020cc000 { | 641 | caam_snvs: caam-snvs@020cc000 { |
642 | compatible = "fsl,imx6q-caam-snvs"; | 642 | compatible = "fsl,imx6q-caam-snvs"; |
643 | reg = <0x020cc000 0x4000>; | 643 | reg = <0x020cc000 0x4000>; |
644 | }; | 644 | }; |
645 | 645 | ||
646 | snvs@020cc000 { | 646 | snvs@020cc000 { |
647 | compatible = "fsl,sec-v4.0-mon", "simple-bus"; | 647 | compatible = "fsl,sec-v4.0-mon", "simple-bus"; |
648 | #address-cells = <1>; | 648 | #address-cells = <1>; |
649 | #size-cells = <1>; | 649 | #size-cells = <1>; |
650 | ranges = <0 0x020cc000 0x4000>; | 650 | ranges = <0 0x020cc000 0x4000>; |
651 | 651 | ||
652 | snvs-rtc-lp@34 { | 652 | snvs-rtc-lp@34 { |
653 | compatible = "fsl,sec-v4.0-mon-rtc-lp"; | 653 | compatible = "fsl,sec-v4.0-mon-rtc-lp"; |
654 | reg = <0x34 0x58>; | 654 | reg = <0x34 0x58>; |
655 | interrupts = <0 19 0x04 0 20 0x04>; | 655 | interrupts = <0 19 0x04 0 20 0x04>; |
656 | }; | 656 | }; |
657 | }; | 657 | }; |
658 | 658 | ||
659 | epit1: epit@020d0000 { /* EPIT1 */ | 659 | epit1: epit@020d0000 { /* EPIT1 */ |
660 | reg = <0x020d0000 0x4000>; | 660 | reg = <0x020d0000 0x4000>; |
661 | interrupts = <0 56 0x04>; | 661 | interrupts = <0 56 0x04>; |
662 | }; | 662 | }; |
663 | 663 | ||
664 | epit2: epit@020d4000 { /* EPIT2 */ | 664 | epit2: epit@020d4000 { /* EPIT2 */ |
665 | reg = <0x020d4000 0x4000>; | 665 | reg = <0x020d4000 0x4000>; |
666 | interrupts = <0 57 0x04>; | 666 | interrupts = <0 57 0x04>; |
667 | }; | 667 | }; |
668 | 668 | ||
669 | src: src@020d8000 { | 669 | src: src@020d8000 { |
670 | compatible = "fsl,imx6q-src", "fsl,imx51-src"; | 670 | compatible = "fsl,imx6q-src", "fsl,imx51-src"; |
671 | reg = <0x020d8000 0x4000>; | 671 | reg = <0x020d8000 0x4000>; |
672 | interrupts = <0 91 0x04 0 96 0x04>; | 672 | interrupts = <0 91 0x04 0 96 0x04>; |
673 | #reset-cells = <1>; | 673 | #reset-cells = <1>; |
674 | }; | 674 | }; |
675 | 675 | ||
676 | gpc: gpc@020dc000 { | 676 | gpc: gpc@020dc000 { |
677 | compatible = "fsl,imx6q-gpc"; | 677 | compatible = "fsl,imx6q-gpc"; |
678 | reg = <0x020dc000 0x4000>; | 678 | reg = <0x020dc000 0x4000>; |
679 | interrupts = <0 89 0x04 0 90 0x04>; | 679 | interrupts = <0 89 0x04 0 90 0x04>; |
680 | clocks = <&clks 122>, <&clks 74>, <&clks 121>, | 680 | clocks = <&clks 122>, <&clks 74>, <&clks 121>, |
681 | <&clks 26>, <&clks 143>, <&clks 168>, <&clks 62>; | 681 | <&clks 26>, <&clks 143>, <&clks 168>, <&clks 62>; |
682 | clock-names = "gpu3d_core", "gpu3d_shader", "gpu2d_core", | 682 | clock-names = "gpu3d_core", "gpu3d_shader", "gpu2d_core", |
683 | "gpu2d_axi", "openvg_axi", "vpu_axi", "ipg"; | 683 | "gpu2d_axi", "openvg_axi", "vpu_axi", "ipg"; |
684 | pu-supply = <®_pu>; | 684 | pu-supply = <®_pu>; |
685 | }; | 685 | }; |
686 | 686 | ||
687 | gpr: iomuxc-gpr@020e0000 { | 687 | gpr: iomuxc-gpr@020e0000 { |
688 | compatible = "fsl,imx6q-iomuxc-gpr", "syscon"; | 688 | compatible = "fsl,imx6q-iomuxc-gpr", "syscon"; |
689 | reg = <0x020e0000 0x38>; | 689 | reg = <0x020e0000 0x38>; |
690 | }; | 690 | }; |
691 | 691 | ||
692 | iomuxc: iomuxc@020e0000 { | 692 | iomuxc: iomuxc@020e0000 { |
693 | reg = <0x020e0000 0x4000>; | 693 | reg = <0x020e0000 0x4000>; |
694 | }; | 694 | }; |
695 | 695 | ||
696 | ldb: ldb@020e0008 { | 696 | ldb: ldb@020e0008 { |
697 | #address-cells = <1>; | 697 | #address-cells = <1>; |
698 | #size-cells = <0>; | 698 | #size-cells = <0>; |
699 | gpr = <&gpr>; | 699 | gpr = <&gpr>; |
700 | status = "disabled"; | 700 | status = "disabled"; |
701 | 701 | ||
702 | lvds-channel@0 { | 702 | lvds-channel@0 { |
703 | reg = <0>; | 703 | reg = <0>; |
704 | status = "disabled"; | 704 | status = "disabled"; |
705 | }; | 705 | }; |
706 | 706 | ||
707 | lvds-channel@1 { | 707 | lvds-channel@1 { |
708 | reg = <1>; | 708 | reg = <1>; |
709 | status = "disabled"; | 709 | status = "disabled"; |
710 | }; | 710 | }; |
711 | }; | 711 | }; |
712 | 712 | ||
713 | dcic1: dcic@020e4000 { | 713 | dcic1: dcic@020e4000 { |
714 | compatible = "fsl,imx6q-dcic"; | 714 | compatible = "fsl,imx6q-dcic"; |
715 | reg = <0x020e4000 0x4000>; | 715 | reg = <0x020e4000 0x4000>; |
716 | interrupts = <0 124 0x04>; | 716 | interrupts = <0 124 0x04>; |
717 | clocks = <&clks 231>, <&clks 231>; | 717 | clocks = <&clks 231>, <&clks 231>; |
718 | clock-names = "dcic", "disp-axi"; | 718 | clock-names = "dcic", "disp-axi"; |
719 | gpr = <&gpr>; | 719 | gpr = <&gpr>; |
720 | status = "disabled"; | 720 | status = "disabled"; |
721 | }; | 721 | }; |
722 | 722 | ||
723 | dcic2: dcic@020e8000 { | 723 | dcic2: dcic@020e8000 { |
724 | compatible = "fsl,imx6q-dcic"; | 724 | compatible = "fsl,imx6q-dcic"; |
725 | reg = <0x020e8000 0x4000>; | 725 | reg = <0x020e8000 0x4000>; |
726 | interrupts = <0 125 0x04>; | 726 | interrupts = <0 125 0x04>; |
727 | clocks = <&clks 232>, <&clks 232>; | 727 | clocks = <&clks 232>, <&clks 232>; |
728 | clock-names = "dcic", "disp-axi"; | 728 | clock-names = "dcic", "disp-axi"; |
729 | gpr = <&gpr>; | 729 | gpr = <&gpr>; |
730 | status = "disabled"; | 730 | status = "disabled"; |
731 | }; | 731 | }; |
732 | 732 | ||
733 | sdma: sdma@020ec000 { | 733 | sdma: sdma@020ec000 { |
734 | compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma"; | 734 | compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma"; |
735 | reg = <0x020ec000 0x4000>; | 735 | reg = <0x020ec000 0x4000>; |
736 | interrupts = <0 2 0x04>; | 736 | interrupts = <0 2 0x04>; |
737 | clocks = <&clks 155>, <&clks 155>; | 737 | clocks = <&clks 155>, <&clks 155>; |
738 | clock-names = "ipg", "ahb"; | 738 | clock-names = "ipg", "ahb"; |
739 | #dma-cells = <3>; | 739 | #dma-cells = <3>; |
740 | fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin"; | 740 | fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin"; |
741 | }; | 741 | }; |
742 | }; | 742 | }; |
743 | 743 | ||
744 | aips-bus@02100000 { /* AIPS2 */ | 744 | aips-bus@02100000 { /* AIPS2 */ |
745 | compatible = "fsl,aips-bus", "simple-bus"; | 745 | compatible = "fsl,aips-bus", "simple-bus"; |
746 | #address-cells = <1>; | 746 | #address-cells = <1>; |
747 | #size-cells = <1>; | 747 | #size-cells = <1>; |
748 | reg = <0x02100000 0x100000>; | 748 | reg = <0x02100000 0x100000>; |
749 | ranges; | 749 | ranges; |
750 | 750 | ||
751 | crypto: caam@2100000 { | 751 | crypto: caam@2100000 { |
752 | compatible = "fsl,sec-v4.0"; | 752 | compatible = "fsl,sec-v4.0"; |
753 | #address-cells = <1>; | 753 | #address-cells = <1>; |
754 | #size-cells = <1>; | 754 | #size-cells = <1>; |
755 | reg = <0x2100000 0x40000>; | 755 | reg = <0x2100000 0x40000>; |
756 | ranges = <0 0x2100000 0x40000>; | 756 | ranges = <0 0x2100000 0x40000>; |
757 | interrupt-parent = <&intc>; /* interrupts = <0 92 0x4>; */ | 757 | interrupt-parent = <&intc>; /* interrupts = <0 92 0x4>; */ |
758 | clocks = <&clks 213>, <&clks 214>, <&clks 215> ,<&clks 196>; | 758 | clocks = <&clks 213>, <&clks 214>, <&clks 215> ,<&clks 196>; |
759 | clock-names = "caam_mem", "caam_aclk", "caam_ipg", "caam_emi_slow"; | 759 | clock-names = "caam_mem", "caam_aclk", "caam_ipg", "caam_emi_slow"; |
760 | 760 | ||
761 | sec_jr0: jr0@1000 { | 761 | sec_jr0: jr0@1000 { |
762 | compatible = "fsl,sec-v4.0-job-ring"; | 762 | compatible = "fsl,sec-v4.0-job-ring"; |
763 | reg = <0x1000 0x1000>; | 763 | reg = <0x1000 0x1000>; |
764 | interrupt-parent = <&intc>; | 764 | interrupt-parent = <&intc>; |
765 | interrupts = <0 105 0x4>; | 765 | interrupts = <0 105 0x4>; |
766 | }; | 766 | }; |
767 | 767 | ||
768 | sec_jr1: jr1@2000 { | 768 | sec_jr1: jr1@2000 { |
769 | compatible = "fsl,sec-v4.0-job-ring"; | 769 | compatible = "fsl,sec-v4.0-job-ring"; |
770 | reg = <0x2000 0x1000>; | 770 | reg = <0x2000 0x1000>; |
771 | interrupt-parent = <&intc>; | 771 | interrupt-parent = <&intc>; |
772 | interrupts = <0 106 0x4>; | 772 | interrupts = <0 106 0x4>; |
773 | }; | 773 | }; |
774 | }; | 774 | }; |
775 | 775 | ||
776 | aipstz@0217c000 { /* AIPSTZ2 */ | 776 | aipstz@0217c000 { /* AIPSTZ2 */ |
777 | reg = <0x0217c000 0x4000>; | 777 | reg = <0x0217c000 0x4000>; |
778 | }; | 778 | }; |
779 | 779 | ||
780 | usbotg: usb@02184000 { | 780 | usbotg: usb@02184000 { |
781 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; | 781 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; |
782 | reg = <0x02184000 0x200>; | 782 | reg = <0x02184000 0x200>; |
783 | interrupts = <0 43 0x04>; | 783 | interrupts = <0 43 0x04>; |
784 | clocks = <&clks 162>; | 784 | clocks = <&clks 162>; |
785 | fsl,usbphy = <&usbphy1>; | 785 | fsl,usbphy = <&usbphy1>; |
786 | fsl,usbmisc = <&usbmisc 0>; | 786 | fsl,usbmisc = <&usbmisc 0>; |
787 | fsl,anatop = <&anatop>; | 787 | fsl,anatop = <&anatop>; |
788 | status = "disabled"; | 788 | status = "disabled"; |
789 | }; | 789 | }; |
790 | 790 | ||
791 | usbh1: usb@02184200 { | 791 | usbh1: usb@02184200 { |
792 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; | 792 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; |
793 | reg = <0x02184200 0x200>; | 793 | reg = <0x02184200 0x200>; |
794 | interrupts = <0 40 0x04>; | 794 | interrupts = <0 40 0x04>; |
795 | clocks = <&clks 162>; | 795 | clocks = <&clks 162>; |
796 | fsl,usbphy = <&usbphy2>; | 796 | fsl,usbphy = <&usbphy2>; |
797 | fsl,usbmisc = <&usbmisc 1>; | 797 | fsl,usbmisc = <&usbmisc 1>; |
798 | status = "disabled"; | 798 | status = "disabled"; |
799 | }; | 799 | }; |
800 | 800 | ||
801 | usbh2: usb@02184400 { | 801 | usbh2: usb@02184400 { |
802 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; | 802 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; |
803 | reg = <0x02184400 0x200>; | 803 | reg = <0x02184400 0x200>; |
804 | interrupts = <0 41 0x04>; | 804 | interrupts = <0 41 0x04>; |
805 | clocks = <&clks 162>; | 805 | clocks = <&clks 162>; |
806 | fsl,usbmisc = <&usbmisc 2>; | 806 | fsl,usbmisc = <&usbmisc 2>; |
807 | phy_type = "hsic"; | 807 | phy_type = "hsic"; |
808 | fsl,usbphy = <&usbphy_nop1>; | 808 | fsl,usbphy = <&usbphy_nop1>; |
809 | fsl,anatop = <&anatop>; | 809 | fsl,anatop = <&anatop>; |
810 | status = "disabled"; | 810 | status = "disabled"; |
811 | }; | 811 | }; |
812 | 812 | ||
813 | usbh3: usb@02184600 { | 813 | usbh3: usb@02184600 { |
814 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; | 814 | compatible = "fsl,imx6q-usb", "fsl,imx27-usb"; |
815 | reg = <0x02184600 0x200>; | 815 | reg = <0x02184600 0x200>; |
816 | interrupts = <0 42 0x04>; | 816 | interrupts = <0 42 0x04>; |
817 | clocks = <&clks 162>; | 817 | clocks = <&clks 162>; |
818 | fsl,usbmisc = <&usbmisc 3>; | 818 | fsl,usbmisc = <&usbmisc 3>; |
819 | phy_type = "hsic"; | 819 | phy_type = "hsic"; |
820 | fsl,usbphy = <&usbphy_nop2>; | 820 | fsl,usbphy = <&usbphy_nop2>; |
821 | fsl,anatop = <&anatop>; | 821 | fsl,anatop = <&anatop>; |
822 | status = "disabled"; | 822 | status = "disabled"; |
823 | }; | 823 | }; |
824 | 824 | ||
825 | usbmisc: usbmisc: usbmisc@02184800 { | 825 | usbmisc: usbmisc: usbmisc@02184800 { |
826 | #index-cells = <1>; | 826 | #index-cells = <1>; |
827 | compatible = "fsl,imx6q-usbmisc"; | 827 | compatible = "fsl,imx6q-usbmisc"; |
828 | reg = <0x02184800 0x200>; | 828 | reg = <0x02184800 0x200>; |
829 | clocks = <&clks 162>; | 829 | clocks = <&clks 162>; |
830 | }; | 830 | }; |
831 | 831 | ||
832 | fec: ethernet@02188000 { | 832 | fec: ethernet@02188000 { |
833 | compatible = "fsl,imx6q-fec"; | 833 | compatible = "fsl,imx6q-fec"; |
834 | reg = <0x02188000 0x4000>; | 834 | reg = <0x02188000 0x4000>; |
835 | interrupts-extended = <&intc 0 118 0x04>, | 835 | interrupts-extended = <&intc 0 118 0x04>, |
836 | <&intc 0 119 0x04>; | 836 | <&intc 0 119 0x04>; |
837 | clocks = <&clks 117>, <&clks 117>, <&clks 190>; | 837 | clocks = <&clks 117>, <&clks 117>, <&clks 190>; |
838 | clock-names = "ipg", "ahb", "ptp"; | 838 | clock-names = "ipg", "ahb", "ptp"; |
839 | status = "disabled"; | 839 | status = "disabled"; |
840 | }; | 840 | }; |
841 | 841 | ||
842 | mlb: mlb@0218c000 { | 842 | mlb: mlb@0218c000 { |
843 | compatible = "fsl,imx6q-mlb150"; | 843 | compatible = "fsl,imx6q-mlb150"; |
844 | reg = <0x0218c000 0x4000>; | 844 | reg = <0x0218c000 0x4000>; |
845 | interrupts = <0 53 0x04 0 117 0x04 0 126 0x04>; | 845 | interrupts = <0 53 0x04 0 117 0x04 0 126 0x04>; |
846 | clocks = <&clks 139>, <&clks 175>; | 846 | clocks = <&clks 139>, <&clks 175>; |
847 | clock-names = "mlb", "pll8_mlb"; | 847 | clock-names = "mlb", "pll8_mlb"; |
848 | iram = <&ocram>; | 848 | iram = <&ocram>; |
849 | status = "disabled"; | 849 | status = "disabled"; |
850 | }; | 850 | }; |
851 | 851 | ||
852 | usdhc1: usdhc@02190000 { | 852 | usdhc1: usdhc@02190000 { |
853 | compatible = "fsl,imx6q-usdhc"; | 853 | compatible = "fsl,imx6q-usdhc"; |
854 | reg = <0x02190000 0x4000>; | 854 | reg = <0x02190000 0x4000>; |
855 | interrupts = <0 22 0x04>; | 855 | interrupts = <0 22 0x04>; |
856 | clocks = <&clks 163>, <&clks 163>, <&clks 163>; | 856 | clocks = <&clks 163>, <&clks 163>, <&clks 163>; |
857 | clock-names = "ipg", "ahb", "per"; | 857 | clock-names = "ipg", "ahb", "per"; |
858 | bus-width = <4>; | 858 | bus-width = <4>; |
859 | status = "disabled"; | 859 | status = "disabled"; |
860 | }; | 860 | }; |
861 | 861 | ||
862 | usdhc2: usdhc@02194000 { | 862 | usdhc2: usdhc@02194000 { |
863 | compatible = "fsl,imx6q-usdhc"; | 863 | compatible = "fsl,imx6q-usdhc"; |
864 | reg = <0x02194000 0x4000>; | 864 | reg = <0x02194000 0x4000>; |
865 | interrupts = <0 23 0x04>; | 865 | interrupts = <0 23 0x04>; |
866 | clocks = <&clks 164>, <&clks 164>, <&clks 164>; | 866 | clocks = <&clks 164>, <&clks 164>, <&clks 164>; |
867 | clock-names = "ipg", "ahb", "per"; | 867 | clock-names = "ipg", "ahb", "per"; |
868 | bus-width = <4>; | 868 | bus-width = <4>; |
869 | status = "disabled"; | 869 | status = "disabled"; |
870 | }; | 870 | }; |
871 | 871 | ||
872 | usdhc3: usdhc@02198000 { | 872 | usdhc3: usdhc@02198000 { |
873 | compatible = "fsl,imx6q-usdhc"; | 873 | compatible = "fsl,imx6q-usdhc"; |
874 | reg = <0x02198000 0x4000>; | 874 | reg = <0x02198000 0x4000>; |
875 | interrupts = <0 24 0x04>; | 875 | interrupts = <0 24 0x04>; |
876 | clocks = <&clks 165>, <&clks 165>, <&clks 165>; | 876 | clocks = <&clks 165>, <&clks 165>, <&clks 165>; |
877 | clock-names = "ipg", "ahb", "per"; | 877 | clock-names = "ipg", "ahb", "per"; |
878 | bus-width = <4>; | 878 | bus-width = <4>; |
879 | status = "disabled"; | 879 | status = "disabled"; |
880 | }; | 880 | }; |
881 | 881 | ||
882 | usdhc4: usdhc@0219c000 { | 882 | usdhc4: usdhc@0219c000 { |
883 | compatible = "fsl,imx6q-usdhc"; | 883 | compatible = "fsl,imx6q-usdhc"; |
884 | reg = <0x0219c000 0x4000>; | 884 | reg = <0x0219c000 0x4000>; |
885 | interrupts = <0 25 0x04>; | 885 | interrupts = <0 25 0x04>; |
886 | clocks = <&clks 166>, <&clks 166>, <&clks 166>; | 886 | clocks = <&clks 166>, <&clks 166>, <&clks 166>; |
887 | clock-names = "ipg", "ahb", "per"; | 887 | clock-names = "ipg", "ahb", "per"; |
888 | bus-width = <4>; | 888 | bus-width = <4>; |
889 | status = "disabled"; | 889 | status = "disabled"; |
890 | }; | 890 | }; |
891 | 891 | ||
892 | i2c1: i2c@021a0000 { | 892 | i2c1: i2c@021a0000 { |
893 | #address-cells = <1>; | 893 | #address-cells = <1>; |
894 | #size-cells = <0>; | 894 | #size-cells = <0>; |
895 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; | 895 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; |
896 | reg = <0x021a0000 0x4000>; | 896 | reg = <0x021a0000 0x4000>; |
897 | interrupts = <0 36 0x04>; | 897 | interrupts = <0 36 0x04>; |
898 | clocks = <&clks 125>; | 898 | clocks = <&clks 125>; |
899 | status = "disabled"; | 899 | status = "disabled"; |
900 | }; | 900 | }; |
901 | 901 | ||
902 | i2c2: i2c@021a4000 { | 902 | i2c2: i2c@021a4000 { |
903 | #address-cells = <1>; | 903 | #address-cells = <1>; |
904 | #size-cells = <0>; | 904 | #size-cells = <0>; |
905 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; | 905 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; |
906 | reg = <0x021a4000 0x4000>; | 906 | reg = <0x021a4000 0x4000>; |
907 | interrupts = <0 37 0x04>; | 907 | interrupts = <0 37 0x04>; |
908 | clocks = <&clks 126>; | 908 | clocks = <&clks 126>; |
909 | status = "disabled"; | 909 | status = "disabled"; |
910 | }; | 910 | }; |
911 | 911 | ||
912 | i2c3: i2c@021a8000 { | 912 | i2c3: i2c@021a8000 { |
913 | #address-cells = <1>; | 913 | #address-cells = <1>; |
914 | #size-cells = <0>; | 914 | #size-cells = <0>; |
915 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; | 915 | compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c"; |
916 | reg = <0x021a8000 0x4000>; | 916 | reg = <0x021a8000 0x4000>; |
917 | interrupts = <0 38 0x04>; | 917 | interrupts = <0 38 0x04>; |
918 | clocks = <&clks 127>; | 918 | clocks = <&clks 127>; |
919 | status = "disabled"; | 919 | status = "disabled"; |
920 | }; | 920 | }; |
921 | 921 | ||
922 | romcp@021ac000 { | 922 | romcp@021ac000 { |
923 | reg = <0x021ac000 0x4000>; | 923 | reg = <0x021ac000 0x4000>; |
924 | }; | 924 | }; |
925 | 925 | ||
926 | mmdc0-1@021b0000 { /* MMDC0-1 */ | 926 | mmdc0-1@021b0000 { /* MMDC0-1 */ |
927 | compatible = "fsl,imx6q-mmdc-combine"; | 927 | compatible = "fsl,imx6q-mmdc-combine"; |
928 | reg = <0x021b0000 0x8000>; | 928 | reg = <0x021b0000 0x8000>; |
929 | }; | 929 | }; |
930 | 930 | ||
931 | mmdc0: mmdc@021b0000 { /* MMDC0 */ | 931 | mmdc0: mmdc@021b0000 { /* MMDC0 */ |
932 | compatible = "fsl,imx6q-mmdc"; | 932 | compatible = "fsl,imx6q-mmdc"; |
933 | reg = <0x021b0000 0x4000>; | 933 | reg = <0x021b0000 0x4000>; |
934 | }; | 934 | }; |
935 | 935 | ||
936 | mmdc1: mmdc@021b4000 { /* MMDC1 */ | 936 | mmdc1: mmdc@021b4000 { /* MMDC1 */ |
937 | reg = <0x021b4000 0x4000>; | 937 | reg = <0x021b4000 0x4000>; |
938 | }; | 938 | }; |
939 | 939 | ||
940 | weim: weim@021b8000 { | 940 | weim: weim@021b8000 { |
941 | compatible = "fsl,imx6q-weim"; | 941 | compatible = "fsl,imx6q-weim"; |
942 | reg = <0x021b8000 0x4000>; | 942 | reg = <0x021b8000 0x4000>; |
943 | interrupts = <0 14 0x04>; | 943 | interrupts = <0 14 0x04>; |
944 | clocks = <&clks 196>; | 944 | clocks = <&clks 196>; |
945 | }; | 945 | }; |
946 | 946 | ||
947 | ocotp: ocotp-ctrl@021bc000 { | 947 | ocotp: ocotp-ctrl@021bc000 { |
948 | compatible = "syscon"; | 948 | compatible = "syscon"; |
949 | reg = <0x021bc000 0x4000>; | 949 | reg = <0x021bc000 0x4000>; |
950 | clocks = <&clks 128>; | 950 | clocks = <&clks 128>; |
951 | }; | 951 | }; |
952 | 952 | ||
953 | ocotp-fuse@021bc000 { | 953 | ocotp-fuse@021bc000 { |
954 | compatible = "fsl,imx6q-ocotp"; | 954 | compatible = "fsl,imx6q-ocotp"; |
955 | reg = <0x021bc000 0x4000>; | 955 | reg = <0x021bc000 0x4000>; |
956 | clocks = <&clks 128>; | 956 | clocks = <&clks 128>; |
957 | }; | 957 | }; |
958 | 958 | ||
959 | tzasc@021d0000 { /* TZASC1 */ | 959 | tzasc@021d0000 { /* TZASC1 */ |
960 | reg = <0x021d0000 0x4000>; | 960 | reg = <0x021d0000 0x4000>; |
961 | interrupts = <0 108 0x04>; | 961 | interrupts = <0 108 0x04>; |
962 | }; | 962 | }; |
963 | 963 | ||
964 | tzasc@021d4000 { /* TZASC2 */ | 964 | tzasc@021d4000 { /* TZASC2 */ |
965 | reg = <0x021d4000 0x4000>; | 965 | reg = <0x021d4000 0x4000>; |
966 | interrupts = <0 109 0x04>; | 966 | interrupts = <0 109 0x04>; |
967 | }; | 967 | }; |
968 | 968 | ||
969 | audmux: audmux@021d8000 { | 969 | audmux: audmux@021d8000 { |
970 | compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux"; | 970 | compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux"; |
971 | reg = <0x021d8000 0x4000>; | 971 | reg = <0x021d8000 0x4000>; |
972 | status = "disabled"; | 972 | status = "disabled"; |
973 | }; | 973 | }; |
974 | 974 | ||
975 | mipi_csi: mipi_csi@021dc000 { | 975 | mipi_csi: mipi_csi@021dc000 { |
976 | compatible = "fsl,imx6q-mipi-csi2"; | 976 | compatible = "fsl,imx6q-mipi-csi2"; |
977 | reg = <0x021dc000 0x4000>; | 977 | reg = <0x021dc000 0x4000>; |
978 | interrupts = <0 100 0x04>, <0 101 0x04>; | 978 | interrupts = <0 100 0x04>, <0 101 0x04>; |
979 | clocks = <&clks 138>, <&clks 53>, <&clks 204>; | 979 | clocks = <&clks 138>, <&clks 53>, <&clks 204>; |
980 | /* Note: clks 138 is hsi_tx, however, the dphy_c | 980 | /* Note: clks 138 is hsi_tx, however, the dphy_c |
981 | * hsi_tx and pll_refclk use the same clk gate. | 981 | * hsi_tx and pll_refclk use the same clk gate. |
982 | * In current clk driver, open/close clk gate do | 982 | * In current clk driver, open/close clk gate do |
983 | * use hsi_tx for a temporary debug purpose. | 983 | * use hsi_tx for a temporary debug purpose. |
984 | */ | 984 | */ |
985 | clock-names = "dphy_clk", "pixel_clk", "cfg_clk"; | 985 | clock-names = "dphy_clk", "pixel_clk", "cfg_clk"; |
986 | status = "disabled"; | 986 | status = "disabled"; |
987 | }; | 987 | }; |
988 | 988 | ||
989 | vdoa@021e4000 { | 989 | vdoa@021e4000 { |
990 | compatible = "fsl,imx6q-vdoa"; | 990 | compatible = "fsl,imx6q-vdoa"; |
991 | reg = <0x021e4000 0x4000>; | 991 | reg = <0x021e4000 0x4000>; |
992 | interrupts = <0 18 0x04>; | 992 | interrupts = <0 18 0x04>; |
993 | clocks = <&clks 202>; | 993 | clocks = <&clks 202>; |
994 | iram = <&ocram>; | 994 | iram = <&ocram>; |
995 | }; | 995 | }; |
996 | 996 | ||
997 | uart2: serial@021e8000 { | 997 | uart2: serial@021e8000 { |
998 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; | 998 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; |
999 | reg = <0x021e8000 0x4000>; | 999 | reg = <0x021e8000 0x4000>; |
1000 | interrupts = <0 27 0x04>; | 1000 | interrupts = <0 27 0x04>; |
1001 | clocks = <&clks 160>, <&clks 161>; | 1001 | clocks = <&clks 160>, <&clks 161>; |
1002 | clock-names = "ipg", "per"; | 1002 | clock-names = "ipg", "per"; |
1003 | dmas = <&sdma 27 4 0>, <&sdma 28 4 0>; | 1003 | dmas = <&sdma 27 4 0>, <&sdma 28 4 0>; |
1004 | dma-names = "rx", "tx"; | 1004 | dma-names = "rx", "tx"; |
1005 | status = "disabled"; | 1005 | status = "disabled"; |
1006 | }; | 1006 | }; |
1007 | 1007 | ||
1008 | uart3: serial@021ec000 { | 1008 | uart3: serial@021ec000 { |
1009 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; | 1009 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; |
1010 | reg = <0x021ec000 0x4000>; | 1010 | reg = <0x021ec000 0x4000>; |
1011 | interrupts = <0 28 0x04>; | 1011 | interrupts = <0 28 0x04>; |
1012 | clocks = <&clks 160>, <&clks 161>; | 1012 | clocks = <&clks 160>, <&clks 161>; |
1013 | clock-names = "ipg", "per"; | 1013 | clock-names = "ipg", "per"; |
1014 | dmas = <&sdma 29 4 0>, <&sdma 30 4 0>; | 1014 | dmas = <&sdma 29 4 0>, <&sdma 30 4 0>; |
1015 | dma-names = "rx", "tx"; | 1015 | dma-names = "rx", "tx"; |
1016 | status = "disabled"; | 1016 | status = "disabled"; |
1017 | }; | 1017 | }; |
1018 | 1018 | ||
1019 | uart4: serial@021f0000 { | 1019 | uart4: serial@021f0000 { |
1020 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; | 1020 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; |
1021 | reg = <0x021f0000 0x4000>; | 1021 | reg = <0x021f0000 0x4000>; |
1022 | interrupts = <0 29 0x04>; | 1022 | interrupts = <0 29 0x04>; |
1023 | clocks = <&clks 160>, <&clks 161>; | 1023 | clocks = <&clks 160>, <&clks 161>; |
1024 | clock-names = "ipg", "per"; | 1024 | clock-names = "ipg", "per"; |
1025 | dmas = <&sdma 31 4 0>, <&sdma 32 4 0>; | 1025 | dmas = <&sdma 31 4 0>, <&sdma 32 4 0>; |
1026 | dma-names = "rx", "tx"; | 1026 | dma-names = "rx", "tx"; |
1027 | status = "disabled"; | 1027 | status = "disabled"; |
1028 | }; | 1028 | }; |
1029 | 1029 | ||
1030 | uart5: serial@021f4000 { | 1030 | uart5: serial@021f4000 { |
1031 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; | 1031 | compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; |
1032 | reg = <0x021f4000 0x4000>; | 1032 | reg = <0x021f4000 0x4000>; |
1033 | interrupts = <0 30 0x04>; | 1033 | interrupts = <0 30 0x04>; |
1034 | clocks = <&clks 160>, <&clks 161>; | 1034 | clocks = <&clks 160>, <&clks 161>; |
1035 | clock-names = "ipg", "per"; | 1035 | clock-names = "ipg", "per"; |
1036 | dmas = <&sdma 33 4 0>, <&sdma 34 4 0>; | 1036 | dmas = <&sdma 33 4 0>, <&sdma 34 4 0>; |
1037 | dma-names = "rx", "tx"; | 1037 | dma-names = "rx", "tx"; |
1038 | status = "disabled"; | 1038 | status = "disabled"; |
1039 | }; | 1039 | }; |
1040 | }; | 1040 | }; |
1041 | 1041 | ||
1042 | ipu1: ipu@02400000 { | 1042 | ipu1: ipu@02400000 { |
1043 | compatible = "fsl,imx6q-ipu"; | 1043 | compatible = "fsl,imx6q-ipu"; |
1044 | reg = <0x02400000 0x400000>; | 1044 | reg = <0x02400000 0x400000>; |
1045 | interrupts = <0 6 0x4 0 5 0x4>; | 1045 | interrupts = <0 6 0x4 0 5 0x4>; |
1046 | clocks = <&clks 130>, <&clks 131>, <&clks 132>, | 1046 | clocks = <&clks 130>, <&clks 131>, <&clks 132>, |
1047 | <&clks 39>, <&clks 40>, | 1047 | <&clks 39>, <&clks 40>, |
1048 | <&clks 135>, <&clks 136>; | 1048 | <&clks 135>, <&clks 136>; |
1049 | clock-names = "bus", "di0", "di1", | 1049 | clock-names = "bus", "di0", "di1", |
1050 | "di0_sel", "di1_sel", | 1050 | "di0_sel", "di1_sel", |
1051 | "ldb_di0", "ldb_di1"; | 1051 | "ldb_di0", "ldb_di1"; |
1052 | resets = <&src 2>; | 1052 | resets = <&src 2>; |
1053 | bypass_reset = <0>; | 1053 | bypass_reset = <0>; |
1054 | }; | 1054 | }; |
1055 | }; | 1055 | }; |
1056 | }; | 1056 | }; |
1057 | 1057 | ||
1058 | 1058 | ||
1059 | &iomuxc { | 1059 | &iomuxc { |
1060 | audmux { | 1060 | audmux { |
1061 | pinctrl_audmux_1: audmux-1 { | 1061 | pinctrl_audmux_1: audmux-1 { |
1062 | fsl,pins = < | 1062 | fsl,pins = < |
1063 | MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0 | 1063 | MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0 |
1064 | MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0 | 1064 | MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0 |
1065 | MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0 | 1065 | MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0 |
1066 | MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0 | 1066 | MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0 |
1067 | >; | 1067 | >; |
1068 | }; | 1068 | }; |
1069 | 1069 | ||
1070 | pinctrl_audmux_2: audmux-2 { | 1070 | pinctrl_audmux_2: audmux-2 { |
1071 | fsl,pins = < | 1071 | fsl,pins = < |
1072 | MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0 | 1072 | MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0 |
1073 | MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 | 1073 | MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 |
1074 | MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0 | 1074 | MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0 |
1075 | MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 | 1075 | MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 |
1076 | >; | 1076 | >; |
1077 | }; | 1077 | }; |
1078 | 1078 | ||
1079 | pinctrl_audmux_3: audmux-3 { | 1079 | pinctrl_audmux_3: audmux-3 { |
1080 | fsl,pins = < | 1080 | fsl,pins = < |
1081 | MX6QDL_PAD_DISP0_DAT16__AUD5_TXC 0x130b0 | 1081 | MX6QDL_PAD_DISP0_DAT16__AUD5_TXC 0x130b0 |
1082 | MX6QDL_PAD_DISP0_DAT18__AUD5_TXFS 0x130b0 | 1082 | MX6QDL_PAD_DISP0_DAT18__AUD5_TXFS 0x130b0 |
1083 | MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0 | 1083 | MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0 |
1084 | >; | 1084 | >; |
1085 | }; | 1085 | }; |
1086 | }; | 1086 | }; |
1087 | 1087 | ||
1088 | ecspi1 { | 1088 | ecspi1 { |
1089 | pinctrl_ecspi1_cs_1: ecspi1_cs_grp-1 { | 1089 | pinctrl_ecspi1_cs_1: ecspi1_cs_grp-1 { |
1090 | fsl,pins = < | 1090 | fsl,pins = < |
1091 | MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 | 1091 | MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 |
1092 | >; | 1092 | >; |
1093 | }; | 1093 | }; |
1094 | pinctrl_ecspi1_cs_2: ecspi1_cs_grp-2 { | 1094 | pinctrl_ecspi1_cs_2: ecspi1_cs_grp-2 { |
1095 | fsl,pins = < | 1095 | fsl,pins = < |
1096 | MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x80000000 | 1096 | MX6QDL_PAD_KEY_ROW1__ECSPI1_SS0 0x80000000 |
1097 | MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x80000000 | 1097 | MX6QDL_PAD_KEY_COL2__ECSPI1_SS1 0x80000000 |
1098 | >; | 1098 | >; |
1099 | }; | 1099 | }; |
1100 | 1100 | ||
1101 | pinctrl_ecspi1_1: ecspi1grp-1 { | 1101 | pinctrl_ecspi1_1: ecspi1grp-1 { |
1102 | fsl,pins = < | 1102 | fsl,pins = < |
1103 | MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 | 1103 | MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 |
1104 | MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 | 1104 | MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 |
1105 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 | 1105 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 |
1106 | >; | 1106 | >; |
1107 | }; | 1107 | }; |
1108 | 1108 | ||
1109 | pinctrl_ecspi1_2: ecspi1grp-2 { | 1109 | pinctrl_ecspi1_2: ecspi1grp-2 { |
1110 | fsl,pins = < | 1110 | fsl,pins = < |
1111 | MX6QDL_PAD_KEY_COL1__ECSPI1_MISO 0x100b1 | 1111 | MX6QDL_PAD_KEY_COL1__ECSPI1_MISO 0x100b1 |
1112 | MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI 0x100b1 | 1112 | MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI 0x100b1 |
1113 | MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK 0x100b1 | 1113 | MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK 0x100b1 |
1114 | >; | 1114 | >; |
1115 | }; | 1115 | }; |
1116 | }; | 1116 | }; |
1117 | 1117 | ||
1118 | ecspi2 { | 1118 | ecspi2 { |
1119 | pinctrl_ecspi2_cs_1: ecspi2_cs_grp-1 { | 1119 | pinctrl_ecspi2_cs_1: ecspi2_cs_grp-1 { |
1120 | fsl,pins = < | 1120 | fsl,pins = < |
1121 | MX6QDL_PAD_CSI0_DAT11__GPIO5_IO29 0x80000000 | 1121 | MX6QDL_PAD_CSI0_DAT11__GPIO5_IO29 0x80000000 |
1122 | MX6QDL_PAD_EIM_D24__GPIO3_IO24 0x80000000 | 1122 | MX6QDL_PAD_EIM_D24__ECSPI2_SS2 0x80000000 |
1123 | MX6QDL_PAD_EIM_D25__GPIO3_IO25 0x80000000 | 1123 | MX6QDL_PAD_EIM_D25__ECSPI2_SS3 0x80000000 |
1124 | >; | 1124 | >; |
1125 | }; | 1125 | }; |
1126 | 1126 | ||
1127 | 1127 | ||
1128 | 1128 | ||
1129 | pinctrl_ecspi2_1: ecspi2grp-1 { | 1129 | pinctrl_ecspi2_1: ecspi2grp-1 { |
1130 | fsl,pins = < | 1130 | fsl,pins = < |
1131 | MX6QDL_PAD_CSI0_DAT10__ECSPI2_MISO 0x100b1 | 1131 | MX6QDL_PAD_CSI0_DAT10__ECSPI2_MISO 0x100b1 |
1132 | MX6QDL_PAD_CSI0_DAT9__ECSPI2_MOSI 0x100b1 | 1132 | MX6QDL_PAD_CSI0_DAT9__ECSPI2_MOSI 0x100b1 |
1133 | MX6QDL_PAD_CSI0_DAT8__ECSPI2_SCLK 0x100b1 | 1133 | MX6QDL_PAD_CSI0_DAT8__ECSPI2_SCLK 0x100b1 |
1134 | >; | 1134 | >; |
1135 | }; | 1135 | }; |
1136 | }; | 1136 | }; |
1137 | 1137 | ||
1138 | ecspi3 { | 1138 | ecspi3 { |
1139 | pinctrl_ecspi3_1: ecspi3grp-1 { | 1139 | pinctrl_ecspi3_1: ecspi3grp-1 { |
1140 | fsl,pins = < | 1140 | fsl,pins = < |
1141 | MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1 | 1141 | MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1 |
1142 | MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1 | 1142 | MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1 |
1143 | MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1 | 1143 | MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1 |
1144 | >; | 1144 | >; |
1145 | }; | 1145 | }; |
1146 | }; | 1146 | }; |
1147 | 1147 | ||
1148 | enet { | 1148 | enet { |
1149 | pinctrl_enet_1: enetgrp-1 { | 1149 | pinctrl_enet_1: enetgrp-1 { |
1150 | fsl,pins = < | 1150 | fsl,pins = < |
1151 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 | 1151 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 |
1152 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 | 1152 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 |
1153 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 | 1153 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 |
1154 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 | 1154 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 |
1155 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 | 1155 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 |
1156 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 | 1156 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 |
1157 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 | 1157 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 |
1158 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 | 1158 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 |
1159 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | 1159 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 |
1160 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 | 1160 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 |
1161 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 | 1161 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 |
1162 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 | 1162 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 |
1163 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 | 1163 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 |
1164 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 | 1164 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 |
1165 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 | 1165 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 |
1166 | /*MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8*/ | ||
1167 | /* AR8035 interrupt */ | ||
1168 | /*MX6QDL_PAD_KEY_ROW2__GPIO4_IO11 0x80000000*/ | ||
1169 | >; | 1166 | >; |
1170 | }; | 1167 | }; |
1171 | 1168 | ||
1172 | pinctrl_enet_2: enetgrp-2 { | 1169 | pinctrl_enet_2: enetgrp-2 { |
1173 | fsl,pins = < | 1170 | fsl,pins = < |
1174 | MX6QDL_PAD_KEY_COL1__ENET_MDIO 0x1b0b0 | 1171 | MX6QDL_PAD_KEY_COL1__ENET_MDIO 0x1b0b0 |
1175 | MX6QDL_PAD_KEY_COL2__ENET_MDC 0x1b0b0 | 1172 | MX6QDL_PAD_KEY_COL2__ENET_MDC 0x1b0b0 |
1176 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 | 1173 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 |
1177 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 | 1174 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 |
1178 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 | 1175 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 |
1179 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 | 1176 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 |
1180 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 | 1177 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 |
1181 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 | 1178 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 |
1182 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | 1179 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 |
1183 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 | 1180 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 |
1184 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 | 1181 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 |
1185 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 | 1182 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 |
1186 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 | 1183 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 |
1187 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 | 1184 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 |
1188 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 | 1185 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 |
1189 | MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8 | 1186 | MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8 |
1190 | >; | 1187 | >; |
1191 | }; | 1188 | }; |
1192 | 1189 | ||
1193 | pinctrl_enet_3: enetgrp-3 { | 1190 | pinctrl_enet_3: enetgrp-3 { |
1194 | fsl,pins = < | 1191 | fsl,pins = < |
1195 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 | 1192 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 |
1196 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 | 1193 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 |
1197 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 | 1194 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 |
1198 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 | 1195 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 |
1199 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 | 1196 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 |
1200 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 | 1197 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 |
1201 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 | 1198 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 |
1202 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 | 1199 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 |
1203 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | 1200 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 |
1204 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 | 1201 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 |
1205 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 | 1202 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 |
1206 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 | 1203 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 |
1207 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 | 1204 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 |
1208 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 | 1205 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 |
1209 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 | 1206 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 |
1210 | MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 | 1207 | MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 |
1211 | >; | 1208 | >; |
1212 | }; | 1209 | }; |
1213 | 1210 | ||
1214 | pinctrl_enet_irq: enetirqgrp { | 1211 | pinctrl_enet_irq: enetirqgrp { |
1215 | fsl,pins = < | 1212 | fsl,pins = < |
1213 | /* AR8035 interrupt */ | ||
1216 | MX6QDL_PAD_KEY_ROW2__GPIO4_IO11 0x000b1 | 1214 | MX6QDL_PAD_KEY_ROW2__GPIO4_IO11 0x000b1 |
1217 | >; | 1215 | >; |
1218 | }; | 1216 | }; |
1219 | }; | 1217 | }; |
1220 | 1218 | ||
1221 | esai { | 1219 | esai { |
1222 | pinctrl_esai_1: esaigrp-1 { | 1220 | pinctrl_esai_1: esaigrp-1 { |
1223 | fsl,pins = < | 1221 | fsl,pins = < |
1224 | MX6QDL_PAD_ENET_RXD0__ESAI_TX_HF_CLK 0x1b030 | 1222 | MX6QDL_PAD_ENET_RXD0__ESAI_TX_HF_CLK 0x1b030 |
1225 | MX6QDL_PAD_ENET_CRS_DV__ESAI_TX_CLK 0x1b030 | 1223 | MX6QDL_PAD_ENET_CRS_DV__ESAI_TX_CLK 0x1b030 |
1226 | MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1b030 | 1224 | MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1b030 |
1227 | MX6QDL_PAD_ENET_TX_EN__ESAI_TX3_RX2 0x1b030 | 1225 | MX6QDL_PAD_ENET_TX_EN__ESAI_TX3_RX2 0x1b030 |
1228 | MX6QDL_PAD_ENET_TXD1__ESAI_TX2_RX3 0x1b030 | 1226 | MX6QDL_PAD_ENET_TXD1__ESAI_TX2_RX3 0x1b030 |
1229 | MX6QDL_PAD_ENET_TXD0__ESAI_TX4_RX1 0x1b030 | 1227 | MX6QDL_PAD_ENET_TXD0__ESAI_TX4_RX1 0x1b030 |
1230 | MX6QDL_PAD_ENET_MDC__ESAI_TX5_RX0 0x1b030 | 1228 | MX6QDL_PAD_ENET_MDC__ESAI_TX5_RX0 0x1b030 |
1231 | MX6QDL_PAD_NANDF_CS2__ESAI_TX0 0x1b030 | 1229 | MX6QDL_PAD_NANDF_CS2__ESAI_TX0 0x1b030 |
1232 | MX6QDL_PAD_NANDF_CS3__ESAI_TX1 0x1b030 | 1230 | MX6QDL_PAD_NANDF_CS3__ESAI_TX1 0x1b030 |
1233 | >; | 1231 | >; |
1234 | }; | 1232 | }; |
1235 | 1233 | ||
1236 | pinctrl_esai_2: esaigrp-2 { | 1234 | pinctrl_esai_2: esaigrp-2 { |
1237 | fsl,pins = < | 1235 | fsl,pins = < |
1238 | MX6QDL_PAD_ENET_CRS_DV__ESAI_TX_CLK 0x1b030 | 1236 | MX6QDL_PAD_ENET_CRS_DV__ESAI_TX_CLK 0x1b030 |
1239 | MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1b030 | 1237 | MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1b030 |
1240 | MX6QDL_PAD_ENET_TX_EN__ESAI_TX3_RX2 0x1b030 | 1238 | MX6QDL_PAD_ENET_TX_EN__ESAI_TX3_RX2 0x1b030 |
1241 | MX6QDL_PAD_GPIO_5__ESAI_TX2_RX3 0x1b030 | 1239 | MX6QDL_PAD_GPIO_5__ESAI_TX2_RX3 0x1b030 |
1242 | MX6QDL_PAD_ENET_TXD0__ESAI_TX4_RX1 0x1b030 | 1240 | MX6QDL_PAD_ENET_TXD0__ESAI_TX4_RX1 0x1b030 |
1243 | MX6QDL_PAD_ENET_MDC__ESAI_TX5_RX0 0x1b030 | 1241 | MX6QDL_PAD_ENET_MDC__ESAI_TX5_RX0 0x1b030 |
1244 | MX6QDL_PAD_GPIO_17__ESAI_TX0 0x1b030 | 1242 | MX6QDL_PAD_GPIO_17__ESAI_TX0 0x1b030 |
1245 | MX6QDL_PAD_NANDF_CS3__ESAI_TX1 0x1b030 | 1243 | MX6QDL_PAD_NANDF_CS3__ESAI_TX1 0x1b030 |
1246 | MX6QDL_PAD_ENET_MDIO__ESAI_RX_CLK 0x1b030 | 1244 | MX6QDL_PAD_ENET_MDIO__ESAI_RX_CLK 0x1b030 |
1247 | MX6QDL_PAD_GPIO_9__ESAI_RX_FS 0x1b030 | 1245 | MX6QDL_PAD_GPIO_9__ESAI_RX_FS 0x1b030 |
1248 | >; | 1246 | >; |
1249 | }; | 1247 | }; |
1250 | }; | 1248 | }; |
1251 | 1249 | ||
1252 | flexcan1 { | 1250 | flexcan1 { |
1253 | pinctrl_flexcan1_1: flexcan1grp-1 { | 1251 | pinctrl_flexcan1_1: flexcan1grp-1 { |
1254 | fsl,pins = < | 1252 | fsl,pins = < |
1255 | MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 | 1253 | MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 |
1256 | MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000 | 1254 | MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000 |
1257 | >; | 1255 | >; |
1258 | }; | 1256 | }; |
1259 | 1257 | ||
1260 | pinctrl_flexcan1_2: flexcan1grp-2 { | 1258 | pinctrl_flexcan1_2: flexcan1grp-2 { |
1261 | fsl,pins = < | 1259 | fsl,pins = < |
1262 | MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x80000000 | 1260 | MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x80000000 |
1263 | MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 | 1261 | MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 |
1264 | >; | 1262 | >; |
1265 | }; | 1263 | }; |
1266 | 1264 | ||
1267 | pinctrl_flexcan1_3: flexcan1grp-3 { | 1265 | pinctrl_flexcan1_3: flexcan1grp-3 { |
1268 | fsl,pins = < | 1266 | fsl,pins = < |
1269 | MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x80000000 | 1267 | MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x80000000 |
1270 | MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x80000000 | 1268 | MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x80000000 |
1271 | >; | 1269 | >; |
1272 | }; | 1270 | }; |
1273 | }; | 1271 | }; |
1274 | 1272 | ||
1275 | flexcan2 { | 1273 | flexcan2 { |
1276 | pinctrl_flexcan2_1: flexcan2grp-1 { | 1274 | pinctrl_flexcan2_1: flexcan2grp-1 { |
1277 | fsl,pins = < | 1275 | fsl,pins = < |
1278 | MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x80000000 | 1276 | MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x80000000 |
1279 | MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x80000000 | 1277 | MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x80000000 |
1280 | >; | 1278 | >; |
1281 | }; | 1279 | }; |
1282 | }; | 1280 | }; |
1283 | 1281 | ||
1284 | gpmi-nand { | 1282 | gpmi-nand { |
1285 | pinctrl_gpmi_nand_1: gpmi-nand-1 { | 1283 | pinctrl_gpmi_nand_1: gpmi-nand-1 { |
1286 | fsl,pins = < | 1284 | fsl,pins = < |
1287 | MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1 | 1285 | MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1 |
1288 | MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1 | 1286 | MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1 |
1289 | MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1 | 1287 | MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1 |
1290 | MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000 | 1288 | MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000 |
1291 | MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1 | 1289 | MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1 |
1292 | MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1 | 1290 | MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1 |
1293 | MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1 | 1291 | MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1 |
1294 | MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1 | 1292 | MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1 |
1295 | MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1 | 1293 | MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1 |
1296 | MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1 | 1294 | MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1 |
1297 | MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1 | 1295 | MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1 |
1298 | MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1 | 1296 | MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1 |
1299 | MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1 | 1297 | MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1 |
1300 | MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1 | 1298 | MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1 |
1301 | MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1 | 1299 | MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1 |
1302 | MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1 | 1300 | MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1 |
1303 | MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1 | 1301 | MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1 |
1304 | >; | 1302 | >; |
1305 | }; | 1303 | }; |
1306 | }; | 1304 | }; |
1307 | 1305 | ||
1308 | hdmi_hdcp { | 1306 | hdmi_hdcp { |
1309 | pinctrl_hdmi_hdcp_1: hdmihdcpgrp-1 { | 1307 | pinctrl_hdmi_hdcp_1: hdmihdcpgrp-1 { |
1310 | fsl,pins = < | 1308 | fsl,pins = < |
1311 | MX6QDL_PAD_KEY_COL3__HDMI_TX_DDC_SCL 0x4001b8b1 | 1309 | MX6QDL_PAD_KEY_COL3__HDMI_TX_DDC_SCL 0x4001b8b1 |
1312 | MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1 | 1310 | MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1 |
1313 | >; | 1311 | >; |
1314 | }; | 1312 | }; |
1315 | 1313 | ||
1316 | pinctrl_hdmi_hdcp_2: hdmihdcpgrp-2 { | 1314 | pinctrl_hdmi_hdcp_2: hdmihdcpgrp-2 { |
1317 | fsl,pins = < | 1315 | fsl,pins = < |
1318 | MX6QDL_PAD_EIM_EB2__HDMI_TX_DDC_SCL 0x4001b8b1 | 1316 | MX6QDL_PAD_EIM_EB2__HDMI_TX_DDC_SCL 0x4001b8b1 |
1319 | MX6QDL_PAD_EIM_D16__HDMI_TX_DDC_SDA 0x4001b8b1 | 1317 | MX6QDL_PAD_EIM_D16__HDMI_TX_DDC_SDA 0x4001b8b1 |
1320 | >; | 1318 | >; |
1321 | }; | 1319 | }; |
1322 | 1320 | ||
1323 | pinctrl_hdmi_hdcp_3: hdmihdcpgrp-3 { | 1321 | pinctrl_hdmi_hdcp_3: hdmihdcpgrp-3 { |
1324 | fsl,pins = < | 1322 | fsl,pins = < |
1325 | MX6QDL_PAD_EIM_EB2__HDMI_TX_DDC_SCL 0x4001b8b1 | 1323 | MX6QDL_PAD_EIM_EB2__HDMI_TX_DDC_SCL 0x4001b8b1 |
1326 | MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1 | 1324 | MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1 |
1327 | >; | 1325 | >; |
1328 | }; | 1326 | }; |
1329 | }; | 1327 | }; |
1330 | 1328 | ||
1331 | hdmi_cec { | 1329 | hdmi_cec { |
1332 | pinctrl_hdmi_cec_1: hdmicecgrp-1 { | 1330 | pinctrl_hdmi_cec_1: hdmicecgrp-1 { |
1333 | fsl,pins = < | 1331 | fsl,pins = < |
1334 | MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0 | 1332 | MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0 |
1335 | >; | 1333 | >; |
1336 | }; | 1334 | }; |
1337 | 1335 | ||
1338 | pinctrl_hdmi_cec_2: hdmicecgrp-2 { | 1336 | pinctrl_hdmi_cec_2: hdmicecgrp-2 { |
1339 | fsl,pins = < | 1337 | fsl,pins = < |
1340 | MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0 | 1338 | MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0 |
1341 | >; | 1339 | >; |
1342 | }; | 1340 | }; |
1343 | }; | 1341 | }; |
1344 | 1342 | ||
1345 | i2c1 { | 1343 | i2c1 { |
1346 | pinctrl_i2c1_1: i2c1grp-1 { | 1344 | pinctrl_i2c1_1: i2c1grp-1 { |
1347 | fsl,pins = < | 1345 | fsl,pins = < |
1348 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 | 1346 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 |
1349 | MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 | 1347 | MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 |
1350 | >; | 1348 | >; |
1351 | }; | 1349 | }; |
1352 | 1350 | ||
1353 | pinctrl_i2c1_2: i2c1grp-2 { | 1351 | pinctrl_i2c1_2: i2c1grp-2 { |
1354 | fsl,pins = < | 1352 | fsl,pins = < |
1355 | MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 | 1353 | MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 |
1356 | MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 | 1354 | MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 |
1357 | >; | 1355 | >; |
1358 | }; | 1356 | }; |
1359 | }; | 1357 | }; |
1360 | 1358 | ||
1361 | i2c2 { | 1359 | i2c2 { |
1362 | pinctrl_i2c2_1: i2c2grp-1 { | 1360 | pinctrl_i2c2_1: i2c2grp-1 { |
1363 | fsl,pins = < | 1361 | fsl,pins = < |
1364 | MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1 | 1362 | MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1 |
1365 | MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1 | 1363 | MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1 |
1366 | >; | 1364 | >; |
1367 | }; | 1365 | }; |
1368 | 1366 | ||
1369 | pinctrl_i2c2_2: i2c2grp-2 { | 1367 | pinctrl_i2c2_2: i2c2grp-2 { |
1370 | fsl,pins = < | 1368 | fsl,pins = < |
1371 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 | 1369 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 |
1372 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | 1370 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 |
1373 | >; | 1371 | >; |
1374 | }; | 1372 | }; |
1375 | 1373 | ||
1376 | pinctrl_i2c2_3: i2c2grp-3 { | 1374 | pinctrl_i2c2_3: i2c2grp-3 { |
1377 | fsl,pins = < | 1375 | fsl,pins = < |
1378 | MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1 | 1376 | MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1 |
1379 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | 1377 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 |
1380 | >; | 1378 | >; |
1381 | }; | 1379 | }; |
1382 | }; | 1380 | }; |
1383 | 1381 | ||
1384 | i2c3 { | 1382 | i2c3 { |
1385 | pinctrl_i2c3_1: i2c3grp-1 { | 1383 | pinctrl_i2c3_1: i2c3grp-1 { |
1386 | fsl,pins = < | 1384 | fsl,pins = < |
1387 | MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1 | 1385 | MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1 |
1388 | MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 | 1386 | MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 |
1389 | >; | 1387 | >; |
1390 | }; | 1388 | }; |
1391 | 1389 | ||
1392 | pinctrl_i2c3_2: i2c3grp-2 { | 1390 | pinctrl_i2c3_2: i2c3grp-2 { |
1393 | fsl,pins = < | 1391 | fsl,pins = < |
1394 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | 1392 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 |
1395 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 | 1393 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 |
1396 | >; | 1394 | >; |
1397 | }; | 1395 | }; |
1398 | 1396 | ||
1399 | pinctrl_i2c3_3: i2c3grp-3 { | 1397 | pinctrl_i2c3_3: i2c3grp-3 { |
1400 | fsl,pins = < | 1398 | fsl,pins = < |
1401 | MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 | 1399 | MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 |
1402 | MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1 | 1400 | MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1 |
1403 | >; | 1401 | >; |
1404 | }; | 1402 | }; |
1405 | 1403 | ||
1406 | pinctrl_i2c3_4: i2c3grp-4 { | 1404 | pinctrl_i2c3_4: i2c3grp-4 { |
1407 | fsl,pins = < | 1405 | fsl,pins = < |
1408 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | 1406 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 |
1409 | MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 | 1407 | MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 |
1410 | >; | 1408 | >; |
1411 | }; | 1409 | }; |
1412 | }; | 1410 | }; |
1413 | 1411 | ||
1414 | ipu1 { | 1412 | ipu1 { |
1415 | pinctrl_ipu1_1: ipu1grp-1 { | 1413 | pinctrl_ipu1_1: ipu1grp-1 { |
1416 | fsl,pins = < | 1414 | fsl,pins = < |
1417 | MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10 | 1415 | MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0xe1 |
1418 | MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x10 | 1416 | MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0xe1 |
1419 | MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10 | 1417 | MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0xe1 |
1420 | MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10 | 1418 | MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0xe1 |
1421 | MX6QDL_PAD_DI0_PIN4__IPU1_DI0_PIN04 0x80000000 | 1419 | MX6QDL_PAD_DI0_PIN4__IPU1_DI0_PIN04 0x80000000 |
1422 | MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10 | 1420 | MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0xe1 |
1423 | MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10 | 1421 | MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0xe1 |
1424 | MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10 | 1422 | MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0xe1 |
1425 | MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10 | 1423 | MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0xe1 |
1426 | MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10 | 1424 | MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0xe1 |
1427 | MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10 | 1425 | MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0xe1 |
1428 | MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10 | 1426 | MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0xe1 |
1429 | MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10 | 1427 | MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0xe1 |
1430 | MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10 | 1428 | MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0xe1 |
1431 | MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10 | 1429 | MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0xe1 |
1432 | MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10 | 1430 | MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0xe1 |
1433 | MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10 | 1431 | MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0xe1 |
1434 | MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10 | 1432 | MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0xe1 |
1435 | MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10 | 1433 | MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0xe1 |
1436 | MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10 | 1434 | MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0xe1 |
1437 | MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10 | 1435 | MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0xe1 |
1438 | MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10 | 1436 | MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0xe1 |
1439 | MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10 | 1437 | MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0xe1 |
1440 | MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10 | 1438 | MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0xe1 |
1441 | MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10 | 1439 | MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0xe1 |
1442 | MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10 | 1440 | MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0xe1 |
1443 | MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10 | 1441 | MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0xe1 |
1444 | MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10 | 1442 | MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0xe1 |
1445 | MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10 | 1443 | MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0xe1 |
1446 | >; | 1444 | >; |
1447 | }; | 1445 | }; |
1448 | 1446 | ||
1449 | pinctrl_ipu1_2: ipu1grp-2 { /* parallel camera */ | 1447 | pinctrl_ipu1_2: ipu1grp-2 { /* parallel camera */ |
1450 | fsl,pins = < | 1448 | fsl,pins = < |
1451 | MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x80000000 | 1449 | MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x80000000 |
1452 | MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x80000000 | 1450 | MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x80000000 |
1453 | MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x80000000 | 1451 | MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x80000000 |
1454 | MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x80000000 | 1452 | MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x80000000 |
1455 | MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x80000000 | 1453 | MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x80000000 |
1456 | MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x80000000 | 1454 | MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x80000000 |
1457 | MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x80000000 | 1455 | MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x80000000 |
1458 | MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x80000000 | 1456 | MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x80000000 |
1459 | MX6QDL_PAD_CSI0_DATA_EN__IPU1_CSI0_DATA_EN 0x80000000 | 1457 | MX6QDL_PAD_CSI0_DATA_EN__IPU1_CSI0_DATA_EN 0x80000000 |
1460 | MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x80000000 | 1458 | MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x80000000 |
1461 | MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x80000000 | 1459 | MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x80000000 |
1462 | MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x80000000 | 1460 | MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x80000000 |
1463 | >; | 1461 | >; |
1464 | }; | 1462 | }; |
1465 | 1463 | ||
1466 | pinctrl_ipu1_3: ipu1grp-3 { /* parallel port 16-bit */ | 1464 | pinctrl_ipu1_3: ipu1grp-3 { /* parallel port 16-bit */ |
1467 | fsl,pins = < | 1465 | fsl,pins = < |
1468 | MX6QDL_PAD_CSI0_DAT4__IPU1_CSI0_DATA04 0x80000000 | 1466 | MX6QDL_PAD_CSI0_DAT4__IPU1_CSI0_DATA04 0x80000000 |
1469 | MX6QDL_PAD_CSI0_DAT5__IPU1_CSI0_DATA05 0x80000000 | 1467 | MX6QDL_PAD_CSI0_DAT5__IPU1_CSI0_DATA05 0x80000000 |
1470 | MX6QDL_PAD_CSI0_DAT6__IPU1_CSI0_DATA06 0x80000000 | 1468 | MX6QDL_PAD_CSI0_DAT6__IPU1_CSI0_DATA06 0x80000000 |
1471 | MX6QDL_PAD_CSI0_DAT7__IPU1_CSI0_DATA07 0x80000000 | 1469 | MX6QDL_PAD_CSI0_DAT7__IPU1_CSI0_DATA07 0x80000000 |
1472 | MX6QDL_PAD_CSI0_DAT8__IPU1_CSI0_DATA08 0x80000000 | 1470 | MX6QDL_PAD_CSI0_DAT8__IPU1_CSI0_DATA08 0x80000000 |
1473 | MX6QDL_PAD_CSI0_DAT9__IPU1_CSI0_DATA09 0x80000000 | 1471 | MX6QDL_PAD_CSI0_DAT9__IPU1_CSI0_DATA09 0x80000000 |
1474 | MX6QDL_PAD_CSI0_DAT10__IPU1_CSI0_DATA10 0x80000000 | 1472 | MX6QDL_PAD_CSI0_DAT10__IPU1_CSI0_DATA10 0x80000000 |
1475 | MX6QDL_PAD_CSI0_DAT11__IPU1_CSI0_DATA11 0x80000000 | 1473 | MX6QDL_PAD_CSI0_DAT11__IPU1_CSI0_DATA11 0x80000000 |
1476 | MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x80000000 | 1474 | MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x80000000 |
1477 | MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x80000000 | 1475 | MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x80000000 |
1478 | MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x80000000 | 1476 | MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x80000000 |
1479 | MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x80000000 | 1477 | MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x80000000 |
1480 | MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x80000000 | 1478 | MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x80000000 |
1481 | MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x80000000 | 1479 | MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x80000000 |
1482 | MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x80000000 | 1480 | MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x80000000 |
1483 | MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x80000000 | 1481 | MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x80000000 |
1484 | MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x80000000 | 1482 | MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x80000000 |
1485 | MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x80000000 | 1483 | MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x80000000 |
1486 | MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x80000000 | 1484 | MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x80000000 |
1487 | >; | 1485 | >; |
1488 | }; | 1486 | }; |
1489 | }; | 1487 | }; |
1490 | 1488 | ||
1491 | mlb { | 1489 | mlb { |
1492 | pinctrl_mlb_1: mlbgrp-1 { | 1490 | pinctrl_mlb_1: mlbgrp-1 { |
1493 | fsl,pins = < | 1491 | fsl,pins = < |
1494 | MX6QDL_PAD_GPIO_3__MLB_CLK 0x71 | 1492 | MX6QDL_PAD_GPIO_3__MLB_CLK 0x71 |
1495 | MX6QDL_PAD_GPIO_6__MLB_SIG 0x71 | 1493 | MX6QDL_PAD_GPIO_6__MLB_SIG 0x71 |
1496 | MX6QDL_PAD_GPIO_2__MLB_DATA 0x71 | 1494 | MX6QDL_PAD_GPIO_2__MLB_DATA 0x71 |
1497 | >; | 1495 | >; |
1498 | }; | 1496 | }; |
1499 | 1497 | ||
1500 | pinctrl_mlb_2: mlbgrp-2 { | 1498 | pinctrl_mlb_2: mlbgrp-2 { |
1501 | fsl,pins = < | 1499 | fsl,pins = < |
1502 | MX6QDL_PAD_ENET_TXD1__MLB_CLK 0x80000000 | 1500 | MX6QDL_PAD_ENET_TXD1__MLB_CLK 0x80000000 |
1503 | MX6QDL_PAD_GPIO_6__MLB_SIG 0x80000000 | 1501 | MX6QDL_PAD_GPIO_6__MLB_SIG 0x80000000 |
1504 | MX6QDL_PAD_GPIO_2__MLB_DATA 0x80000000 | 1502 | MX6QDL_PAD_GPIO_2__MLB_DATA 0x80000000 |
1505 | >; | 1503 | >; |
1506 | }; | 1504 | }; |
1507 | }; | 1505 | }; |
1508 | 1506 | ||
1509 | pwm1 { | 1507 | pwm1 { |
1510 | pinctrl_pwm1_1: pwm1grp-1 { | 1508 | pinctrl_pwm1_1: pwm1grp-1 { |
1511 | fsl,pins = < | 1509 | fsl,pins = < |
1512 | MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1 | 1510 | MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1 |
1513 | >; | 1511 | >; |
1514 | }; | 1512 | }; |
1515 | }; | 1513 | }; |
1516 | 1514 | ||
1517 | pwm2 { | 1515 | pwm2 { |
1518 | pinctrl_pwm2_1: pwm2grp-1 { | 1516 | pinctrl_pwm2_1: pwm2grp-1 { |
1519 | fsl,pins = < | 1517 | fsl,pins = < |
1520 | MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1 | 1518 | MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1 |
1521 | >; | 1519 | >; |
1522 | }; | 1520 | }; |
1523 | }; | 1521 | }; |
1524 | 1522 | ||
1525 | pwm3 { | 1523 | pwm3 { |
1526 | pinctrl_pwm3_1: pwm3grp-1 { | 1524 | pinctrl_pwm3_1: pwm3grp-1 { |
1527 | fsl,pins = < | 1525 | fsl,pins = < |
1528 | MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 | 1526 | MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 |
1529 | >; | 1527 | >; |
1530 | }; | 1528 | }; |
1531 | }; | 1529 | }; |
1532 | 1530 | ||
1533 | spdif { | 1531 | spdif { |
1534 | pinctrl_spdif_1: spdifgrp-1 { | 1532 | pinctrl_spdif_1: spdifgrp-1 { |
1535 | fsl,pins = < | 1533 | fsl,pins = < |
1536 | MX6QDL_PAD_KEY_COL3__SPDIF_IN 0x1b0b0 | 1534 | MX6QDL_PAD_KEY_COL3__SPDIF_IN 0x1b0b0 |
1537 | >; | 1535 | >; |
1538 | }; | 1536 | }; |
1539 | 1537 | ||
1540 | pinctrl_spdif_2: spdifgrp-2 { | 1538 | pinctrl_spdif_2: spdifgrp-2 { |
1541 | fsl,pins = < | 1539 | fsl,pins = < |
1542 | MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0 | 1540 | MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0 |
1543 | MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0 | 1541 | MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0 |
1544 | >; | 1542 | >; |
1545 | }; | 1543 | }; |
1546 | }; | 1544 | }; |
1547 | 1545 | ||
1548 | uart1 { | 1546 | uart1 { |
1549 | pinctrl_uart1_1: uart1grp-1 { | 1547 | pinctrl_uart1_1: uart1grp-1 { |
1550 | fsl,pins = < | 1548 | fsl,pins = < |
1551 | MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 | 1549 | MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 |
1552 | MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 | 1550 | MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 |
1553 | >; | 1551 | >; |
1554 | }; | 1552 | }; |
1555 | pinctrl_uart1_2: uart1grp-2 { | 1553 | pinctrl_uart1_2: uart1grp-2 { |
1556 | fsl,pins = < | 1554 | fsl,pins = < |
1557 | MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1 | 1555 | MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1 |
1558 | MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1 | 1556 | MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1 |
1559 | MX6QDL_PAD_EIM_D19__UART1_CTS_B 0x1b0b1 | 1557 | MX6QDL_PAD_EIM_D19__UART1_CTS_B 0x1b0b1 |
1560 | MX6QDL_PAD_EIM_D20__UART1_RTS_B 0x1b0b1 | 1558 | MX6QDL_PAD_EIM_D20__UART1_RTS_B 0x1b0b1 |
1561 | >; | 1559 | >; |
1562 | }; | 1560 | }; |
1563 | }; | 1561 | }; |
1564 | 1562 | ||
1565 | uart2 { | 1563 | uart2 { |
1566 | pinctrl_uart2_1: uart2grp-1 { | 1564 | pinctrl_uart2_1: uart2grp-1 { |
1567 | fsl,pins = < | 1565 | fsl,pins = < |
1568 | MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 | 1566 | MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 |
1569 | MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 | 1567 | MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 |
1570 | >; | 1568 | >; |
1571 | }; | 1569 | }; |
1572 | 1570 | ||
1573 | pinctrl_uart2_2: uart2grp-2 { /* DTE mode */ | 1571 | pinctrl_uart2_2: uart2grp-2 { /* DTE mode */ |
1574 | fsl,pins = < | 1572 | fsl,pins = < |
1575 | MX6QDL_PAD_EIM_D26__UART2_RX_DATA 0x1b0b1 | 1573 | MX6QDL_PAD_EIM_D26__UART2_RX_DATA 0x1b0b1 |
1576 | MX6QDL_PAD_EIM_D27__UART2_TX_DATA 0x1b0b1 | 1574 | MX6QDL_PAD_EIM_D27__UART2_TX_DATA 0x1b0b1 |
1577 | MX6QDL_PAD_EIM_D28__UART2_DTE_CTS_B 0x1b0b1 | 1575 | MX6QDL_PAD_EIM_D28__UART2_DTE_CTS_B 0x1b0b1 |
1578 | MX6QDL_PAD_EIM_D29__UART2_DTE_RTS_B 0x1b0b1 | 1576 | MX6QDL_PAD_EIM_D29__UART2_DTE_RTS_B 0x1b0b1 |
1579 | >; | 1577 | >; |
1580 | }; | 1578 | }; |
1581 | }; | 1579 | }; |
1582 | 1580 | ||
1583 | uart3 { | 1581 | uart3 { |
1584 | pinctrl_uart3_1: uart3grp-1 { | 1582 | pinctrl_uart3_1: uart3grp-1 { |
1585 | fsl,pins = < | 1583 | fsl,pins = < |
1586 | MX6QDL_PAD_SD4_CLK__UART3_RX_DATA 0x1b0b1 | 1584 | MX6QDL_PAD_SD4_CLK__UART3_RX_DATA 0x1b0b1 |
1587 | MX6QDL_PAD_SD4_CMD__UART3_TX_DATA 0x1b0b1 | 1585 | MX6QDL_PAD_SD4_CMD__UART3_TX_DATA 0x1b0b1 |
1588 | MX6QDL_PAD_EIM_D30__UART3_CTS_B 0x1b0b1 | 1586 | MX6QDL_PAD_EIM_D30__UART3_CTS_B 0x1b0b1 |
1589 | MX6QDL_PAD_EIM_EB3__UART3_RTS_B 0x1b0b1 | 1587 | MX6QDL_PAD_EIM_EB3__UART3_RTS_B 0x1b0b1 |
1590 | >; | 1588 | >; |
1591 | }; | 1589 | }; |
1592 | 1590 | ||
1593 | pinctrl_uart3dte_1: uart3dtegrp-1 { | 1591 | pinctrl_uart3dte_1: uart3dtegrp-1 { |
1594 | fsl,pins = < | 1592 | fsl,pins = < |
1595 | MX6QDL_PAD_SD4_CLK__UART3_TX_DATA 0x1b0b1 | 1593 | MX6QDL_PAD_SD4_CLK__UART3_TX_DATA 0x1b0b1 |
1596 | MX6QDL_PAD_SD4_CMD__UART3_RX_DATA 0x1b0b1 | 1594 | MX6QDL_PAD_SD4_CMD__UART3_RX_DATA 0x1b0b1 |
1597 | MX6QDL_PAD_EIM_D30__UART3_RTS_B 0x1b0b1 | 1595 | MX6QDL_PAD_EIM_D30__UART3_RTS_B 0x1b0b1 |
1598 | MX6QDL_PAD_EIM_EB3__UART3_CTS_B 0x1b0b1 | 1596 | MX6QDL_PAD_EIM_EB3__UART3_CTS_B 0x1b0b1 |
1599 | >; | 1597 | >; |
1600 | }; | 1598 | }; |
1601 | }; | 1599 | }; |
1602 | 1600 | ||
1603 | uart4 { | 1601 | uart4 { |
1604 | pinctrl_uart4_1: uart4grp-1 { | 1602 | pinctrl_uart4_1: uart4grp-1 { |
1605 | fsl,pins = < | 1603 | fsl,pins = < |
1606 | MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 | 1604 | MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 |
1607 | MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 | 1605 | MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 |
1608 | >; | 1606 | >; |
1609 | }; | 1607 | }; |
1610 | 1608 | ||
1611 | pinctrl_uart4_2: uart4grp-2 { | 1609 | pinctrl_uart4_2: uart4grp-2 { |
1612 | fsl,pins = < | 1610 | fsl,pins = < |
1613 | MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1 | 1611 | MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1 |
1614 | MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1 | 1612 | MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1 |
1615 | MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1 | 1613 | MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1 |
1616 | MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1 | 1614 | MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1 |
1617 | >; | 1615 | >; |
1618 | }; | 1616 | }; |
1619 | }; | 1617 | }; |
1620 | 1618 | ||
1621 | uart5 { | 1619 | uart5 { |
1622 | pinctrl_uart5_1: uart5grp-1 { | 1620 | pinctrl_uart5_1: uart5grp-1 { |
1623 | fsl,pins = < | 1621 | fsl,pins = < |
1624 | MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1 | 1622 | MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1 |
1625 | MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1 | 1623 | MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1 |
1626 | MX6QDL_PAD_KEY_COL4__UART5_RTS_B 0x1b0b1 | 1624 | MX6QDL_PAD_KEY_COL4__UART5_RTS_B 0x1b0b1 |
1627 | MX6QDL_PAD_KEY_ROW4__UART5_CTS_B 0x1b0b1 | 1625 | MX6QDL_PAD_KEY_ROW4__UART5_CTS_B 0x1b0b1 |
1628 | >; | 1626 | >; |
1629 | }; | 1627 | }; |
1630 | 1628 | ||
1631 | pinctrl_uart5dte_1: uart5dtegrp-1 { | 1629 | pinctrl_uart5dte_1: uart5dtegrp-1 { |
1632 | fsl,pins = < | 1630 | fsl,pins = < |
1633 | MX6QDL_PAD_KEY_ROW1__UART5_TX_DATA 0x1b0b1 | 1631 | MX6QDL_PAD_KEY_ROW1__UART5_TX_DATA 0x1b0b1 |
1634 | MX6QDL_PAD_KEY_COL1__UART5_RX_DATA 0x1b0b1 | 1632 | MX6QDL_PAD_KEY_COL1__UART5_RX_DATA 0x1b0b1 |
1635 | MX6QDL_PAD_KEY_ROW4__UART5_RTS_B 0x1b0b1 | 1633 | MX6QDL_PAD_KEY_ROW4__UART5_RTS_B 0x1b0b1 |
1636 | MX6QDL_PAD_KEY_COL4__UART5_CTS_B 0x1b0b1 | 1634 | MX6QDL_PAD_KEY_COL4__UART5_CTS_B 0x1b0b1 |
1637 | >; | 1635 | >; |
1638 | }; | 1636 | }; |
1639 | 1637 | ||
1640 | pinctrl_uart5_2: uart5grp-2 { | 1638 | pinctrl_uart5_2: uart5grp-2 { |
1641 | fsl,pins = < | 1639 | fsl,pins = < |
1642 | MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1 | 1640 | MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1 |
1643 | MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1 | 1641 | MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1 |
1644 | >; | 1642 | >; |
1645 | }; | 1643 | }; |
1646 | 1644 | ||
1647 | }; | 1645 | }; |
1648 | 1646 | ||
1649 | usbotg { | 1647 | usbotg { |
1650 | pinctrl_usbotg_1: usbotggrp-1 { | 1648 | pinctrl_usbotg_1: usbotggrp-1 { |
1651 | fsl,pins = < | 1649 | fsl,pins = < |
1652 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 | 1650 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 |
1653 | >; | 1651 | >; |
1654 | }; | 1652 | }; |
1655 | 1653 | ||
1656 | pinctrl_usbotg_2: usbotggrp-2 { | 1654 | pinctrl_usbotg_2: usbotggrp-2 { |
1657 | fsl,pins = < | 1655 | fsl,pins = < |
1658 | MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059 | 1656 | MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059 |
1659 | >; | 1657 | >; |
1660 | }; | 1658 | }; |
1661 | }; | 1659 | }; |
1662 | 1660 | ||
1663 | usbh2 { | 1661 | usbh2 { |
1664 | pinctrl_usbh2_1: usbh2grp-1 { | 1662 | pinctrl_usbh2_1: usbh2grp-1 { |
1665 | fsl,pins = < | 1663 | fsl,pins = < |
1666 | MX6QDL_PAD_RGMII_TXC__USB_H2_DATA 0x40013030 | 1664 | MX6QDL_PAD_RGMII_TXC__USB_H2_DATA 0x40013030 |
1667 | MX6QDL_PAD_RGMII_TX_CTL__USB_H2_STROBE 0x40013030 | 1665 | MX6QDL_PAD_RGMII_TX_CTL__USB_H2_STROBE 0x40013030 |
1668 | >; | 1666 | >; |
1669 | }; | 1667 | }; |
1670 | 1668 | ||
1671 | pinctrl_usbh2_2: usbh2grp-2 { | 1669 | pinctrl_usbh2_2: usbh2grp-2 { |
1672 | fsl,pins = < | 1670 | fsl,pins = < |
1673 | MX6QDL_PAD_RGMII_TX_CTL__USB_H2_STROBE 0x40017030 | 1671 | MX6QDL_PAD_RGMII_TX_CTL__USB_H2_STROBE 0x40017030 |
1674 | >; | 1672 | >; |
1675 | }; | 1673 | }; |
1676 | }; | 1674 | }; |
1677 | 1675 | ||
1678 | usbh3 { | 1676 | usbh3 { |
1679 | pinctrl_usbh3_1: usbh3grp-1 { | 1677 | pinctrl_usbh3_1: usbh3grp-1 { |
1680 | fsl,pins = < | 1678 | fsl,pins = < |
1681 | MX6QDL_PAD_RGMII_RX_CTL__USB_H3_DATA 0x40013030 | 1679 | MX6QDL_PAD_RGMII_RX_CTL__USB_H3_DATA 0x40013030 |
1682 | MX6QDL_PAD_RGMII_RXC__USB_H3_STROBE 0x40013030 | 1680 | MX6QDL_PAD_RGMII_RXC__USB_H3_STROBE 0x40013030 |
1683 | >; | 1681 | >; |
1684 | }; | 1682 | }; |
1685 | 1683 | ||
1686 | pinctrl_usbh3_2: usbh3grp-2 { | 1684 | pinctrl_usbh3_2: usbh3grp-2 { |
1687 | fsl,pins = < | 1685 | fsl,pins = < |
1688 | MX6QDL_PAD_RGMII_RXC__USB_H3_STROBE 0x40017030 | 1686 | MX6QDL_PAD_RGMII_RXC__USB_H3_STROBE 0x40017030 |
1689 | >; | 1687 | >; |
1690 | }; | 1688 | }; |
1691 | }; | 1689 | }; |
1692 | 1690 | ||
1693 | usdhc1 { | 1691 | usdhc1 { |
1694 | pinctrl_usdhc1_1: usdhc1grp-1 { | 1692 | pinctrl_usdhc1_1: usdhc1grp-1 { |
1695 | fsl,pins = < | 1693 | fsl,pins = < |
1696 | MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071 | 1694 | MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071 |
1697 | MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071 | 1695 | MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071 |
1698 | MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071 | 1696 | MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071 |
1699 | MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071 | 1697 | MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071 |
1700 | MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071 | 1698 | MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071 |
1701 | MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071 | 1699 | MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071 |
1702 | >; | 1700 | >; |
1703 | }; | 1701 | }; |
1704 | }; | 1702 | }; |
1705 | 1703 | ||
1706 | usdhc2 { | 1704 | usdhc2 { |
1707 | pinctrl_usdhc2_1: usdhc2grp-1 { | 1705 | pinctrl_usdhc2_1: usdhc2grp-1 { |
1708 | fsl,pins = < | 1706 | fsl,pins = < |
1709 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 | 1707 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 |
1710 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 | 1708 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 |
1711 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 | 1709 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 |
1712 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 | 1710 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 |
1713 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 | 1711 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 |
1714 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 | 1712 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 |
1715 | /*MX6QDL_PAD_NANDF_D4__SD2_DATA4 0x17059 | ||
1716 | MX6QDL_PAD_NANDF_D5__SD2_DATA5 0x17059 | ||
1717 | MX6QDL_PAD_NANDF_D6__SD2_DATA6 0x17059 | ||
1718 | MX6QDL_PAD_NANDF_D7__SD2_DATA7 0x17059*/ | ||
1719 | >; | 1713 | >; |
1720 | }; | 1714 | }; |
1721 | 1715 | ||
1722 | pinctrl_usdhc2_2: usdhc2grp-2 { | 1716 | pinctrl_usdhc2_2: usdhc2grp-2 { |
1723 | fsl,pins = < | 1717 | fsl,pins = < |
1724 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 | 1718 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 |
1725 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 | 1719 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 |
1726 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 | 1720 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 |
1727 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 | 1721 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 |
1728 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 | 1722 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 |
1729 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 | 1723 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 |
1730 | >; | 1724 | >; |
1731 | }; | 1725 | }; |
1732 | }; | 1726 | }; |
1733 | 1727 | ||
1734 | usdhc3 { | 1728 | usdhc3 { |
1735 | pinctrl_usdhc3_1: usdhc3grp-1 { | 1729 | pinctrl_usdhc3_1: usdhc3grp-1 { |
1736 | fsl,pins = < | 1730 | fsl,pins = < |
1737 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 | 1731 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 |
1738 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 | 1732 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 |
1739 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | 1733 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 |
1740 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | 1734 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 |
1741 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | 1735 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 |
1742 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | 1736 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 |
1743 | /*MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 | 1737 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x17059 |
1744 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 | ||
1745 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 | ||
1746 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059*/ | ||
1747 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x17059 | ||
1748 | >; | 1738 | >; |
1749 | }; | 1739 | }; |
1750 | 1740 | ||
1751 | pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz { /* 100Mhz */ | 1741 | pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz { /* 100Mhz */ |
1752 | fsl,pins = < | 1742 | fsl,pins = < |
1753 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170B9 | 1743 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170B9 |
1754 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100B9 | 1744 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100B9 |
1755 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170B9 | 1745 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170B9 |
1756 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170B9 | 1746 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170B9 |
1757 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170B9 | 1747 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170B9 |
1758 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170B9 | 1748 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170B9 |
1759 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170B9 | 1749 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170B9 |
1760 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170B9 | 1750 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170B9 |
1761 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170B9 | 1751 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170B9 |
1762 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170B9 | 1752 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170B9 |
1763 | >; | 1753 | >; |
1764 | }; | 1754 | }; |
1765 | 1755 | ||
1766 | pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz { /* 200Mhz */ | 1756 | pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz { /* 200Mhz */ |
1767 | fsl,pins = < | 1757 | fsl,pins = < |
1768 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170F9 | 1758 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170F9 |
1769 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100F9 | 1759 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100F9 |
1770 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170F9 | 1760 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170F9 |
1771 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170F9 | 1761 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170F9 |
1772 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170F9 | 1762 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170F9 |
1773 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170F9 | 1763 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170F9 |
1774 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170F9 | 1764 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170F9 |
1775 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170F9 | 1765 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170F9 |
1776 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170F9 | 1766 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170F9 |
1777 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170F9 | 1767 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170F9 |
1778 | >; | 1768 | >; |
1779 | }; | 1769 | }; |
1780 | 1770 | ||
1781 | pinctrl_usdhc3_2: usdhc3grp-2 { | 1771 | pinctrl_usdhc3_2: usdhc3grp-2 { |
1782 | fsl,pins = < | 1772 | fsl,pins = < |
1783 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 | 1773 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 |
1784 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 | 1774 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 |
1785 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | 1775 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 |
1786 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | 1776 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 |
1787 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | 1777 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 |
1788 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | 1778 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 |
1789 | >; | 1779 | >; |
1790 | }; | 1780 | }; |
1791 | }; | 1781 | }; |
1792 | 1782 | ||
1793 | usdhc4 { | 1783 | usdhc4 { |
1794 | pinctrl_usdhc4_1: usdhc4grp-1 { | 1784 | pinctrl_usdhc4_1: usdhc4grp-1 { |
1795 | fsl,pins = < | 1785 | fsl,pins = < |
1796 | MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 | 1786 | MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 |
1797 | MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 | 1787 | MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 |
1798 | MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 | 1788 | MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 |
1799 | MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 | 1789 | MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 |
1800 | MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 | 1790 | MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 |
1801 | MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 | 1791 | MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 |
1802 | MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 | 1792 | MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 |
1803 | MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 | 1793 | MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 |
1804 | MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 | 1794 | MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 |
1805 | MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 | 1795 | MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 |
1806 | >; | 1796 | >; |
1807 | }; | 1797 | }; |
1808 | 1798 | ||
1809 | pinctrl_usdhc4_2: usdhc4grp-2 { | 1799 | pinctrl_usdhc4_2: usdhc4grp-2 { |
1810 | fsl,pins = < | 1800 | fsl,pins = < |
1811 | MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 | 1801 | MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 |
1812 | MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 | 1802 | MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 |
1813 | MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 | 1803 | MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 |
1814 | MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 | 1804 | MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 |
1815 | MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 | 1805 | MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 |
1816 | MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 | 1806 | MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 |
1817 | >; | 1807 | >; |
1818 | }; | 1808 | }; |
1819 | }; | 1809 | }; |
1820 | 1810 | ||
1821 | weim { | 1811 | weim { |
1822 | pinctrl_weim_cs0_1: weim_cs0grp-1 { | 1812 | pinctrl_weim_cs0_1: weim_cs0grp-1 { |
1823 | fsl,pins = < | 1813 | fsl,pins = < |
1824 | MX6QDL_PAD_EIM_CS0__EIM_CS0_B 0xb0b1 | 1814 | MX6QDL_PAD_EIM_CS0__EIM_CS0_B 0xb0b1 |
1825 | >; | 1815 | >; |
1826 | }; | 1816 | }; |
1827 | 1817 | ||
1828 | pinctrl_weim_nor_1: weim_norgrp-1 { | 1818 | pinctrl_weim_nor_1: weim_norgrp-1 { |
1829 | fsl,pins = < | 1819 | fsl,pins = < |
1830 | MX6QDL_PAD_EIM_OE__EIM_OE_B 0xb0b1 | 1820 | MX6QDL_PAD_EIM_OE__EIM_OE_B 0xb0b1 |
1831 | MX6QDL_PAD_EIM_RW__EIM_RW 0xb0b1 | 1821 | MX6QDL_PAD_EIM_RW__EIM_RW 0xb0b1 |
1832 | MX6QDL_PAD_EIM_WAIT__EIM_WAIT_B 0xb060 | 1822 | MX6QDL_PAD_EIM_WAIT__EIM_WAIT_B 0xb060 |
1833 | /* data */ | 1823 | /* data */ |
1834 | MX6QDL_PAD_EIM_D16__EIM_DATA16 0x1b0b0 | 1824 | MX6QDL_PAD_EIM_D16__EIM_DATA16 0x1b0b0 |
1835 | MX6QDL_PAD_EIM_D17__EIM_DATA17 0x1b0b0 | 1825 | MX6QDL_PAD_EIM_D17__EIM_DATA17 0x1b0b0 |
1836 | MX6QDL_PAD_EIM_D18__EIM_DATA18 0x1b0b0 | 1826 | MX6QDL_PAD_EIM_D18__EIM_DATA18 0x1b0b0 |
1837 | MX6QDL_PAD_EIM_D19__EIM_DATA19 0x1b0b0 | 1827 | MX6QDL_PAD_EIM_D19__EIM_DATA19 0x1b0b0 |
1838 | MX6QDL_PAD_EIM_D20__EIM_DATA20 0x1b0b0 | 1828 | MX6QDL_PAD_EIM_D20__EIM_DATA20 0x1b0b0 |
1839 | MX6QDL_PAD_EIM_D21__EIM_DATA21 0x1b0b0 | 1829 | MX6QDL_PAD_EIM_D21__EIM_DATA21 0x1b0b0 |
1840 | MX6QDL_PAD_EIM_D22__EIM_DATA22 0x1b0b0 | 1830 | MX6QDL_PAD_EIM_D22__EIM_DATA22 0x1b0b0 |
1841 | MX6QDL_PAD_EIM_D23__EIM_DATA23 0x1b0b0 | 1831 | MX6QDL_PAD_EIM_D23__EIM_DATA23 0x1b0b0 |
1842 | MX6QDL_PAD_EIM_D24__EIM_DATA24 0x1b0b0 | 1832 | MX6QDL_PAD_EIM_D24__EIM_DATA24 0x1b0b0 |
1843 | MX6QDL_PAD_EIM_D25__EIM_DATA25 0x1b0b0 | 1833 | MX6QDL_PAD_EIM_D25__EIM_DATA25 0x1b0b0 |
1844 | MX6QDL_PAD_EIM_D26__EIM_DATA26 0x1b0b0 | 1834 | MX6QDL_PAD_EIM_D26__EIM_DATA26 0x1b0b0 |
1845 | MX6QDL_PAD_EIM_D27__EIM_DATA27 0x1b0b0 | 1835 | MX6QDL_PAD_EIM_D27__EIM_DATA27 0x1b0b0 |
1846 | MX6QDL_PAD_EIM_D28__EIM_DATA28 0x1b0b0 | 1836 | MX6QDL_PAD_EIM_D28__EIM_DATA28 0x1b0b0 |
1847 | MX6QDL_PAD_EIM_D29__EIM_DATA29 0x1b0b0 | 1837 | MX6QDL_PAD_EIM_D29__EIM_DATA29 0x1b0b0 |
1848 | MX6QDL_PAD_EIM_D30__EIM_DATA30 0x1b0b0 | 1838 | MX6QDL_PAD_EIM_D30__EIM_DATA30 0x1b0b0 |
1849 | MX6QDL_PAD_EIM_D31__EIM_DATA31 0x1b0b0 | 1839 | MX6QDL_PAD_EIM_D31__EIM_DATA31 0x1b0b0 |
1850 | /* address */ | 1840 | /* address */ |
1851 | MX6QDL_PAD_EIM_A23__EIM_ADDR23 0xb0b1 | 1841 | MX6QDL_PAD_EIM_A23__EIM_ADDR23 0xb0b1 |
1852 | MX6QDL_PAD_EIM_A22__EIM_ADDR22 0xb0b1 | 1842 | MX6QDL_PAD_EIM_A22__EIM_ADDR22 0xb0b1 |
1853 | MX6QDL_PAD_EIM_A21__EIM_ADDR21 0xb0b1 | 1843 | MX6QDL_PAD_EIM_A21__EIM_ADDR21 0xb0b1 |
1854 | MX6QDL_PAD_EIM_A20__EIM_ADDR20 0xb0b1 | 1844 | MX6QDL_PAD_EIM_A20__EIM_ADDR20 0xb0b1 |
1855 | MX6QDL_PAD_EIM_A19__EIM_ADDR19 0xb0b1 | 1845 | MX6QDL_PAD_EIM_A19__EIM_ADDR19 0xb0b1 |
1856 | MX6QDL_PAD_EIM_A18__EIM_ADDR18 0xb0b1 | 1846 | MX6QDL_PAD_EIM_A18__EIM_ADDR18 0xb0b1 |
1857 | MX6QDL_PAD_EIM_A17__EIM_ADDR17 0xb0b1 | 1847 | MX6QDL_PAD_EIM_A17__EIM_ADDR17 0xb0b1 |
1858 | MX6QDL_PAD_EIM_A16__EIM_ADDR16 0xb0b1 | 1848 | MX6QDL_PAD_EIM_A16__EIM_ADDR16 0xb0b1 |
1859 | MX6QDL_PAD_EIM_DA15__EIM_AD15 0xb0b1 | 1849 | MX6QDL_PAD_EIM_DA15__EIM_AD15 0xb0b1 |
1860 | MX6QDL_PAD_EIM_DA14__EIM_AD14 0xb0b1 | 1850 | MX6QDL_PAD_EIM_DA14__EIM_AD14 0xb0b1 |
1861 | MX6QDL_PAD_EIM_DA13__EIM_AD13 0xb0b1 | 1851 | MX6QDL_PAD_EIM_DA13__EIM_AD13 0xb0b1 |
1862 | MX6QDL_PAD_EIM_DA12__EIM_AD12 0xb0b1 | 1852 | MX6QDL_PAD_EIM_DA12__EIM_AD12 0xb0b1 |
1863 | MX6QDL_PAD_EIM_DA11__EIM_AD11 0xb0b1 | 1853 | MX6QDL_PAD_EIM_DA11__EIM_AD11 0xb0b1 |
1864 | MX6QDL_PAD_EIM_DA10__EIM_AD10 0xb0b1 | 1854 | MX6QDL_PAD_EIM_DA10__EIM_AD10 0xb0b1 |
1865 | MX6QDL_PAD_EIM_DA9__EIM_AD09 0xb0b1 | 1855 | MX6QDL_PAD_EIM_DA9__EIM_AD09 0xb0b1 |
1866 | MX6QDL_PAD_EIM_DA8__EIM_AD08 0xb0b1 | 1856 | MX6QDL_PAD_EIM_DA8__EIM_AD08 0xb0b1 |
1867 | MX6QDL_PAD_EIM_DA7__EIM_AD07 0xb0b1 | 1857 | MX6QDL_PAD_EIM_DA7__EIM_AD07 0xb0b1 |
1868 | MX6QDL_PAD_EIM_DA6__EIM_AD06 0xb0b1 | 1858 | MX6QDL_PAD_EIM_DA6__EIM_AD06 0xb0b1 |
1869 | MX6QDL_PAD_EIM_DA5__EIM_AD05 0xb0b1 | 1859 | MX6QDL_PAD_EIM_DA5__EIM_AD05 0xb0b1 |
1870 | MX6QDL_PAD_EIM_DA4__EIM_AD04 0xb0b1 | 1860 | MX6QDL_PAD_EIM_DA4__EIM_AD04 0xb0b1 |
1871 | MX6QDL_PAD_EIM_DA3__EIM_AD03 0xb0b1 | 1861 | MX6QDL_PAD_EIM_DA3__EIM_AD03 0xb0b1 |
1872 | MX6QDL_PAD_EIM_DA2__EIM_AD02 0xb0b1 | 1862 | MX6QDL_PAD_EIM_DA2__EIM_AD02 0xb0b1 |
1873 | MX6QDL_PAD_EIM_DA1__EIM_AD01 0xb0b1 | 1863 | MX6QDL_PAD_EIM_DA1__EIM_AD01 0xb0b1 |
1874 | MX6QDL_PAD_EIM_DA0__EIM_AD00 0xb0b1 | 1864 | MX6QDL_PAD_EIM_DA0__EIM_AD00 0xb0b1 |
1875 | >; | 1865 | >; |
1876 | }; | 1866 | }; |
1877 | }; | 1867 | }; |
1878 | }; | 1868 | }; |
arch/arm/boot/dts/imx6qdl-smarcfimx6.dtsi
1 | /* | 1 | /* |
2 | * Copyright 2012 Freescale Semiconductor, Inc. | 2 | * Copyright 2012 Freescale Semiconductor, Inc. |
3 | * Copyright 2011 Linaro Ltd. | 3 | * Copyright 2011 Linaro Ltd. |
4 | * | 4 | * |
5 | * The code contained herein is licensed under the GNU General Public | 5 | * The code contained herein is licensed under the GNU General Public |
6 | * License. You may obtain a copy of the GNU General Public License | 6 | * License. You may obtain a copy of the GNU General Public License |
7 | * Version 2 or later at the following locations: | 7 | * Version 2 or later at the following locations: |
8 | * | 8 | * |
9 | * http://www.opensource.org/licenses/gpl-license.html | 9 | * http://www.opensource.org/licenses/gpl-license.html |
10 | * http://www.gnu.org/copyleft/gpl.html | 10 | * http://www.gnu.org/copyleft/gpl.html |
11 | */ | 11 | */ |
12 | 12 | ||
13 | / { | 13 | / { |
14 | aliases { | 14 | aliases { |
15 | mxcfb0 = &mxcfb1; | 15 | mxcfb0 = &mxcfb1; |
16 | mxcfb1 = &mxcfb2; | 16 | mxcfb1 = &mxcfb2; |
17 | mxcfb2 = &mxcfb3; | 17 | mxcfb2 = &mxcfb3; |
18 | mxcfb3 = &mxcfb4; | 18 | mxcfb3 = &mxcfb4; |
19 | }; | 19 | }; |
20 | 20 | ||
21 | memory { | 21 | memory { |
22 | reg = <0x10000000 0x40000000>; | 22 | reg = <0x10000000 0x40000000>; |
23 | }; | 23 | }; |
24 | 24 | ||
25 | battery: max8903@0 { | ||
26 | compatible = "fsl,max8903-charger"; | ||
27 | pinctrl-names = "default"; | ||
28 | dok_input = <&gpio2 24 1>; | ||
29 | uok_input = <&gpio1 27 1>; | ||
30 | chg_input = <&gpio3 23 1>; | ||
31 | flt_input = <&gpio5 2 1>; | ||
32 | fsl,dcm_always_high; | ||
33 | fsl,dc_valid; | ||
34 | fsl,usb_valid; | ||
35 | status = "okay"; | ||
36 | }; | ||
37 | |||
38 | hannstar_cabc { | 25 | hannstar_cabc { |
39 | compatible = "hannstar,cabc"; | 26 | compatible = "hannstar,cabc"; |
40 | 27 | ||
41 | lvds0 { | 28 | lvds0 { |
42 | gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>; | 29 | gpios = <&gpio1 00 GPIO_ACTIVE_HIGH>; |
43 | }; | 30 | }; |
44 | 31 | ||
45 | lvds1 { | 32 | lvds1 { |
46 | gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>; | 33 | gpios = <&gpio1 00 GPIO_ACTIVE_HIGH>; |
47 | }; | 34 | }; |
48 | }; | 35 | }; |
49 | 36 | ||
50 | regulators { | 37 | regulators { |
51 | compatible = "simple-bus"; | 38 | compatible = "simple-bus"; |
39 | #address-cells = <1>; | ||
40 | #size-cells = <0>; | ||
52 | 41 | ||
53 | reg_usb_otg_vbus: usb_otg_vbus { | 42 | reg_usb_otg_vbus: usb_otg_vbus { |
54 | compatible = "regulator-fixed"; | 43 | compatible = "regulator-fixed"; |
55 | regulator-name = "usb_otg_vbus"; | 44 | regulator-name = "usb_otg_vbus"; |
56 | regulator-min-microvolt = <5000000>; | 45 | regulator-min-microvolt = <5000000>; |
57 | regulator-max-microvolt = <5000000>; | 46 | regulator-max-microvolt = <5000000>; |
58 | gpio = <&gpio3 22 0>; | 47 | gpio = <&gpio1 29 0>; |
59 | enable-active-high; | 48 | enable-active-high; |
60 | }; | 49 | }; |
61 | 50 | ||
62 | reg_usb_h1_vbus: usb_h1_vbus { | 51 | reg_usb_h1_vbus: usb_h1_vbus { |
63 | compatible = "regulator-fixed"; | 52 | compatible = "regulator-fixed"; |
64 | regulator-name = "usb_h1_vbus"; | 53 | regulator-name = "usb_h1_vbus"; |
65 | regulator-min-microvolt = <5000000>; | 54 | regulator-min-microvolt = <5000000>; |
66 | regulator-max-microvolt = <5000000>; | 55 | regulator-max-microvolt = <5000000>; |
67 | gpio = <&gpio1 29 0>; | 56 | gpio = <&gpio1 26 0>; |
68 | enable-active-high; | 57 | enable-active-high; |
69 | }; | 58 | }; |
70 | 59 | ||
60 | reg_1p8v: 1p8v { | ||
61 | compatible = "regulator-fixed"; | ||
62 | regulator-name = "1P8V"; | ||
63 | regulator-min-microvolt = <1800000>; | ||
64 | regulator-max-microvolt = <1800000>; | ||
65 | regulator-always-on; | ||
66 | }; | ||
67 | |||
71 | reg_2p5v: 2p5v { | 68 | reg_2p5v: 2p5v { |
72 | compatible = "regulator-fixed"; | 69 | compatible = "regulator-fixed"; |
73 | regulator-name = "2P5V"; | 70 | regulator-name = "2P5V"; |
74 | regulator-min-microvolt = <2500000>; | 71 | regulator-min-microvolt = <2500000>; |
75 | regulator-max-microvolt = <2500000>; | 72 | regulator-max-microvolt = <2500000>; |
76 | regulator-always-on; | 73 | regulator-always-on; |
77 | }; | 74 | }; |
78 | 75 | ||
79 | reg_3p3v: 3p3v { | 76 | reg_3p3v: 3p3v { |
80 | compatible = "regulator-fixed"; | 77 | compatible = "regulator-fixed"; |
81 | regulator-name = "3P3V"; | 78 | regulator-name = "3P3V"; |
82 | regulator-min-microvolt = <3300000>; | 79 | regulator-min-microvolt = <3300000>; |
83 | regulator-max-microvolt = <3300000>; | 80 | regulator-max-microvolt = <3300000>; |
84 | regulator-always-on; | 81 | regulator-always-on; |
85 | }; | 82 | }; |
86 | 83 | ||
87 | reg_mipi_dsi_pwr_on: mipi_dsi_pwr_on { | ||
88 | compatible = "regulator-fixed"; | ||
89 | regulator-name = "mipi_dsi_pwr_on"; | ||
90 | gpio = <&gpio6 14 0>; | ||
91 | enable-active-high; | ||
92 | }; | ||
93 | |||
94 | reg_sensor: sensor_supply { | 84 | reg_sensor: sensor_supply { |
95 | compatible = "regulator-fixed"; | 85 | compatible = "regulator-fixed"; |
96 | regulator-name = "sensor-supply"; | 86 | regulator-name = "sensor-supply"; |
97 | regulator-min-microvolt = <3300000>; | 87 | regulator-min-microvolt = <3300000>; |
98 | regulator-max-microvolt = <3300000>; | 88 | regulator-max-microvolt = <3300000>; |
99 | gpio = <&gpio2 31 0>; | 89 | gpio = <&gpio2 31 0>; |
100 | startup-delay-us = <500>; | 90 | startup-delay-us = <500>; |
101 | enable-active-high; | 91 | enable-active-high; |
102 | }; | 92 | }; |
103 | }; | 93 | }; |
104 | 94 | ||
105 | sound { | 95 | sound { |
106 | compatible = "fsl,imx6q-sabrelite-sgtl5000", | 96 | compatible = "fsl,imx6q-sabrelite-sgtl5000", |
107 | "fsl,imx-audio-sgtl5000"; | 97 | "fsl,imx-audio-sgtl5000"; |
108 | model = "sgtl5000 sound card"; | 98 | model = "sgtl5000 sound card"; |
109 | cpu-dai = <&ssi1>; | 99 | cpu-dai = <&ssi1>; |
110 | audio-codec = <&codec>; | 100 | audio-codec = <&codec>; |
111 | audio-routing = | 101 | audio-routing = |
112 | "MIC_IN", "Mic Jack", | 102 | "MIC_IN", "Mic Jack", |
113 | "Mic Jack", "Mic Bias", | 103 | "Mic Jack", "Mic Bias", |
114 | "Headphone Jack", "HP_OUT"; | 104 | "Headphone Jack", "HP_OUT"; |
115 | mux-int-port = <1>; | 105 | mux-int-port = <1>; |
116 | mux-ext-port = <3>; | 106 | mux-ext-port = <3>; |
117 | }; | 107 | }; |
118 | 108 | ||
109 | sound-spdif { | ||
110 | compatible = "fsl,imx-audio-spdif"; | ||
111 | model = "imx-spdif"; | ||
112 | spdif-controller = <&spdif>; | ||
113 | spdif-in; | ||
114 | spdif-out; | ||
115 | }; | ||
116 | |||
119 | sound-hdmi { | 117 | sound-hdmi { |
120 | compatible = "fsl,imx6q-audio-hdmi", | 118 | compatible = "fsl,imx6q-audio-hdmi", |
121 | "fsl,imx-audio-hdmi"; | 119 | "fsl,imx-audio-hdmi"; |
122 | model = "imx-audio-hdmi"; | 120 | model = "imx-audio-hdmi"; |
123 | hdmi-controller = <&hdmi_audio>; | 121 | hdmi-controller = <&hdmi_audio>; |
124 | }; | 122 | }; |
125 | 123 | ||
126 | mxcfb1: fb@0 { | 124 | mxcfb1: fb@0 { |
127 | compatible = "fsl,mxc_sdc_fb"; | 125 | compatible = "fsl,mxc_sdc_fb"; |
128 | disp_dev = "ldb"; | 126 | disp_dev = "ldb"; |
129 | interface_pix_fmt = "RGB666"; | 127 | interface_pix_fmt = "RGB24"; |
130 | default_bpp = <16>; | 128 | default_bpp = <24>; |
131 | int_clk = <0>; | 129 | int_clk = <0>; |
132 | late_init = <0>; | 130 | late_init = <0>; |
133 | status = "disabled"; | 131 | status = "disabled"; |
134 | }; | 132 | }; |
135 | 133 | ||
136 | mxcfb2: fb@1 { | 134 | mxcfb2: fb@1 { |
137 | compatible = "fsl,mxc_sdc_fb"; | 135 | compatible = "fsl,mxc_sdc_fb"; |
138 | disp_dev = "hdmi"; | 136 | disp_dev = "hdmi"; |
139 | interface_pix_fmt = "RGB24"; | 137 | interface_pix_fmt = "RGB24"; |
140 | mode_str ="1920x1080M@60"; | 138 | mode_str ="1920x1080M@60"; |
141 | default_bpp = <24>; | 139 | default_bpp = <24>; |
142 | int_clk = <0>; | 140 | int_clk = <0>; |
143 | late_init = <0>; | 141 | late_init = <0>; |
144 | status = "disabled"; | 142 | status = "disabled"; |
145 | }; | 143 | }; |
146 | 144 | ||
147 | mxcfb3: fb@2 { | 145 | mxcfb3: fb@2 { |
148 | compatible = "fsl,mxc_sdc_fb"; | 146 | compatible = "fsl,mxc_sdc_fb"; |
149 | disp_dev = "lcd"; | 147 | disp_dev = "lcd"; |
150 | interface_pix_fmt = "RGB565"; | 148 | interface_pix_fmt = "RGB24"; |
151 | mode_str ="CLAA-WVGA"; | 149 | mode_str ="CLAA-WVGA"; |
152 | default_bpp = <16>; | 150 | default_bpp = <16>; |
153 | int_clk = <0>; | 151 | int_clk = <0>; |
154 | late_init = <0>; | 152 | late_init = <0>; |
155 | status = "disabled"; | 153 | status = "disabled"; |
156 | }; | 154 | }; |
157 | 155 | ||
158 | mxcfb4: fb@3 { | 156 | mxcfb4: fb@3 { |
159 | compatible = "fsl,mxc_sdc_fb"; | 157 | compatible = "fsl,mxc_sdc_fb"; |
160 | disp_dev = "ldb"; | 158 | disp_dev = "ldb"; |
161 | interface_pix_fmt = "RGB666"; | 159 | interface_pix_fmt = "RGB24"; |
162 | default_bpp = <16>; | 160 | default_bpp = <24>; |
163 | int_clk = <0>; | 161 | int_clk = <0>; |
164 | late_init = <0>; | 162 | late_init = <0>; |
165 | status = "disabled"; | 163 | status = "disabled"; |
166 | }; | 164 | }; |
167 | 165 | ||
168 | lcd@0 { | 166 | lcd@0 { |
169 | compatible = "fsl,lcd"; | 167 | compatible = "fsl,lcd"; |
170 | ipu_id = <0>; | 168 | ipu_id = <0>; |
171 | disp_id = <0>; | 169 | disp_id = <0>; |
172 | default_ifmt = "RGB565"; | 170 | default_ifmt = "RGB24"; |
173 | pinctrl-names = "default"; | 171 | pinctrl-names = "default"; |
174 | pinctrl-0 = <&pinctrl_ipu1_1>; | 172 | pinctrl-0 = <&pinctrl_ipu1_1>; |
175 | status = "okay"; | 173 | status = "okay"; |
176 | }; | 174 | }; |
177 | 175 | ||
178 | backlight { | 176 | backlight { |
179 | compatible = "pwm-backlight"; | 177 | compatible = "pwm-backlight"; |
180 | pwms = <&pwm2 0 5000000>; | 178 | pwms = <&pwm2 0 5000000>; |
181 | brightness-levels = <0 4 8 16 32 64 128 255>; | 179 | brightness-levels = <0 4 8 16 32 64 128 255>; |
180 | /*set default brightness level to 7, 7 is the brightest*/ | ||
182 | default-brightness-level = <7>; | 181 | default-brightness-level = <7>; |
183 | }; | 182 | }; |
184 | 183 | ||
185 | v4l2_cap_0 { | 184 | v4l2_cap_0 { |
186 | compatible = "fsl,imx6q-v4l2-capture"; | 185 | compatible = "fsl,imx6q-v4l2-capture"; |
187 | ipu_id = <0>; | 186 | ipu_id = <0>; |
188 | csi_id = <0>; | 187 | csi_id = <0>; |
189 | mclk_source = <0>; | 188 | mclk_source = <0>; |
190 | status = "okay"; | 189 | status = "disabled"; |
191 | }; | 190 | }; |
192 | 191 | ||
193 | v4l2_cap_1 { | 192 | v4l2_cap_1 { |
194 | compatible = "fsl,imx6q-v4l2-capture"; | 193 | compatible = "fsl,imx6q-v4l2-capture"; |
195 | ipu_id = <0>; | 194 | ipu_id = <0>; |
196 | csi_id = <1>; | 195 | csi_id = <1>; |
197 | mclk_source = <0>; | 196 | mclk_source = <0>; |
198 | status = "okay"; | 197 | status = "disabled"; |
199 | }; | 198 | }; |
200 | 199 | ||
201 | v4l2_out { | 200 | v4l2_out { |
202 | compatible = "fsl,mxc_v4l2_output"; | 201 | compatible = "fsl,mxc_v4l2_output"; |
203 | status = "okay"; | 202 | status = "disabled"; |
204 | }; | 203 | }; |
205 | 204 | ||
206 | mipi_dsi_reset: mipi-dsi-reset { | 205 | mipi_csi_reset: mipi-csi-reset { |
207 | compatible = "gpio-reset"; | 206 | compatible = "gpio-reset"; |
208 | reset-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; | 207 | reset-gpios = <&gpio2 06 GPIO_ACTIVE_LOW>,<&gpio2 03 GPIO_ACTIVE_LOW>; /*GPIO2 and GPIO3*/ |
209 | reset-delay-us = <50>; | 208 | reset-delay-us = <50>; |
210 | #reset-cells = <0>; | 209 | #reset-cells = <0>; |
211 | }; | 210 | }; |
212 | }; | 211 | }; |
213 | 212 | ||
214 | &audmux { | 213 | &audmux { |
215 | pinctrl-names = "default"; | 214 | pinctrl-names = "default"; |
216 | pinctrl-0 = <&pinctrl_audmux_2>; | 215 | pinctrl-0 = <&pinctrl_audmux_2>; |
217 | status = "okay"; | 216 | status = "okay"; |
218 | }; | 217 | }; |
219 | 218 | ||
220 | &cpu0 { | 219 | &cpu0 { |
221 | arm-supply = <&sw1a_reg>; | 220 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
222 | soc-supply = <&sw1c_reg>; | ||
223 | pu-supply = <&pu_dummy>; /* use pu_dummy if VDDSOC share with VDDPU */ | ||
224 | }; | 221 | }; |
225 | 222 | ||
223 | &ecspi1 { | ||
224 | fsl,spi-num-chipselects = <2>; | ||
225 | cs-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>, <&gpio4 10 GPIO_ACTIVE_HIGH>; | ||
226 | pinctrl-names = "default"; | ||
227 | pinctrl-0 = <&pinctrl_ecspi1_2 &pinctrl_ecspi1_cs_2>; | ||
228 | status = "okay"; | ||
229 | |||
230 | spidev@0x00 { | ||
231 | compatible = "spidev"; | ||
232 | spi-max-frequency = <16000000>; | ||
233 | reg = <0>; | ||
234 | }; | ||
235 | spidev@0x01 { | ||
236 | compatible = "spidev"; | ||
237 | spi-max-frequency = <16000000>; | ||
238 | reg = <1>; | ||
239 | }; | ||
240 | }; | ||
241 | |||
226 | &ecspi2 { | 242 | &ecspi2 { |
227 | fsl,spi-num-chipselects = <3>; | 243 | fsl,spi-num-chipselects = <4>; |
228 | cs-gpios = <&gpio5 29 0>, <&gpio3 24 0>, <&gpio3 25 0>; | 244 | cs-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>,<&gpio3 24 GPIO_ACTIVE_HIGH>,<&gpio3 25 GPIO_ACTIVE_HIGH>,<0>; |
229 | pinctrl-names = "default"; | 245 | pinctrl-names = "default"; |
230 | pinctrl-0 = <&pinctrl_ecspi2_1>, <&pinctrl_ecspi2_cs_1>; | 246 | pinctrl-0 = <&pinctrl_ecspi2_1 &pinctrl_ecspi2_cs_1>; |
231 | status = "okay"; | 247 | status = "okay"; |
232 | 248 | ||
233 | flash: mx25u3235f0@0 { | 249 | flash: mx25u3235f0@0 { |
234 | #address-cells = <1>; | 250 | #address-cells = <1>; |
235 | #size-cells = <1>; | 251 | #size-cells = <1>; |
236 | compatible = "macronix,mx25u3235f"; | 252 | compatible = "macronix,mx25u3235f"; |
237 | spi-max-frequency = <16000000>; | 253 | spi-max-frequency = <16000000>; |
238 | reg = <0>; | 254 | reg = <0>; |
239 | partition@0 { | 255 | partition@0 { |
240 | label = "U-Boot"; | 256 | label = "U-Boot"; |
241 | reg = <0x0 0x100000>; | 257 | reg = <0x0 0x100000>; |
242 | }; | 258 | }; |
243 | 259 | ||
244 | partition@100000 { | 260 | partition@100000 { |
245 | label = "U-Boot Environment"; | 261 | label = "U-Boot Environment"; |
246 | reg = <0x100000 0x080000>; | 262 | reg = <0x100000 0x080000>; |
247 | }; | 263 | }; |
248 | 264 | ||
249 | partition@180000 { | 265 | partition@180000 { |
250 | label = "Flattened Device Tree"; | 266 | label = "Flattened Device Tree"; |
251 | reg = <0x180000 0x200000>; | 267 | reg = <0x180000 0x200000>; |
252 | }; | 268 | }; |
253 | 269 | ||
254 | }; | 270 | }; |
255 | }; | ||
256 | 271 | ||
257 | &ecspi1 { | 272 | spidev@0x02 { |
258 | fsl,spi-num-chipselects = <2>; | 273 | #address-cells = <1>; |
259 | cs-gpios = <&gpio4 9 0>, <&gpio4 10 0>; | 274 | #size-cells = <0>; |
260 | pinctrl-names = "default"; | 275 | compatible = "spidev"; |
261 | pinctrl-0 = <&pinctrl_ecspi1_2>, <&pinctrl_ecspi1_cs_2>; | 276 | reg = <2>; |
262 | status = "okay"; | 277 | spi-max-frequency = <16000000>; |
263 | 278 | }; | |
264 | spidev@0x00 { | 279 | |
265 | compatible = "spidev"; | 280 | spidev@0x03 { |
266 | spi-max-frequency = <20000000>; | 281 | #address-cells = <1>; |
267 | reg = <0>; | 282 | #size-cells = <0>; |
268 | }; | 283 | compatible = "spidev"; |
269 | spidev@0x01 { | 284 | reg = <3>; |
270 | compatible = "spidev"; | 285 | spi-max-frequency = <16000000>; |
271 | spi-max-frequency = <20000000>; | 286 | }; |
272 | reg = <1>; | ||
273 | }; | ||
274 | }; | 287 | }; |
275 | 288 | ||
276 | &fec { | 289 | &fec { |
277 | pinctrl-names = "default"; | 290 | pinctrl-names = "default"; |
278 | pinctrl-0 = <&pinctrl_enet_1>, <&pinctrl_enet_irq>; | 291 | pinctrl-0 = <&pinctrl_enet_1>, <&pinctrl_enet_irq>; |
279 | /*interrupts-extended = <&gpio4 11 0x04>, <&intc 0 119 0x04>;*/ | ||
280 | phy-mode = "rgmii"; | 292 | phy-mode = "rgmii"; |
293 | fsl,magic-packet; | ||
281 | status = "okay"; | 294 | status = "okay"; |
282 | }; | 295 | }; |
283 | 296 | ||
284 | &gpc { | 297 | &gpc { |
285 | fsl,cpu_pupscr_sw2iso = <0xf>; | 298 | /* use ldo-enable, u-boot will check it and configure */ |
286 | fsl,cpu_pupscr_sw = <0xf>; | 299 | fsl,ldo-bypass = <1>; |
287 | fsl,cpu_pdnscr_iso2sw = <0x1>; | 300 | /* watchdog select of reset source */ |
288 | fsl,cpu_pdnscr_iso = <0x1>; | 301 | fsl,wdog-reset = <1>; |
289 | fsl,ldo-bypass = <1>; /* use ldo-bypass, u-boot will check it and configure */ | 302 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
290 | fsl,wdog-reset = <2>; /* watchdog select of reset source */ | ||
291 | pu-supply = <&pu_dummy>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | ||
292 | }; | 303 | }; |
293 | 304 | ||
294 | /*&wdog1 { | ||
295 | status = "disabled"; | ||
296 | }; | ||
297 | |||
298 | &wdog2 { | ||
299 | status = "okay"; | ||
300 | };*/ | ||
301 | |||
302 | &gpu { | 305 | &gpu { |
303 | pu-supply = <&pu_dummy>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ | 306 | pu-supply = <®_pu>; /* ldo-bypass:use pu_dummy if VDDSOC share with VDDPU */ |
304 | }; | 307 | }; |
305 | 308 | ||
306 | &hdmi_audio { | 309 | &hdmi_audio { |
307 | status = "okay"; | 310 | status = "okay"; |
308 | }; | 311 | }; |
309 | 312 | ||
310 | /*&hdmi_cec { | 313 | &hdmi_cec { |
311 | pinctrl-names = "default"; | 314 | pinctrl-names = "default"; |
312 | pinctrl-0 = <&pinctrl_hdmi_cec_2>; | 315 | /*pinctrl-0 = <&pinctrl_hdmi_cec_2>;*/ |
313 | status = "okay"; | 316 | status = "okay"; |
314 | };*/ | 317 | }; |
315 | 318 | ||
316 | &hdmi_core { | 319 | &hdmi_core { |
317 | ipu_id = <0>; | 320 | ipu_id = <0>; |
318 | disp_id = <0>; | 321 | disp_id = <1>; |
319 | status = "okay"; | 322 | status = "okay"; |
320 | }; | 323 | }; |
321 | 324 | ||
322 | &hdmi_video { | 325 | &hdmi_video { |
323 | fsl,phy_reg_vlev = <0x0294>; | 326 | fsl,phy_reg_vlev = <0x0294>; |
324 | fsl,phy_reg_cksymtx = <0x800d>; | 327 | fsl,phy_reg_cksymtx = <0x800d>; |
325 | status = "okay"; | 328 | status = "okay"; |
326 | }; | 329 | }; |
327 | 330 | ||
328 | &i2c1 { | 331 | &i2c1 { |
329 | clock-frequency = <100000>; | 332 | clock-frequency = <100000>; |
330 | pinctrl-names = "default"; | 333 | pinctrl-names = "default"; |
331 | pinctrl-0 = <&pinctrl_i2c1_1>; | 334 | pinctrl-0 = <&pinctrl_i2c1_1>; |
332 | status = "okay"; | 335 | status = "okay"; |
333 | 336 | ||
334 | baseboard_eeprom: baseboard_eeprom@50 { | 337 | baseboard_eeprom: baseboard_eeprom@50 { |
335 | compatible = "at,24c256"; | 338 | compatible = "at,24c256"; |
336 | reg = <0x50>; | 339 | reg = <0x50>; |
337 | }; | 340 | }; |
338 | 341 | ||
339 | codec: sgtl5000@0a { | 342 | codec: sgtl5000@0a { |
340 | compatible = "fsl,sgtl5000"; | 343 | compatible = "fsl,sgtl5000"; |
341 | reg = <0x0a>; | 344 | reg = <0x0a>; |
342 | clocks = <&clks 201>; | 345 | clocks = <&clks 201>; |
343 | VDDA-supply = <®_2p5v>; | 346 | VDDA-supply = <®_2p5v>; |
344 | VDDIO-supply = <®_3p3v>; | 347 | VDDIO-supply = <®_3p3v>; |
348 | VDDD-supply = <®_1p8v>; | ||
345 | }; | 349 | }; |
346 | 350 | ||
347 | s35390a: s35390a@30 { | 351 | s35390a: s35390a@30 { |
348 | compatible = "s35390a"; | 352 | compatible = "s35390a"; |
349 | reg = <0x30>; | 353 | reg = <0x30>; |
350 | }; | 354 | }; |
351 | 355 | ||
352 | cape_eeprom0: cape_eeprom@57 { | 356 | cape_eeprom0: cape_eeprom@57 { |
353 | compatible = "at,24c256"; | 357 | compatible = "at,24c256"; |
354 | reg = <0x57>; | 358 | reg = <0x57>; |
355 | }; | 359 | }; |
360 | |||
361 | bq2477x@09 { | ||
362 | compatible = "ti,bq2477x"; | ||
363 | reg = <0x09>; | ||
364 | ti,dac-ichg = <2240>; | ||
365 | ti,dac-v = <9008>; | ||
366 | ti,dac-minsv = <4608>; | ||
367 | ti,dac-iin = <4992>; | ||
368 | ti,wdt-refresh-timeout = <40>; | ||
369 | ti,charger-detect-gpio = <&gpio3 22 GPIO_ACTIVE_LOW>; | ||
370 | }; | ||
356 | }; | 371 | }; |
357 | 372 | ||
358 | &i2c2 { | 373 | &i2c2 { |
359 | clock-frequency = <100000>; | 374 | clock-frequency = <100000>; |
360 | pinctrl-names = "default"; | 375 | pinctrl-names = "default"; |
361 | pinctrl-0 = <&pinctrl_i2c2_2>; | 376 | pinctrl-0 = <&pinctrl_i2c2_2>; |
362 | status = "okay"; | 377 | status = "okay"; |
363 | 378 | ||
364 | hdmi: edid@50 { | 379 | hdmi: edid@50 { |
365 | compatible = "fsl,imx6-hdmi-i2c"; | 380 | compatible = "fsl,imx6-hdmi-i2c"; |
366 | reg = <0x50>; | 381 | reg = <0x50>; |
367 | }; | 382 | }; |
368 | }; | 383 | }; |
369 | 384 | ||
370 | &i2c3 { | 385 | &i2c3 { |
371 | clock-frequency = <100000>; | 386 | clock-frequency = <100000>; |
372 | pinctrl-names = "default"; | 387 | pinctrl-names = "default"; |
373 | pinctrl-0 = <&pinctrl_i2c3_1>; | 388 | pinctrl-0 = <&pinctrl_i2c3_1>; |
374 | status = "okay"; | 389 | status = "okay"; |
375 | 390 | ||
376 | i2c-switch@70 { | 391 | i2c-switch@70 { |
377 | compatible = "nxp,pca9545"; | 392 | compatible = "nxp,pca9545"; |
378 | #address-cells = <1>; | 393 | #address-cells = <1>; |
379 | #size-cells = <0>; | 394 | #size-cells = <0>; |
380 | reg = <0x70>; | 395 | reg = <0x70>; |
381 | |||
382 | i2c@0 { | ||
383 | #address-cells = <1>; | ||
384 | #size-cells = <0>; | ||
385 | compatible = "nxp,pca954x-bus"; | ||
386 | reg = <0>; | ||
387 | |||
388 | /*eeprom@54 { | ||
389 | compatible = "at,24c08"; | ||
390 | reg = <0x54>; | ||
391 | };*/ | ||
392 | }; | ||
393 | 396 | ||
394 | i2c@1 { | 397 | i2c@0 { |
395 | #address-cells = <1>; | 398 | #address-cells = <1>; |
396 | #size-cells = <0>; | 399 | #size-cells = <0>; |
397 | compatible = "nxp,pca954x-bus"; | 400 | compatible = "nxp,pca954x-bus"; |
398 | reg = <1>; | 401 | reg = <0>; |
399 | |||
400 | /* Example to add new i2c device */ | ||
401 | /*rtc@51 { | ||
402 | compatible = "nxp,pcf8563"; | ||
403 | reg = <0x51>; | ||
404 | };*/ | ||
405 | }; | ||
406 | 402 | ||
403 | /*eeprom@54 { | ||
404 | compatible = "at,24c08"; | ||
405 | reg = <0x54>; | ||
406 | };*/ | ||
407 | }; | ||
408 | |||
409 | i2c@1 { | ||
410 | #address-cells = <1>; | ||
411 | #size-cells = <0>; | ||
412 | compatible = "nxp,pca954x-bus"; | ||
413 | reg = <1>; | ||
414 | |||
415 | /* Example to add new i2c device */ | ||
416 | /*rtc@51 { | ||
417 | compatible = "nxp,pcf8563"; | ||
418 | reg = <0x51>; | ||
419 | };*/ | ||
420 | eeprom@76 { | ||
421 | compatible = "at,24c256"; | ||
422 | reg = <0x76>; | ||
423 | }; | ||
424 | }; | ||
425 | |||
407 | i2c@2 { | 426 | i2c@2 { |
408 | #address-cells = <1>; | 427 | #address-cells = <1>; |
409 | #size-cells = <0>; | 428 | #size-cells = <0>; |
410 | compatible = "nxp,pca954x-bus"; | 429 | compatible = "nxp,pca954x-bus"; |
411 | reg = <2>; | 430 | reg = <2>; |
412 | }; | 431 | }; |
413 | i2c@3 { | 432 | i2c@3 { |
414 | #address-cells = <1>; | 433 | #address-cells = <1>; |
415 | #size-cells = <0>; | 434 | #size-cells = <0>; |
416 | compatible = "nxp,pca954x-bus"; | 435 | compatible = "nxp,pca954x-bus"; |
417 | reg = <3>; | 436 | reg = <3>; |
418 | }; | 437 | }; |
419 | }; | 438 | }; |
420 | }; | 439 | }; |
421 | 440 | ||
422 | &iomuxc { | 441 | &iomuxc { |
423 | pinctrl-names = "default"; | 442 | pinctrl-names = "default"; |
424 | pinctrl-0 = <&pinctrl_hog_1>; | 443 | pinctrl-0 = <&pinctrl_hog_1>; |
425 | 444 | ||
426 | hog { | 445 | hog { |
427 | pinctrl_hog_1: hoggrp-1 { | 446 | pinctrl_hog_1: hoggrp-1 { |
428 | fsl,pins = < | 447 | fsl,pins = < |
429 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x80000000 | 448 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x80000000 |
430 | MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 | 449 | MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 |
431 | MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x80000000 | 450 | MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x80000000 |
432 | MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x80000000 | 451 | MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x80000000 |
433 | MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x80000000 | 452 | MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x80000000 |
434 | MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x80000000 | 453 | MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x80000000 |
435 | MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x80000000 | 454 | MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x80000000 |
436 | MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x80000000 | 455 | MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x80000000 |
437 | MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x80000000 | 456 | MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x80000000 |
438 | MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x80000000 | 457 | MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x80000000 |
439 | MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000 | 458 | MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x80000000 |
440 | MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x80000000 | 459 | MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000 |
441 | MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0 | 460 | MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x80000000 |
442 | MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x80000000 | 461 | MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0 |
443 | MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x80000000 | 462 | MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x80000000 |
444 | MX6QDL_PAD_ENET_RXD0__GPIO1_IO27 0x80000000 | 463 | MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x80000000 |
445 | MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x80000000 | 464 | MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x80000000 |
446 | MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x80000000 | 465 | /*MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000*/ |
447 | MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 | 466 | MX6QDL_PAD_EIM_EB3__GPIO2_IO31 0x80000000 |
448 | MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 | 467 | MX6QDL_PAD_EIM_D16__GPIO3_IO16 0x80000000 |
449 | MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x80000000 | 468 | MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 |
450 | MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x80000000 | 469 | MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x80000000 |
451 | MX6QDL_PAD_EIM_EB3__GPIO2_IO31 0x80000000 | 470 | MX6QDL_PAD_GPIO_9__WDOG1_B 0x80000000 |
452 | MX6QDL_PAD_EIM_D16__GPIO3_IO16 0x80000000 | 471 | MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 |
453 | MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 | 472 | MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x80000000 |
454 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x80000000 | 473 | MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x130b0 |
455 | MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 | ||
456 | MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x80000000 | ||
457 | MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x80000000 | ||
458 | MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 | ||
459 | MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x80000000 | ||
460 | MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x130b0 | ||
461 | >; | 474 | >; |
462 | }; | 475 | }; |
463 | }; | 476 | }; |
464 | }; | 477 | }; |
465 | 478 | ||
466 | &ldb { | ||
467 | status = "okay"; | ||
468 | |||
469 | lvds-channel@0 { | ||
470 | fsl,data-mapping = "spwg"; | ||
471 | fsl,data-width = <18>; | ||
472 | status = "okay"; | ||
473 | |||
474 | display-timings { | ||
475 | native-mode = <&timing0>; | ||
476 | timing0: hsd100pxn1 { | ||
477 | clock-frequency = <65000000>; | ||
478 | hactive = <1024>; | ||
479 | vactive = <768>; | ||
480 | hback-porch = <220>; | ||
481 | hfront-porch = <40>; | ||
482 | vback-porch = <21>; | ||
483 | vfront-porch = <7>; | ||
484 | hsync-len = <60>; | ||
485 | vsync-len = <10>; | ||
486 | }; | ||
487 | }; | ||
488 | }; | ||
489 | |||
490 | lvds-channel@1 { | ||
491 | fsl,data-mapping = "spwg"; | ||
492 | fsl,data-width = <18>; | ||
493 | primary; | ||
494 | status = "okay"; | ||
495 | |||
496 | display-timings { | ||
497 | native-mode = <&timing1>; | ||
498 | timing1: hsd100pxn1 { | ||
499 | clock-frequency = <65000000>; | ||
500 | hactive = <1024>; | ||
501 | vactive = <768>; | ||
502 | hback-porch = <220>; | ||
503 | hfront-porch = <40>; | ||
504 | vback-porch = <21>; | ||
505 | vfront-porch = <7>; | ||
506 | hsync-len = <60>; | ||
507 | vsync-len = <10>; | ||
508 | }; | ||
509 | }; | ||
510 | }; | ||
511 | }; | ||
512 | |||
513 | &mipi_csi { | 479 | &mipi_csi { |
514 | status = "okay"; | 480 | status = "disabled"; |
515 | ipu_id = <0>; | 481 | ipu_id = <0>; |
516 | csi_id = <1>; | 482 | csi_id = <1>; |
517 | v_channel = <0>; | 483 | v_channel = <0>; |
518 | lanes = <2>; | 484 | resets = <&mipi_csi_reset>; |
485 | lanes = <4>; | ||
519 | }; | 486 | }; |
520 | 487 | ||
521 | &mipi_dsi { | ||
522 | dev_id = <0>; | ||
523 | disp_id = <1>; | ||
524 | lcd_panel = "TRULY-WVGA"; | ||
525 | disp-power-on-supply = <®_mipi_dsi_pwr_on>; | ||
526 | resets = <&mipi_dsi_reset>; | ||
527 | status = "okay"; | ||
528 | }; | ||
529 | |||
530 | &dcic1 { | 488 | &dcic1 { |
531 | dcic_id = <0>; | 489 | dcic_id = <0>; |
532 | dcic_mux = "dcic-hdmi"; | 490 | dcic_mux = "dcic-hdmi"; |
533 | status = "okay"; | 491 | status = "okay"; |
534 | }; | 492 | }; |
535 | 493 | ||
536 | &dcic2 { | 494 | &dcic2 { |
537 | dcic_id = <1>; | 495 | dcic_id = <1>; |
538 | dcic_mux = "dcic-lvds1"; | 496 | dcic_mux = "dcic-lvds1"; |
539 | status = "okay"; | 497 | status = "okay"; |
540 | }; | 498 | }; |
541 | 499 | ||
542 | &pcie { | 500 | &pcie { |
543 | power-on-gpio = <&gpio3 19 0>; | 501 | /*power-on-gpio = <&gpio1 17 0>;*/ |
544 | reset-gpio = <&gpio7 12 0>; | 502 | reset-gpio = <&gpio1 20 0>; |
545 | status = "okay"; | 503 | reset-delay-us = <50>; |
504 | status = "okay"; | ||
546 | }; | 505 | }; |
547 | 506 | ||
507 | &spdif { | ||
508 | pinctrl-names = "default"; | ||
509 | pinctrl-0 = <&pinctrl_spdif_2>; | ||
510 | status = "okay"; | ||
511 | }; | ||
548 | 512 | ||
513 | &pwm1 { | ||
514 | pinctrl-names = "default"; | ||
515 | pinctrl-0 = <&pinctrl_pwm1_1>; | ||
516 | status = "okay"; | ||
517 | }; | ||
518 | |||
549 | &pwm2 { | 519 | &pwm2 { |
550 | pinctrl-names = "default"; | 520 | pinctrl-names = "default"; |
551 | pinctrl-0 = <&pinctrl_pwm2_1>; | 521 | pinctrl-0 = <&pinctrl_pwm2_1>; |
552 | status = "okay"; | 522 | status = "okay"; |
553 | }; | 523 | }; |
554 | 524 | ||
555 | &ssi1 { | 525 | &ssi1 { |
556 | fsl,mode = "i2s-slave"; | 526 | fsl,mode = "i2s-slave"; |
557 | status = "okay"; | 527 | status = "okay"; |
558 | }; | 528 | }; |
559 | 529 | ||
560 | &uart1 { | 530 | &uart1 { |
arch/arm/configs/smarcfimx6_defconfig
1 | # | 1 | # |
2 | # Automatically generated file; DO NOT EDIT. | 2 | # Automatically generated file; DO NOT EDIT. |
3 | # Linux/arm 3.10.53 Kernel Configuration | 3 | # Linux/arm 3.10.53 Kernel Configuration |
4 | # | 4 | # |
5 | CONFIG_ARM=y | 5 | CONFIG_ARM=y |
6 | CONFIG_MIGHT_HAVE_PCI=y | 6 | CONFIG_MIGHT_HAVE_PCI=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_HAVE_PROC_CPU=y | 8 | CONFIG_HAVE_PROC_CPU=y |
9 | CONFIG_STACKTRACE_SUPPORT=y | 9 | CONFIG_STACKTRACE_SUPPORT=y |
10 | CONFIG_LOCKDEP_SUPPORT=y | 10 | CONFIG_LOCKDEP_SUPPORT=y |
11 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 11 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
12 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 12 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
13 | CONFIG_ARCH_HAS_CPUFREQ=y | 13 | CONFIG_ARCH_HAS_CPUFREQ=y |
14 | CONFIG_GENERIC_HWEIGHT=y | 14 | CONFIG_GENERIC_HWEIGHT=y |
15 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 15 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
16 | CONFIG_ZONE_DMA=y | 16 | CONFIG_ZONE_DMA=y |
17 | CONFIG_NEED_DMA_MAP_STATE=y | 17 | CONFIG_NEED_DMA_MAP_STATE=y |
18 | CONFIG_FIQ=y | 18 | CONFIG_FIQ=y |
19 | CONFIG_VECTORS_BASE=0xffff0000 | 19 | CONFIG_VECTORS_BASE=0xffff0000 |
20 | CONFIG_ARM_PATCH_PHYS_VIRT=y | 20 | CONFIG_ARM_PATCH_PHYS_VIRT=y |
21 | CONFIG_GENERIC_BUG=y | 21 | CONFIG_GENERIC_BUG=y |
22 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 22 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
23 | CONFIG_IRQ_WORK=y | 23 | CONFIG_IRQ_WORK=y |
24 | CONFIG_BUILDTIME_EXTABLE_SORT=y | 24 | CONFIG_BUILDTIME_EXTABLE_SORT=y |
25 | 25 | ||
26 | # | 26 | # |
27 | # General setup | 27 | # General setup |
28 | # | 28 | # |
29 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 29 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
30 | CONFIG_CROSS_COMPILE="" | 30 | CONFIG_CROSS_COMPILE="" |
31 | CONFIG_LOCALVERSION="" | 31 | CONFIG_LOCALVERSION="" |
32 | CONFIG_LOCALVERSION_AUTO=y | 32 | CONFIG_LOCALVERSION_AUTO=y |
33 | CONFIG_HAVE_KERNEL_GZIP=y | 33 | CONFIG_HAVE_KERNEL_GZIP=y |
34 | CONFIG_HAVE_KERNEL_LZMA=y | 34 | CONFIG_HAVE_KERNEL_LZMA=y |
35 | CONFIG_HAVE_KERNEL_XZ=y | 35 | CONFIG_HAVE_KERNEL_XZ=y |
36 | CONFIG_HAVE_KERNEL_LZO=y | 36 | CONFIG_HAVE_KERNEL_LZO=y |
37 | # CONFIG_KERNEL_GZIP is not set | 37 | # CONFIG_KERNEL_GZIP is not set |
38 | # CONFIG_KERNEL_LZMA is not set | 38 | # CONFIG_KERNEL_LZMA is not set |
39 | # CONFIG_KERNEL_XZ is not set | 39 | # CONFIG_KERNEL_XZ is not set |
40 | CONFIG_KERNEL_LZO=y | 40 | CONFIG_KERNEL_LZO=y |
41 | CONFIG_DEFAULT_HOSTNAME="(none)" | 41 | CONFIG_DEFAULT_HOSTNAME="(none)" |
42 | CONFIG_SWAP=y | 42 | CONFIG_SWAP=y |
43 | CONFIG_SYSVIPC=y | 43 | CONFIG_SYSVIPC=y |
44 | CONFIG_SYSVIPC_SYSCTL=y | 44 | CONFIG_SYSVIPC_SYSCTL=y |
45 | # CONFIG_POSIX_MQUEUE is not set | 45 | # CONFIG_POSIX_MQUEUE is not set |
46 | # CONFIG_FHANDLE is not set | 46 | # CONFIG_FHANDLE is not set |
47 | # CONFIG_AUDIT is not set | 47 | # CONFIG_AUDIT is not set |
48 | CONFIG_HAVE_GENERIC_HARDIRQS=y | 48 | CONFIG_HAVE_GENERIC_HARDIRQS=y |
49 | 49 | ||
50 | # | 50 | # |
51 | # IRQ subsystem | 51 | # IRQ subsystem |
52 | # | 52 | # |
53 | CONFIG_GENERIC_HARDIRQS=y | 53 | CONFIG_GENERIC_HARDIRQS=y |
54 | CONFIG_GENERIC_IRQ_PROBE=y | 54 | CONFIG_GENERIC_IRQ_PROBE=y |
55 | CONFIG_GENERIC_IRQ_SHOW=y | 55 | CONFIG_GENERIC_IRQ_SHOW=y |
56 | CONFIG_HARDIRQS_SW_RESEND=y | 56 | CONFIG_HARDIRQS_SW_RESEND=y |
57 | CONFIG_GENERIC_IRQ_CHIP=y | 57 | CONFIG_GENERIC_IRQ_CHIP=y |
58 | CONFIG_IRQ_DOMAIN=y | 58 | CONFIG_IRQ_DOMAIN=y |
59 | # CONFIG_IRQ_DOMAIN_DEBUG is not set | 59 | # CONFIG_IRQ_DOMAIN_DEBUG is not set |
60 | CONFIG_SPARSE_IRQ=y | 60 | CONFIG_SPARSE_IRQ=y |
61 | CONFIG_KTIME_SCALAR=y | 61 | CONFIG_KTIME_SCALAR=y |
62 | CONFIG_GENERIC_CLOCKEVENTS=y | 62 | CONFIG_GENERIC_CLOCKEVENTS=y |
63 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | 63 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y |
64 | CONFIG_ARCH_HAS_TICK_BROADCAST=y | 64 | CONFIG_ARCH_HAS_TICK_BROADCAST=y |
65 | CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y | 65 | CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y |
66 | 66 | ||
67 | # | 67 | # |
68 | # Timers subsystem | 68 | # Timers subsystem |
69 | # | 69 | # |
70 | CONFIG_TICK_ONESHOT=y | 70 | CONFIG_TICK_ONESHOT=y |
71 | CONFIG_NO_HZ_COMMON=y | 71 | CONFIG_NO_HZ_COMMON=y |
72 | # CONFIG_HZ_PERIODIC is not set | 72 | # CONFIG_HZ_PERIODIC is not set |
73 | CONFIG_NO_HZ_IDLE=y | 73 | CONFIG_NO_HZ_IDLE=y |
74 | CONFIG_NO_HZ=y | 74 | CONFIG_NO_HZ=y |
75 | CONFIG_HIGH_RES_TIMERS=y | 75 | CONFIG_HIGH_RES_TIMERS=y |
76 | 76 | ||
77 | # | 77 | # |
78 | # CPU/Task time and stats accounting | 78 | # CPU/Task time and stats accounting |
79 | # | 79 | # |
80 | CONFIG_TICK_CPU_ACCOUNTING=y | 80 | CONFIG_TICK_CPU_ACCOUNTING=y |
81 | # CONFIG_IRQ_TIME_ACCOUNTING is not set | 81 | # CONFIG_IRQ_TIME_ACCOUNTING is not set |
82 | # CONFIG_BSD_PROCESS_ACCT is not set | 82 | # CONFIG_BSD_PROCESS_ACCT is not set |
83 | # CONFIG_TASKSTATS is not set | 83 | # CONFIG_TASKSTATS is not set |
84 | 84 | ||
85 | # | 85 | # |
86 | # RCU Subsystem | 86 | # RCU Subsystem |
87 | # | 87 | # |
88 | CONFIG_TREE_PREEMPT_RCU=y | 88 | CONFIG_TREE_PREEMPT_RCU=y |
89 | CONFIG_PREEMPT_RCU=y | 89 | CONFIG_PREEMPT_RCU=y |
90 | CONFIG_RCU_STALL_COMMON=y | 90 | CONFIG_RCU_STALL_COMMON=y |
91 | # CONFIG_RCU_USER_QS is not set | 91 | # CONFIG_RCU_USER_QS is not set |
92 | CONFIG_RCU_FANOUT=32 | 92 | CONFIG_RCU_FANOUT=32 |
93 | CONFIG_RCU_FANOUT_LEAF=16 | 93 | CONFIG_RCU_FANOUT_LEAF=16 |
94 | # CONFIG_RCU_FANOUT_EXACT is not set | 94 | # CONFIG_RCU_FANOUT_EXACT is not set |
95 | # CONFIG_RCU_FAST_NO_HZ is not set | 95 | # CONFIG_RCU_FAST_NO_HZ is not set |
96 | # CONFIG_TREE_RCU_TRACE is not set | 96 | # CONFIG_TREE_RCU_TRACE is not set |
97 | # CONFIG_RCU_BOOST is not set | 97 | # CONFIG_RCU_BOOST is not set |
98 | # CONFIG_RCU_NOCB_CPU is not set | 98 | # CONFIG_RCU_NOCB_CPU is not set |
99 | CONFIG_IKCONFIG=y | 99 | CONFIG_IKCONFIG=y |
100 | CONFIG_IKCONFIG_PROC=y | 100 | CONFIG_IKCONFIG_PROC=y |
101 | CONFIG_LOG_BUF_SHIFT=18 | 101 | CONFIG_LOG_BUF_SHIFT=18 |
102 | CONFIG_CGROUPS=y | 102 | CONFIG_CGROUPS=y |
103 | # CONFIG_CGROUP_DEBUG is not set | 103 | # CONFIG_CGROUP_DEBUG is not set |
104 | # CONFIG_CGROUP_FREEZER is not set | 104 | # CONFIG_CGROUP_FREEZER is not set |
105 | # CONFIG_CGROUP_DEVICE is not set | 105 | # CONFIG_CGROUP_DEVICE is not set |
106 | # CONFIG_CPUSETS is not set | 106 | # CONFIG_CPUSETS is not set |
107 | # CONFIG_CGROUP_CPUACCT is not set | 107 | # CONFIG_CGROUP_CPUACCT is not set |
108 | # CONFIG_RESOURCE_COUNTERS is not set | 108 | # CONFIG_RESOURCE_COUNTERS is not set |
109 | # CONFIG_CGROUP_PERF is not set | 109 | # CONFIG_CGROUP_PERF is not set |
110 | # CONFIG_CGROUP_SCHED is not set | 110 | # CONFIG_CGROUP_SCHED is not set |
111 | # CONFIG_BLK_CGROUP is not set | 111 | # CONFIG_BLK_CGROUP is not set |
112 | # CONFIG_CHECKPOINT_RESTORE is not set | 112 | # CONFIG_CHECKPOINT_RESTORE is not set |
113 | # CONFIG_NAMESPACES is not set | 113 | # CONFIG_NAMESPACES is not set |
114 | CONFIG_UIDGID_CONVERTED=y | 114 | CONFIG_UIDGID_CONVERTED=y |
115 | # CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set | 115 | # CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set |
116 | # CONFIG_SCHED_AUTOGROUP is not set | 116 | # CONFIG_SCHED_AUTOGROUP is not set |
117 | # CONFIG_SYSFS_DEPRECATED is not set | 117 | # CONFIG_SYSFS_DEPRECATED is not set |
118 | CONFIG_RELAY=y | 118 | CONFIG_RELAY=y |
119 | CONFIG_BLK_DEV_INITRD=y | 119 | CONFIG_BLK_DEV_INITRD=y |
120 | CONFIG_INITRAMFS_SOURCE="" | 120 | CONFIG_INITRAMFS_SOURCE="" |
121 | CONFIG_RD_GZIP=y | 121 | CONFIG_RD_GZIP=y |
122 | # CONFIG_RD_BZIP2 is not set | 122 | # CONFIG_RD_BZIP2 is not set |
123 | # CONFIG_RD_LZMA is not set | 123 | # CONFIG_RD_LZMA is not set |
124 | # CONFIG_RD_XZ is not set | 124 | # CONFIG_RD_XZ is not set |
125 | # CONFIG_RD_LZO is not set | 125 | # CONFIG_RD_LZO is not set |
126 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 126 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
127 | CONFIG_SYSCTL=y | 127 | CONFIG_SYSCTL=y |
128 | CONFIG_ANON_INODES=y | 128 | CONFIG_ANON_INODES=y |
129 | CONFIG_HAVE_UID16=y | 129 | CONFIG_HAVE_UID16=y |
130 | CONFIG_HOTPLUG=y | 130 | CONFIG_HOTPLUG=y |
131 | CONFIG_EXPERT=y | 131 | CONFIG_EXPERT=y |
132 | CONFIG_UID16=y | 132 | CONFIG_UID16=y |
133 | # CONFIG_SYSCTL_SYSCALL is not set | 133 | # CONFIG_SYSCTL_SYSCALL is not set |
134 | CONFIG_KALLSYMS=y | 134 | CONFIG_KALLSYMS=y |
135 | # CONFIG_KALLSYMS_ALL is not set | 135 | # CONFIG_KALLSYMS_ALL is not set |
136 | CONFIG_PRINTK=y | 136 | CONFIG_PRINTK=y |
137 | CONFIG_BUG=y | 137 | CONFIG_BUG=y |
138 | CONFIG_ELF_CORE=y | 138 | CONFIG_ELF_CORE=y |
139 | CONFIG_BASE_FULL=y | 139 | CONFIG_BASE_FULL=y |
140 | CONFIG_FUTEX=y | 140 | CONFIG_FUTEX=y |
141 | CONFIG_EPOLL=y | 141 | CONFIG_EPOLL=y |
142 | CONFIG_SIGNALFD=y | 142 | CONFIG_SIGNALFD=y |
143 | CONFIG_TIMERFD=y | 143 | CONFIG_TIMERFD=y |
144 | CONFIG_EVENTFD=y | 144 | CONFIG_EVENTFD=y |
145 | CONFIG_SHMEM=y | 145 | CONFIG_SHMEM=y |
146 | CONFIG_AIO=y | 146 | CONFIG_AIO=y |
147 | CONFIG_PCI_QUIRKS=y | ||
147 | # CONFIG_EMBEDDED is not set | 148 | # CONFIG_EMBEDDED is not set |
148 | CONFIG_HAVE_PERF_EVENTS=y | 149 | CONFIG_HAVE_PERF_EVENTS=y |
149 | CONFIG_PERF_USE_VMALLOC=y | 150 | CONFIG_PERF_USE_VMALLOC=y |
150 | 151 | ||
151 | # | 152 | # |
152 | # Kernel Performance Events And Counters | 153 | # Kernel Performance Events And Counters |
153 | # | 154 | # |
154 | CONFIG_PERF_EVENTS=y | 155 | CONFIG_PERF_EVENTS=y |
155 | # CONFIG_DEBUG_PERF_USE_VMALLOC is not set | 156 | # CONFIG_DEBUG_PERF_USE_VMALLOC is not set |
156 | CONFIG_VM_EVENT_COUNTERS=y | 157 | CONFIG_VM_EVENT_COUNTERS=y |
157 | # CONFIG_SLUB_DEBUG is not set | 158 | # CONFIG_SLUB_DEBUG is not set |
158 | # CONFIG_COMPAT_BRK is not set | 159 | # CONFIG_COMPAT_BRK is not set |
159 | # CONFIG_SLAB is not set | 160 | # CONFIG_SLAB is not set |
160 | CONFIG_SLUB=y | 161 | CONFIG_SLUB=y |
161 | # CONFIG_SLOB is not set | 162 | # CONFIG_SLOB is not set |
162 | # CONFIG_PROFILING is not set | 163 | # CONFIG_PROFILING is not set |
163 | CONFIG_HAVE_OPROFILE=y | 164 | CONFIG_HAVE_OPROFILE=y |
164 | # CONFIG_KPROBES is not set | 165 | # CONFIG_KPROBES is not set |
165 | # CONFIG_JUMP_LABEL is not set | 166 | # CONFIG_JUMP_LABEL is not set |
166 | # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set | 167 | # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set |
167 | CONFIG_HAVE_KPROBES=y | 168 | CONFIG_HAVE_KPROBES=y |
168 | CONFIG_HAVE_KRETPROBES=y | 169 | CONFIG_HAVE_KRETPROBES=y |
169 | CONFIG_HAVE_ARCH_TRACEHOOK=y | 170 | CONFIG_HAVE_ARCH_TRACEHOOK=y |
170 | CONFIG_HAVE_DMA_ATTRS=y | 171 | CONFIG_HAVE_DMA_ATTRS=y |
171 | CONFIG_HAVE_DMA_CONTIGUOUS=y | 172 | CONFIG_HAVE_DMA_CONTIGUOUS=y |
172 | CONFIG_USE_GENERIC_SMP_HELPERS=y | 173 | CONFIG_USE_GENERIC_SMP_HELPERS=y |
173 | CONFIG_GENERIC_SMP_IDLE_THREAD=y | 174 | CONFIG_GENERIC_SMP_IDLE_THREAD=y |
174 | CONFIG_GENERIC_IDLE_POLL_SETUP=y | 175 | CONFIG_GENERIC_IDLE_POLL_SETUP=y |
175 | CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y | 176 | CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y |
176 | CONFIG_HAVE_CLK=y | 177 | CONFIG_HAVE_CLK=y |
177 | CONFIG_HAVE_DMA_API_DEBUG=y | 178 | CONFIG_HAVE_DMA_API_DEBUG=y |
178 | CONFIG_HAVE_HW_BREAKPOINT=y | 179 | CONFIG_HAVE_HW_BREAKPOINT=y |
179 | CONFIG_HAVE_ARCH_JUMP_LABEL=y | 180 | CONFIG_HAVE_ARCH_JUMP_LABEL=y |
180 | CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y | 181 | CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y |
181 | CONFIG_HAVE_ARCH_SECCOMP_FILTER=y | 182 | CONFIG_HAVE_ARCH_SECCOMP_FILTER=y |
182 | CONFIG_HAVE_CONTEXT_TRACKING=y | 183 | CONFIG_HAVE_CONTEXT_TRACKING=y |
183 | CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y | 184 | CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y |
184 | CONFIG_HAVE_MOD_ARCH_SPECIFIC=y | 185 | CONFIG_HAVE_MOD_ARCH_SPECIFIC=y |
185 | CONFIG_MODULES_USE_ELF_REL=y | 186 | CONFIG_MODULES_USE_ELF_REL=y |
186 | CONFIG_CLONE_BACKWARDS=y | 187 | CONFIG_CLONE_BACKWARDS=y |
187 | CONFIG_OLD_SIGSUSPEND3=y | 188 | CONFIG_OLD_SIGSUSPEND3=y |
188 | CONFIG_OLD_SIGACTION=y | 189 | CONFIG_OLD_SIGACTION=y |
189 | 190 | ||
190 | # | 191 | # |
191 | # GCOV-based kernel profiling | 192 | # GCOV-based kernel profiling |
192 | # | 193 | # |
193 | # CONFIG_GCOV_KERNEL is not set | 194 | # CONFIG_GCOV_KERNEL is not set |
194 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | 195 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y |
195 | CONFIG_RT_MUTEXES=y | 196 | CONFIG_RT_MUTEXES=y |
196 | CONFIG_BASE_SMALL=0 | 197 | CONFIG_BASE_SMALL=0 |
197 | CONFIG_MODULES=y | 198 | CONFIG_MODULES=y |
198 | # CONFIG_MODULE_FORCE_LOAD is not set | 199 | # CONFIG_MODULE_FORCE_LOAD is not set |
199 | CONFIG_MODULE_UNLOAD=y | 200 | CONFIG_MODULE_UNLOAD=y |
200 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 201 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
201 | CONFIG_MODVERSIONS=y | 202 | CONFIG_MODVERSIONS=y |
202 | CONFIG_MODULE_SRCVERSION_ALL=y | 203 | CONFIG_MODULE_SRCVERSION_ALL=y |
203 | # CONFIG_MODULE_SIG is not set | 204 | # CONFIG_MODULE_SIG is not set |
204 | CONFIG_STOP_MACHINE=y | 205 | CONFIG_STOP_MACHINE=y |
205 | CONFIG_BLOCK=y | 206 | CONFIG_BLOCK=y |
206 | CONFIG_LBDAF=y | 207 | CONFIG_LBDAF=y |
207 | # CONFIG_BLK_DEV_BSG is not set | 208 | # CONFIG_BLK_DEV_BSG is not set |
208 | # CONFIG_BLK_DEV_BSGLIB is not set | 209 | # CONFIG_BLK_DEV_BSGLIB is not set |
209 | # CONFIG_BLK_DEV_INTEGRITY is not set | 210 | # CONFIG_BLK_DEV_INTEGRITY is not set |
210 | 211 | ||
211 | # | 212 | # |
212 | # Partition Types | 213 | # Partition Types |
213 | # | 214 | # |
214 | # CONFIG_PARTITION_ADVANCED is not set | 215 | # CONFIG_PARTITION_ADVANCED is not set |
215 | CONFIG_MSDOS_PARTITION=y | 216 | CONFIG_MSDOS_PARTITION=y |
216 | CONFIG_EFI_PARTITION=y | 217 | CONFIG_EFI_PARTITION=y |
217 | 218 | ||
218 | # | 219 | # |
219 | # IO Schedulers | 220 | # IO Schedulers |
220 | # | 221 | # |
221 | CONFIG_IOSCHED_NOOP=y | 222 | CONFIG_IOSCHED_NOOP=y |
222 | CONFIG_IOSCHED_DEADLINE=y | 223 | CONFIG_IOSCHED_DEADLINE=y |
223 | CONFIG_IOSCHED_CFQ=y | 224 | CONFIG_IOSCHED_CFQ=y |
224 | # CONFIG_DEFAULT_DEADLINE is not set | 225 | # CONFIG_DEFAULT_DEADLINE is not set |
225 | CONFIG_DEFAULT_CFQ=y | 226 | CONFIG_DEFAULT_CFQ=y |
226 | # CONFIG_DEFAULT_NOOP is not set | 227 | # CONFIG_DEFAULT_NOOP is not set |
227 | CONFIG_DEFAULT_IOSCHED="cfq" | 228 | CONFIG_DEFAULT_IOSCHED="cfq" |
228 | CONFIG_UNINLINE_SPIN_UNLOCK=y | 229 | CONFIG_UNINLINE_SPIN_UNLOCK=y |
229 | CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y | 230 | CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y |
230 | CONFIG_MUTEX_SPIN_ON_OWNER=y | 231 | CONFIG_MUTEX_SPIN_ON_OWNER=y |
231 | CONFIG_FREEZER=y | 232 | CONFIG_FREEZER=y |
232 | 233 | ||
233 | # | 234 | # |
234 | # System Type | 235 | # System Type |
235 | # | 236 | # |
236 | CONFIG_MMU=y | 237 | CONFIG_MMU=y |
237 | CONFIG_ARCH_MULTIPLATFORM=y | 238 | CONFIG_ARCH_MULTIPLATFORM=y |
238 | # CONFIG_ARCH_INTEGRATOR is not set | 239 | # CONFIG_ARCH_INTEGRATOR is not set |
239 | # CONFIG_ARCH_REALVIEW is not set | 240 | # CONFIG_ARCH_REALVIEW is not set |
240 | # CONFIG_ARCH_VERSATILE is not set | 241 | # CONFIG_ARCH_VERSATILE is not set |
241 | # CONFIG_ARCH_AT91 is not set | 242 | # CONFIG_ARCH_AT91 is not set |
242 | # CONFIG_ARCH_CLPS711X is not set | 243 | # CONFIG_ARCH_CLPS711X is not set |
243 | # CONFIG_ARCH_GEMINI is not set | 244 | # CONFIG_ARCH_GEMINI is not set |
244 | # CONFIG_ARCH_EBSA110 is not set | 245 | # CONFIG_ARCH_EBSA110 is not set |
245 | # CONFIG_ARCH_EP93XX is not set | 246 | # CONFIG_ARCH_EP93XX is not set |
246 | # CONFIG_ARCH_FOOTBRIDGE is not set | 247 | # CONFIG_ARCH_FOOTBRIDGE is not set |
247 | # CONFIG_ARCH_NETX is not set | 248 | # CONFIG_ARCH_NETX is not set |
248 | # CONFIG_ARCH_IOP13XX is not set | 249 | # CONFIG_ARCH_IOP13XX is not set |
249 | # CONFIG_ARCH_IOP32X is not set | 250 | # CONFIG_ARCH_IOP32X is not set |
250 | # CONFIG_ARCH_IOP33X is not set | 251 | # CONFIG_ARCH_IOP33X is not set |
251 | # CONFIG_ARCH_IXP4XX is not set | 252 | # CONFIG_ARCH_IXP4XX is not set |
252 | # CONFIG_ARCH_DOVE is not set | 253 | # CONFIG_ARCH_DOVE is not set |
253 | # CONFIG_ARCH_KIRKWOOD is not set | 254 | # CONFIG_ARCH_KIRKWOOD is not set |
254 | # CONFIG_ARCH_MV78XX0 is not set | 255 | # CONFIG_ARCH_MV78XX0 is not set |
255 | # CONFIG_ARCH_ORION5X is not set | 256 | # CONFIG_ARCH_ORION5X is not set |
256 | # CONFIG_ARCH_MMP is not set | 257 | # CONFIG_ARCH_MMP is not set |
257 | # CONFIG_ARCH_KS8695 is not set | 258 | # CONFIG_ARCH_KS8695 is not set |
258 | # CONFIG_ARCH_W90X900 is not set | 259 | # CONFIG_ARCH_W90X900 is not set |
259 | # CONFIG_ARCH_LPC32XX is not set | 260 | # CONFIG_ARCH_LPC32XX is not set |
260 | # CONFIG_ARCH_PXA is not set | 261 | # CONFIG_ARCH_PXA is not set |
261 | # CONFIG_ARCH_MSM is not set | 262 | # CONFIG_ARCH_MSM is not set |
262 | # CONFIG_ARCH_SHMOBILE is not set | 263 | # CONFIG_ARCH_SHMOBILE is not set |
263 | # CONFIG_ARCH_RPC is not set | 264 | # CONFIG_ARCH_RPC is not set |
264 | # CONFIG_ARCH_SA1100 is not set | 265 | # CONFIG_ARCH_SA1100 is not set |
265 | # CONFIG_ARCH_S3C24XX is not set | 266 | # CONFIG_ARCH_S3C24XX is not set |
266 | # CONFIG_ARCH_S3C64XX is not set | 267 | # CONFIG_ARCH_S3C64XX is not set |
267 | # CONFIG_ARCH_S5P64X0 is not set | 268 | # CONFIG_ARCH_S5P64X0 is not set |
268 | # CONFIG_ARCH_S5PC100 is not set | 269 | # CONFIG_ARCH_S5PC100 is not set |
269 | # CONFIG_ARCH_S5PV210 is not set | 270 | # CONFIG_ARCH_S5PV210 is not set |
270 | # CONFIG_ARCH_EXYNOS is not set | 271 | # CONFIG_ARCH_EXYNOS is not set |
271 | # CONFIG_ARCH_SHARK is not set | 272 | # CONFIG_ARCH_SHARK is not set |
272 | # CONFIG_ARCH_U300 is not set | 273 | # CONFIG_ARCH_U300 is not set |
273 | # CONFIG_ARCH_DAVINCI is not set | 274 | # CONFIG_ARCH_DAVINCI is not set |
274 | # CONFIG_ARCH_OMAP1 is not set | 275 | # CONFIG_ARCH_OMAP1 is not set |
275 | 276 | ||
276 | # | 277 | # |
277 | # Multiple platform selection | 278 | # Multiple platform selection |
278 | # | 279 | # |
279 | 280 | ||
280 | # | 281 | # |
281 | # CPU Core family selection | 282 | # CPU Core family selection |
282 | # | 283 | # |
283 | # CONFIG_ARCH_MULTI_V6 is not set | 284 | # CONFIG_ARCH_MULTI_V6 is not set |
284 | CONFIG_ARCH_MULTI_V7=y | 285 | CONFIG_ARCH_MULTI_V7=y |
285 | CONFIG_ARCH_MULTI_V6_V7=y | 286 | CONFIG_ARCH_MULTI_V6_V7=y |
286 | # CONFIG_ARCH_MULTI_CPU_AUTO is not set | 287 | # CONFIG_ARCH_MULTI_CPU_AUTO is not set |
287 | # CONFIG_ARCH_MVEBU is not set | 288 | # CONFIG_ARCH_MVEBU is not set |
288 | # CONFIG_ARCH_BCM is not set | 289 | # CONFIG_ARCH_BCM is not set |
289 | CONFIG_GPIO_PCA953X=y | 290 | CONFIG_GPIO_PCA953X=y |
290 | # CONFIG_KEYBOARD_GPIO_POLLED is not set | 291 | # CONFIG_KEYBOARD_GPIO_POLLED is not set |
291 | # CONFIG_ARCH_HIGHBANK is not set | 292 | # CONFIG_ARCH_HIGHBANK is not set |
292 | CONFIG_ARCH_MXC=y | 293 | CONFIG_ARCH_MXC=y |
293 | 294 | ||
294 | # | 295 | # |
295 | # Freescale i.MX support | 296 | # Freescale i.MX support |
296 | # | 297 | # |
297 | # CONFIG_MXC_IRQ_PRIOR is not set | 298 | # CONFIG_MXC_IRQ_PRIOR is not set |
298 | CONFIG_MXC_TZIC=y | 299 | CONFIG_MXC_TZIC=y |
299 | CONFIG_MXC_DEBUG_BOARD=y | 300 | CONFIG_MXC_DEBUG_BOARD=y |
300 | CONFIG_HAVE_IMX_RNG=y | 301 | CONFIG_HAVE_IMX_RNG=y |
301 | CONFIG_HAVE_IMX_ANATOP=y | 302 | CONFIG_HAVE_IMX_ANATOP=y |
302 | CONFIG_HAVE_IMX_GPC=y | 303 | CONFIG_HAVE_IMX_GPC=y |
303 | CONFIG_HAVE_IMX_MMDC=y | 304 | CONFIG_HAVE_IMX_MMDC=y |
304 | CONFIG_HAVE_IMX_SRC=y | 305 | CONFIG_HAVE_IMX_SRC=y |
305 | CONFIG_HAVE_IMX_MCC=y | 306 | CONFIG_HAVE_IMX_MCC=y |
306 | CONFIG_ARCH_MXC_IOMUX_V3=y | 307 | CONFIG_ARCH_MXC_IOMUX_V3=y |
307 | CONFIG_SOC_IMX5=y | 308 | CONFIG_SOC_IMX5=y |
308 | CONFIG_SOC_IMX51=y | 309 | CONFIG_SOC_IMX51=y |
309 | 310 | ||
310 | # | 311 | # |
311 | # i.MX51 machines: | 312 | # i.MX51 machines: |
312 | # | 313 | # |
313 | CONFIG_MACH_IMX51_DT=y | 314 | CONFIG_MACH_IMX51_DT=y |
314 | # CONFIG_MACH_MX51_BABBAGE is not set | 315 | # CONFIG_MACH_MX51_BABBAGE is not set |
315 | CONFIG_MACH_EUKREA_CPUIMX51SD=y | 316 | CONFIG_MACH_EUKREA_CPUIMX51SD=y |
316 | CONFIG_MACH_EUKREA_MBIMXSD51_BASEBOARD=y | 317 | CONFIG_MACH_EUKREA_MBIMXSD51_BASEBOARD=y |
317 | 318 | ||
318 | # | 319 | # |
319 | # Device tree only | 320 | # Device tree only |
320 | # | 321 | # |
321 | CONFIG_SOC_IMX53=y | 322 | CONFIG_SOC_IMX53=y |
322 | CONFIG_SOC_IMX6Q=y | 323 | CONFIG_SOC_IMX6Q=y |
323 | CONFIG_SOC_IMX6SL=y | 324 | CONFIG_SOC_IMX6SL=y |
324 | CONFIG_SOC_IMX6SX=y | 325 | CONFIG_SOC_IMX6SX=y |
325 | CONFIG_SOC_VF610=y | 326 | CONFIG_SOC_VF610=y |
326 | CONFIG_IMX_HAVE_PLATFORM_FEC=y | 327 | CONFIG_IMX_HAVE_PLATFORM_FEC=y |
327 | CONFIG_IMX_HAVE_PLATFORM_FSL_USB2_UDC=y | 328 | CONFIG_IMX_HAVE_PLATFORM_FSL_USB2_UDC=y |
328 | CONFIG_IMX_HAVE_PLATFORM_GPIO_KEYS=y | 329 | CONFIG_IMX_HAVE_PLATFORM_GPIO_KEYS=y |
329 | CONFIG_IMX_HAVE_PLATFORM_IMX2_WDT=y | 330 | CONFIG_IMX_HAVE_PLATFORM_IMX2_WDT=y |
330 | CONFIG_IMX_HAVE_PLATFORM_IMX_I2C=y | 331 | CONFIG_IMX_HAVE_PLATFORM_IMX_I2C=y |
331 | CONFIG_IMX_HAVE_PLATFORM_IMX_SSI=y | 332 | CONFIG_IMX_HAVE_PLATFORM_IMX_SSI=y |
332 | CONFIG_IMX_HAVE_PLATFORM_IMX_UART=y | 333 | CONFIG_IMX_HAVE_PLATFORM_IMX_UART=y |
333 | CONFIG_IMX_HAVE_PLATFORM_MXC_EHCI=y | 334 | CONFIG_IMX_HAVE_PLATFORM_MXC_EHCI=y |
334 | CONFIG_IMX_HAVE_PLATFORM_MXC_NAND=y | 335 | CONFIG_IMX_HAVE_PLATFORM_MXC_NAND=y |
335 | CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX=y | 336 | CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX=y |
336 | CONFIG_IMX_HAVE_PLATFORM_SPI_IMX=y | 337 | CONFIG_IMX_HAVE_PLATFORM_SPI_IMX=y |
337 | # CONFIG_ARCH_OMAP2PLUS is not set | 338 | # CONFIG_ARCH_OMAP2PLUS is not set |
338 | # CONFIG_ARCH_SOCFPGA is not set | 339 | # CONFIG_ARCH_SOCFPGA is not set |
339 | # CONFIG_PLAT_SPEAR is not set | 340 | # CONFIG_PLAT_SPEAR is not set |
340 | # CONFIG_ARCH_SUNXI is not set | 341 | # CONFIG_ARCH_SUNXI is not set |
341 | # CONFIG_ARCH_SIRF is not set | 342 | # CONFIG_ARCH_SIRF is not set |
342 | # CONFIG_ARCH_TEGRA is not set | 343 | # CONFIG_ARCH_TEGRA is not set |
343 | # CONFIG_ARCH_U8500 is not set | 344 | # CONFIG_ARCH_U8500 is not set |
344 | # CONFIG_ARCH_VEXPRESS is not set | 345 | # CONFIG_ARCH_VEXPRESS is not set |
345 | # CONFIG_ARCH_VIRT is not set | 346 | # CONFIG_ARCH_VIRT is not set |
346 | # CONFIG_ARCH_WM8850 is not set | 347 | # CONFIG_ARCH_WM8850 is not set |
347 | # CONFIG_ARCH_ZYNQ is not set | 348 | # CONFIG_ARCH_ZYNQ is not set |
348 | 349 | ||
349 | # | 350 | # |
350 | # Processor Type | 351 | # Processor Type |
351 | # | 352 | # |
352 | CONFIG_CPU_V7=y | 353 | CONFIG_CPU_V7=y |
353 | CONFIG_CPU_32v6K=y | 354 | CONFIG_CPU_32v6K=y |
354 | CONFIG_CPU_32v7=y | 355 | CONFIG_CPU_32v7=y |
355 | CONFIG_CPU_ABRT_EV7=y | 356 | CONFIG_CPU_ABRT_EV7=y |
356 | CONFIG_CPU_PABRT_V7=y | 357 | CONFIG_CPU_PABRT_V7=y |
357 | CONFIG_CPU_CACHE_V7=y | 358 | CONFIG_CPU_CACHE_V7=y |
358 | CONFIG_CPU_CACHE_VIPT=y | 359 | CONFIG_CPU_CACHE_VIPT=y |
359 | CONFIG_CPU_COPY_V6=y | 360 | CONFIG_CPU_COPY_V6=y |
360 | CONFIG_CPU_TLB_V7=y | 361 | CONFIG_CPU_TLB_V7=y |
361 | CONFIG_CPU_HAS_ASID=y | 362 | CONFIG_CPU_HAS_ASID=y |
362 | CONFIG_CPU_CP15=y | 363 | CONFIG_CPU_CP15=y |
363 | CONFIG_CPU_CP15_MMU=y | 364 | CONFIG_CPU_CP15_MMU=y |
364 | 365 | ||
365 | # | 366 | # |
366 | # Processor Features | 367 | # Processor Features |
367 | # | 368 | # |
368 | # CONFIG_ARM_LPAE is not set | 369 | # CONFIG_ARM_LPAE is not set |
369 | # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set | 370 | # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set |
370 | CONFIG_ARM_THUMB=y | 371 | CONFIG_ARM_THUMB=y |
371 | # CONFIG_ARM_THUMBEE is not set | 372 | # CONFIG_ARM_THUMBEE is not set |
372 | CONFIG_ARM_VIRT_EXT=y | 373 | CONFIG_ARM_VIRT_EXT=y |
373 | # CONFIG_SWP_EMULATE is not set | 374 | # CONFIG_SWP_EMULATE is not set |
374 | # CONFIG_CPU_ICACHE_DISABLE is not set | 375 | # CONFIG_CPU_ICACHE_DISABLE is not set |
375 | # CONFIG_CPU_DCACHE_DISABLE is not set | 376 | # CONFIG_CPU_DCACHE_DISABLE is not set |
376 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 377 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
377 | CONFIG_KUSER_HELPERS=y | 378 | CONFIG_KUSER_HELPERS=y |
378 | CONFIG_OUTER_CACHE=y | 379 | CONFIG_OUTER_CACHE=y |
379 | CONFIG_OUTER_CACHE_SYNC=y | 380 | CONFIG_OUTER_CACHE_SYNC=y |
380 | CONFIG_MIGHT_HAVE_CACHE_L2X0=y | 381 | CONFIG_MIGHT_HAVE_CACHE_L2X0=y |
381 | CONFIG_CACHE_L2X0=y | 382 | CONFIG_CACHE_L2X0=y |
382 | CONFIG_CACHE_PL310=y | 383 | CONFIG_CACHE_PL310=y |
383 | CONFIG_ARM_L1_CACHE_SHIFT_6=y | 384 | CONFIG_ARM_L1_CACHE_SHIFT_6=y |
384 | CONFIG_ARM_L1_CACHE_SHIFT=6 | 385 | CONFIG_ARM_L1_CACHE_SHIFT=6 |
385 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | 386 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y |
386 | CONFIG_ARM_NR_BANKS=8 | 387 | CONFIG_ARM_NR_BANKS=8 |
387 | CONFIG_MULTI_IRQ_HANDLER=y | 388 | CONFIG_MULTI_IRQ_HANDLER=y |
388 | # CONFIG_ARM_ERRATA_430973 is not set | 389 | # CONFIG_ARM_ERRATA_430973 is not set |
389 | # CONFIG_PL310_ERRATA_588369 is not set | 390 | # CONFIG_PL310_ERRATA_588369 is not set |
390 | # CONFIG_ARM_ERRATA_643719 is not set | 391 | # CONFIG_ARM_ERRATA_643719 is not set |
391 | # CONFIG_ARM_ERRATA_720789 is not set | 392 | # CONFIG_ARM_ERRATA_720789 is not set |
392 | # CONFIG_PL310_ERRATA_727915 is not set | 393 | # CONFIG_PL310_ERRATA_727915 is not set |
393 | CONFIG_ARM_ERRATA_794072=y | 394 | CONFIG_ARM_ERRATA_794072=y |
394 | CONFIG_ARM_ERRATA_761320=y | 395 | CONFIG_ARM_ERRATA_761320=y |
395 | # CONFIG_PL310_ERRATA_753970 is not set | 396 | # CONFIG_PL310_ERRATA_753970 is not set |
396 | CONFIG_ARM_ERRATA_754322=y | 397 | CONFIG_ARM_ERRATA_754322=y |
397 | # CONFIG_ARM_ERRATA_754327 is not set | 398 | # CONFIG_ARM_ERRATA_754327 is not set |
398 | CONFIG_ARM_ERRATA_764369=y | 399 | CONFIG_ARM_ERRATA_764369=y |
399 | CONFIG_PL310_ERRATA_769419=y | 400 | CONFIG_PL310_ERRATA_769419=y |
400 | CONFIG_ARM_ERRATA_775420=y | 401 | CONFIG_ARM_ERRATA_775420=y |
401 | # CONFIG_ARM_ERRATA_798181 is not set | 402 | # CONFIG_ARM_ERRATA_798181 is not set |
402 | 403 | ||
403 | # | 404 | # |
404 | # Bus support | 405 | # Bus support |
405 | # | 406 | # |
406 | # CONFIG_PCI is not set | 407 | CONFIG_PCI=y |
407 | # CONFIG_PCI_SYSCALL is not set | 408 | CONFIG_PCI_DOMAINS=y |
409 | CONFIG_PCI_SYSCALL=y | ||
408 | CONFIG_ARCH_SUPPORTS_MSI=y | 410 | CONFIG_ARCH_SUPPORTS_MSI=y |
411 | CONFIG_PCI_MSI=y | ||
412 | # CONFIG_PCI_DEBUG is not set | ||
413 | CONFIG_PCI_REALLOC_ENABLE_AUTO=y | ||
414 | CONFIG_PCI_STUB=y | ||
415 | CONFIG_PCI_ATS=y | ||
416 | CONFIG_PCI_IOV=y | ||
417 | CONFIG_PCI_PRI=y | ||
418 | CONFIG_PCI_PASID=y | ||
419 | |||
420 | # | ||
421 | # PCI host controller drivers | ||
422 | # | ||
423 | CONFIG_PCIE_DW=y | ||
424 | CONFIG_PCI_IMX6=y | ||
425 | # CONFIG_PCI_IMX6SX_EXTREMELY_PWR_SAVE is not set | ||
426 | # CONFIG_EP_MODE_IN_EP_RC_SYS is not set | ||
427 | # CONFIG_RC_MODE_IN_EP_RC_SYS is not set | ||
428 | CONFIG_PCIEPORTBUS=y | ||
429 | CONFIG_PCIEAER=y | ||
430 | CONFIG_PCIE_ECRC=y | ||
431 | CONFIG_PCIEAER_INJECT=y | ||
432 | CONFIG_PCIEASPM=y | ||
433 | # CONFIG_PCIEASPM_DEBUG is not set | ||
434 | CONFIG_PCIEASPM_DEFAULT=y | ||
435 | # CONFIG_PCIEASPM_POWERSAVE is not set | ||
436 | # CONFIG_PCIEASPM_PERFORMANCE is not set | ||
437 | CONFIG_PCIE_PME=y | ||
409 | # CONFIG_PCCARD is not set | 438 | # CONFIG_PCCARD is not set |
410 | 439 | ||
411 | # | 440 | # |
412 | # Kernel Features | 441 | # Kernel Features |
413 | # | 442 | # |
414 | CONFIG_HAVE_SMP=y | 443 | CONFIG_HAVE_SMP=y |
415 | CONFIG_SMP=y | 444 | CONFIG_SMP=y |
416 | CONFIG_SMP_ON_UP=y | 445 | CONFIG_SMP_ON_UP=y |
417 | CONFIG_ARM_CPU_TOPOLOGY=y | 446 | CONFIG_ARM_CPU_TOPOLOGY=y |
418 | # CONFIG_SCHED_MC is not set | 447 | # CONFIG_SCHED_MC is not set |
419 | # CONFIG_SCHED_SMT is not set | 448 | # CONFIG_SCHED_SMT is not set |
420 | CONFIG_HAVE_ARM_SCU=y | 449 | CONFIG_HAVE_ARM_SCU=y |
421 | # CONFIG_HAVE_ARM_ARCH_TIMER is not set | 450 | # CONFIG_HAVE_ARM_ARCH_TIMER is not set |
422 | CONFIG_HAVE_ARM_TWD=y | 451 | CONFIG_HAVE_ARM_TWD=y |
423 | # CONFIG_MCPM is not set | 452 | # CONFIG_MCPM is not set |
424 | # CONFIG_VMSPLIT_3G is not set | 453 | # CONFIG_VMSPLIT_3G is not set |
425 | CONFIG_VMSPLIT_2G=y | 454 | CONFIG_VMSPLIT_2G=y |
426 | # CONFIG_VMSPLIT_1G is not set | 455 | # CONFIG_VMSPLIT_1G is not set |
427 | CONFIG_PAGE_OFFSET=0x80000000 | 456 | CONFIG_PAGE_OFFSET=0x80000000 |
428 | CONFIG_NR_CPUS=4 | 457 | CONFIG_NR_CPUS=4 |
429 | CONFIG_HOTPLUG_CPU=y | 458 | CONFIG_HOTPLUG_CPU=y |
430 | # CONFIG_ARM_PSCI is not set | 459 | # CONFIG_ARM_PSCI is not set |
431 | CONFIG_LOCAL_TIMERS=y | 460 | CONFIG_LOCAL_TIMERS=y |
432 | CONFIG_ARCH_NR_GPIO=0 | 461 | CONFIG_ARCH_NR_GPIO=0 |
433 | # CONFIG_PREEMPT_NONE is not set | 462 | # CONFIG_PREEMPT_NONE is not set |
434 | # CONFIG_PREEMPT_VOLUNTARY is not set | 463 | # CONFIG_PREEMPT_VOLUNTARY is not set |
435 | CONFIG_PREEMPT=y | 464 | CONFIG_PREEMPT=y |
436 | CONFIG_PREEMPT_COUNT=y | 465 | CONFIG_PREEMPT_COUNT=y |
437 | CONFIG_HZ=100 | 466 | CONFIG_HZ=100 |
438 | CONFIG_SCHED_HRTICK=y | 467 | CONFIG_SCHED_HRTICK=y |
439 | # CONFIG_THUMB2_KERNEL is not set | 468 | # CONFIG_THUMB2_KERNEL is not set |
440 | CONFIG_AEABI=y | 469 | CONFIG_AEABI=y |
441 | # CONFIG_OABI_COMPAT is not set | 470 | # CONFIG_OABI_COMPAT is not set |
442 | # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set | 471 | # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set |
443 | # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set | 472 | # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set |
444 | CONFIG_HAVE_ARCH_PFN_VALID=y | 473 | CONFIG_HAVE_ARCH_PFN_VALID=y |
445 | CONFIG_HIGHMEM=y | 474 | CONFIG_HIGHMEM=y |
446 | # CONFIG_HIGHPTE is not set | 475 | # CONFIG_HIGHPTE is not set |
447 | CONFIG_HW_PERF_EVENTS=y | 476 | CONFIG_HW_PERF_EVENTS=y |
448 | CONFIG_FLATMEM=y | 477 | CONFIG_FLATMEM=y |
449 | CONFIG_FLAT_NODE_MEM_MAP=y | 478 | CONFIG_FLAT_NODE_MEM_MAP=y |
450 | CONFIG_HAVE_MEMBLOCK=y | 479 | CONFIG_HAVE_MEMBLOCK=y |
451 | CONFIG_MEMORY_ISOLATION=y | 480 | CONFIG_MEMORY_ISOLATION=y |
452 | # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set | 481 | # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set |
453 | CONFIG_PAGEFLAGS_EXTENDED=y | 482 | CONFIG_PAGEFLAGS_EXTENDED=y |
454 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 483 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
455 | CONFIG_COMPACTION=y | 484 | CONFIG_COMPACTION=y |
456 | CONFIG_MIGRATION=y | 485 | CONFIG_MIGRATION=y |
457 | # CONFIG_PHYS_ADDR_T_64BIT is not set | 486 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
458 | CONFIG_ZONE_DMA_FLAG=1 | 487 | CONFIG_ZONE_DMA_FLAG=1 |
459 | CONFIG_BOUNCE=y | 488 | CONFIG_BOUNCE=y |
460 | # CONFIG_KSM is not set | 489 | # CONFIG_KSM is not set |
461 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | 490 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 |
462 | CONFIG_CROSS_MEMORY_ATTACH=y | 491 | CONFIG_CROSS_MEMORY_ATTACH=y |
463 | # CONFIG_CLEANCACHE is not set | 492 | # CONFIG_CLEANCACHE is not set |
464 | # CONFIG_FRONTSWAP is not set | 493 | # CONFIG_FRONTSWAP is not set |
465 | CONFIG_FORCE_MAX_ZONEORDER=14 | 494 | CONFIG_FORCE_MAX_ZONEORDER=14 |
466 | CONFIG_ALIGNMENT_TRAP=y | 495 | CONFIG_ALIGNMENT_TRAP=y |
467 | # CONFIG_UACCESS_WITH_MEMCPY is not set | 496 | # CONFIG_UACCESS_WITH_MEMCPY is not set |
468 | # CONFIG_SECCOMP is not set | 497 | # CONFIG_SECCOMP is not set |
469 | # CONFIG_CC_STACKPROTECTOR is not set | 498 | # CONFIG_CC_STACKPROTECTOR is not set |
470 | # CONFIG_XEN is not set | 499 | # CONFIG_XEN is not set |
471 | 500 | ||
472 | # | 501 | # |
473 | # Boot options | 502 | # Boot options |
474 | # | 503 | # |
475 | CONFIG_USE_OF=y | 504 | CONFIG_USE_OF=y |
476 | CONFIG_ATAGS=y | 505 | CONFIG_ATAGS=y |
477 | # CONFIG_DEPRECATED_PARAM_STRUCT is not set | 506 | # CONFIG_DEPRECATED_PARAM_STRUCT is not set |
478 | CONFIG_ZBOOT_ROM_TEXT=0 | 507 | CONFIG_ZBOOT_ROM_TEXT=0 |
479 | CONFIG_ZBOOT_ROM_BSS=0 | 508 | CONFIG_ZBOOT_ROM_BSS=0 |
480 | # CONFIG_ARM_APPENDED_DTB is not set | 509 | # CONFIG_ARM_APPENDED_DTB is not set |
481 | CONFIG_CMDLINE="noinitrd console=ttymxc0,115200" | 510 | CONFIG_CMDLINE="noinitrd console=ttymxc0,115200" |
482 | CONFIG_CMDLINE_FROM_BOOTLOADER=y | 511 | CONFIG_CMDLINE_FROM_BOOTLOADER=y |
483 | # CONFIG_CMDLINE_EXTEND is not set | 512 | # CONFIG_CMDLINE_EXTEND is not set |
484 | # CONFIG_CMDLINE_FORCE is not set | 513 | # CONFIG_CMDLINE_FORCE is not set |
485 | # CONFIG_KEXEC is not set | 514 | # CONFIG_KEXEC is not set |
486 | # CONFIG_CRASH_DUMP is not set | 515 | # CONFIG_CRASH_DUMP is not set |
487 | CONFIG_AUTO_ZRELADDR=y | 516 | CONFIG_AUTO_ZRELADDR=y |
488 | 517 | ||
489 | # | 518 | # |
490 | # CPU Power Management | 519 | # CPU Power Management |
491 | # | 520 | # |
492 | 521 | ||
493 | # | 522 | # |
494 | # CPU Frequency scaling | 523 | # CPU Frequency scaling |
495 | # | 524 | # |
496 | CONFIG_CPU_FREQ=y | 525 | CONFIG_CPU_FREQ=y |
497 | CONFIG_CPU_FREQ_TABLE=y | 526 | CONFIG_CPU_FREQ_TABLE=y |
498 | CONFIG_CPU_FREQ_GOV_COMMON=y | 527 | CONFIG_CPU_FREQ_GOV_COMMON=y |
499 | CONFIG_CPU_FREQ_STAT=y | 528 | CONFIG_CPU_FREQ_STAT=y |
500 | # CONFIG_CPU_FREQ_STAT_DETAILS is not set | 529 | # CONFIG_CPU_FREQ_STAT_DETAILS is not set |
501 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set | 530 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set |
502 | # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set | 531 | # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set |
503 | # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set | 532 | # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set |
504 | # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set | 533 | # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set |
505 | # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set | 534 | # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set |
506 | CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE=y | 535 | CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE=y |
507 | CONFIG_CPU_FREQ_GOV_PERFORMANCE=y | 536 | CONFIG_CPU_FREQ_GOV_PERFORMANCE=y |
508 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y | 537 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y |
509 | CONFIG_CPU_FREQ_GOV_USERSPACE=y | 538 | CONFIG_CPU_FREQ_GOV_USERSPACE=y |
510 | CONFIG_CPU_FREQ_GOV_ONDEMAND=y | 539 | CONFIG_CPU_FREQ_GOV_ONDEMAND=y |
511 | CONFIG_CPU_FREQ_GOV_INTERACTIVE=y | 540 | CONFIG_CPU_FREQ_GOV_INTERACTIVE=y |
512 | CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y | 541 | CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y |
513 | # CONFIG_GENERIC_CPUFREQ_CPU0 is not set | 542 | # CONFIG_GENERIC_CPUFREQ_CPU0 is not set |
514 | 543 | ||
515 | # | 544 | # |
516 | # ARM CPU frequency scaling drivers | 545 | # ARM CPU frequency scaling drivers |
517 | # | 546 | # |
518 | # CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set | 547 | # CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set |
519 | # CONFIG_ARM_EXYNOS4210_CPUFREQ is not set | 548 | # CONFIG_ARM_EXYNOS4210_CPUFREQ is not set |
520 | # CONFIG_ARM_EXYNOS4X12_CPUFREQ is not set | 549 | # CONFIG_ARM_EXYNOS4X12_CPUFREQ is not set |
521 | # CONFIG_ARM_EXYNOS5250_CPUFREQ is not set | 550 | # CONFIG_ARM_EXYNOS5250_CPUFREQ is not set |
522 | # CONFIG_ARM_EXYNOS5440_CPUFREQ is not set | 551 | # CONFIG_ARM_EXYNOS5440_CPUFREQ is not set |
523 | CONFIG_ARM_IMX6_CPUFREQ=y | 552 | CONFIG_ARM_IMX6_CPUFREQ=y |
524 | # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set | 553 | # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set |
525 | CONFIG_CPU_IDLE=y | 554 | CONFIG_CPU_IDLE=y |
526 | # CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set | 555 | # CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set |
527 | CONFIG_CPU_IDLE_GOV_LADDER=y | 556 | CONFIG_CPU_IDLE_GOV_LADDER=y |
528 | CONFIG_CPU_IDLE_GOV_MENU=y | 557 | CONFIG_CPU_IDLE_GOV_MENU=y |
529 | # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set | 558 | # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set |
530 | 559 | ||
531 | # | 560 | # |
532 | # Floating point emulation | 561 | # Floating point emulation |
533 | # | 562 | # |
534 | 563 | ||
535 | # | 564 | # |
536 | # At least one emulation must be selected | 565 | # At least one emulation must be selected |
537 | # | 566 | # |
538 | CONFIG_VFP=y | 567 | CONFIG_VFP=y |
539 | CONFIG_VFPv3=y | 568 | CONFIG_VFPv3=y |
540 | CONFIG_NEON=y | 569 | CONFIG_NEON=y |
541 | 570 | ||
542 | # | 571 | # |
543 | # Userspace binary formats | 572 | # Userspace binary formats |
544 | # | 573 | # |
545 | CONFIG_BINFMT_ELF=y | 574 | CONFIG_BINFMT_ELF=y |
546 | CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y | 575 | CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y |
547 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y | 576 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y |
548 | CONFIG_BINFMT_SCRIPT=y | 577 | CONFIG_BINFMT_SCRIPT=y |
549 | # CONFIG_HAVE_AOUT is not set | 578 | # CONFIG_HAVE_AOUT is not set |
550 | CONFIG_BINFMT_MISC=m | 579 | CONFIG_BINFMT_MISC=m |
551 | CONFIG_COREDUMP=y | 580 | CONFIG_COREDUMP=y |
552 | 581 | ||
553 | # | 582 | # |
554 | # Power management options | 583 | # Power management options |
555 | # | 584 | # |
556 | CONFIG_SUSPEND=y | 585 | CONFIG_SUSPEND=y |
557 | CONFIG_SUSPEND_FREEZER=y | 586 | CONFIG_SUSPEND_FREEZER=y |
558 | CONFIG_PM_SLEEP=y | 587 | CONFIG_PM_SLEEP=y |
559 | CONFIG_PM_SLEEP_SMP=y | 588 | CONFIG_PM_SLEEP_SMP=y |
560 | # CONFIG_PM_AUTOSLEEP is not set | 589 | # CONFIG_PM_AUTOSLEEP is not set |
561 | # CONFIG_PM_WAKELOCKS is not set | 590 | # CONFIG_PM_WAKELOCKS is not set |
562 | CONFIG_PM_RUNTIME=y | 591 | CONFIG_PM_RUNTIME=y |
563 | CONFIG_PM=y | 592 | CONFIG_PM=y |
564 | CONFIG_PM_DEBUG=y | 593 | CONFIG_PM_DEBUG=y |
565 | # CONFIG_PM_ADVANCED_DEBUG is not set | 594 | # CONFIG_PM_ADVANCED_DEBUG is not set |
566 | CONFIG_PM_TEST_SUSPEND=y | 595 | CONFIG_PM_TEST_SUSPEND=y |
567 | CONFIG_PM_SLEEP_DEBUG=y | 596 | CONFIG_PM_SLEEP_DEBUG=y |
568 | CONFIG_APM_EMULATION=y | 597 | CONFIG_APM_EMULATION=y |
569 | CONFIG_ARCH_HAS_OPP=y | 598 | CONFIG_ARCH_HAS_OPP=y |
570 | CONFIG_PM_OPP=y | 599 | CONFIG_PM_OPP=y |
571 | CONFIG_PM_CLK=y | 600 | CONFIG_PM_CLK=y |
572 | CONFIG_CPU_PM=y | 601 | CONFIG_CPU_PM=y |
573 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | 602 | CONFIG_ARCH_SUSPEND_POSSIBLE=y |
574 | CONFIG_ARM_CPU_SUSPEND=y | 603 | CONFIG_ARM_CPU_SUSPEND=y |
575 | CONFIG_NET=y | 604 | CONFIG_NET=y |
576 | 605 | ||
577 | # | 606 | # |
578 | # Networking options | 607 | # Networking options |
579 | # | 608 | # |
580 | CONFIG_PACKET=y | 609 | CONFIG_PACKET=y |
581 | # CONFIG_PACKET_DIAG is not set | 610 | # CONFIG_PACKET_DIAG is not set |
582 | CONFIG_UNIX=y | 611 | CONFIG_UNIX=y |
583 | # CONFIG_UNIX_DIAG is not set | 612 | # CONFIG_UNIX_DIAG is not set |
584 | CONFIG_XFRM=y | 613 | CONFIG_XFRM=y |
585 | # CONFIG_XFRM_USER is not set | 614 | # CONFIG_XFRM_USER is not set |
586 | # CONFIG_XFRM_SUB_POLICY is not set | 615 | # CONFIG_XFRM_SUB_POLICY is not set |
587 | # CONFIG_XFRM_MIGRATE is not set | 616 | # CONFIG_XFRM_MIGRATE is not set |
588 | # CONFIG_XFRM_STATISTICS is not set | 617 | # CONFIG_XFRM_STATISTICS is not set |
589 | # CONFIG_NET_KEY is not set | 618 | # CONFIG_NET_KEY is not set |
590 | CONFIG_INET=y | 619 | CONFIG_INET=y |
591 | # CONFIG_IP_MULTICAST is not set | 620 | # CONFIG_IP_MULTICAST is not set |
592 | # CONFIG_IP_ADVANCED_ROUTER is not set | 621 | # CONFIG_IP_ADVANCED_ROUTER is not set |
593 | CONFIG_IP_PNP=y | 622 | CONFIG_IP_PNP=y |
594 | CONFIG_IP_PNP_DHCP=y | 623 | CONFIG_IP_PNP_DHCP=y |
595 | # CONFIG_IP_PNP_BOOTP is not set | 624 | # CONFIG_IP_PNP_BOOTP is not set |
596 | # CONFIG_IP_PNP_RARP is not set | 625 | # CONFIG_IP_PNP_RARP is not set |
597 | # CONFIG_NET_IPIP is not set | 626 | # CONFIG_NET_IPIP is not set |
598 | # CONFIG_NET_IPGRE_DEMUX is not set | 627 | # CONFIG_NET_IPGRE_DEMUX is not set |
599 | CONFIG_NET_IP_TUNNEL=y | 628 | CONFIG_NET_IP_TUNNEL=y |
600 | # CONFIG_ARPD is not set | 629 | # CONFIG_ARPD is not set |
601 | # CONFIG_SYN_COOKIES is not set | 630 | # CONFIG_SYN_COOKIES is not set |
602 | # CONFIG_INET_AH is not set | 631 | # CONFIG_INET_AH is not set |
603 | # CONFIG_INET_ESP is not set | 632 | # CONFIG_INET_ESP is not set |
604 | # CONFIG_INET_IPCOMP is not set | 633 | # CONFIG_INET_IPCOMP is not set |
605 | # CONFIG_INET_XFRM_TUNNEL is not set | 634 | # CONFIG_INET_XFRM_TUNNEL is not set |
606 | CONFIG_INET_TUNNEL=y | 635 | CONFIG_INET_TUNNEL=y |
607 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | 636 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
608 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | 637 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
609 | # CONFIG_INET_XFRM_MODE_BEET is not set | 638 | # CONFIG_INET_XFRM_MODE_BEET is not set |
610 | # CONFIG_INET_LRO is not set | 639 | # CONFIG_INET_LRO is not set |
611 | CONFIG_INET_DIAG=y | 640 | CONFIG_INET_DIAG=y |
612 | CONFIG_INET_TCP_DIAG=y | 641 | CONFIG_INET_TCP_DIAG=y |
613 | # CONFIG_INET_UDP_DIAG is not set | 642 | # CONFIG_INET_UDP_DIAG is not set |
614 | # CONFIG_TCP_CONG_ADVANCED is not set | 643 | # CONFIG_TCP_CONG_ADVANCED is not set |
615 | CONFIG_TCP_CONG_CUBIC=y | 644 | CONFIG_TCP_CONG_CUBIC=y |
616 | CONFIG_DEFAULT_TCP_CONG="cubic" | 645 | CONFIG_DEFAULT_TCP_CONG="cubic" |
617 | # CONFIG_TCP_MD5SIG is not set | 646 | # CONFIG_TCP_MD5SIG is not set |
618 | CONFIG_IPV6=y | 647 | CONFIG_IPV6=y |
619 | # CONFIG_IPV6_PRIVACY is not set | 648 | # CONFIG_IPV6_PRIVACY is not set |
620 | # CONFIG_IPV6_ROUTER_PREF is not set | 649 | # CONFIG_IPV6_ROUTER_PREF is not set |
621 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set | 650 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set |
622 | # CONFIG_INET6_AH is not set | 651 | # CONFIG_INET6_AH is not set |
623 | # CONFIG_INET6_ESP is not set | 652 | # CONFIG_INET6_ESP is not set |
624 | # CONFIG_INET6_IPCOMP is not set | 653 | # CONFIG_INET6_IPCOMP is not set |
625 | # CONFIG_IPV6_MIP6 is not set | 654 | # CONFIG_IPV6_MIP6 is not set |
626 | # CONFIG_INET6_XFRM_TUNNEL is not set | 655 | # CONFIG_INET6_XFRM_TUNNEL is not set |
627 | # CONFIG_INET6_TUNNEL is not set | 656 | # CONFIG_INET6_TUNNEL is not set |
628 | CONFIG_INET6_XFRM_MODE_TRANSPORT=y | 657 | CONFIG_INET6_XFRM_MODE_TRANSPORT=y |
629 | CONFIG_INET6_XFRM_MODE_TUNNEL=y | 658 | CONFIG_INET6_XFRM_MODE_TUNNEL=y |
630 | CONFIG_INET6_XFRM_MODE_BEET=y | 659 | CONFIG_INET6_XFRM_MODE_BEET=y |
631 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | 660 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set |
632 | CONFIG_IPV6_SIT=y | 661 | CONFIG_IPV6_SIT=y |
633 | # CONFIG_IPV6_SIT_6RD is not set | 662 | # CONFIG_IPV6_SIT_6RD is not set |
634 | CONFIG_IPV6_NDISC_NODETYPE=y | 663 | CONFIG_IPV6_NDISC_NODETYPE=y |
635 | # CONFIG_IPV6_TUNNEL is not set | 664 | # CONFIG_IPV6_TUNNEL is not set |
636 | # CONFIG_IPV6_GRE is not set | 665 | # CONFIG_IPV6_GRE is not set |
637 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | 666 | # CONFIG_IPV6_MULTIPLE_TABLES is not set |
638 | # CONFIG_IPV6_MROUTE is not set | 667 | # CONFIG_IPV6_MROUTE is not set |
639 | # CONFIG_NETWORK_SECMARK is not set | 668 | # CONFIG_NETWORK_SECMARK is not set |
640 | # CONFIG_NETWORK_PHY_TIMESTAMPING is not set | 669 | # CONFIG_NETWORK_PHY_TIMESTAMPING is not set |
641 | # CONFIG_NETFILTER is not set | 670 | # CONFIG_NETFILTER is not set |
642 | # CONFIG_IP_DCCP is not set | 671 | # CONFIG_IP_DCCP is not set |
643 | # CONFIG_IP_SCTP is not set | 672 | # CONFIG_IP_SCTP is not set |
644 | # CONFIG_RDS is not set | 673 | # CONFIG_RDS is not set |
645 | # CONFIG_TIPC is not set | 674 | # CONFIG_TIPC is not set |
646 | # CONFIG_ATM is not set | 675 | # CONFIG_ATM is not set |
647 | # CONFIG_L2TP is not set | 676 | # CONFIG_L2TP is not set |
648 | # CONFIG_BRIDGE is not set | 677 | # CONFIG_BRIDGE is not set |
649 | CONFIG_HAVE_NET_DSA=y | 678 | CONFIG_HAVE_NET_DSA=y |
650 | CONFIG_VLAN_8021Q=y | 679 | CONFIG_VLAN_8021Q=y |
651 | # CONFIG_VLAN_8021Q_GVRP is not set | 680 | # CONFIG_VLAN_8021Q_GVRP is not set |
652 | # CONFIG_VLAN_8021Q_MVRP is not set | 681 | # CONFIG_VLAN_8021Q_MVRP is not set |
653 | # CONFIG_DECNET is not set | 682 | # CONFIG_DECNET is not set |
654 | CONFIG_LLC=y | 683 | CONFIG_LLC=y |
655 | CONFIG_LLC2=y | 684 | CONFIG_LLC2=y |
656 | # CONFIG_IPX is not set | 685 | # CONFIG_IPX is not set |
657 | # CONFIG_ATALK is not set | 686 | # CONFIG_ATALK is not set |
658 | # CONFIG_X25 is not set | 687 | # CONFIG_X25 is not set |
659 | # CONFIG_LAPB is not set | 688 | # CONFIG_LAPB is not set |
660 | # CONFIG_PHONET is not set | 689 | # CONFIG_PHONET is not set |
661 | # CONFIG_IEEE802154 is not set | 690 | # CONFIG_IEEE802154 is not set |
662 | # CONFIG_NET_SCHED is not set | 691 | # CONFIG_NET_SCHED is not set |
663 | # CONFIG_DCB is not set | 692 | # CONFIG_DCB is not set |
664 | CONFIG_DNS_RESOLVER=y | 693 | CONFIG_DNS_RESOLVER=y |
665 | # CONFIG_BATMAN_ADV is not set | 694 | # CONFIG_BATMAN_ADV is not set |
666 | # CONFIG_OPENVSWITCH is not set | 695 | # CONFIG_OPENVSWITCH is not set |
667 | # CONFIG_VSOCKETS is not set | 696 | # CONFIG_VSOCKETS is not set |
668 | # CONFIG_NETLINK_MMAP is not set | 697 | # CONFIG_NETLINK_MMAP is not set |
669 | # CONFIG_NETLINK_DIAG is not set | 698 | # CONFIG_NETLINK_DIAG is not set |
670 | CONFIG_RPS=y | 699 | CONFIG_RPS=y |
671 | CONFIG_RFS_ACCEL=y | 700 | CONFIG_RFS_ACCEL=y |
672 | CONFIG_XPS=y | 701 | CONFIG_XPS=y |
673 | # CONFIG_NETPRIO_CGROUP is not set | 702 | # CONFIG_NETPRIO_CGROUP is not set |
674 | CONFIG_BQL=y | 703 | CONFIG_BQL=y |
675 | # CONFIG_BPF_JIT is not set | 704 | # CONFIG_BPF_JIT is not set |
676 | 705 | ||
677 | # | 706 | # |
678 | # Network testing | 707 | # Network testing |
679 | # | 708 | # |
680 | # CONFIG_NET_PKTGEN is not set | 709 | # CONFIG_NET_PKTGEN is not set |
681 | # CONFIG_HAMRADIO is not set | 710 | # CONFIG_HAMRADIO is not set |
682 | CONFIG_CAN=y | 711 | CONFIG_CAN=y |
683 | CONFIG_CAN_RAW=y | 712 | CONFIG_CAN_RAW=y |
684 | CONFIG_CAN_BCM=y | 713 | CONFIG_CAN_BCM=y |
685 | CONFIG_CAN_GW=y | 714 | CONFIG_CAN_GW=y |
686 | 715 | ||
687 | # | 716 | # |
688 | # CAN Device Drivers | 717 | # CAN Device Drivers |
689 | # | 718 | # |
690 | # CONFIG_CAN_VCAN is not set | 719 | # CONFIG_CAN_VCAN is not set |
691 | # CONFIG_CAN_SLCAN is not set | 720 | # CONFIG_CAN_SLCAN is not set |
692 | CONFIG_CAN_DEV=y | 721 | CONFIG_CAN_DEV=y |
693 | CONFIG_CAN_CALC_BITTIMING=y | 722 | CONFIG_CAN_CALC_BITTIMING=y |
694 | # CONFIG_CAN_LEDS is not set | 723 | # CONFIG_CAN_LEDS is not set |
695 | # CONFIG_CAN_AT91 is not set | 724 | # CONFIG_CAN_AT91 is not set |
696 | # CONFIG_CAN_MCP251X is not set | 725 | # CONFIG_CAN_MCP251X is not set |
697 | CONFIG_HAVE_CAN_FLEXCAN=y | 726 | CONFIG_HAVE_CAN_FLEXCAN=y |
698 | CONFIG_CAN_FLEXCAN=y | 727 | CONFIG_CAN_FLEXCAN=y |
728 | # CONFIG_PCH_CAN is not set | ||
699 | # CONFIG_CAN_GRCAN is not set | 729 | # CONFIG_CAN_GRCAN is not set |
700 | CONFIG_CAN_M_CAN=y | 730 | CONFIG_CAN_M_CAN=y |
701 | # CONFIG_CAN_SJA1000 is not set | 731 | # CONFIG_CAN_SJA1000 is not set |
702 | # CONFIG_CAN_C_CAN is not set | 732 | # CONFIG_CAN_C_CAN is not set |
703 | # CONFIG_CAN_CC770 is not set | 733 | # CONFIG_CAN_CC770 is not set |
704 | 734 | ||
705 | # | 735 | # |
706 | # CAN USB interfaces | 736 | # CAN USB interfaces |
707 | # | 737 | # |
708 | # CONFIG_CAN_EMS_USB is not set | 738 | # CONFIG_CAN_EMS_USB is not set |
709 | # CONFIG_CAN_ESD_USB2 is not set | 739 | # CONFIG_CAN_ESD_USB2 is not set |
710 | # CONFIG_CAN_KVASER_USB is not set | 740 | # CONFIG_CAN_KVASER_USB is not set |
711 | # CONFIG_CAN_PEAK_USB is not set | 741 | # CONFIG_CAN_PEAK_USB is not set |
712 | # CONFIG_CAN_8DEV_USB is not set | 742 | # CONFIG_CAN_8DEV_USB is not set |
713 | # CONFIG_CAN_SOFTING is not set | 743 | # CONFIG_CAN_SOFTING is not set |
714 | # CONFIG_CAN_DEBUG_DEVICES is not set | 744 | # CONFIG_CAN_DEBUG_DEVICES is not set |
715 | # CONFIG_IRDA is not set | 745 | # CONFIG_IRDA is not set |
716 | # CONFIG_BT is not set | 746 | CONFIG_BT=y |
747 | CONFIG_BT_RFCOMM=y | ||
748 | CONFIG_BT_RFCOMM_TTY=y | ||
749 | CONFIG_BT_BNEP=y | ||
750 | CONFIG_BT_BNEP_MC_FILTER=y | ||
751 | CONFIG_BT_BNEP_PROTO_FILTER=y | ||
752 | CONFIG_BT_HIDP=y | ||
753 | |||
754 | # | ||
755 | # Bluetooth device drivers | ||
756 | # | ||
757 | CONFIG_BT_HCIBTUSB=y | ||
758 | CONFIG_BT_HCIBTSDIO=y | ||
759 | CONFIG_BT_HCIUART=y | ||
760 | CONFIG_BT_HCIUART_H4=y | ||
761 | CONFIG_BT_HCIUART_BCSP=y | ||
762 | CONFIG_BT_HCIUART_ATH3K=y | ||
763 | # CONFIG_BT_HCIUART_LL is not set | ||
764 | # CONFIG_BT_HCIUART_3WIRE is not set | ||
765 | CONFIG_BT_HCIBCM203X=y | ||
766 | # CONFIG_BT_HCIBPA10X is not set | ||
767 | # CONFIG_BT_HCIBFUSB is not set | ||
768 | # CONFIG_BT_HCIVHCI is not set | ||
769 | # CONFIG_BT_MRVL is not set | ||
770 | CONFIG_BT_ATH3K=y | ||
717 | # CONFIG_AF_RXRPC is not set | 771 | # CONFIG_AF_RXRPC is not set |
718 | CONFIG_WIRELESS=y | 772 | CONFIG_WIRELESS=y |
719 | CONFIG_WEXT_CORE=y | 773 | CONFIG_WEXT_CORE=y |
720 | CONFIG_WEXT_PROC=y | 774 | CONFIG_WEXT_PROC=y |
721 | CONFIG_CFG80211=y | 775 | CONFIG_CFG80211=y |
722 | # CONFIG_NL80211_TESTMODE is not set | 776 | # CONFIG_NL80211_TESTMODE is not set |
723 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set | 777 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set |
724 | # CONFIG_CFG80211_REG_DEBUG is not set | 778 | # CONFIG_CFG80211_REG_DEBUG is not set |
725 | # CONFIG_CFG80211_CERTIFICATION_ONUS is not set | 779 | # CONFIG_CFG80211_CERTIFICATION_ONUS is not set |
726 | CONFIG_CFG80211_DEFAULT_PS=y | 780 | CONFIG_CFG80211_DEFAULT_PS=y |
727 | # CONFIG_CFG80211_DEBUGFS is not set | 781 | # CONFIG_CFG80211_DEBUGFS is not set |
728 | # CONFIG_CFG80211_INTERNAL_REGDB is not set | 782 | # CONFIG_CFG80211_INTERNAL_REGDB is not set |
729 | CONFIG_CFG80211_WEXT=y | 783 | CONFIG_CFG80211_WEXT=y |
730 | # CONFIG_LIB80211 is not set | 784 | # CONFIG_LIB80211 is not set |
731 | CONFIG_MAC80211=y | 785 | CONFIG_MAC80211=y |
732 | CONFIG_MAC80211_HAS_RC=y | 786 | CONFIG_MAC80211_HAS_RC=y |
733 | # CONFIG_MAC80211_RC_PID is not set | 787 | # CONFIG_MAC80211_RC_PID is not set |
734 | CONFIG_MAC80211_RC_MINSTREL=y | 788 | CONFIG_MAC80211_RC_MINSTREL=y |
735 | CONFIG_MAC80211_RC_MINSTREL_HT=y | 789 | CONFIG_MAC80211_RC_MINSTREL_HT=y |
736 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y | 790 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y |
737 | CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" | 791 | CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" |
738 | # CONFIG_MAC80211_MESH is not set | 792 | # CONFIG_MAC80211_MESH is not set |
739 | # CONFIG_MAC80211_LEDS is not set | 793 | CONFIG_MAC80211_LEDS=y |
740 | # CONFIG_MAC80211_DEBUGFS is not set | 794 | # CONFIG_MAC80211_DEBUGFS is not set |
741 | # CONFIG_MAC80211_MESSAGE_TRACING is not set | 795 | # CONFIG_MAC80211_MESSAGE_TRACING is not set |
742 | # CONFIG_MAC80211_DEBUG_MENU is not set | 796 | # CONFIG_MAC80211_DEBUG_MENU is not set |
743 | # CONFIG_WIMAX is not set | 797 | # CONFIG_WIMAX is not set |
744 | # CONFIG_RFKILL is not set | 798 | # CONFIG_RFKILL is not set |
745 | # CONFIG_RFKILL_REGULATOR is not set | 799 | # CONFIG_RFKILL_REGULATOR is not set |
746 | # CONFIG_NET_9P is not set | 800 | # CONFIG_NET_9P is not set |
747 | # CONFIG_CAIF is not set | 801 | # CONFIG_CAIF is not set |
748 | # CONFIG_CEPH_LIB is not set | 802 | # CONFIG_CEPH_LIB is not set |
749 | # CONFIG_NFC is not set | 803 | # CONFIG_NFC is not set |
750 | CONFIG_HAVE_BPF_JIT=y | 804 | CONFIG_HAVE_BPF_JIT=y |
751 | 805 | ||
752 | # | 806 | # |
753 | # Device Drivers | 807 | # Device Drivers |
754 | # | 808 | # |
755 | 809 | ||
756 | # | 810 | # |
757 | # Generic Driver Options | 811 | # Generic Driver Options |
758 | # | 812 | # |
759 | CONFIG_UEVENT_HELPER_PATH="" | 813 | CONFIG_UEVENT_HELPER_PATH="" |
760 | CONFIG_DEVTMPFS=y | 814 | CONFIG_DEVTMPFS=y |
761 | CONFIG_DEVTMPFS_MOUNT=y | 815 | CONFIG_DEVTMPFS_MOUNT=y |
762 | # CONFIG_STANDALONE is not set | 816 | # CONFIG_STANDALONE is not set |
763 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 817 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
764 | CONFIG_FW_LOADER=y | 818 | CONFIG_FW_LOADER=y |
765 | CONFIG_FIRMWARE_IN_KERNEL=y | 819 | CONFIG_FIRMWARE_IN_KERNEL=y |
766 | CONFIG_EXTRA_FIRMWARE="" | 820 | CONFIG_EXTRA_FIRMWARE="" |
767 | CONFIG_FW_LOADER_USER_HELPER=y | 821 | CONFIG_FW_LOADER_USER_HELPER=y |
768 | # CONFIG_DEBUG_DRIVER is not set | 822 | # CONFIG_DEBUG_DRIVER is not set |
769 | # CONFIG_DEBUG_DEVRES is not set | 823 | # CONFIG_DEBUG_DEVRES is not set |
770 | # CONFIG_SYS_HYPERVISOR is not set | 824 | # CONFIG_SYS_HYPERVISOR is not set |
771 | # CONFIG_GENERIC_CPU_DEVICES is not set | 825 | # CONFIG_GENERIC_CPU_DEVICES is not set |
772 | CONFIG_SOC_BUS=y | 826 | CONFIG_SOC_BUS=y |
773 | CONFIG_REGMAP=y | 827 | CONFIG_REGMAP=y |
774 | CONFIG_REGMAP_I2C=y | 828 | CONFIG_REGMAP_I2C=y |
775 | CONFIG_REGMAP_SPI=y | 829 | CONFIG_REGMAP_SPI=y |
776 | CONFIG_REGMAP_MMIO=y | 830 | CONFIG_REGMAP_MMIO=y |
777 | CONFIG_REGMAP_IRQ=y | 831 | CONFIG_REGMAP_IRQ=y |
778 | CONFIG_DMA_SHARED_BUFFER=y | 832 | CONFIG_DMA_SHARED_BUFFER=y |
779 | CONFIG_CMA=y | 833 | CONFIG_CMA=y |
780 | # CONFIG_CMA_DEBUG is not set | 834 | # CONFIG_CMA_DEBUG is not set |
781 | 835 | ||
782 | # | 836 | # |
783 | # Default contiguous memory area size: | 837 | # Default contiguous memory area size: |
784 | # | 838 | # |
785 | CONFIG_CMA_SIZE_MBYTES=320 | 839 | CONFIG_CMA_SIZE_MBYTES=320 |
786 | CONFIG_CMA_SIZE_SEL_MBYTES=y | 840 | CONFIG_CMA_SIZE_SEL_MBYTES=y |
787 | # CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set | 841 | # CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set |
788 | # CONFIG_CMA_SIZE_SEL_MIN is not set | 842 | # CONFIG_CMA_SIZE_SEL_MIN is not set |
789 | # CONFIG_CMA_SIZE_SEL_MAX is not set | 843 | # CONFIG_CMA_SIZE_SEL_MAX is not set |
790 | CONFIG_CMA_ALIGNMENT=8 | 844 | CONFIG_CMA_ALIGNMENT=8 |
791 | CONFIG_CMA_AREAS=7 | 845 | CONFIG_CMA_AREAS=7 |
792 | 846 | ||
793 | # | 847 | # |
794 | # Bus devices | 848 | # Bus devices |
795 | # | 849 | # |
796 | CONFIG_IMX_WEIM=y | 850 | CONFIG_IMX_WEIM=y |
797 | CONFIG_CONNECTOR=y | 851 | CONFIG_CONNECTOR=y |
798 | CONFIG_PROC_EVENTS=y | 852 | CONFIG_PROC_EVENTS=y |
799 | CONFIG_MTD=y | 853 | CONFIG_MTD=y |
800 | # CONFIG_MTD_TESTS is not set | 854 | # CONFIG_MTD_TESTS is not set |
801 | # CONFIG_MTD_REDBOOT_PARTS is not set | 855 | # CONFIG_MTD_REDBOOT_PARTS is not set |
802 | CONFIG_MTD_CMDLINE_PARTS=y | 856 | CONFIG_MTD_CMDLINE_PARTS=y |
803 | # CONFIG_MTD_AFS_PARTS is not set | 857 | # CONFIG_MTD_AFS_PARTS is not set |
804 | CONFIG_MTD_OF_PARTS=y | 858 | CONFIG_MTD_OF_PARTS=y |
805 | # CONFIG_MTD_AR7_PARTS is not set | 859 | # CONFIG_MTD_AR7_PARTS is not set |
806 | 860 | ||
807 | # | 861 | # |
808 | # User Modules And Translation Layers | 862 | # User Modules And Translation Layers |
809 | # | 863 | # |
810 | CONFIG_MTD_BLKDEVS=y | 864 | CONFIG_MTD_BLKDEVS=y |
811 | CONFIG_MTD_BLOCK=y | 865 | CONFIG_MTD_BLOCK=y |
812 | # CONFIG_FTL is not set | 866 | # CONFIG_FTL is not set |
813 | # CONFIG_NFTL is not set | 867 | # CONFIG_NFTL is not set |
814 | # CONFIG_INFTL is not set | 868 | # CONFIG_INFTL is not set |
815 | # CONFIG_RFD_FTL is not set | 869 | # CONFIG_RFD_FTL is not set |
816 | # CONFIG_SSFDC is not set | 870 | # CONFIG_SSFDC is not set |
817 | # CONFIG_SM_FTL is not set | 871 | # CONFIG_SM_FTL is not set |
818 | # CONFIG_MTD_OOPS is not set | 872 | # CONFIG_MTD_OOPS is not set |
819 | # CONFIG_MTD_SWAP is not set | 873 | # CONFIG_MTD_SWAP is not set |
820 | 874 | ||
821 | # | 875 | # |
822 | # RAM/ROM/Flash chip drivers | 876 | # RAM/ROM/Flash chip drivers |
823 | # | 877 | # |
824 | CONFIG_MTD_CFI=y | 878 | CONFIG_MTD_CFI=y |
825 | CONFIG_MTD_JEDECPROBE=y | 879 | CONFIG_MTD_JEDECPROBE=y |
826 | CONFIG_MTD_GEN_PROBE=y | 880 | CONFIG_MTD_GEN_PROBE=y |
827 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set | 881 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set |
828 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | 882 | CONFIG_MTD_MAP_BANK_WIDTH_1=y |
829 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | 883 | CONFIG_MTD_MAP_BANK_WIDTH_2=y |
830 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | 884 | CONFIG_MTD_MAP_BANK_WIDTH_4=y |
831 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | 885 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set |
832 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | 886 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set |
833 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | 887 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set |
834 | CONFIG_MTD_CFI_I1=y | 888 | CONFIG_MTD_CFI_I1=y |
835 | CONFIG_MTD_CFI_I2=y | 889 | CONFIG_MTD_CFI_I2=y |
836 | # CONFIG_MTD_CFI_I4 is not set | 890 | # CONFIG_MTD_CFI_I4 is not set |
837 | # CONFIG_MTD_CFI_I8 is not set | 891 | # CONFIG_MTD_CFI_I8 is not set |
838 | CONFIG_MTD_CFI_INTELEXT=y | 892 | CONFIG_MTD_CFI_INTELEXT=y |
839 | CONFIG_MTD_CFI_AMDSTD=y | 893 | CONFIG_MTD_CFI_AMDSTD=y |
840 | CONFIG_MTD_CFI_STAA=y | 894 | CONFIG_MTD_CFI_STAA=y |
841 | CONFIG_MTD_CFI_UTIL=y | 895 | CONFIG_MTD_CFI_UTIL=y |
842 | # CONFIG_MTD_RAM is not set | 896 | # CONFIG_MTD_RAM is not set |
843 | # CONFIG_MTD_ROM is not set | 897 | # CONFIG_MTD_ROM is not set |
844 | # CONFIG_MTD_ABSENT is not set | 898 | # CONFIG_MTD_ABSENT is not set |
845 | 899 | ||
846 | # | 900 | # |
847 | # Mapping drivers for chip access | 901 | # Mapping drivers for chip access |
848 | # | 902 | # |
849 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 903 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
850 | # CONFIG_MTD_PHYSMAP is not set | 904 | # CONFIG_MTD_PHYSMAP is not set |
851 | CONFIG_MTD_PHYSMAP_OF=y | 905 | CONFIG_MTD_PHYSMAP_OF=y |
852 | # CONFIG_MTD_IMPA7 is not set | 906 | # CONFIG_MTD_IMPA7 is not set |
907 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
853 | # CONFIG_MTD_PLATRAM is not set | 908 | # CONFIG_MTD_PLATRAM is not set |
854 | 909 | ||
855 | # | 910 | # |
856 | # Self-contained MTD device drivers | 911 | # Self-contained MTD device drivers |
857 | # | 912 | # |
913 | # CONFIG_MTD_PMC551 is not set | ||
858 | CONFIG_MTD_DATAFLASH=y | 914 | CONFIG_MTD_DATAFLASH=y |
859 | # CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set | 915 | # CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set |
860 | # CONFIG_MTD_DATAFLASH_OTP is not set | 916 | # CONFIG_MTD_DATAFLASH_OTP is not set |
861 | CONFIG_MTD_M25P80=y | 917 | CONFIG_MTD_M25P80=y |
862 | CONFIG_MTD_SST25L=y | 918 | CONFIG_MTD_SST25L=y |
863 | # CONFIG_MTD_SLRAM is not set | 919 | # CONFIG_MTD_SLRAM is not set |
864 | # CONFIG_MTD_PHRAM is not set | 920 | # CONFIG_MTD_PHRAM is not set |
865 | # CONFIG_MTD_MTDRAM is not set | 921 | # CONFIG_MTD_MTDRAM is not set |
866 | # CONFIG_MTD_BLOCK2MTD is not set | 922 | # CONFIG_MTD_BLOCK2MTD is not set |
867 | 923 | ||
868 | # | 924 | # |
869 | # Disk-On-Chip Device Drivers | 925 | # Disk-On-Chip Device Drivers |
870 | # | 926 | # |
871 | # CONFIG_MTD_DOCG3 is not set | 927 | # CONFIG_MTD_DOCG3 is not set |
872 | CONFIG_MTD_NAND_ECC=y | 928 | CONFIG_MTD_NAND_ECC=y |
873 | # CONFIG_MTD_NAND_ECC_SMC is not set | 929 | # CONFIG_MTD_NAND_ECC_SMC is not set |
874 | CONFIG_MTD_NAND=y | 930 | CONFIG_MTD_NAND=y |
875 | # CONFIG_MTD_NAND_ECC_BCH is not set | 931 | # CONFIG_MTD_NAND_ECC_BCH is not set |
876 | # CONFIG_MTD_SM_COMMON is not set | 932 | # CONFIG_MTD_SM_COMMON is not set |
877 | # CONFIG_MTD_NAND_DENALI is not set | 933 | # CONFIG_MTD_NAND_DENALI is not set |
878 | # CONFIG_MTD_NAND_GPIO is not set | 934 | # CONFIG_MTD_NAND_GPIO is not set |
879 | CONFIG_MTD_NAND_IDS=y | 935 | CONFIG_MTD_NAND_IDS=y |
936 | # CONFIG_MTD_NAND_RICOH is not set | ||
880 | # CONFIG_MTD_NAND_DISKONCHIP is not set | 937 | # CONFIG_MTD_NAND_DISKONCHIP is not set |
881 | # CONFIG_MTD_NAND_DOCG4 is not set | 938 | # CONFIG_MTD_NAND_DOCG4 is not set |
939 | # CONFIG_MTD_NAND_CAFE is not set | ||
882 | # CONFIG_MTD_NAND_NANDSIM is not set | 940 | # CONFIG_MTD_NAND_NANDSIM is not set |
883 | CONFIG_MTD_NAND_GPMI_NAND=y | 941 | CONFIG_MTD_NAND_GPMI_NAND=y |
884 | # CONFIG_MTD_NAND_PLATFORM is not set | 942 | # CONFIG_MTD_NAND_PLATFORM is not set |
885 | # CONFIG_MTD_ALAUDA is not set | 943 | # CONFIG_MTD_ALAUDA is not set |
886 | CONFIG_MTD_NAND_MXC=y | 944 | CONFIG_MTD_NAND_MXC=y |
887 | # CONFIG_MTD_ONENAND is not set | 945 | # CONFIG_MTD_ONENAND is not set |
888 | 946 | ||
889 | # | 947 | # |
890 | # LPDDR flash memory drivers | 948 | # LPDDR flash memory drivers |
891 | # | 949 | # |
892 | # CONFIG_MTD_LPDDR is not set | 950 | # CONFIG_MTD_LPDDR is not set |
893 | CONFIG_MTD_SPI_NOR_BASE=y | 951 | CONFIG_MTD_SPI_NOR_BASE=y |
894 | CONFIG_SPI_FSL_QUADSPI=y | 952 | CONFIG_SPI_FSL_QUADSPI=y |
895 | CONFIG_MTD_UBI=y | 953 | CONFIG_MTD_UBI=y |
896 | CONFIG_MTD_UBI_WL_THRESHOLD=4096 | 954 | CONFIG_MTD_UBI_WL_THRESHOLD=4096 |
897 | CONFIG_MTD_UBI_BEB_LIMIT=20 | 955 | CONFIG_MTD_UBI_BEB_LIMIT=20 |
898 | # CONFIG_MTD_UBI_FASTMAP is not set | 956 | # CONFIG_MTD_UBI_FASTMAP is not set |
899 | # CONFIG_MTD_UBI_GLUEBI is not set | 957 | # CONFIG_MTD_UBI_GLUEBI is not set |
900 | CONFIG_DTC=y | 958 | CONFIG_DTC=y |
901 | CONFIG_OF=y | 959 | CONFIG_OF=y |
902 | 960 | ||
903 | # | 961 | # |
904 | # Device Tree and Open Firmware support | 962 | # Device Tree and Open Firmware support |
905 | # | 963 | # |
906 | # CONFIG_PROC_DEVICETREE is not set | 964 | # CONFIG_PROC_DEVICETREE is not set |
907 | # CONFIG_OF_SELFTEST is not set | 965 | # CONFIG_OF_SELFTEST is not set |
908 | CONFIG_OF_FLATTREE=y | 966 | CONFIG_OF_FLATTREE=y |
909 | CONFIG_OF_EARLY_FLATTREE=y | 967 | CONFIG_OF_EARLY_FLATTREE=y |
910 | CONFIG_OF_ADDRESS=y | 968 | CONFIG_OF_ADDRESS=y |
911 | CONFIG_OF_IRQ=y | 969 | CONFIG_OF_IRQ=y |
912 | CONFIG_OF_DEVICE=y | 970 | CONFIG_OF_DEVICE=y |
913 | CONFIG_OF_I2C=y | 971 | CONFIG_OF_I2C=y |
914 | CONFIG_OF_NET=y | 972 | CONFIG_OF_NET=y |
915 | CONFIG_OF_MDIO=y | 973 | CONFIG_OF_MDIO=y |
974 | CONFIG_OF_PCI=y | ||
975 | CONFIG_OF_PCI_IRQ=y | ||
916 | CONFIG_OF_MTD=y | 976 | CONFIG_OF_MTD=y |
917 | # CONFIG_PARPORT is not set | 977 | # CONFIG_PARPORT is not set |
918 | CONFIG_BLK_DEV=y | 978 | CONFIG_BLK_DEV=y |
979 | # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set | ||
980 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
981 | # CONFIG_BLK_DEV_DAC960 is not set | ||
982 | # CONFIG_BLK_DEV_UMEM is not set | ||
919 | # CONFIG_BLK_DEV_COW_COMMON is not set | 983 | # CONFIG_BLK_DEV_COW_COMMON is not set |
920 | CONFIG_BLK_DEV_LOOP=y | 984 | CONFIG_BLK_DEV_LOOP=y |
921 | CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 | 985 | CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 |
922 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 986 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
923 | # CONFIG_BLK_DEV_DRBD is not set | 987 | # CONFIG_BLK_DEV_DRBD is not set |
924 | # CONFIG_BLK_DEV_NBD is not set | 988 | # CONFIG_BLK_DEV_NBD is not set |
989 | # CONFIG_BLK_DEV_NVME is not set | ||
990 | # CONFIG_BLK_DEV_SX8 is not set | ||
925 | CONFIG_BLK_DEV_RAM=y | 991 | CONFIG_BLK_DEV_RAM=y |
926 | CONFIG_BLK_DEV_RAM_COUNT=16 | 992 | CONFIG_BLK_DEV_RAM_COUNT=16 |
927 | CONFIG_BLK_DEV_RAM_SIZE=65536 | 993 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
928 | # CONFIG_BLK_DEV_XIP is not set | 994 | # CONFIG_BLK_DEV_XIP is not set |
929 | # CONFIG_CDROM_PKTCDVD is not set | 995 | # CONFIG_CDROM_PKTCDVD is not set |
930 | # CONFIG_ATA_OVER_ETH is not set | 996 | # CONFIG_ATA_OVER_ETH is not set |
931 | # CONFIG_MG_DISK is not set | 997 | # CONFIG_MG_DISK is not set |
932 | # CONFIG_BLK_DEV_RBD is not set | 998 | # CONFIG_BLK_DEV_RBD is not set |
999 | # CONFIG_BLK_DEV_RSXX is not set | ||
933 | 1000 | ||
934 | # | 1001 | # |
935 | # Misc devices | 1002 | # Misc devices |
936 | # | 1003 | # |
937 | # CONFIG_SENSORS_LIS3LV02D is not set | 1004 | # CONFIG_SENSORS_LIS3LV02D is not set |
938 | # CONFIG_AD525X_DPOT is not set | 1005 | # CONFIG_AD525X_DPOT is not set |
939 | # CONFIG_ATMEL_PWM is not set | 1006 | # CONFIG_ATMEL_PWM is not set |
940 | # CONFIG_DUMMY_IRQ is not set | 1007 | # CONFIG_DUMMY_IRQ is not set |
1008 | # CONFIG_PHANTOM is not set | ||
1009 | # CONFIG_INTEL_MID_PTI is not set | ||
1010 | # CONFIG_SGI_IOC4 is not set | ||
1011 | # CONFIG_TIFM_CORE is not set | ||
941 | # CONFIG_ICS932S401 is not set | 1012 | # CONFIG_ICS932S401 is not set |
942 | # CONFIG_ATMEL_SSC is not set | 1013 | # CONFIG_ATMEL_SSC is not set |
943 | # CONFIG_ENCLOSURE_SERVICES is not set | 1014 | # CONFIG_ENCLOSURE_SERVICES is not set |
1015 | # CONFIG_HP_ILO is not set | ||
944 | # CONFIG_APDS9802ALS is not set | 1016 | # CONFIG_APDS9802ALS is not set |
945 | # CONFIG_ISL29003 is not set | 1017 | # CONFIG_ISL29003 is not set |
946 | # CONFIG_ISL29020 is not set | 1018 | # CONFIG_ISL29020 is not set |
947 | # CONFIG_SENSORS_TSL2550 is not set | 1019 | # CONFIG_SENSORS_TSL2550 is not set |
948 | # CONFIG_SENSORS_BH1780 is not set | 1020 | # CONFIG_SENSORS_BH1780 is not set |
949 | # CONFIG_SENSORS_BH1770 is not set | 1021 | # CONFIG_SENSORS_BH1770 is not set |
950 | # CONFIG_SENSORS_APDS990X is not set | 1022 | # CONFIG_SENSORS_APDS990X is not set |
951 | # CONFIG_HMC6352 is not set | 1023 | # CONFIG_HMC6352 is not set |
952 | # CONFIG_DS1682 is not set | 1024 | # CONFIG_DS1682 is not set |
953 | # CONFIG_TI_DAC7512 is not set | 1025 | # CONFIG_TI_DAC7512 is not set |
954 | # CONFIG_BMP085_I2C is not set | 1026 | # CONFIG_BMP085_I2C is not set |
955 | # CONFIG_BMP085_SPI is not set | 1027 | # CONFIG_BMP085_SPI is not set |
1028 | # CONFIG_PCH_PHUB is not set | ||
956 | # CONFIG_USB_SWITCH_FSA9480 is not set | 1029 | # CONFIG_USB_SWITCH_FSA9480 is not set |
957 | # CONFIG_LATTICE_ECP3_CONFIG is not set | 1030 | # CONFIG_LATTICE_ECP3_CONFIG is not set |
958 | CONFIG_SRAM=y | 1031 | CONFIG_SRAM=y |
959 | # CONFIG_C2PORT is not set | 1032 | # CONFIG_C2PORT is not set |
960 | 1033 | ||
961 | # | 1034 | # |
962 | # EEPROM support | 1035 | # EEPROM support |
963 | # | 1036 | # |
964 | CONFIG_EEPROM_AT24=y | 1037 | CONFIG_EEPROM_AT24=y |
965 | # CONFIG_EEPROM_AT25 is not set | 1038 | # CONFIG_EEPROM_AT25 is not set |
966 | # CONFIG_EEPROM_LEGACY is not set | 1039 | # CONFIG_EEPROM_LEGACY is not set |
967 | # CONFIG_EEPROM_MAX6875 is not set | 1040 | # CONFIG_EEPROM_MAX6875 is not set |
968 | # CONFIG_EEPROM_93CX6 is not set | 1041 | # CONFIG_EEPROM_93CX6 is not set |
969 | # CONFIG_EEPROM_93XX46 is not set | 1042 | # CONFIG_EEPROM_93XX46 is not set |
1043 | # CONFIG_CB710_CORE is not set | ||
970 | 1044 | ||
971 | # | 1045 | # |
972 | # Texas Instruments shared transport line discipline | 1046 | # Texas Instruments shared transport line discipline |
973 | # | 1047 | # |
974 | # CONFIG_TI_ST is not set | 1048 | # CONFIG_TI_ST is not set |
975 | # CONFIG_SENSORS_LIS3_SPI is not set | 1049 | # CONFIG_SENSORS_LIS3_SPI is not set |
976 | # CONFIG_SENSORS_LIS3_I2C is not set | 1050 | # CONFIG_SENSORS_LIS3_I2C is not set |
977 | 1051 | ||
978 | # | 1052 | # |
979 | # Altera FPGA firmware download module | 1053 | # Altera FPGA firmware download module |
980 | # | 1054 | # |
981 | # CONFIG_ALTERA_STAPL is not set | 1055 | # CONFIG_ALTERA_STAPL is not set |
1056 | CONFIG_HAVE_IDE=y | ||
1057 | # CONFIG_IDE is not set | ||
982 | 1058 | ||
983 | # | 1059 | # |
984 | # SCSI device support | 1060 | # SCSI device support |
985 | # | 1061 | # |
986 | CONFIG_SCSI_MOD=y | 1062 | CONFIG_SCSI_MOD=y |
987 | # CONFIG_RAID_ATTRS is not set | 1063 | # CONFIG_RAID_ATTRS is not set |
988 | CONFIG_SCSI=y | 1064 | CONFIG_SCSI=y |
989 | CONFIG_SCSI_DMA=y | 1065 | CONFIG_SCSI_DMA=y |
990 | # CONFIG_SCSI_TGT is not set | 1066 | # CONFIG_SCSI_TGT is not set |
991 | # CONFIG_SCSI_NETLINK is not set | 1067 | # CONFIG_SCSI_NETLINK is not set |
992 | # CONFIG_SCSI_PROC_FS is not set | 1068 | # CONFIG_SCSI_PROC_FS is not set |
993 | 1069 | ||
994 | # | 1070 | # |
995 | # SCSI support type (disk, tape, CD-ROM) | 1071 | # SCSI support type (disk, tape, CD-ROM) |
996 | # | 1072 | # |
997 | CONFIG_BLK_DEV_SD=y | 1073 | CONFIG_BLK_DEV_SD=y |
998 | # CONFIG_CHR_DEV_ST is not set | 1074 | # CONFIG_CHR_DEV_ST is not set |
999 | # CONFIG_CHR_DEV_OSST is not set | 1075 | # CONFIG_CHR_DEV_OSST is not set |
1000 | # CONFIG_BLK_DEV_SR is not set | 1076 | # CONFIG_BLK_DEV_SR is not set |
1001 | # CONFIG_CHR_DEV_SG is not set | 1077 | # CONFIG_CHR_DEV_SG is not set |
1002 | # CONFIG_CHR_DEV_SCH is not set | 1078 | # CONFIG_CHR_DEV_SCH is not set |
1003 | CONFIG_SCSI_MULTI_LUN=y | 1079 | CONFIG_SCSI_MULTI_LUN=y |
1004 | CONFIG_SCSI_CONSTANTS=y | 1080 | CONFIG_SCSI_CONSTANTS=y |
1005 | CONFIG_SCSI_LOGGING=y | 1081 | CONFIG_SCSI_LOGGING=y |
1006 | CONFIG_SCSI_SCAN_ASYNC=y | 1082 | CONFIG_SCSI_SCAN_ASYNC=y |
1007 | 1083 | ||
1008 | # | 1084 | # |
1009 | # SCSI Transports | 1085 | # SCSI Transports |
1010 | # | 1086 | # |
1011 | # CONFIG_SCSI_SPI_ATTRS is not set | 1087 | # CONFIG_SCSI_SPI_ATTRS is not set |
1012 | # CONFIG_SCSI_FC_ATTRS is not set | 1088 | # CONFIG_SCSI_FC_ATTRS is not set |
1013 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 1089 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
1014 | # CONFIG_SCSI_SAS_ATTRS is not set | 1090 | # CONFIG_SCSI_SAS_ATTRS is not set |
1015 | # CONFIG_SCSI_SAS_LIBSAS is not set | 1091 | # CONFIG_SCSI_SAS_LIBSAS is not set |
1016 | # CONFIG_SCSI_SRP_ATTRS is not set | 1092 | # CONFIG_SCSI_SRP_ATTRS is not set |
1017 | # CONFIG_SCSI_LOWLEVEL is not set | 1093 | # CONFIG_SCSI_LOWLEVEL is not set |
1018 | # CONFIG_SCSI_DH is not set | 1094 | # CONFIG_SCSI_DH is not set |
1019 | # CONFIG_SCSI_OSD_INITIATOR is not set | 1095 | # CONFIG_SCSI_OSD_INITIATOR is not set |
1020 | CONFIG_ATA=y | 1096 | CONFIG_ATA=y |
1021 | # CONFIG_ATA_NONSTANDARD is not set | 1097 | # CONFIG_ATA_NONSTANDARD is not set |
1022 | CONFIG_ATA_VERBOSE_ERROR=y | 1098 | CONFIG_ATA_VERBOSE_ERROR=y |
1023 | CONFIG_SATA_PMP=y | 1099 | CONFIG_SATA_PMP=y |
1024 | 1100 | ||
1025 | # | 1101 | # |
1026 | # Controllers with non-SFF native interface | 1102 | # Controllers with non-SFF native interface |
1027 | # | 1103 | # |
1104 | # CONFIG_SATA_AHCI is not set | ||
1028 | CONFIG_SATA_AHCI_PLATFORM=y | 1105 | CONFIG_SATA_AHCI_PLATFORM=y |
1029 | CONFIG_AHCI_IMX=y | 1106 | CONFIG_AHCI_IMX=y |
1107 | # CONFIG_SATA_INIC162X is not set | ||
1108 | # CONFIG_SATA_ACARD_AHCI is not set | ||
1109 | # CONFIG_SATA_SIL24 is not set | ||
1030 | CONFIG_ATA_SFF=y | 1110 | CONFIG_ATA_SFF=y |
1031 | 1111 | ||
1032 | # | 1112 | # |
1033 | # SFF controllers with custom DMA interface | 1113 | # SFF controllers with custom DMA interface |
1034 | # | 1114 | # |
1115 | # CONFIG_PDC_ADMA is not set | ||
1116 | # CONFIG_SATA_QSTOR is not set | ||
1117 | # CONFIG_SATA_SX4 is not set | ||
1035 | CONFIG_ATA_BMDMA=y | 1118 | CONFIG_ATA_BMDMA=y |
1036 | 1119 | ||
1037 | # | 1120 | # |
1038 | # SATA SFF controllers with BMDMA | 1121 | # SATA SFF controllers with BMDMA |
1039 | # | 1122 | # |
1123 | # CONFIG_ATA_PIIX is not set | ||
1040 | # CONFIG_SATA_HIGHBANK is not set | 1124 | # CONFIG_SATA_HIGHBANK is not set |
1041 | # CONFIG_SATA_MV is not set | 1125 | # CONFIG_SATA_MV is not set |
1126 | # CONFIG_SATA_NV is not set | ||
1127 | # CONFIG_SATA_PROMISE is not set | ||
1128 | # CONFIG_SATA_SIL is not set | ||
1129 | # CONFIG_SATA_SIS is not set | ||
1130 | # CONFIG_SATA_SVW is not set | ||
1131 | # CONFIG_SATA_ULI is not set | ||
1132 | # CONFIG_SATA_VIA is not set | ||
1133 | # CONFIG_SATA_VITESSE is not set | ||
1042 | 1134 | ||
1043 | # | 1135 | # |
1044 | # PATA SFF controllers with BMDMA | 1136 | # PATA SFF controllers with BMDMA |
1045 | # | 1137 | # |
1138 | # CONFIG_PATA_ALI is not set | ||
1139 | # CONFIG_PATA_AMD is not set | ||
1046 | # CONFIG_PATA_ARASAN_CF is not set | 1140 | # CONFIG_PATA_ARASAN_CF is not set |
1141 | # CONFIG_PATA_ARTOP is not set | ||
1142 | # CONFIG_PATA_ATIIXP is not set | ||
1143 | # CONFIG_PATA_ATP867X is not set | ||
1144 | # CONFIG_PATA_CMD64X is not set | ||
1145 | # CONFIG_PATA_CS5520 is not set | ||
1146 | # CONFIG_PATA_CS5530 is not set | ||
1147 | # CONFIG_PATA_CS5536 is not set | ||
1148 | # CONFIG_PATA_CYPRESS is not set | ||
1149 | # CONFIG_PATA_EFAR is not set | ||
1150 | # CONFIG_PATA_HPT366 is not set | ||
1151 | # CONFIG_PATA_HPT37X is not set | ||
1152 | # CONFIG_PATA_HPT3X2N is not set | ||
1153 | # CONFIG_PATA_HPT3X3 is not set | ||
1047 | CONFIG_PATA_IMX=y | 1154 | CONFIG_PATA_IMX=y |
1155 | # CONFIG_PATA_IT8213 is not set | ||
1156 | # CONFIG_PATA_IT821X is not set | ||
1157 | # CONFIG_PATA_JMICRON is not set | ||
1158 | # CONFIG_PATA_MARVELL is not set | ||
1159 | # CONFIG_PATA_NETCELL is not set | ||
1160 | # CONFIG_PATA_NINJA32 is not set | ||
1161 | # CONFIG_PATA_NS87415 is not set | ||
1162 | # CONFIG_PATA_OLDPIIX is not set | ||
1163 | # CONFIG_PATA_OPTIDMA is not set | ||
1164 | # CONFIG_PATA_PDC2027X is not set | ||
1165 | # CONFIG_PATA_PDC_OLD is not set | ||
1166 | # CONFIG_PATA_RADISYS is not set | ||
1167 | # CONFIG_PATA_RDC is not set | ||
1168 | # CONFIG_PATA_SC1200 is not set | ||
1169 | # CONFIG_PATA_SCH is not set | ||
1170 | # CONFIG_PATA_SERVERWORKS is not set | ||
1171 | # CONFIG_PATA_SIL680 is not set | ||
1172 | # CONFIG_PATA_SIS is not set | ||
1173 | # CONFIG_PATA_TOSHIBA is not set | ||
1174 | # CONFIG_PATA_TRIFLEX is not set | ||
1175 | # CONFIG_PATA_VIA is not set | ||
1176 | # CONFIG_PATA_WINBOND is not set | ||
1048 | 1177 | ||
1049 | # | 1178 | # |
1050 | # PIO-only SFF controllers | 1179 | # PIO-only SFF controllers |
1051 | # | 1180 | # |
1181 | # CONFIG_PATA_CMD640_PCI is not set | ||
1182 | # CONFIG_PATA_MPIIX is not set | ||
1183 | # CONFIG_PATA_NS87410 is not set | ||
1184 | # CONFIG_PATA_OPTI is not set | ||
1052 | # CONFIG_PATA_PLATFORM is not set | 1185 | # CONFIG_PATA_PLATFORM is not set |
1186 | # CONFIG_PATA_RZ1000 is not set | ||
1053 | 1187 | ||
1054 | # | 1188 | # |
1055 | # Generic fallback / legacy drivers | 1189 | # Generic fallback / legacy drivers |
1056 | # | 1190 | # |
1191 | # CONFIG_ATA_GENERIC is not set | ||
1192 | # CONFIG_PATA_LEGACY is not set | ||
1057 | # CONFIG_MD is not set | 1193 | # CONFIG_MD is not set |
1058 | # CONFIG_TARGET_CORE is not set | 1194 | # CONFIG_TARGET_CORE is not set |
1195 | # CONFIG_FUSION is not set | ||
1196 | |||
1197 | # | ||
1198 | # IEEE 1394 (FireWire) support | ||
1199 | # | ||
1200 | # CONFIG_FIREWIRE is not set | ||
1201 | # CONFIG_FIREWIRE_NOSY is not set | ||
1202 | # CONFIG_I2O is not set | ||
1059 | CONFIG_NETDEVICES=y | 1203 | CONFIG_NETDEVICES=y |
1060 | CONFIG_NET_CORE=y | 1204 | CONFIG_NET_CORE=y |
1061 | # CONFIG_BONDING is not set | 1205 | # CONFIG_BONDING is not set |
1062 | # CONFIG_DUMMY is not set | 1206 | # CONFIG_DUMMY is not set |
1063 | # CONFIG_EQUALIZER is not set | 1207 | # CONFIG_EQUALIZER is not set |
1208 | # CONFIG_NET_FC is not set | ||
1064 | CONFIG_MII=y | 1209 | CONFIG_MII=y |
1065 | # CONFIG_NET_TEAM is not set | 1210 | # CONFIG_NET_TEAM is not set |
1066 | # CONFIG_MACVLAN is not set | 1211 | # CONFIG_MACVLAN is not set |
1067 | # CONFIG_VXLAN is not set | 1212 | # CONFIG_VXLAN is not set |
1068 | # CONFIG_NETCONSOLE is not set | 1213 | # CONFIG_NETCONSOLE is not set |
1069 | # CONFIG_NETPOLL is not set | 1214 | # CONFIG_NETPOLL is not set |
1070 | # CONFIG_NET_POLL_CONTROLLER is not set | 1215 | # CONFIG_NET_POLL_CONTROLLER is not set |
1071 | # CONFIG_TUN is not set | 1216 | # CONFIG_TUN is not set |
1072 | # CONFIG_VETH is not set | 1217 | # CONFIG_VETH is not set |
1218 | # CONFIG_ARCNET is not set | ||
1073 | 1219 | ||
1074 | # | 1220 | # |
1075 | # CAIF transport drivers | 1221 | # CAIF transport drivers |
1076 | # | 1222 | # |
1077 | 1223 | ||
1078 | # | 1224 | # |
1079 | # Distributed Switch Architecture drivers | 1225 | # Distributed Switch Architecture drivers |
1080 | # | 1226 | # |
1081 | # CONFIG_NET_DSA_MV88E6XXX is not set | 1227 | # CONFIG_NET_DSA_MV88E6XXX is not set |
1082 | # CONFIG_NET_DSA_MV88E6060 is not set | 1228 | # CONFIG_NET_DSA_MV88E6060 is not set |
1083 | # CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set | 1229 | # CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set |
1084 | # CONFIG_NET_DSA_MV88E6131 is not set | 1230 | # CONFIG_NET_DSA_MV88E6131 is not set |
1085 | # CONFIG_NET_DSA_MV88E6123_61_65 is not set | 1231 | # CONFIG_NET_DSA_MV88E6123_61_65 is not set |
1086 | CONFIG_ETHERNET=y | 1232 | CONFIG_ETHERNET=y |
1233 | CONFIG_NET_VENDOR_3COM=y | ||
1234 | # CONFIG_VORTEX is not set | ||
1235 | # CONFIG_TYPHOON is not set | ||
1236 | CONFIG_NET_VENDOR_ADAPTEC=y | ||
1237 | # CONFIG_ADAPTEC_STARFIRE is not set | ||
1238 | CONFIG_NET_VENDOR_ALTEON=y | ||
1239 | # CONFIG_ACENIC is not set | ||
1240 | CONFIG_NET_VENDOR_AMD=y | ||
1241 | # CONFIG_AMD8111_ETH is not set | ||
1242 | # CONFIG_PCNET32 is not set | ||
1243 | CONFIG_NET_VENDOR_ATHEROS=y | ||
1244 | # CONFIG_ATL2 is not set | ||
1245 | # CONFIG_ATL1 is not set | ||
1246 | # CONFIG_ATL1E is not set | ||
1247 | # CONFIG_ATL1C is not set | ||
1248 | # CONFIG_ALX is not set | ||
1087 | CONFIG_NET_CADENCE=y | 1249 | CONFIG_NET_CADENCE=y |
1088 | # CONFIG_ARM_AT91_ETHER is not set | 1250 | # CONFIG_ARM_AT91_ETHER is not set |
1089 | # CONFIG_MACB is not set | 1251 | # CONFIG_MACB is not set |
1090 | # CONFIG_NET_VENDOR_BROADCOM is not set | 1252 | # CONFIG_NET_VENDOR_BROADCOM is not set |
1253 | CONFIG_NET_VENDOR_BROCADE=y | ||
1254 | # CONFIG_BNA is not set | ||
1091 | # CONFIG_NET_CALXEDA_XGMAC is not set | 1255 | # CONFIG_NET_CALXEDA_XGMAC is not set |
1256 | CONFIG_NET_VENDOR_CHELSIO=y | ||
1257 | # CONFIG_CHELSIO_T1 is not set | ||
1258 | # CONFIG_CHELSIO_T3 is not set | ||
1259 | # CONFIG_CHELSIO_T4 is not set | ||
1260 | # CONFIG_CHELSIO_T4VF is not set | ||
1092 | # CONFIG_NET_VENDOR_CIRRUS is not set | 1261 | # CONFIG_NET_VENDOR_CIRRUS is not set |
1262 | CONFIG_NET_VENDOR_CISCO=y | ||
1263 | # CONFIG_ENIC is not set | ||
1093 | # CONFIG_DM9000 is not set | 1264 | # CONFIG_DM9000 is not set |
1094 | # CONFIG_DNET is not set | 1265 | # CONFIG_DNET is not set |
1266 | CONFIG_NET_VENDOR_DEC=y | ||
1267 | # CONFIG_NET_TULIP is not set | ||
1268 | CONFIG_NET_VENDOR_DLINK=y | ||
1269 | # CONFIG_DL2K is not set | ||
1270 | # CONFIG_SUNDANCE is not set | ||
1271 | CONFIG_NET_VENDOR_EMULEX=y | ||
1272 | # CONFIG_BE2NET is not set | ||
1273 | CONFIG_NET_VENDOR_EXAR=y | ||
1274 | # CONFIG_S2IO is not set | ||
1275 | # CONFIG_VXGE is not set | ||
1095 | # CONFIG_NET_VENDOR_FARADAY is not set | 1276 | # CONFIG_NET_VENDOR_FARADAY is not set |
1096 | CONFIG_NET_VENDOR_FREESCALE=y | 1277 | CONFIG_NET_VENDOR_FREESCALE=y |
1097 | CONFIG_FEC=y | 1278 | CONFIG_FEC=y |
1279 | CONFIG_NET_VENDOR_HP=y | ||
1280 | # CONFIG_HP100 is not set | ||
1098 | # CONFIG_NET_VENDOR_INTEL is not set | 1281 | # CONFIG_NET_VENDOR_INTEL is not set |
1282 | # CONFIG_IP1000 is not set | ||
1283 | # CONFIG_JME is not set | ||
1099 | # CONFIG_NET_VENDOR_MARVELL is not set | 1284 | # CONFIG_NET_VENDOR_MARVELL is not set |
1285 | CONFIG_NET_VENDOR_MELLANOX=y | ||
1286 | # CONFIG_MLX4_EN is not set | ||
1287 | # CONFIG_MLX4_CORE is not set | ||
1100 | # CONFIG_NET_VENDOR_MICREL is not set | 1288 | # CONFIG_NET_VENDOR_MICREL is not set |
1101 | # CONFIG_NET_VENDOR_MICROCHIP is not set | 1289 | # CONFIG_NET_VENDOR_MICROCHIP is not set |
1290 | CONFIG_NET_VENDOR_MYRI=y | ||
1291 | # CONFIG_MYRI10GE is not set | ||
1292 | # CONFIG_FEALNX is not set | ||
1102 | # CONFIG_NET_VENDOR_NATSEMI is not set | 1293 | # CONFIG_NET_VENDOR_NATSEMI is not set |
1294 | CONFIG_NET_VENDOR_NVIDIA=y | ||
1295 | # CONFIG_FORCEDETH is not set | ||
1296 | CONFIG_NET_VENDOR_OKI=y | ||
1297 | # CONFIG_PCH_GBE is not set | ||
1103 | # CONFIG_ETHOC is not set | 1298 | # CONFIG_ETHOC is not set |
1299 | CONFIG_NET_PACKET_ENGINE=y | ||
1300 | # CONFIG_HAMACHI is not set | ||
1301 | # CONFIG_YELLOWFIN is not set | ||
1302 | CONFIG_NET_VENDOR_QLOGIC=y | ||
1303 | # CONFIG_QLA3XXX is not set | ||
1304 | # CONFIG_QLCNIC is not set | ||
1305 | # CONFIG_QLGE is not set | ||
1306 | # CONFIG_NETXEN_NIC is not set | ||
1307 | CONFIG_NET_VENDOR_REALTEK=y | ||
1308 | # CONFIG_8139CP is not set | ||
1309 | CONFIG_8139TOO=y | ||
1310 | CONFIG_8139TOO_PIO=y | ||
1311 | # CONFIG_8139TOO_TUNE_TWISTER is not set | ||
1312 | # CONFIG_8139TOO_8129 is not set | ||
1313 | # CONFIG_8139_OLD_RX_RESET is not set | ||
1314 | CONFIG_R8169=y | ||
1315 | CONFIG_NET_VENDOR_RDC=y | ||
1316 | # CONFIG_R6040 is not set | ||
1104 | # CONFIG_NET_VENDOR_SEEQ is not set | 1317 | # CONFIG_NET_VENDOR_SEEQ is not set |
1318 | CONFIG_NET_VENDOR_SILAN=y | ||
1319 | # CONFIG_SC92031 is not set | ||
1320 | CONFIG_NET_VENDOR_SIS=y | ||
1321 | # CONFIG_SIS900 is not set | ||
1322 | # CONFIG_SIS190 is not set | ||
1323 | # CONFIG_SFC is not set | ||
1105 | # CONFIG_NET_VENDOR_SMSC is not set | 1324 | # CONFIG_NET_VENDOR_SMSC is not set |
1106 | # CONFIG_NET_VENDOR_STMICRO is not set | 1325 | # CONFIG_NET_VENDOR_STMICRO is not set |
1326 | CONFIG_NET_VENDOR_SUN=y | ||
1327 | # CONFIG_HAPPYMEAL is not set | ||
1328 | # CONFIG_SUNGEM is not set | ||
1329 | # CONFIG_CASSINI is not set | ||
1330 | # CONFIG_NIU is not set | ||
1331 | CONFIG_NET_VENDOR_TEHUTI=y | ||
1332 | # CONFIG_TEHUTI is not set | ||
1333 | CONFIG_NET_VENDOR_TI=y | ||
1334 | # CONFIG_TLAN is not set | ||
1335 | CONFIG_NET_VENDOR_VIA=y | ||
1336 | # CONFIG_VIA_RHINE is not set | ||
1337 | # CONFIG_VIA_VELOCITY is not set | ||
1107 | # CONFIG_NET_VENDOR_WIZNET is not set | 1338 | # CONFIG_NET_VENDOR_WIZNET is not set |
1339 | # CONFIG_FDDI is not set | ||
1340 | # CONFIG_HIPPI is not set | ||
1108 | CONFIG_PHYLIB=y | 1341 | CONFIG_PHYLIB=y |
1109 | 1342 | ||
1110 | # | 1343 | # |
1111 | # MII PHY device drivers | 1344 | # MII PHY device drivers |
1112 | # | 1345 | # |
1113 | CONFIG_AT803X_PHY=y | 1346 | CONFIG_AT803X_PHY=y |
1114 | # CONFIG_AMD_PHY is not set | 1347 | # CONFIG_AMD_PHY is not set |
1115 | # CONFIG_MARVELL_PHY is not set | 1348 | # CONFIG_MARVELL_PHY is not set |
1116 | # CONFIG_DAVICOM_PHY is not set | 1349 | # CONFIG_DAVICOM_PHY is not set |
1117 | # CONFIG_QSEMI_PHY is not set | 1350 | # CONFIG_QSEMI_PHY is not set |
1118 | # CONFIG_LXT_PHY is not set | 1351 | # CONFIG_LXT_PHY is not set |
1119 | # CONFIG_CICADA_PHY is not set | 1352 | # CONFIG_CICADA_PHY is not set |
1120 | # CONFIG_VITESSE_PHY is not set | 1353 | # CONFIG_VITESSE_PHY is not set |
1121 | # CONFIG_SMSC_PHY is not set | 1354 | # CONFIG_SMSC_PHY is not set |
1122 | # CONFIG_BROADCOM_PHY is not set | 1355 | # CONFIG_BROADCOM_PHY is not set |
1123 | # CONFIG_BCM87XX_PHY is not set | 1356 | # CONFIG_BCM87XX_PHY is not set |
1124 | # CONFIG_ICPLUS_PHY is not set | 1357 | # CONFIG_ICPLUS_PHY is not set |
1125 | # CONFIG_REALTEK_PHY is not set | 1358 | # CONFIG_REALTEK_PHY is not set |
1126 | # CONFIG_NATIONAL_PHY is not set | 1359 | # CONFIG_NATIONAL_PHY is not set |
1127 | # CONFIG_STE10XP is not set | 1360 | # CONFIG_STE10XP is not set |
1128 | # CONFIG_LSI_ET1011C_PHY is not set | 1361 | # CONFIG_LSI_ET1011C_PHY is not set |
1129 | # CONFIG_MICREL_PHY is not set | 1362 | # CONFIG_MICREL_PHY is not set |
1130 | # CONFIG_FIXED_PHY is not set | 1363 | # CONFIG_FIXED_PHY is not set |
1131 | # CONFIG_MDIO_BITBANG is not set | 1364 | # CONFIG_MDIO_BITBANG is not set |
1132 | # CONFIG_MDIO_BUS_MUX_GPIO is not set | 1365 | # CONFIG_MDIO_BUS_MUX_GPIO is not set |
1133 | # CONFIG_MDIO_BUS_MUX_MMIOREG is not set | 1366 | # CONFIG_MDIO_BUS_MUX_MMIOREG is not set |
1134 | # CONFIG_MICREL_KS8995MA is not set | 1367 | # CONFIG_MICREL_KS8995MA is not set |
1135 | # CONFIG_PPP is not set | 1368 | # CONFIG_PPP is not set |
1136 | # CONFIG_SLIP is not set | 1369 | # CONFIG_SLIP is not set |
1137 | 1370 | ||
1138 | # | 1371 | # |
1139 | # USB Network Adapters | 1372 | # USB Network Adapters |
1140 | # | 1373 | # |
1141 | # CONFIG_USB_CATC is not set | 1374 | # CONFIG_USB_CATC is not set |
1142 | # CONFIG_USB_KAWETH is not set | 1375 | # CONFIG_USB_KAWETH is not set |
1143 | CONFIG_USB_PEGASUS=m | 1376 | CONFIG_USB_PEGASUS=m |
1144 | CONFIG_USB_RTL8150=m | 1377 | CONFIG_USB_RTL8150=m |
1145 | CONFIG_USB_RTL8152=m | 1378 | CONFIG_USB_RTL8152=m |
1146 | CONFIG_USB_USBNET=m | 1379 | CONFIG_USB_USBNET=m |
1147 | CONFIG_USB_NET_AX8817X=m | 1380 | CONFIG_USB_NET_AX8817X=m |
1148 | CONFIG_USB_NET_AX88179_178A=m | 1381 | CONFIG_USB_NET_AX88179_178A=m |
1149 | CONFIG_USB_NET_CDCETHER=m | 1382 | CONFIG_USB_NET_CDCETHER=m |
1150 | CONFIG_USB_NET_CDC_EEM=m | 1383 | CONFIG_USB_NET_CDC_EEM=m |
1151 | CONFIG_USB_NET_CDC_NCM=m | 1384 | CONFIG_USB_NET_CDC_NCM=m |
1152 | # CONFIG_USB_NET_CDC_MBIM is not set | 1385 | # CONFIG_USB_NET_CDC_MBIM is not set |
1153 | # CONFIG_USB_NET_DM9601 is not set | 1386 | # CONFIG_USB_NET_DM9601 is not set |
1154 | # CONFIG_USB_NET_SMSC75XX is not set | 1387 | # CONFIG_USB_NET_SMSC75XX is not set |
1155 | # CONFIG_USB_NET_SMSC95XX is not set | 1388 | # CONFIG_USB_NET_SMSC95XX is not set |
1156 | # CONFIG_USB_NET_GL620A is not set | 1389 | # CONFIG_USB_NET_GL620A is not set |
1157 | CONFIG_USB_NET_NET1080=m | 1390 | CONFIG_USB_NET_NET1080=m |
1158 | # CONFIG_USB_NET_PLUSB is not set | 1391 | # CONFIG_USB_NET_PLUSB is not set |
1159 | # CONFIG_USB_NET_MCS7830 is not set | 1392 | # CONFIG_USB_NET_MCS7830 is not set |
1160 | # CONFIG_USB_NET_RNDIS_HOST is not set | 1393 | # CONFIG_USB_NET_RNDIS_HOST is not set |
1161 | CONFIG_USB_NET_CDC_SUBSET=m | 1394 | CONFIG_USB_NET_CDC_SUBSET=m |
1162 | # CONFIG_USB_ALI_M5632 is not set | 1395 | # CONFIG_USB_ALI_M5632 is not set |
1163 | # CONFIG_USB_AN2720 is not set | 1396 | # CONFIG_USB_AN2720 is not set |
1164 | CONFIG_USB_BELKIN=y | 1397 | CONFIG_USB_BELKIN=y |
1165 | CONFIG_USB_ARMLINUX=y | 1398 | CONFIG_USB_ARMLINUX=y |
1166 | # CONFIG_USB_EPSON2888 is not set | 1399 | # CONFIG_USB_EPSON2888 is not set |
1167 | # CONFIG_USB_KC2190 is not set | 1400 | # CONFIG_USB_KC2190 is not set |
1168 | CONFIG_USB_NET_ZAURUS=m | 1401 | CONFIG_USB_NET_ZAURUS=m |
1169 | # CONFIG_USB_NET_CX82310_ETH is not set | 1402 | # CONFIG_USB_NET_CX82310_ETH is not set |
1170 | # CONFIG_USB_NET_KALMIA is not set | 1403 | # CONFIG_USB_NET_KALMIA is not set |
1171 | # CONFIG_USB_NET_QMI_WWAN is not set | 1404 | # CONFIG_USB_NET_QMI_WWAN is not set |
1172 | # CONFIG_USB_NET_INT51X1 is not set | 1405 | # CONFIG_USB_NET_INT51X1 is not set |
1173 | # CONFIG_USB_IPHETH is not set | 1406 | # CONFIG_USB_IPHETH is not set |
1174 | # CONFIG_USB_SIERRA_NET is not set | 1407 | # CONFIG_USB_SIERRA_NET is not set |
1175 | # CONFIG_USB_VL600 is not set | 1408 | # CONFIG_USB_VL600 is not set |
1176 | CONFIG_WLAN=y | 1409 | CONFIG_WLAN=y |
1177 | # CONFIG_LIBERTAS_THINFIRM is not set | 1410 | # CONFIG_LIBERTAS_THINFIRM is not set |
1411 | # CONFIG_ATMEL is not set | ||
1178 | # CONFIG_AT76C50X_USB is not set | 1412 | # CONFIG_AT76C50X_USB is not set |
1413 | # CONFIG_PRISM54 is not set | ||
1179 | # CONFIG_USB_ZD1201 is not set | 1414 | # CONFIG_USB_ZD1201 is not set |
1180 | # CONFIG_USB_NET_RNDIS_WLAN is not set | 1415 | # CONFIG_USB_NET_RNDIS_WLAN is not set |
1416 | # CONFIG_RTL8180 is not set | ||
1181 | # CONFIG_RTL8187 is not set | 1417 | # CONFIG_RTL8187 is not set |
1418 | # CONFIG_ADM8211 is not set | ||
1182 | # CONFIG_MAC80211_HWSIM is not set | 1419 | # CONFIG_MAC80211_HWSIM is not set |
1420 | # CONFIG_MWL8K is not set | ||
1421 | CONFIG_ATH_COMMON=m | ||
1183 | CONFIG_ATH_CARDS=y | 1422 | CONFIG_ATH_CARDS=y |
1184 | # CONFIG_ATH_DEBUG is not set | 1423 | # CONFIG_ATH_DEBUG is not set |
1185 | # CONFIG_ATH9K is not set | 1424 | # CONFIG_ATH5K is not set |
1425 | # CONFIG_ATH5K_PCI is not set | ||
1426 | CONFIG_ATH9K_HW=m | ||
1427 | CONFIG_ATH9K_COMMON=m | ||
1428 | # CONFIG_ATH9K_BTCOEX_SUPPORT is not set | ||
1429 | CONFIG_ATH9K=m | ||
1430 | CONFIG_ATH9K_PCI=y | ||
1431 | # CONFIG_ATH9K_AHB is not set | ||
1432 | # CONFIG_ATH9K_DEBUGFS is not set | ||
1433 | CONFIG_ATH9K_LEGACY_RATE_CONTROL=y | ||
1186 | # CONFIG_ATH9K_HTC is not set | 1434 | # CONFIG_ATH9K_HTC is not set |
1187 | # CONFIG_CARL9170 is not set | 1435 | # CONFIG_CARL9170 is not set |
1188 | CONFIG_ATH6KL=m | 1436 | # CONFIG_ATH6KL is not set |
1189 | CONFIG_ATH6KL_SDIO=m | ||
1190 | # CONFIG_ATH6KL_USB is not set | ||
1191 | # CONFIG_ATH6KL_DEBUG is not set | ||
1192 | # CONFIG_AR5523 is not set | 1437 | # CONFIG_AR5523 is not set |
1438 | # CONFIG_WIL6210 is not set | ||
1193 | # CONFIG_B43 is not set | 1439 | # CONFIG_B43 is not set |
1194 | # CONFIG_B43LEGACY is not set | 1440 | # CONFIG_B43LEGACY is not set |
1195 | # CONFIG_BRCMFMAC is not set | 1441 | # CONFIG_BRCMFMAC is not set |
1196 | # CONFIG_HOSTAP is not set | 1442 | # CONFIG_HOSTAP is not set |
1443 | # CONFIG_IPW2100 is not set | ||
1444 | # CONFIG_IPW2200 is not set | ||
1445 | # CONFIG_IWLWIFI is not set | ||
1446 | # CONFIG_IWL4965 is not set | ||
1447 | # CONFIG_IWL3945 is not set | ||
1197 | # CONFIG_LIBERTAS is not set | 1448 | # CONFIG_LIBERTAS is not set |
1449 | # CONFIG_HERMES is not set | ||
1198 | # CONFIG_P54_COMMON is not set | 1450 | # CONFIG_P54_COMMON is not set |
1199 | # CONFIG_RT2X00 is not set | 1451 | # CONFIG_RT2X00 is not set |
1200 | # CONFIG_RTLWIFI is not set | 1452 | # CONFIG_RTLWIFI is not set |
1201 | # CONFIG_WL_TI is not set | 1453 | # CONFIG_WL_TI is not set |
1202 | # CONFIG_ZD1211RW is not set | 1454 | # CONFIG_ZD1211RW is not set |
1203 | # CONFIG_MWIFIEX is not set | 1455 | # CONFIG_MWIFIEX is not set |
1204 | 1456 | ||
1205 | # | 1457 | # |
1206 | # Enable WiMAX (Networking options) to see the WiMAX drivers | 1458 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
1207 | # | 1459 | # |
1208 | # CONFIG_WAN is not set | 1460 | # CONFIG_WAN is not set |
1461 | # CONFIG_VMXNET3 is not set | ||
1209 | # CONFIG_ISDN is not set | 1462 | # CONFIG_ISDN is not set |
1210 | 1463 | ||
1211 | # | 1464 | # |
1212 | # Input device support | 1465 | # Input device support |
1213 | # | 1466 | # |
1214 | CONFIG_INPUT=y | 1467 | CONFIG_INPUT=y |
1215 | # CONFIG_INPUT_FF_MEMLESS is not set | 1468 | # CONFIG_INPUT_FF_MEMLESS is not set |
1216 | CONFIG_INPUT_POLLDEV=y | 1469 | CONFIG_INPUT_POLLDEV=y |
1217 | # CONFIG_INPUT_SPARSEKMAP is not set | 1470 | # CONFIG_INPUT_SPARSEKMAP is not set |
1218 | CONFIG_INPUT_MATRIXKMAP=y | 1471 | CONFIG_INPUT_MATRIXKMAP=y |
1219 | 1472 | ||
1220 | # | 1473 | # |
1221 | # Userland interfaces | 1474 | # Userland interfaces |
1222 | # | 1475 | # |
1223 | CONFIG_INPUT_MOUSEDEV=y | 1476 | CONFIG_INPUT_MOUSEDEV=y |
1224 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | 1477 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set |
1225 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 1478 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
1226 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 1479 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
1227 | # CONFIG_INPUT_JOYDEV is not set | 1480 | # CONFIG_INPUT_JOYDEV is not set |
1228 | CONFIG_INPUT_EVDEV=y | 1481 | CONFIG_INPUT_EVDEV=y |
1229 | CONFIG_INPUT_EVBUG=m | 1482 | CONFIG_INPUT_EVBUG=m |
1230 | # CONFIG_INPUT_APMPOWER is not set | 1483 | # CONFIG_INPUT_APMPOWER is not set |
1231 | 1484 | ||
1232 | # | 1485 | # |
1233 | # Input Device Drivers | 1486 | # Input Device Drivers |
1234 | # | 1487 | # |
1235 | CONFIG_INPUT_KEYBOARD=y | 1488 | CONFIG_INPUT_KEYBOARD=y |
1236 | # CONFIG_KEYBOARD_ADP5588 is not set | 1489 | # CONFIG_KEYBOARD_ADP5588 is not set |
1237 | # CONFIG_KEYBOARD_ADP5589 is not set | 1490 | # CONFIG_KEYBOARD_ADP5589 is not set |
1238 | CONFIG_KEYBOARD_ATKBD=y | 1491 | CONFIG_KEYBOARD_ATKBD=y |
1239 | # CONFIG_KEYBOARD_QT1070 is not set | 1492 | # CONFIG_KEYBOARD_QT1070 is not set |
1240 | # CONFIG_KEYBOARD_QT2160 is not set | 1493 | # CONFIG_KEYBOARD_QT2160 is not set |
1241 | # CONFIG_KEYBOARD_LKKBD is not set | 1494 | # CONFIG_KEYBOARD_LKKBD is not set |
1242 | CONFIG_KEYBOARD_GPIO=y | 1495 | CONFIG_KEYBOARD_GPIO=y |
1243 | # CONFIG_KEYBOARD_TCA6416 is not set | 1496 | # CONFIG_KEYBOARD_TCA6416 is not set |
1244 | # CONFIG_KEYBOARD_TCA8418 is not set | 1497 | # CONFIG_KEYBOARD_TCA8418 is not set |
1245 | # CONFIG_KEYBOARD_MATRIX is not set | 1498 | # CONFIG_KEYBOARD_MATRIX is not set |
1246 | # CONFIG_KEYBOARD_LM8323 is not set | 1499 | # CONFIG_KEYBOARD_LM8323 is not set |
1247 | # CONFIG_KEYBOARD_LM8333 is not set | 1500 | # CONFIG_KEYBOARD_LM8333 is not set |
1248 | # CONFIG_KEYBOARD_MAX7359 is not set | 1501 | # CONFIG_KEYBOARD_MAX7359 is not set |
1249 | # CONFIG_KEYBOARD_MCS is not set | 1502 | # CONFIG_KEYBOARD_MCS is not set |
1250 | # CONFIG_KEYBOARD_MPR121 is not set | 1503 | # CONFIG_KEYBOARD_MPR121 is not set |
1251 | CONFIG_KEYBOARD_SNVS_PWRKEY=y | 1504 | CONFIG_KEYBOARD_SNVS_PWRKEY=y |
1252 | CONFIG_KEYBOARD_IMX=y | 1505 | CONFIG_KEYBOARD_IMX=y |
1253 | # CONFIG_KEYBOARD_NEWTON is not set | 1506 | # CONFIG_KEYBOARD_NEWTON is not set |
1254 | # CONFIG_KEYBOARD_OPENCORES is not set | 1507 | # CONFIG_KEYBOARD_OPENCORES is not set |
1255 | # CONFIG_KEYBOARD_SAMSUNG is not set | 1508 | # CONFIG_KEYBOARD_SAMSUNG is not set |
1256 | # CONFIG_KEYBOARD_STOWAWAY is not set | 1509 | # CONFIG_KEYBOARD_STOWAWAY is not set |
1257 | # CONFIG_KEYBOARD_SUNKBD is not set | 1510 | # CONFIG_KEYBOARD_SUNKBD is not set |
1258 | # CONFIG_KEYBOARD_XTKBD is not set | 1511 | # CONFIG_KEYBOARD_XTKBD is not set |
1259 | CONFIG_INPUT_MOUSE=y | 1512 | CONFIG_INPUT_MOUSE=y |
1260 | CONFIG_MOUSE_PS2=m | 1513 | CONFIG_MOUSE_PS2=m |
1261 | CONFIG_MOUSE_PS2_ALPS=y | 1514 | CONFIG_MOUSE_PS2_ALPS=y |
1262 | CONFIG_MOUSE_PS2_LOGIPS2PP=y | 1515 | CONFIG_MOUSE_PS2_LOGIPS2PP=y |
1263 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 1516 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
1264 | CONFIG_MOUSE_PS2_CYPRESS=y | 1517 | CONFIG_MOUSE_PS2_CYPRESS=y |
1265 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 1518 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
1266 | CONFIG_MOUSE_PS2_ELANTECH=y | 1519 | CONFIG_MOUSE_PS2_ELANTECH=y |
1267 | # CONFIG_MOUSE_PS2_SENTELIC is not set | 1520 | # CONFIG_MOUSE_PS2_SENTELIC is not set |
1268 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 1521 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
1269 | # CONFIG_MOUSE_SERIAL is not set | 1522 | # CONFIG_MOUSE_SERIAL is not set |
1270 | # CONFIG_MOUSE_APPLETOUCH is not set | 1523 | # CONFIG_MOUSE_APPLETOUCH is not set |
1271 | # CONFIG_MOUSE_BCM5974 is not set | 1524 | # CONFIG_MOUSE_BCM5974 is not set |
1272 | # CONFIG_MOUSE_CYAPA is not set | 1525 | # CONFIG_MOUSE_CYAPA is not set |
1273 | # CONFIG_MOUSE_VSXXXAA is not set | 1526 | # CONFIG_MOUSE_VSXXXAA is not set |
1274 | # CONFIG_MOUSE_GPIO is not set | 1527 | # CONFIG_MOUSE_GPIO is not set |
1275 | # CONFIG_MOUSE_SYNAPTICS_I2C is not set | 1528 | # CONFIG_MOUSE_SYNAPTICS_I2C is not set |
1276 | # CONFIG_MOUSE_SYNAPTICS_USB is not set | 1529 | # CONFIG_MOUSE_SYNAPTICS_USB is not set |
1277 | # CONFIG_INPUT_JOYSTICK is not set | 1530 | # CONFIG_INPUT_JOYSTICK is not set |
1278 | # CONFIG_INPUT_TABLET is not set | 1531 | # CONFIG_INPUT_TABLET is not set |
1279 | CONFIG_INPUT_TOUCHSCREEN=y | 1532 | CONFIG_INPUT_TOUCHSCREEN=y |
1280 | # CONFIG_TOUCHSCREEN_ADS7846 is not set | 1533 | # CONFIG_TOUCHSCREEN_ADS7846 is not set |
1281 | # CONFIG_TOUCHSCREEN_AD7877 is not set | 1534 | # CONFIG_TOUCHSCREEN_AD7877 is not set |
1282 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 1535 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
1283 | # CONFIG_TOUCHSCREEN_ATMEL_MXT is not set | 1536 | # CONFIG_TOUCHSCREEN_ATMEL_MXT is not set |
1284 | # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set | 1537 | # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set |
1285 | # CONFIG_TOUCHSCREEN_BU21013 is not set | 1538 | # CONFIG_TOUCHSCREEN_BU21013 is not set |
1286 | # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set | 1539 | # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set |
1287 | # CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set | 1540 | # CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set |
1288 | # CONFIG_TOUCHSCREEN_DA9052 is not set | 1541 | # CONFIG_TOUCHSCREEN_DA9052 is not set |
1289 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 1542 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
1290 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | 1543 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set |
1291 | # CONFIG_TOUCHSCREEN_EETI is not set | 1544 | # CONFIG_TOUCHSCREEN_EETI is not set |
1292 | # CONFIG_TOUCHSCREEN_EGALAX is not set | 1545 | # CONFIG_TOUCHSCREEN_EGALAX is not set |
1293 | # CONFIG_TOUCHSCREEN_ELAN is not set | 1546 | # CONFIG_TOUCHSCREEN_ELAN is not set |
1294 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 1547 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
1295 | # CONFIG_TOUCHSCREEN_ILI210X is not set | 1548 | # CONFIG_TOUCHSCREEN_ILI210X is not set |
1296 | # CONFIG_TOUCHSCREEN_GUNZE is not set | 1549 | # CONFIG_TOUCHSCREEN_GUNZE is not set |
1297 | # CONFIG_TOUCHSCREEN_ELO is not set | 1550 | # CONFIG_TOUCHSCREEN_ELO is not set |
1298 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set | 1551 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set |
1299 | # CONFIG_TOUCHSCREEN_WACOM_I2C is not set | 1552 | # CONFIG_TOUCHSCREEN_WACOM_I2C is not set |
1300 | # CONFIG_TOUCHSCREEN_MAX11801 is not set | 1553 | # CONFIG_TOUCHSCREEN_MAX11801 is not set |
1301 | # CONFIG_TOUCHSCREEN_MCS5000 is not set | 1554 | # CONFIG_TOUCHSCREEN_MCS5000 is not set |
1302 | # CONFIG_TOUCHSCREEN_MMS114 is not set | 1555 | # CONFIG_TOUCHSCREEN_MMS114 is not set |
1303 | # CONFIG_TOUCHSCREEN_MTOUCH is not set | 1556 | # CONFIG_TOUCHSCREEN_MTOUCH is not set |
1304 | # CONFIG_TOUCHSCREEN_INEXIO is not set | 1557 | # CONFIG_TOUCHSCREEN_INEXIO is not set |
1305 | # CONFIG_TOUCHSCREEN_MK712 is not set | 1558 | # CONFIG_TOUCHSCREEN_MK712 is not set |
1306 | # CONFIG_TOUCHSCREEN_PENMOUNT is not set | 1559 | # CONFIG_TOUCHSCREEN_PENMOUNT is not set |
1307 | # CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set | 1560 | # CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set |
1308 | # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set | 1561 | # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set |
1309 | # CONFIG_TOUCHSCREEN_TOUCHWIN is not set | 1562 | # CONFIG_TOUCHSCREEN_TOUCHWIN is not set |
1310 | # CONFIG_TOUCHSCREEN_PIXCIR is not set | 1563 | # CONFIG_TOUCHSCREEN_PIXCIR is not set |
1311 | # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set | 1564 | # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set |
1312 | # CONFIG_TOUCHSCREEN_MC13783 is not set | 1565 | # CONFIG_TOUCHSCREEN_MC13783 is not set |
1313 | # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set | 1566 | # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set |
1314 | # CONFIG_TOUCHSCREEN_TSC_SERIO is not set | 1567 | # CONFIG_TOUCHSCREEN_TSC_SERIO is not set |
1315 | # CONFIG_TOUCHSCREEN_TSC2005 is not set | 1568 | # CONFIG_TOUCHSCREEN_TSC2005 is not set |
1316 | # CONFIG_TOUCHSCREEN_TSC2007 is not set | 1569 | # CONFIG_TOUCHSCREEN_TSC2007 is not set |
1317 | # CONFIG_TOUCHSCREEN_W90X900 is not set | 1570 | # CONFIG_TOUCHSCREEN_W90X900 is not set |
1318 | # CONFIG_TOUCHSCREEN_ST1232 is not set | 1571 | # CONFIG_TOUCHSCREEN_ST1232 is not set |
1319 | # CONFIG_TOUCHSCREEN_TPS6507X is not set | 1572 | # CONFIG_TOUCHSCREEN_TPS6507X is not set |
1320 | CONFIG_INPUT_MISC=y | 1573 | CONFIG_INPUT_MISC=y |
1321 | # CONFIG_INPUT_AD714X is not set | 1574 | # CONFIG_INPUT_AD714X is not set |
1322 | # CONFIG_INPUT_BMA150 is not set | 1575 | # CONFIG_INPUT_BMA150 is not set |
1323 | # CONFIG_INPUT_MC13783_PWRBUTTON is not set | 1576 | # CONFIG_INPUT_MC13783_PWRBUTTON is not set |
1324 | CONFIG_INPUT_MMA8450=y | 1577 | CONFIG_INPUT_MMA8450=y |
1325 | # CONFIG_INPUT_MPU3050 is not set | 1578 | # CONFIG_INPUT_MPU3050 is not set |
1326 | # CONFIG_INPUT_GP2A is not set | 1579 | # CONFIG_INPUT_GP2A is not set |
1327 | # CONFIG_INPUT_GPIO_TILT_POLLED is not set | 1580 | # CONFIG_INPUT_GPIO_TILT_POLLED is not set |
1328 | # CONFIG_INPUT_ATI_REMOTE2 is not set | 1581 | # CONFIG_INPUT_ATI_REMOTE2 is not set |
1329 | # CONFIG_INPUT_KEYSPAN_REMOTE is not set | 1582 | # CONFIG_INPUT_KEYSPAN_REMOTE is not set |
1330 | # CONFIG_INPUT_KXTJ9 is not set | 1583 | # CONFIG_INPUT_KXTJ9 is not set |
1331 | # CONFIG_INPUT_POWERMATE is not set | 1584 | # CONFIG_INPUT_POWERMATE is not set |
1332 | # CONFIG_INPUT_YEALINK is not set | 1585 | # CONFIG_INPUT_YEALINK is not set |
1333 | # CONFIG_INPUT_CM109 is not set | 1586 | # CONFIG_INPUT_CM109 is not set |
1334 | # CONFIG_INPUT_UINPUT is not set | 1587 | # CONFIG_INPUT_UINPUT is not set |
1335 | # CONFIG_INPUT_PCF8574 is not set | 1588 | # CONFIG_INPUT_PCF8574 is not set |
1336 | # CONFIG_INPUT_PWM_BEEPER is not set | 1589 | # CONFIG_INPUT_PWM_BEEPER is not set |
1337 | # CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set | 1590 | # CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set |
1338 | # CONFIG_INPUT_DA9052_ONKEY is not set | 1591 | # CONFIG_INPUT_DA9052_ONKEY is not set |
1339 | # CONFIG_INPUT_ADXL34X is not set | 1592 | # CONFIG_INPUT_ADXL34X is not set |
1340 | # CONFIG_INPUT_IMS_PCU is not set | 1593 | # CONFIG_INPUT_IMS_PCU is not set |
1341 | # CONFIG_INPUT_CMA3000 is not set | 1594 | # CONFIG_INPUT_CMA3000 is not set |
1342 | CONFIG_INPUT_ISL29023=y | 1595 | CONFIG_INPUT_ISL29023=y |
1343 | 1596 | ||
1344 | # | 1597 | # |
1345 | # Hardware I/O ports | 1598 | # Hardware I/O ports |
1346 | # | 1599 | # |
1347 | CONFIG_SERIO=y | 1600 | CONFIG_SERIO=y |
1348 | CONFIG_SERIO_SERPORT=m | 1601 | CONFIG_SERIO_SERPORT=m |
1602 | # CONFIG_SERIO_PCIPS2 is not set | ||
1349 | CONFIG_SERIO_LIBPS2=y | 1603 | CONFIG_SERIO_LIBPS2=y |
1350 | # CONFIG_SERIO_RAW is not set | 1604 | # CONFIG_SERIO_RAW is not set |
1351 | # CONFIG_SERIO_ALTERA_PS2 is not set | 1605 | # CONFIG_SERIO_ALTERA_PS2 is not set |
1352 | # CONFIG_SERIO_PS2MULT is not set | 1606 | # CONFIG_SERIO_PS2MULT is not set |
1353 | # CONFIG_SERIO_ARC_PS2 is not set | 1607 | # CONFIG_SERIO_ARC_PS2 is not set |
1354 | # CONFIG_SERIO_APBPS2 is not set | 1608 | # CONFIG_SERIO_APBPS2 is not set |
1355 | # CONFIG_GAMEPORT is not set | 1609 | # CONFIG_GAMEPORT is not set |
1356 | 1610 | ||
1357 | # | 1611 | # |
1358 | # Character devices | 1612 | # Character devices |
1359 | # | 1613 | # |
1360 | CONFIG_TTY=y | 1614 | CONFIG_TTY=y |
1361 | CONFIG_VT=y | 1615 | CONFIG_VT=y |
1362 | CONFIG_CONSOLE_TRANSLATIONS=y | 1616 | CONFIG_CONSOLE_TRANSLATIONS=y |
1363 | CONFIG_VT_CONSOLE=y | 1617 | CONFIG_VT_CONSOLE=y |
1364 | CONFIG_VT_CONSOLE_SLEEP=y | 1618 | CONFIG_VT_CONSOLE_SLEEP=y |
1365 | CONFIG_HW_CONSOLE=y | 1619 | CONFIG_HW_CONSOLE=y |
1366 | CONFIG_VT_HW_CONSOLE_BINDING=y | 1620 | CONFIG_VT_HW_CONSOLE_BINDING=y |
1367 | CONFIG_UNIX98_PTYS=y | 1621 | CONFIG_UNIX98_PTYS=y |
1368 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 1622 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
1369 | # CONFIG_LEGACY_PTYS is not set | 1623 | # CONFIG_LEGACY_PTYS is not set |
1370 | # CONFIG_SERIAL_NONSTANDARD is not set | 1624 | # CONFIG_SERIAL_NONSTANDARD is not set |
1625 | # CONFIG_NOZOMI is not set | ||
1371 | # CONFIG_N_GSM is not set | 1626 | # CONFIG_N_GSM is not set |
1372 | # CONFIG_TRACE_SINK is not set | 1627 | # CONFIG_TRACE_SINK is not set |
1373 | # CONFIG_DEVKMEM is not set | 1628 | # CONFIG_DEVKMEM is not set |
1374 | 1629 | ||
1375 | # | 1630 | # |
1376 | # Serial drivers | 1631 | # Serial drivers |
1377 | # | 1632 | # |
1378 | # CONFIG_SERIAL_8250 is not set | 1633 | # CONFIG_SERIAL_8250 is not set |
1379 | 1634 | ||
1380 | # | 1635 | # |
1381 | # Non-8250 serial port support | 1636 | # Non-8250 serial port support |
1382 | # | 1637 | # |
1383 | # CONFIG_SERIAL_MAX3100 is not set | 1638 | # CONFIG_SERIAL_MAX3100 is not set |
1384 | # CONFIG_SERIAL_MAX310X is not set | 1639 | # CONFIG_SERIAL_MAX310X is not set |
1640 | # CONFIG_SERIAL_MFD_HSU is not set | ||
1385 | CONFIG_SERIAL_IMX=y | 1641 | CONFIG_SERIAL_IMX=y |
1386 | CONFIG_SERIAL_IMX_CONSOLE=y | 1642 | CONFIG_SERIAL_IMX_CONSOLE=y |
1387 | CONFIG_SERIAL_CORE=y | 1643 | CONFIG_SERIAL_CORE=y |
1388 | CONFIG_SERIAL_CORE_CONSOLE=y | 1644 | CONFIG_SERIAL_CORE_CONSOLE=y |
1645 | # CONFIG_SERIAL_JSM is not set | ||
1389 | # CONFIG_SERIAL_SCCNXP is not set | 1646 | # CONFIG_SERIAL_SCCNXP is not set |
1390 | # CONFIG_SERIAL_TIMBERDALE is not set | 1647 | # CONFIG_SERIAL_TIMBERDALE is not set |
1391 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | 1648 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set |
1392 | # CONFIG_SERIAL_ALTERA_UART is not set | 1649 | # CONFIG_SERIAL_ALTERA_UART is not set |
1393 | # CONFIG_SERIAL_IFX6X60 is not set | 1650 | # CONFIG_SERIAL_IFX6X60 is not set |
1651 | # CONFIG_SERIAL_PCH_UART is not set | ||
1394 | # CONFIG_SERIAL_XILINX_PS_UART is not set | 1652 | # CONFIG_SERIAL_XILINX_PS_UART is not set |
1395 | # CONFIG_SERIAL_ARC is not set | 1653 | # CONFIG_SERIAL_ARC is not set |
1654 | # CONFIG_SERIAL_RP2 is not set | ||
1396 | CONFIG_SERIAL_FSL_LPUART=y | 1655 | CONFIG_SERIAL_FSL_LPUART=y |
1397 | CONFIG_SERIAL_FSL_LPUART_CONSOLE=y | 1656 | CONFIG_SERIAL_FSL_LPUART_CONSOLE=y |
1398 | # CONFIG_TTY_PRINTK is not set | 1657 | # CONFIG_TTY_PRINTK is not set |
1399 | CONFIG_FSL_OTP=y | 1658 | CONFIG_FSL_OTP=y |
1400 | # CONFIG_HVC_DCC is not set | 1659 | # CONFIG_HVC_DCC is not set |
1401 | # CONFIG_IPMI_HANDLER is not set | 1660 | # CONFIG_IPMI_HANDLER is not set |
1402 | CONFIG_HW_RANDOM=y | 1661 | CONFIG_HW_RANDOM=y |
1403 | # CONFIG_HW_RANDOM_TIMERIOMEM is not set | 1662 | # CONFIG_HW_RANDOM_TIMERIOMEM is not set |
1404 | # CONFIG_HW_RANDOM_ATMEL is not set | 1663 | # CONFIG_HW_RANDOM_ATMEL is not set |
1405 | # CONFIG_HW_RANDOM_IMX_RNG is not set | 1664 | # CONFIG_HW_RANDOM_IMX_RNG is not set |
1406 | # CONFIG_HW_RANDOM_EXYNOS is not set | 1665 | # CONFIG_HW_RANDOM_EXYNOS is not set |
1407 | # CONFIG_R3964 is not set | 1666 | # CONFIG_R3964 is not set |
1667 | # CONFIG_APPLICOM is not set | ||
1408 | # CONFIG_RAW_DRIVER is not set | 1668 | # CONFIG_RAW_DRIVER is not set |
1409 | # CONFIG_TCG_TPM is not set | 1669 | # CONFIG_TCG_TPM is not set |
1670 | CONFIG_DEVPORT=y | ||
1410 | CONFIG_MXS_VIIM=y | 1671 | CONFIG_MXS_VIIM=y |
1411 | # CONFIG_XILLYBUS is not set | 1672 | # CONFIG_XILLYBUS is not set |
1412 | CONFIG_IMX_SEMA4=y | 1673 | CONFIG_IMX_SEMA4=y |
1413 | CONFIG_IMX_MCC_TEST=y | 1674 | CONFIG_IMX_MCC_TEST=y |
1414 | CONFIG_I2C=y | 1675 | CONFIG_I2C=y |
1415 | CONFIG_I2C_BOARDINFO=y | 1676 | CONFIG_I2C_BOARDINFO=y |
1416 | # CONFIG_I2C_COMPAT is not set | 1677 | # CONFIG_I2C_COMPAT is not set |
1417 | CONFIG_I2C_CHARDEV=y | 1678 | CONFIG_I2C_CHARDEV=y |
1418 | CONFIG_I2C_MUX=y | 1679 | CONFIG_I2C_MUX=y |
1419 | 1680 | ||
1420 | # | 1681 | # |
1421 | # Multiplexer I2C Chip support | 1682 | # Multiplexer I2C Chip support |
1422 | # | 1683 | # |
1423 | # CONFIG_I2C_ARB_GPIO_CHALLENGE is not set | 1684 | # CONFIG_I2C_ARB_GPIO_CHALLENGE is not set |
1424 | # CONFIG_I2C_MUX_GPIO is not set | 1685 | # CONFIG_I2C_MUX_GPIO is not set |
1425 | # CONFIG_I2C_MUX_PCA9541 is not set | 1686 | # CONFIG_I2C_MUX_PCA9541 is not set |
1426 | CONFIG_I2C_MUX_PCA954x=y | 1687 | CONFIG_I2C_MUX_PCA954x=y |
1427 | # CONFIG_I2C_MUX_PINCTRL is not set | 1688 | # CONFIG_I2C_MUX_PINCTRL is not set |
1428 | # CONFIG_I2C_HELPER_AUTO is not set | 1689 | # CONFIG_I2C_HELPER_AUTO is not set |
1429 | # CONFIG_I2C_SMBUS is not set | 1690 | CONFIG_I2C_SMBUS=y |
1430 | 1691 | ||
1431 | # | 1692 | # |
1432 | # I2C Algorithms | 1693 | # I2C Algorithms |
1433 | # | 1694 | # |
1434 | CONFIG_I2C_ALGOBIT=y | 1695 | CONFIG_I2C_ALGOBIT=y |
1435 | CONFIG_I2C_ALGOPCF=m | 1696 | CONFIG_I2C_ALGOPCF=m |
1436 | CONFIG_I2C_ALGOPCA=m | 1697 | CONFIG_I2C_ALGOPCA=m |
1437 | 1698 | ||
1438 | # | 1699 | # |
1439 | # I2C Hardware Bus support | 1700 | # I2C Hardware Bus support |
1440 | # | 1701 | # |
1441 | 1702 | ||
1442 | # | 1703 | # |
1704 | # PC SMBus host controller drivers | ||
1705 | # | ||
1706 | # CONFIG_I2C_ALI1535 is not set | ||
1707 | # CONFIG_I2C_ALI1563 is not set | ||
1708 | # CONFIG_I2C_ALI15X3 is not set | ||
1709 | # CONFIG_I2C_AMD756 is not set | ||
1710 | # CONFIG_I2C_AMD8111 is not set | ||
1711 | # CONFIG_I2C_I801 is not set | ||
1712 | # CONFIG_I2C_ISCH is not set | ||
1713 | # CONFIG_I2C_PIIX4 is not set | ||
1714 | # CONFIG_I2C_NFORCE2 is not set | ||
1715 | # CONFIG_I2C_SIS5595 is not set | ||
1716 | # CONFIG_I2C_SIS630 is not set | ||
1717 | # CONFIG_I2C_SIS96X is not set | ||
1718 | # CONFIG_I2C_VIA is not set | ||
1719 | # CONFIG_I2C_VIAPRO is not set | ||
1720 | |||
1721 | # | ||
1443 | # I2C system bus drivers (mostly embedded / system-on-chip) | 1722 | # I2C system bus drivers (mostly embedded / system-on-chip) |
1444 | # | 1723 | # |
1445 | # CONFIG_I2C_CBUS_GPIO is not set | 1724 | # CONFIG_I2C_CBUS_GPIO is not set |
1446 | # CONFIG_I2C_DESIGNWARE_PLATFORM is not set | 1725 | # CONFIG_I2C_DESIGNWARE_PLATFORM is not set |
1726 | # CONFIG_I2C_DESIGNWARE_PCI is not set | ||
1727 | # CONFIG_I2C_EG20T is not set | ||
1447 | # CONFIG_I2C_GPIO is not set | 1728 | # CONFIG_I2C_GPIO is not set |
1448 | CONFIG_I2C_IMX=y | 1729 | CONFIG_I2C_IMX=y |
1730 | # CONFIG_I2C_INTEL_MID is not set | ||
1449 | # CONFIG_I2C_OCORES is not set | 1731 | # CONFIG_I2C_OCORES is not set |
1450 | # CONFIG_I2C_PCA_PLATFORM is not set | 1732 | # CONFIG_I2C_PCA_PLATFORM is not set |
1451 | # CONFIG_I2C_PXA_PCI is not set | 1733 | # CONFIG_I2C_PXA_PCI is not set |
1452 | # CONFIG_I2C_SIMTEC is not set | 1734 | # CONFIG_I2C_SIMTEC is not set |
1453 | # CONFIG_I2C_XILINX is not set | 1735 | # CONFIG_I2C_XILINX is not set |
1454 | 1736 | ||
1455 | # | 1737 | # |
1456 | # External I2C/SMBus adapter drivers | 1738 | # External I2C/SMBus adapter drivers |
1457 | # | 1739 | # |
1458 | # CONFIG_I2C_DIOLAN_U2C is not set | 1740 | # CONFIG_I2C_DIOLAN_U2C is not set |
1459 | # CONFIG_I2C_PARPORT_LIGHT is not set | 1741 | # CONFIG_I2C_PARPORT_LIGHT is not set |
1460 | # CONFIG_I2C_TAOS_EVM is not set | 1742 | # CONFIG_I2C_TAOS_EVM is not set |
1461 | # CONFIG_I2C_TINY_USB is not set | 1743 | # CONFIG_I2C_TINY_USB is not set |
1462 | 1744 | ||
1463 | # | 1745 | # |
1464 | # Other I2C/SMBus bus drivers | 1746 | # Other I2C/SMBus bus drivers |
1465 | # | 1747 | # |
1466 | # CONFIG_I2C_STUB is not set | 1748 | # CONFIG_I2C_STUB is not set |
1467 | # CONFIG_I2C_DEBUG_CORE is not set | 1749 | # CONFIG_I2C_DEBUG_CORE is not set |
1468 | # CONFIG_I2C_DEBUG_ALGO is not set | 1750 | # CONFIG_I2C_DEBUG_ALGO is not set |
1469 | # CONFIG_I2C_DEBUG_BUS is not set | 1751 | # CONFIG_I2C_DEBUG_BUS is not set |
1470 | CONFIG_SPI=y | 1752 | CONFIG_SPI=y |
1471 | # CONFIG_SPI_DEBUG is not set | 1753 | # CONFIG_SPI_DEBUG is not set |
1472 | CONFIG_SPI_MASTER=y | 1754 | CONFIG_SPI_MASTER=y |
1473 | 1755 | ||
1474 | # | 1756 | # |
1475 | # SPI Master Controller Drivers | 1757 | # SPI Master Controller Drivers |
1476 | # | 1758 | # |
1477 | # CONFIG_SPI_ALTERA is not set | 1759 | # CONFIG_SPI_ALTERA is not set |
1478 | CONFIG_SPI_BITBANG=y | 1760 | CONFIG_SPI_BITBANG=y |
1479 | # CONFIG_SPI_GPIO is not set | 1761 | # CONFIG_SPI_GPIO is not set |
1480 | CONFIG_SPI_IMX=y | 1762 | CONFIG_SPI_IMX=y |
1481 | # CONFIG_SPI_FSL_SPI is not set | 1763 | # CONFIG_SPI_FSL_SPI is not set |
1482 | # CONFIG_SPI_OC_TINY is not set | 1764 | # CONFIG_SPI_OC_TINY is not set |
1765 | # CONFIG_SPI_PXA2XX is not set | ||
1483 | # CONFIG_SPI_PXA2XX_PCI is not set | 1766 | # CONFIG_SPI_PXA2XX_PCI is not set |
1484 | # CONFIG_SPI_SC18IS602 is not set | 1767 | # CONFIG_SPI_SC18IS602 is not set |
1768 | # CONFIG_SPI_TOPCLIFF_PCH is not set | ||
1485 | # CONFIG_SPI_XCOMM is not set | 1769 | # CONFIG_SPI_XCOMM is not set |
1486 | # CONFIG_SPI_XILINX is not set | 1770 | # CONFIG_SPI_XILINX is not set |
1487 | # CONFIG_SPI_DESIGNWARE is not set | 1771 | # CONFIG_SPI_DESIGNWARE is not set |
1488 | 1772 | ||
1489 | # | 1773 | # |
1490 | # SPI Protocol Masters | 1774 | # SPI Protocol Masters |
1491 | # | 1775 | # |
1492 | CONFIG_SPI_SPIDEV=y | 1776 | CONFIG_SPI_SPIDEV=y |
1493 | # CONFIG_SPI_TLE62X0 is not set | 1777 | # CONFIG_SPI_TLE62X0 is not set |
1494 | 1778 | ||
1495 | # | 1779 | # |
1496 | # Qualcomm MSM SSBI bus support | 1780 | # Qualcomm MSM SSBI bus support |
1497 | # | 1781 | # |
1498 | # CONFIG_SSBI is not set | 1782 | # CONFIG_SSBI is not set |
1499 | # CONFIG_HSI is not set | 1783 | # CONFIG_HSI is not set |
1500 | 1784 | ||
1501 | # | 1785 | # |
1502 | # PPS support | 1786 | # PPS support |
1503 | # | 1787 | # |
1504 | CONFIG_PPS=y | 1788 | CONFIG_PPS=y |
1505 | # CONFIG_PPS_DEBUG is not set | 1789 | # CONFIG_PPS_DEBUG is not set |
1506 | 1790 | ||
1507 | # | 1791 | # |
1508 | # PPS clients support | 1792 | # PPS clients support |
1509 | # | 1793 | # |
1510 | # CONFIG_PPS_CLIENT_KTIMER is not set | 1794 | # CONFIG_PPS_CLIENT_KTIMER is not set |
1511 | # CONFIG_PPS_CLIENT_LDISC is not set | 1795 | # CONFIG_PPS_CLIENT_LDISC is not set |
1512 | # CONFIG_PPS_CLIENT_GPIO is not set | 1796 | # CONFIG_PPS_CLIENT_GPIO is not set |
1513 | 1797 | ||
1514 | # | 1798 | # |
1515 | # PPS generators support | 1799 | # PPS generators support |
1516 | # | 1800 | # |
1517 | 1801 | ||
1518 | # | 1802 | # |
1519 | # PTP clock support | 1803 | # PTP clock support |
1520 | # | 1804 | # |
1521 | CONFIG_PTP_1588_CLOCK=y | 1805 | CONFIG_PTP_1588_CLOCK=y |
1522 | 1806 | ||
1523 | # | 1807 | # |
1524 | # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. | 1808 | # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. |
1525 | # | 1809 | # |
1526 | # CONFIG_PTP_1588_CLOCK_PCH is not set | 1810 | # CONFIG_PTP_1588_CLOCK_PCH is not set |
1527 | CONFIG_PINCTRL=y | 1811 | CONFIG_PINCTRL=y |
1528 | 1812 | ||
1529 | # | 1813 | # |
1530 | # Pin controllers | 1814 | # Pin controllers |
1531 | # | 1815 | # |
1532 | CONFIG_PINMUX=y | 1816 | CONFIG_PINMUX=y |
1533 | CONFIG_PINCONF=y | 1817 | CONFIG_PINCONF=y |
1534 | # CONFIG_DEBUG_PINCTRL is not set | 1818 | # CONFIG_DEBUG_PINCTRL is not set |
1535 | CONFIG_PINCTRL_IMX=y | 1819 | CONFIG_PINCTRL_IMX=y |
1536 | CONFIG_PINCTRL_IMX51=y | 1820 | CONFIG_PINCTRL_IMX51=y |
1537 | CONFIG_PINCTRL_IMX53=y | 1821 | CONFIG_PINCTRL_IMX53=y |
1538 | CONFIG_PINCTRL_IMX6Q=y | 1822 | CONFIG_PINCTRL_IMX6Q=y |
1539 | CONFIG_PINCTRL_IMX6SL=y | 1823 | CONFIG_PINCTRL_IMX6SL=y |
1540 | CONFIG_PINCTRL_IMX6SX=y | 1824 | CONFIG_PINCTRL_IMX6SX=y |
1541 | CONFIG_PINCTRL_VF610=y | 1825 | CONFIG_PINCTRL_VF610=y |
1542 | # CONFIG_PINCTRL_SINGLE is not set | 1826 | # CONFIG_PINCTRL_SINGLE is not set |
1543 | # CONFIG_PINCTRL_EXYNOS is not set | 1827 | # CONFIG_PINCTRL_EXYNOS is not set |
1544 | # CONFIG_PINCTRL_EXYNOS5440 is not set | 1828 | # CONFIG_PINCTRL_EXYNOS5440 is not set |
1545 | CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y | 1829 | CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y |
1546 | CONFIG_ARCH_REQUIRE_GPIOLIB=y | 1830 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
1547 | CONFIG_GPIO_DEVRES=y | 1831 | CONFIG_GPIO_DEVRES=y |
1548 | CONFIG_GPIOLIB=y | 1832 | CONFIG_GPIOLIB=y |
1549 | CONFIG_OF_GPIO=y | 1833 | CONFIG_OF_GPIO=y |
1550 | # CONFIG_DEBUG_GPIO is not set | 1834 | # CONFIG_DEBUG_GPIO is not set |
1551 | CONFIG_GPIO_SYSFS=y | 1835 | CONFIG_GPIO_SYSFS=y |
1552 | CONFIG_GPIO_GENERIC=y | 1836 | CONFIG_GPIO_GENERIC=y |
1553 | # CONFIG_GPIO_DA9052 is not set | 1837 | # CONFIG_GPIO_DA9052 is not set |
1554 | 1838 | ||
1555 | # | 1839 | # |
1556 | # Memory mapped GPIO drivers: | 1840 | # Memory mapped GPIO drivers: |
1557 | # | 1841 | # |
1558 | # CONFIG_GPIO_GENERIC_PLATFORM is not set | 1842 | # CONFIG_GPIO_GENERIC_PLATFORM is not set |
1559 | # CONFIG_GPIO_EM is not set | 1843 | # CONFIG_GPIO_EM is not set |
1560 | CONFIG_GPIO_MXC=y | 1844 | CONFIG_GPIO_MXC=y |
1561 | # CONFIG_GPIO_RCAR is not set | 1845 | # CONFIG_GPIO_RCAR is not set |
1562 | # CONFIG_GPIO_TS5500 is not set | 1846 | # CONFIG_GPIO_TS5500 is not set |
1847 | # CONFIG_GPIO_VX855 is not set | ||
1563 | # CONFIG_GPIO_GRGPIO is not set | 1848 | # CONFIG_GPIO_GRGPIO is not set |
1564 | 1849 | ||
1565 | # | 1850 | # |
1566 | # I2C GPIO expanders: | 1851 | # I2C GPIO expanders: |
1567 | # | 1852 | # |
1568 | # CONFIG_GPIO_MAX7300 is not set | 1853 | # CONFIG_GPIO_MAX7300 is not set |
1569 | CONFIG_GPIO_MAX732X=y | 1854 | CONFIG_GPIO_MAX732X=y |
1570 | # CONFIG_GPIO_MAX732X_IRQ is not set | 1855 | # CONFIG_GPIO_MAX732X_IRQ is not set |
1571 | # CONFIG_GPIO_PCA953X_IRQ is not set | 1856 | # CONFIG_GPIO_PCA953X_IRQ is not set |
1572 | # CONFIG_GPIO_PCF857X is not set | 1857 | # CONFIG_GPIO_PCF857X is not set |
1573 | # CONFIG_GPIO_SX150X is not set | 1858 | # CONFIG_GPIO_SX150X is not set |
1574 | # CONFIG_GPIO_ADP5588 is not set | 1859 | # CONFIG_GPIO_ADP5588 is not set |
1575 | # CONFIG_GPIO_ADNP is not set | 1860 | # CONFIG_GPIO_ADNP is not set |
1576 | 1861 | ||
1577 | # | 1862 | # |
1578 | # PCI GPIO expanders: | 1863 | # PCI GPIO expanders: |
1579 | # | 1864 | # |
1865 | # CONFIG_GPIO_BT8XX is not set | ||
1866 | # CONFIG_GPIO_AMD8111 is not set | ||
1867 | # CONFIG_GPIO_ML_IOH is not set | ||
1868 | # CONFIG_GPIO_RDC321X is not set | ||
1580 | 1869 | ||
1581 | # | 1870 | # |
1582 | # SPI GPIO expanders: | 1871 | # SPI GPIO expanders: |
1583 | # | 1872 | # |
1584 | # CONFIG_GPIO_MAX7301 is not set | 1873 | # CONFIG_GPIO_MAX7301 is not set |
1585 | # CONFIG_GPIO_MCP23S08 is not set | 1874 | # CONFIG_GPIO_MCP23S08 is not set |
1586 | # CONFIG_GPIO_MC33880 is not set | 1875 | # CONFIG_GPIO_MC33880 is not set |
1587 | # CONFIG_GPIO_74X164 is not set | 1876 | # CONFIG_GPIO_74X164 is not set |
1588 | 1877 | ||
1589 | # | 1878 | # |
1590 | # AC97 GPIO expanders: | 1879 | # AC97 GPIO expanders: |
1591 | # | 1880 | # |
1592 | 1881 | ||
1593 | # | 1882 | # |
1594 | # MODULbus GPIO expanders: | 1883 | # MODULbus GPIO expanders: |
1595 | # | 1884 | # |
1596 | 1885 | ||
1597 | # | 1886 | # |
1598 | # USB GPIO expanders: | 1887 | # USB GPIO expanders: |
1599 | # | 1888 | # |
1600 | # CONFIG_W1 is not set | 1889 | # CONFIG_W1 is not set |
1601 | CONFIG_POWER_SUPPLY=y | 1890 | CONFIG_POWER_SUPPLY=y |
1602 | # CONFIG_POWER_SUPPLY_DEBUG is not set | 1891 | # CONFIG_POWER_SUPPLY_DEBUG is not set |
1603 | # CONFIG_PDA_POWER is not set | 1892 | # CONFIG_PDA_POWER is not set |
1604 | # CONFIG_APM_POWER is not set | 1893 | # CONFIG_APM_POWER is not set |
1605 | # CONFIG_GENERIC_ADC_BATTERY is not set | 1894 | # CONFIG_GENERIC_ADC_BATTERY is not set |
1606 | # CONFIG_TEST_POWER is not set | 1895 | # CONFIG_TEST_POWER is not set |
1607 | # CONFIG_BATTERY_DS2780 is not set | 1896 | # CONFIG_BATTERY_DS2780 is not set |
1608 | # CONFIG_BATTERY_DS2781 is not set | 1897 | # CONFIG_BATTERY_DS2781 is not set |
1609 | # CONFIG_BATTERY_DS2782 is not set | 1898 | # CONFIG_BATTERY_DS2782 is not set |
1610 | # CONFIG_BATTERY_SBS is not set | 1899 | # CONFIG_BATTERY_SBS is not set |
1611 | # CONFIG_BATTERY_BQ27x00 is not set | 1900 | # CONFIG_BATTERY_BQ27x00 is not set |
1612 | # CONFIG_BATTERY_DA9052 is not set | 1901 | # CONFIG_BATTERY_DA9052 is not set |
1613 | # CONFIG_BATTERY_MAX17040 is not set | 1902 | # CONFIG_BATTERY_MAX17040 is not set |
1614 | # CONFIG_BATTERY_MAX17042 is not set | 1903 | # CONFIG_BATTERY_MAX17042 is not set |
1615 | # CONFIG_CHARGER_ISP1704 is not set | 1904 | # CONFIG_CHARGER_ISP1704 is not set |
1616 | # CONFIG_CHARGER_MAX8903 is not set | 1905 | # CONFIG_CHARGER_MAX8903 is not set |
1617 | # CONFIG_CHARGER_LP8727 is not set | 1906 | # CONFIG_CHARGER_LP8727 is not set |
1618 | # CONFIG_CHARGER_GPIO is not set | 1907 | # CONFIG_CHARGER_GPIO is not set |
1619 | # CONFIG_CHARGER_MANAGER is not set | 1908 | # CONFIG_CHARGER_MANAGER is not set |
1620 | # CONFIG_CHARGER_BQ2415X is not set | 1909 | # CONFIG_CHARGER_BQ2415X is not set |
1910 | CONFIG_CHARGER_BQ2477X=y | ||
1621 | # CONFIG_CHARGER_SMB347 is not set | 1911 | # CONFIG_CHARGER_SMB347 is not set |
1622 | # CONFIG_BATTERY_GOLDFISH is not set | 1912 | # CONFIG_BATTERY_GOLDFISH is not set |
1623 | CONFIG_IMX6_USB_CHARGER=y | 1913 | CONFIG_IMX6_USB_CHARGER=y |
1624 | # CONFIG_POWER_RESET is not set | 1914 | # CONFIG_POWER_RESET is not set |
1625 | # CONFIG_POWER_RESET_RESTART is not set | 1915 | # CONFIG_POWER_RESET_RESTART is not set |
1626 | # CONFIG_POWER_AVS is not set | 1916 | # CONFIG_POWER_AVS is not set |
1627 | CONFIG_HWMON=y | 1917 | CONFIG_HWMON=y |
1628 | # CONFIG_HWMON_VID is not set | 1918 | # CONFIG_HWMON_VID is not set |
1629 | # CONFIG_HWMON_DEBUG_CHIP is not set | 1919 | # CONFIG_HWMON_DEBUG_CHIP is not set |
1630 | 1920 | ||
1631 | # | 1921 | # |
1632 | # Native drivers | 1922 | # Native drivers |
1633 | # | 1923 | # |
1634 | # CONFIG_SENSORS_AD7314 is not set | 1924 | # CONFIG_SENSORS_AD7314 is not set |
1635 | # CONFIG_SENSORS_AD7414 is not set | 1925 | # CONFIG_SENSORS_AD7414 is not set |
1636 | # CONFIG_SENSORS_AD7418 is not set | 1926 | # CONFIG_SENSORS_AD7418 is not set |
1637 | # CONFIG_SENSORS_ADCXX is not set | 1927 | # CONFIG_SENSORS_ADCXX is not set |
1638 | # CONFIG_SENSORS_ADM1021 is not set | 1928 | # CONFIG_SENSORS_ADM1021 is not set |
1639 | # CONFIG_SENSORS_ADM1025 is not set | 1929 | # CONFIG_SENSORS_ADM1025 is not set |
1640 | # CONFIG_SENSORS_ADM1026 is not set | 1930 | # CONFIG_SENSORS_ADM1026 is not set |
1641 | # CONFIG_SENSORS_ADM1029 is not set | 1931 | # CONFIG_SENSORS_ADM1029 is not set |
1642 | # CONFIG_SENSORS_ADM1031 is not set | 1932 | # CONFIG_SENSORS_ADM1031 is not set |
1643 | # CONFIG_SENSORS_ADM9240 is not set | 1933 | # CONFIG_SENSORS_ADM9240 is not set |
1644 | # CONFIG_SENSORS_ADT7310 is not set | 1934 | # CONFIG_SENSORS_ADT7310 is not set |
1645 | # CONFIG_SENSORS_ADT7410 is not set | 1935 | # CONFIG_SENSORS_ADT7410 is not set |
1646 | # CONFIG_SENSORS_ADT7411 is not set | 1936 | # CONFIG_SENSORS_ADT7411 is not set |
1647 | # CONFIG_SENSORS_ADT7462 is not set | 1937 | # CONFIG_SENSORS_ADT7462 is not set |
1648 | # CONFIG_SENSORS_ADT7470 is not set | 1938 | # CONFIG_SENSORS_ADT7470 is not set |
1649 | # CONFIG_SENSORS_ADT7475 is not set | 1939 | # CONFIG_SENSORS_ADT7475 is not set |
1650 | # CONFIG_SENSORS_ASC7621 is not set | 1940 | # CONFIG_SENSORS_ASC7621 is not set |
1651 | # CONFIG_SENSORS_ATXP1 is not set | 1941 | # CONFIG_SENSORS_ATXP1 is not set |
1652 | # CONFIG_SENSORS_DS620 is not set | 1942 | # CONFIG_SENSORS_DS620 is not set |
1653 | # CONFIG_SENSORS_DS1621 is not set | 1943 | # CONFIG_SENSORS_DS1621 is not set |
1654 | # CONFIG_SENSORS_DA9052_ADC is not set | 1944 | # CONFIG_SENSORS_DA9052_ADC is not set |
1945 | # CONFIG_SENSORS_I5K_AMB is not set | ||
1655 | # CONFIG_SENSORS_F71805F is not set | 1946 | # CONFIG_SENSORS_F71805F is not set |
1656 | # CONFIG_SENSORS_F71882FG is not set | 1947 | # CONFIG_SENSORS_F71882FG is not set |
1657 | # CONFIG_SENSORS_F75375S is not set | 1948 | # CONFIG_SENSORS_F75375S is not set |
1658 | # CONFIG_SENSORS_G760A is not set | 1949 | # CONFIG_SENSORS_G760A is not set |
1659 | # CONFIG_SENSORS_GL518SM is not set | 1950 | # CONFIG_SENSORS_GL518SM is not set |
1660 | # CONFIG_SENSORS_GL520SM is not set | 1951 | # CONFIG_SENSORS_GL520SM is not set |
1661 | # CONFIG_SENSORS_GPIO_FAN is not set | 1952 | # CONFIG_SENSORS_GPIO_FAN is not set |
1662 | # CONFIG_SENSORS_HIH6130 is not set | 1953 | # CONFIG_SENSORS_HIH6130 is not set |
1663 | # CONFIG_SENSORS_IIO_HWMON is not set | 1954 | # CONFIG_SENSORS_IIO_HWMON is not set |
1664 | # CONFIG_SENSORS_IT87 is not set | 1955 | # CONFIG_SENSORS_IT87 is not set |
1665 | # CONFIG_SENSORS_JC42 is not set | 1956 | # CONFIG_SENSORS_JC42 is not set |
1666 | # CONFIG_SENSORS_LINEAGE is not set | 1957 | # CONFIG_SENSORS_LINEAGE is not set |
1667 | # CONFIG_SENSORS_LM63 is not set | 1958 | # CONFIG_SENSORS_LM63 is not set |
1668 | # CONFIG_SENSORS_LM70 is not set | 1959 | # CONFIG_SENSORS_LM70 is not set |
1669 | # CONFIG_SENSORS_LM73 is not set | 1960 | # CONFIG_SENSORS_LM73 is not set |
1670 | # CONFIG_SENSORS_LM75 is not set | 1961 | # CONFIG_SENSORS_LM75 is not set |
1671 | # CONFIG_SENSORS_LM77 is not set | 1962 | # CONFIG_SENSORS_LM77 is not set |
1672 | # CONFIG_SENSORS_LM78 is not set | 1963 | # CONFIG_SENSORS_LM78 is not set |
1673 | # CONFIG_SENSORS_LM80 is not set | 1964 | # CONFIG_SENSORS_LM80 is not set |
1674 | # CONFIG_SENSORS_LM83 is not set | 1965 | # CONFIG_SENSORS_LM83 is not set |
1675 | # CONFIG_SENSORS_LM85 is not set | 1966 | # CONFIG_SENSORS_LM85 is not set |
1676 | # CONFIG_SENSORS_LM87 is not set | 1967 | # CONFIG_SENSORS_LM87 is not set |
1677 | # CONFIG_SENSORS_LM90 is not set | 1968 | # CONFIG_SENSORS_LM90 is not set |
1678 | # CONFIG_SENSORS_LM92 is not set | 1969 | # CONFIG_SENSORS_LM92 is not set |
1679 | # CONFIG_SENSORS_LM93 is not set | 1970 | # CONFIG_SENSORS_LM93 is not set |
1680 | # CONFIG_SENSORS_LTC4151 is not set | 1971 | # CONFIG_SENSORS_LTC4151 is not set |
1681 | # CONFIG_SENSORS_LTC4215 is not set | 1972 | # CONFIG_SENSORS_LTC4215 is not set |
1682 | # CONFIG_SENSORS_LTC4245 is not set | 1973 | # CONFIG_SENSORS_LTC4245 is not set |
1683 | # CONFIG_SENSORS_LTC4261 is not set | 1974 | # CONFIG_SENSORS_LTC4261 is not set |
1684 | # CONFIG_SENSORS_LM95234 is not set | 1975 | # CONFIG_SENSORS_LM95234 is not set |
1685 | # CONFIG_SENSORS_LM95241 is not set | 1976 | # CONFIG_SENSORS_LM95241 is not set |
1686 | # CONFIG_SENSORS_LM95245 is not set | 1977 | # CONFIG_SENSORS_LM95245 is not set |
1687 | # CONFIG_SENSORS_MAX1111 is not set | 1978 | # CONFIG_SENSORS_MAX1111 is not set |
1688 | # CONFIG_SENSORS_MAX16065 is not set | 1979 | # CONFIG_SENSORS_MAX16065 is not set |
1689 | # CONFIG_SENSORS_MAX1619 is not set | 1980 | # CONFIG_SENSORS_MAX1619 is not set |
1690 | # CONFIG_SENSORS_MAX1668 is not set | 1981 | # CONFIG_SENSORS_MAX1668 is not set |
1691 | CONFIG_SENSORS_MAX17135=y | 1982 | CONFIG_SENSORS_MAX17135=y |
1692 | # CONFIG_SENSORS_MAX197 is not set | 1983 | # CONFIG_SENSORS_MAX197 is not set |
1693 | # CONFIG_SENSORS_MAX6639 is not set | 1984 | # CONFIG_SENSORS_MAX6639 is not set |
1694 | # CONFIG_SENSORS_MAX6642 is not set | 1985 | # CONFIG_SENSORS_MAX6642 is not set |
1695 | # CONFIG_SENSORS_MAX6650 is not set | 1986 | # CONFIG_SENSORS_MAX6650 is not set |
1696 | # CONFIG_SENSORS_MAX6697 is not set | 1987 | # CONFIG_SENSORS_MAX6697 is not set |
1697 | # CONFIG_SENSORS_MCP3021 is not set | 1988 | # CONFIG_SENSORS_MCP3021 is not set |
1698 | # CONFIG_SENSORS_NCT6775 is not set | 1989 | # CONFIG_SENSORS_NCT6775 is not set |
1699 | # CONFIG_SENSORS_NTC_THERMISTOR is not set | 1990 | # CONFIG_SENSORS_NTC_THERMISTOR is not set |
1700 | # CONFIG_SENSORS_PC87360 is not set | 1991 | # CONFIG_SENSORS_PC87360 is not set |
1701 | # CONFIG_SENSORS_PC87427 is not set | 1992 | # CONFIG_SENSORS_PC87427 is not set |
1702 | # CONFIG_SENSORS_PCF8591 is not set | 1993 | # CONFIG_SENSORS_PCF8591 is not set |
1703 | # CONFIG_PMBUS is not set | 1994 | # CONFIG_PMBUS is not set |
1704 | # CONFIG_SENSORS_SHT15 is not set | 1995 | # CONFIG_SENSORS_SHT15 is not set |
1705 | # CONFIG_SENSORS_SHT21 is not set | 1996 | # CONFIG_SENSORS_SHT21 is not set |
1997 | # CONFIG_SENSORS_SIS5595 is not set | ||
1706 | # CONFIG_SENSORS_SMM665 is not set | 1998 | # CONFIG_SENSORS_SMM665 is not set |
1707 | # CONFIG_SENSORS_DME1737 is not set | 1999 | # CONFIG_SENSORS_DME1737 is not set |
1708 | # CONFIG_SENSORS_EMC1403 is not set | 2000 | # CONFIG_SENSORS_EMC1403 is not set |
1709 | # CONFIG_SENSORS_EMC2103 is not set | 2001 | # CONFIG_SENSORS_EMC2103 is not set |
1710 | # CONFIG_SENSORS_EMC6W201 is not set | 2002 | # CONFIG_SENSORS_EMC6W201 is not set |
1711 | # CONFIG_SENSORS_SMSC47M1 is not set | 2003 | # CONFIG_SENSORS_SMSC47M1 is not set |
1712 | # CONFIG_SENSORS_SMSC47M192 is not set | 2004 | # CONFIG_SENSORS_SMSC47M192 is not set |
1713 | # CONFIG_SENSORS_SMSC47B397 is not set | 2005 | # CONFIG_SENSORS_SMSC47B397 is not set |
1714 | # CONFIG_SENSORS_SCH56XX_COMMON is not set | 2006 | # CONFIG_SENSORS_SCH56XX_COMMON is not set |
1715 | # CONFIG_SENSORS_SCH5627 is not set | 2007 | # CONFIG_SENSORS_SCH5627 is not set |
1716 | # CONFIG_SENSORS_SCH5636 is not set | 2008 | # CONFIG_SENSORS_SCH5636 is not set |
1717 | # CONFIG_SENSORS_ADS1015 is not set | 2009 | # CONFIG_SENSORS_ADS1015 is not set |
1718 | # CONFIG_SENSORS_ADS7828 is not set | 2010 | # CONFIG_SENSORS_ADS7828 is not set |
1719 | # CONFIG_SENSORS_ADS7871 is not set | 2011 | # CONFIG_SENSORS_ADS7871 is not set |
1720 | # CONFIG_SENSORS_AMC6821 is not set | 2012 | # CONFIG_SENSORS_AMC6821 is not set |
1721 | # CONFIG_SENSORS_INA209 is not set | 2013 | # CONFIG_SENSORS_INA209 is not set |
1722 | # CONFIG_SENSORS_INA2XX is not set | 2014 | # CONFIG_SENSORS_INA2XX is not set |
1723 | # CONFIG_SENSORS_THMC50 is not set | 2015 | # CONFIG_SENSORS_THMC50 is not set |
1724 | # CONFIG_SENSORS_TMP102 is not set | 2016 | # CONFIG_SENSORS_TMP102 is not set |
1725 | # CONFIG_SENSORS_TMP401 is not set | 2017 | # CONFIG_SENSORS_TMP401 is not set |
1726 | # CONFIG_SENSORS_TMP421 is not set | 2018 | # CONFIG_SENSORS_TMP421 is not set |
2019 | # CONFIG_SENSORS_VIA686A is not set | ||
1727 | # CONFIG_SENSORS_VT1211 is not set | 2020 | # CONFIG_SENSORS_VT1211 is not set |
2021 | # CONFIG_SENSORS_VT8231 is not set | ||
1728 | # CONFIG_SENSORS_W83781D is not set | 2022 | # CONFIG_SENSORS_W83781D is not set |
1729 | # CONFIG_SENSORS_W83791D is not set | 2023 | # CONFIG_SENSORS_W83791D is not set |
1730 | # CONFIG_SENSORS_W83792D is not set | 2024 | # CONFIG_SENSORS_W83792D is not set |
1731 | # CONFIG_SENSORS_W83793 is not set | 2025 | # CONFIG_SENSORS_W83793 is not set |
1732 | # CONFIG_SENSORS_W83795 is not set | 2026 | # CONFIG_SENSORS_W83795 is not set |
1733 | # CONFIG_SENSORS_W83L785TS is not set | 2027 | # CONFIG_SENSORS_W83L785TS is not set |
1734 | # CONFIG_SENSORS_W83L786NG is not set | 2028 | # CONFIG_SENSORS_W83L786NG is not set |
1735 | # CONFIG_SENSORS_W83627HF is not set | 2029 | # CONFIG_SENSORS_W83627HF is not set |
1736 | # CONFIG_SENSORS_W83627EHF is not set | 2030 | # CONFIG_SENSORS_W83627EHF is not set |
1737 | # CONFIG_SENSORS_MC13783_ADC is not set | 2031 | # CONFIG_SENSORS_MC13783_ADC is not set |
1738 | CONFIG_SENSORS_MAG3110=y | 2032 | CONFIG_SENSORS_MAG3110=y |
1739 | CONFIG_MXC_MMA8451=y | 2033 | CONFIG_MXC_MMA8451=y |
1740 | # CONFIG_MXC_MMA8x5x is not set | 2034 | # CONFIG_MXC_MMA8x5x is not set |
1741 | CONFIG_THERMAL=y | 2035 | CONFIG_THERMAL=y |
1742 | CONFIG_THERMAL_HWMON=y | 2036 | CONFIG_THERMAL_HWMON=y |
1743 | CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y | 2037 | CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y |
1744 | # CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set | 2038 | # CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set |
1745 | # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set | 2039 | # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set |
1746 | # CONFIG_THERMAL_GOV_FAIR_SHARE is not set | 2040 | # CONFIG_THERMAL_GOV_FAIR_SHARE is not set |
1747 | CONFIG_THERMAL_GOV_STEP_WISE=y | 2041 | CONFIG_THERMAL_GOV_STEP_WISE=y |
1748 | # CONFIG_THERMAL_GOV_USER_SPACE is not set | 2042 | # CONFIG_THERMAL_GOV_USER_SPACE is not set |
1749 | CONFIG_CPU_THERMAL=y | 2043 | CONFIG_CPU_THERMAL=y |
1750 | # CONFIG_THERMAL_EMULATION is not set | 2044 | # CONFIG_THERMAL_EMULATION is not set |
1751 | CONFIG_IMX_THERMAL=y | 2045 | CONFIG_IMX_THERMAL=y |
1752 | CONFIG_DEVICE_THERMAL=y | 2046 | CONFIG_DEVICE_THERMAL=y |
1753 | CONFIG_WATCHDOG=y | 2047 | CONFIG_WATCHDOG=y |
1754 | # CONFIG_WATCHDOG_CORE is not set | 2048 | # CONFIG_WATCHDOG_CORE is not set |
1755 | # CONFIG_WATCHDOG_NOWAYOUT is not set | 2049 | # CONFIG_WATCHDOG_NOWAYOUT is not set |
1756 | 2050 | ||
1757 | # | 2051 | # |
1758 | # Watchdog Device Drivers | 2052 | # Watchdog Device Drivers |
1759 | # | 2053 | # |
1760 | # CONFIG_SOFT_WATCHDOG is not set | 2054 | # CONFIG_SOFT_WATCHDOG is not set |
1761 | # CONFIG_DA9052_WATCHDOG is not set | 2055 | # CONFIG_DA9052_WATCHDOG is not set |
1762 | # CONFIG_DW_WATCHDOG is not set | 2056 | # CONFIG_DW_WATCHDOG is not set |
1763 | # CONFIG_MPCORE_WATCHDOG is not set | 2057 | # CONFIG_MPCORE_WATCHDOG is not set |
1764 | # CONFIG_MAX63XX_WATCHDOG is not set | 2058 | # CONFIG_MAX63XX_WATCHDOG is not set |
1765 | CONFIG_IMX2_WDT=y | 2059 | CONFIG_IMX2_WDT=y |
2060 | # CONFIG_ALIM7101_WDT is not set | ||
2061 | # CONFIG_I6300ESB_WDT is not set | ||
1766 | 2062 | ||
1767 | # | 2063 | # |
2064 | # PCI-based Watchdog Cards | ||
2065 | # | ||
2066 | # CONFIG_PCIPCWATCHDOG is not set | ||
2067 | # CONFIG_WDTPCI is not set | ||
2068 | |||
2069 | # | ||
1768 | # USB-based Watchdog Cards | 2070 | # USB-based Watchdog Cards |
1769 | # | 2071 | # |
1770 | # CONFIG_USBPCWATCHDOG is not set | 2072 | # CONFIG_USBPCWATCHDOG is not set |
1771 | CONFIG_SSB_POSSIBLE=y | 2073 | CONFIG_SSB_POSSIBLE=y |
1772 | 2074 | ||
1773 | # | 2075 | # |
1774 | # Sonics Silicon Backplane | 2076 | # Sonics Silicon Backplane |
1775 | # | 2077 | # |
1776 | # CONFIG_SSB is not set | 2078 | # CONFIG_SSB is not set |
1777 | CONFIG_BCMA_POSSIBLE=y | 2079 | CONFIG_BCMA_POSSIBLE=y |
1778 | 2080 | ||
1779 | # | 2081 | # |
1780 | # Broadcom specific AMBA | 2082 | # Broadcom specific AMBA |
1781 | # | 2083 | # |
1782 | # CONFIG_BCMA is not set | 2084 | # CONFIG_BCMA is not set |
1783 | 2085 | ||
1784 | # | 2086 | # |
1785 | # Multifunction device drivers | 2087 | # Multifunction device drivers |
1786 | # | 2088 | # |
1787 | CONFIG_MFD_CORE=y | 2089 | CONFIG_MFD_CORE=y |
1788 | # CONFIG_MFD_AS3711 is not set | 2090 | # CONFIG_MFD_AS3711 is not set |
1789 | # CONFIG_PMIC_ADP5520 is not set | 2091 | # CONFIG_PMIC_ADP5520 is not set |
1790 | # CONFIG_MFD_AAT2870_CORE is not set | 2092 | # CONFIG_MFD_AAT2870_CORE is not set |
1791 | # CONFIG_MFD_CROS_EC is not set | 2093 | # CONFIG_MFD_CROS_EC is not set |
1792 | # CONFIG_MFD_ASIC3 is not set | 2094 | # CONFIG_MFD_ASIC3 is not set |
1793 | # CONFIG_PMIC_DA903X is not set | 2095 | # CONFIG_PMIC_DA903X is not set |
1794 | CONFIG_PMIC_DA9052=y | 2096 | CONFIG_PMIC_DA9052=y |
1795 | # CONFIG_MFD_DA9052_SPI is not set | 2097 | # CONFIG_MFD_DA9052_SPI is not set |
1796 | CONFIG_MFD_DA9052_I2C=y | 2098 | CONFIG_MFD_DA9052_I2C=y |
1797 | # CONFIG_MFD_DA9055 is not set | 2099 | # CONFIG_MFD_DA9055 is not set |
1798 | CONFIG_MFD_MXC_HDMI=y | 2100 | CONFIG_MFD_MXC_HDMI=y |
1799 | CONFIG_MFD_MC13783=y | 2101 | CONFIG_MFD_MC13783=y |
1800 | CONFIG_MFD_MC13XXX=y | 2102 | CONFIG_MFD_MC13XXX=y |
1801 | CONFIG_MFD_MC13XXX_SPI=y | 2103 | CONFIG_MFD_MC13XXX_SPI=y |
1802 | CONFIG_MFD_MC13XXX_I2C=y | 2104 | CONFIG_MFD_MC13XXX_I2C=y |
1803 | # CONFIG_HTC_EGPIO is not set | 2105 | # CONFIG_HTC_EGPIO is not set |
1804 | # CONFIG_HTC_PASIC3 is not set | 2106 | # CONFIG_HTC_PASIC3 is not set |
1805 | # CONFIG_HTC_I2CPLD is not set | 2107 | # CONFIG_HTC_I2CPLD is not set |
2108 | # CONFIG_LPC_ICH is not set | ||
2109 | # CONFIG_LPC_SCH is not set | ||
2110 | # CONFIG_MFD_JANZ_CMODIO is not set | ||
1806 | # CONFIG_MFD_88PM800 is not set | 2111 | # CONFIG_MFD_88PM800 is not set |
1807 | # CONFIG_MFD_88PM805 is not set | 2112 | # CONFIG_MFD_88PM805 is not set |
1808 | # CONFIG_MFD_88PM860X is not set | 2113 | # CONFIG_MFD_88PM860X is not set |
1809 | CONFIG_MFD_MAX17135=y | 2114 | CONFIG_MFD_MAX17135=y |
1810 | # CONFIG_MFD_MAX77686 is not set | 2115 | # CONFIG_MFD_MAX77686 is not set |
1811 | # CONFIG_MFD_MAX77693 is not set | 2116 | # CONFIG_MFD_MAX77693 is not set |
1812 | # CONFIG_MFD_MAX8907 is not set | 2117 | # CONFIG_MFD_MAX8907 is not set |
1813 | # CONFIG_MFD_MAX8925 is not set | 2118 | # CONFIG_MFD_MAX8925 is not set |
1814 | # CONFIG_MFD_MAX8997 is not set | 2119 | # CONFIG_MFD_MAX8997 is not set |
1815 | # CONFIG_MFD_MAX8998 is not set | 2120 | # CONFIG_MFD_MAX8998 is not set |
1816 | # CONFIG_EZX_PCAP is not set | 2121 | # CONFIG_EZX_PCAP is not set |
1817 | # CONFIG_MFD_VIPERBOARD is not set | 2122 | # CONFIG_MFD_VIPERBOARD is not set |
1818 | # CONFIG_MFD_RETU is not set | 2123 | # CONFIG_MFD_RETU is not set |
1819 | # CONFIG_MFD_PCF50633 is not set | 2124 | # CONFIG_MFD_PCF50633 is not set |
2125 | # CONFIG_MFD_RDC321X is not set | ||
2126 | # CONFIG_MFD_RTSX_PCI is not set | ||
1820 | # CONFIG_MFD_RC5T583 is not set | 2127 | # CONFIG_MFD_RC5T583 is not set |
1821 | # CONFIG_MFD_SEC_CORE is not set | 2128 | # CONFIG_MFD_SEC_CORE is not set |
1822 | CONFIG_MFD_SI476X_CORE=y | 2129 | CONFIG_MFD_SI476X_CORE=y |
1823 | # CONFIG_MFD_SM501 is not set | 2130 | # CONFIG_MFD_SM501 is not set |
1824 | # CONFIG_MFD_SMSC is not set | 2131 | # CONFIG_MFD_SMSC is not set |
1825 | # CONFIG_ABX500_CORE is not set | 2132 | # CONFIG_ABX500_CORE is not set |
1826 | # CONFIG_MFD_STMPE is not set | 2133 | # CONFIG_MFD_STMPE is not set |
1827 | CONFIG_MFD_SYSCON=y | 2134 | CONFIG_MFD_SYSCON=y |
1828 | # CONFIG_MFD_TI_AM335X_TSCADC is not set | 2135 | # CONFIG_MFD_TI_AM335X_TSCADC is not set |
1829 | # CONFIG_MFD_LP8788 is not set | 2136 | # CONFIG_MFD_LP8788 is not set |
1830 | # CONFIG_MFD_PALMAS is not set | 2137 | # CONFIG_MFD_PALMAS is not set |
1831 | # CONFIG_TPS6105X is not set | 2138 | # CONFIG_TPS6105X is not set |
1832 | # CONFIG_TPS65010 is not set | 2139 | # CONFIG_TPS65010 is not set |
1833 | # CONFIG_TPS6507X is not set | 2140 | # CONFIG_TPS6507X is not set |
1834 | # CONFIG_MFD_TPS65090 is not set | 2141 | # CONFIG_MFD_TPS65090 is not set |
1835 | # CONFIG_MFD_TPS65217 is not set | 2142 | # CONFIG_MFD_TPS65217 is not set |
1836 | # CONFIG_MFD_TPS6586X is not set | 2143 | # CONFIG_MFD_TPS6586X is not set |
1837 | # CONFIG_MFD_TPS65910 is not set | 2144 | # CONFIG_MFD_TPS65910 is not set |
1838 | # CONFIG_MFD_TPS65912 is not set | 2145 | # CONFIG_MFD_TPS65912 is not set |
1839 | # CONFIG_MFD_TPS65912_I2C is not set | 2146 | # CONFIG_MFD_TPS65912_I2C is not set |
1840 | # CONFIG_MFD_TPS65912_SPI is not set | 2147 | # CONFIG_MFD_TPS65912_SPI is not set |
1841 | # CONFIG_MFD_TPS80031 is not set | 2148 | # CONFIG_MFD_TPS80031 is not set |
1842 | # CONFIG_TWL4030_CORE is not set | 2149 | # CONFIG_TWL4030_CORE is not set |
1843 | # CONFIG_TWL6040_CORE is not set | 2150 | # CONFIG_TWL6040_CORE is not set |
1844 | # CONFIG_MFD_WL1273_CORE is not set | 2151 | # CONFIG_MFD_WL1273_CORE is not set |
1845 | # CONFIG_MFD_LM3533 is not set | 2152 | # CONFIG_MFD_LM3533 is not set |
2153 | # CONFIG_MFD_TIMBERDALE is not set | ||
1846 | # CONFIG_MFD_TC3589X is not set | 2154 | # CONFIG_MFD_TC3589X is not set |
1847 | # CONFIG_MFD_TMIO is not set | 2155 | # CONFIG_MFD_TMIO is not set |
1848 | # CONFIG_MFD_T7L66XB is not set | 2156 | # CONFIG_MFD_T7L66XB is not set |
1849 | # CONFIG_MFD_TC6387XB is not set | 2157 | # CONFIG_MFD_TC6387XB is not set |
1850 | # CONFIG_MFD_TC6393XB is not set | 2158 | # CONFIG_MFD_TC6393XB is not set |
2159 | # CONFIG_MFD_VX855 is not set | ||
1851 | # CONFIG_MFD_ARIZONA_I2C is not set | 2160 | # CONFIG_MFD_ARIZONA_I2C is not set |
1852 | # CONFIG_MFD_ARIZONA_SPI is not set | 2161 | # CONFIG_MFD_ARIZONA_SPI is not set |
1853 | # CONFIG_MFD_WM8400 is not set | 2162 | # CONFIG_MFD_WM8400 is not set |
1854 | # CONFIG_MFD_WM831X_I2C is not set | 2163 | # CONFIG_MFD_WM831X_I2C is not set |
1855 | # CONFIG_MFD_WM831X_SPI is not set | 2164 | # CONFIG_MFD_WM831X_SPI is not set |
1856 | # CONFIG_MFD_WM8350_I2C is not set | 2165 | # CONFIG_MFD_WM8350_I2C is not set |
1857 | # CONFIG_MFD_WM8994 is not set | 2166 | # CONFIG_MFD_WM8994 is not set |
1858 | CONFIG_REGULATOR=y | 2167 | CONFIG_REGULATOR=y |
1859 | # CONFIG_REGULATOR_DEBUG is not set | 2168 | # CONFIG_REGULATOR_DEBUG is not set |
1860 | # CONFIG_REGULATOR_DUMMY is not set | 2169 | # CONFIG_REGULATOR_DUMMY is not set |
1861 | CONFIG_REGULATOR_FIXED_VOLTAGE=y | 2170 | CONFIG_REGULATOR_FIXED_VOLTAGE=y |
1862 | # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set | 2171 | # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set |
1863 | # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set | 2172 | # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set |
1864 | # CONFIG_REGULATOR_GPIO is not set | 2173 | # CONFIG_REGULATOR_GPIO is not set |
1865 | # CONFIG_REGULATOR_AD5398 is not set | 2174 | # CONFIG_REGULATOR_AD5398 is not set |
1866 | CONFIG_REGULATOR_DA9052=y | 2175 | CONFIG_REGULATOR_DA9052=y |
1867 | # CONFIG_REGULATOR_FAN53555 is not set | 2176 | # CONFIG_REGULATOR_FAN53555 is not set |
1868 | CONFIG_REGULATOR_ANATOP=y | 2177 | CONFIG_REGULATOR_ANATOP=y |
1869 | CONFIG_REGULATOR_MC13XXX_CORE=y | 2178 | CONFIG_REGULATOR_MC13XXX_CORE=y |
1870 | CONFIG_REGULATOR_MC13783=y | 2179 | CONFIG_REGULATOR_MC13783=y |
1871 | CONFIG_REGULATOR_MC13892=y | 2180 | CONFIG_REGULATOR_MC13892=y |
1872 | # CONFIG_REGULATOR_ISL6271A is not set | 2181 | # CONFIG_REGULATOR_ISL6271A is not set |
1873 | # CONFIG_REGULATOR_MAX1586 is not set | 2182 | # CONFIG_REGULATOR_MAX1586 is not set |
1874 | CONFIG_REGULATOR_MAX17135=y | 2183 | CONFIG_REGULATOR_MAX17135=y |
1875 | # CONFIG_REGULATOR_MAX8649 is not set | 2184 | # CONFIG_REGULATOR_MAX8649 is not set |
1876 | # CONFIG_REGULATOR_MAX8660 is not set | 2185 | # CONFIG_REGULATOR_MAX8660 is not set |
1877 | # CONFIG_REGULATOR_MAX8952 is not set | 2186 | # CONFIG_REGULATOR_MAX8952 is not set |
1878 | # CONFIG_REGULATOR_MAX8973 is not set | 2187 | # CONFIG_REGULATOR_MAX8973 is not set |
1879 | # CONFIG_REGULATOR_LP3971 is not set | 2188 | # CONFIG_REGULATOR_LP3971 is not set |
1880 | # CONFIG_REGULATOR_LP3972 is not set | 2189 | # CONFIG_REGULATOR_LP3972 is not set |
1881 | # CONFIG_REGULATOR_LP872X is not set | 2190 | # CONFIG_REGULATOR_LP872X is not set |
1882 | # CONFIG_REGULATOR_LP8755 is not set | 2191 | # CONFIG_REGULATOR_LP8755 is not set |
1883 | CONFIG_REGULATOR_PFUZE100=y | 2192 | CONFIG_REGULATOR_PFUZE100=y |
1884 | # CONFIG_REGULATOR_TPS51632 is not set | 2193 | # CONFIG_REGULATOR_TPS51632 is not set |
1885 | # CONFIG_REGULATOR_TPS62360 is not set | 2194 | # CONFIG_REGULATOR_TPS62360 is not set |
1886 | # CONFIG_REGULATOR_TPS65023 is not set | 2195 | # CONFIG_REGULATOR_TPS65023 is not set |
1887 | # CONFIG_REGULATOR_TPS6507X is not set | 2196 | # CONFIG_REGULATOR_TPS6507X is not set |
1888 | # CONFIG_REGULATOR_TPS6524X is not set | 2197 | # CONFIG_REGULATOR_TPS6524X is not set |
1889 | CONFIG_MEDIA_SUPPORT=y | 2198 | CONFIG_MEDIA_SUPPORT=y |
1890 | 2199 | ||
1891 | # | 2200 | # |
1892 | # Multimedia core support | 2201 | # Multimedia core support |
1893 | # | 2202 | # |
1894 | CONFIG_MEDIA_CAMERA_SUPPORT=y | 2203 | CONFIG_MEDIA_CAMERA_SUPPORT=y |
1895 | # CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set | 2204 | # CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set |
1896 | # CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set | 2205 | # CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set |
1897 | CONFIG_MEDIA_RADIO_SUPPORT=y | 2206 | CONFIG_MEDIA_RADIO_SUPPORT=y |
1898 | # CONFIG_MEDIA_RC_SUPPORT is not set | 2207 | # CONFIG_MEDIA_RC_SUPPORT is not set |
1899 | # CONFIG_MEDIA_CONTROLLER is not set | 2208 | # CONFIG_MEDIA_CONTROLLER is not set |
1900 | CONFIG_VIDEO_DEV=y | 2209 | CONFIG_VIDEO_DEV=y |
1901 | CONFIG_VIDEO_V4L2=y | 2210 | CONFIG_VIDEO_V4L2=y |
1902 | # CONFIG_VIDEO_ADV_DEBUG is not set | 2211 | # CONFIG_VIDEO_ADV_DEBUG is not set |
1903 | # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set | 2212 | # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set |
1904 | CONFIG_VIDEOBUF_GEN=y | 2213 | CONFIG_VIDEOBUF_GEN=y |
1905 | CONFIG_VIDEOBUF_DMA_CONTIG=y | 2214 | CONFIG_VIDEOBUF_DMA_CONTIG=y |
1906 | CONFIG_VIDEOBUF2_CORE=y | 2215 | CONFIG_VIDEOBUF2_CORE=y |
1907 | CONFIG_VIDEOBUF2_MEMOPS=y | 2216 | CONFIG_VIDEOBUF2_MEMOPS=y |
1908 | CONFIG_VIDEOBUF2_DMA_CONTIG=y | 2217 | CONFIG_VIDEOBUF2_DMA_CONTIG=y |
1909 | CONFIG_VIDEOBUF2_VMALLOC=m | 2218 | CONFIG_VIDEOBUF2_VMALLOC=m |
1910 | CONFIG_VIDEO_V4L2_INT_DEVICE=y | 2219 | CONFIG_VIDEO_V4L2_INT_DEVICE=y |
1911 | # CONFIG_TTPCI_EEPROM is not set | 2220 | # CONFIG_TTPCI_EEPROM is not set |
1912 | 2221 | ||
1913 | # | 2222 | # |
1914 | # Media drivers | 2223 | # Media drivers |
1915 | # | 2224 | # |
1916 | CONFIG_MEDIA_USB_SUPPORT=y | 2225 | CONFIG_MEDIA_USB_SUPPORT=y |
1917 | 2226 | ||
1918 | # | 2227 | # |
1919 | # Webcam devices | 2228 | # Webcam devices |
1920 | # | 2229 | # |
1921 | CONFIG_USB_VIDEO_CLASS=m | 2230 | CONFIG_USB_VIDEO_CLASS=m |
1922 | CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y | 2231 | CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y |
1923 | CONFIG_USB_GSPCA=m | 2232 | CONFIG_USB_GSPCA=m |
1924 | # CONFIG_USB_M5602 is not set | 2233 | # CONFIG_USB_M5602 is not set |
1925 | # CONFIG_USB_STV06XX is not set | 2234 | # CONFIG_USB_STV06XX is not set |
1926 | # CONFIG_USB_GL860 is not set | 2235 | # CONFIG_USB_GL860 is not set |
1927 | # CONFIG_USB_GSPCA_BENQ is not set | 2236 | # CONFIG_USB_GSPCA_BENQ is not set |
1928 | # CONFIG_USB_GSPCA_CONEX is not set | 2237 | # CONFIG_USB_GSPCA_CONEX is not set |
1929 | # CONFIG_USB_GSPCA_CPIA1 is not set | 2238 | # CONFIG_USB_GSPCA_CPIA1 is not set |
1930 | # CONFIG_USB_GSPCA_ETOMS is not set | 2239 | # CONFIG_USB_GSPCA_ETOMS is not set |
1931 | # CONFIG_USB_GSPCA_FINEPIX is not set | 2240 | # CONFIG_USB_GSPCA_FINEPIX is not set |
1932 | # CONFIG_USB_GSPCA_JEILINJ is not set | 2241 | # CONFIG_USB_GSPCA_JEILINJ is not set |
1933 | # CONFIG_USB_GSPCA_JL2005BCD is not set | 2242 | # CONFIG_USB_GSPCA_JL2005BCD is not set |
1934 | # CONFIG_USB_GSPCA_KINECT is not set | 2243 | # CONFIG_USB_GSPCA_KINECT is not set |
1935 | # CONFIG_USB_GSPCA_KONICA is not set | 2244 | # CONFIG_USB_GSPCA_KONICA is not set |
1936 | # CONFIG_USB_GSPCA_MARS is not set | 2245 | # CONFIG_USB_GSPCA_MARS is not set |
1937 | # CONFIG_USB_GSPCA_MR97310A is not set | 2246 | # CONFIG_USB_GSPCA_MR97310A is not set |
1938 | # CONFIG_USB_GSPCA_NW80X is not set | 2247 | # CONFIG_USB_GSPCA_NW80X is not set |
1939 | # CONFIG_USB_GSPCA_OV519 is not set | 2248 | # CONFIG_USB_GSPCA_OV519 is not set |
1940 | # CONFIG_USB_GSPCA_OV534 is not set | 2249 | # CONFIG_USB_GSPCA_OV534 is not set |
1941 | # CONFIG_USB_GSPCA_OV534_9 is not set | 2250 | # CONFIG_USB_GSPCA_OV534_9 is not set |
1942 | # CONFIG_USB_GSPCA_PAC207 is not set | 2251 | # CONFIG_USB_GSPCA_PAC207 is not set |
1943 | # CONFIG_USB_GSPCA_PAC7302 is not set | 2252 | # CONFIG_USB_GSPCA_PAC7302 is not set |
1944 | # CONFIG_USB_GSPCA_PAC7311 is not set | 2253 | # CONFIG_USB_GSPCA_PAC7311 is not set |
1945 | # CONFIG_USB_GSPCA_SE401 is not set | 2254 | # CONFIG_USB_GSPCA_SE401 is not set |
1946 | # CONFIG_USB_GSPCA_SN9C2028 is not set | 2255 | # CONFIG_USB_GSPCA_SN9C2028 is not set |
1947 | # CONFIG_USB_GSPCA_SN9C20X is not set | 2256 | # CONFIG_USB_GSPCA_SN9C20X is not set |
1948 | # CONFIG_USB_GSPCA_SONIXB is not set | 2257 | # CONFIG_USB_GSPCA_SONIXB is not set |
1949 | # CONFIG_USB_GSPCA_SONIXJ is not set | 2258 | # CONFIG_USB_GSPCA_SONIXJ is not set |
1950 | # CONFIG_USB_GSPCA_SPCA500 is not set | 2259 | # CONFIG_USB_GSPCA_SPCA500 is not set |
1951 | # CONFIG_USB_GSPCA_SPCA501 is not set | 2260 | # CONFIG_USB_GSPCA_SPCA501 is not set |
1952 | # CONFIG_USB_GSPCA_SPCA505 is not set | 2261 | # CONFIG_USB_GSPCA_SPCA505 is not set |
1953 | # CONFIG_USB_GSPCA_SPCA506 is not set | 2262 | # CONFIG_USB_GSPCA_SPCA506 is not set |
1954 | # CONFIG_USB_GSPCA_SPCA508 is not set | 2263 | # CONFIG_USB_GSPCA_SPCA508 is not set |
1955 | # CONFIG_USB_GSPCA_SPCA561 is not set | 2264 | # CONFIG_USB_GSPCA_SPCA561 is not set |
1956 | # CONFIG_USB_GSPCA_SPCA1528 is not set | 2265 | # CONFIG_USB_GSPCA_SPCA1528 is not set |
1957 | # CONFIG_USB_GSPCA_SQ905 is not set | 2266 | # CONFIG_USB_GSPCA_SQ905 is not set |
1958 | # CONFIG_USB_GSPCA_SQ905C is not set | 2267 | # CONFIG_USB_GSPCA_SQ905C is not set |
1959 | # CONFIG_USB_GSPCA_SQ930X is not set | 2268 | # CONFIG_USB_GSPCA_SQ930X is not set |
1960 | # CONFIG_USB_GSPCA_STK014 is not set | 2269 | # CONFIG_USB_GSPCA_STK014 is not set |
1961 | # CONFIG_USB_GSPCA_STV0680 is not set | 2270 | # CONFIG_USB_GSPCA_STV0680 is not set |
1962 | # CONFIG_USB_GSPCA_SUNPLUS is not set | 2271 | # CONFIG_USB_GSPCA_SUNPLUS is not set |
1963 | # CONFIG_USB_GSPCA_T613 is not set | 2272 | # CONFIG_USB_GSPCA_T613 is not set |
1964 | # CONFIG_USB_GSPCA_TOPRO is not set | 2273 | # CONFIG_USB_GSPCA_TOPRO is not set |
1965 | # CONFIG_USB_GSPCA_TV8532 is not set | 2274 | # CONFIG_USB_GSPCA_TV8532 is not set |
1966 | # CONFIG_USB_GSPCA_VC032X is not set | 2275 | # CONFIG_USB_GSPCA_VC032X is not set |
1967 | # CONFIG_USB_GSPCA_VICAM is not set | 2276 | # CONFIG_USB_GSPCA_VICAM is not set |
1968 | # CONFIG_USB_GSPCA_XIRLINK_CIT is not set | 2277 | # CONFIG_USB_GSPCA_XIRLINK_CIT is not set |
1969 | # CONFIG_USB_GSPCA_ZC3XX is not set | 2278 | # CONFIG_USB_GSPCA_ZC3XX is not set |
1970 | # CONFIG_USB_PWC is not set | 2279 | # CONFIG_USB_PWC is not set |
1971 | # CONFIG_VIDEO_CPIA2 is not set | 2280 | # CONFIG_VIDEO_CPIA2 is not set |
1972 | # CONFIG_USB_ZR364XX is not set | 2281 | # CONFIG_USB_ZR364XX is not set |
1973 | # CONFIG_USB_STKWEBCAM is not set | 2282 | # CONFIG_USB_STKWEBCAM is not set |
1974 | # CONFIG_USB_S2255 is not set | 2283 | # CONFIG_USB_S2255 is not set |
1975 | # CONFIG_USB_SN9C102 is not set | 2284 | # CONFIG_USB_SN9C102 is not set |
1976 | 2285 | ||
1977 | # | 2286 | # |
1978 | # Webcam, TV (analog/digital) USB devices | 2287 | # Webcam, TV (analog/digital) USB devices |
1979 | # | 2288 | # |
1980 | # CONFIG_VIDEO_EM28XX is not set | 2289 | # CONFIG_VIDEO_EM28XX is not set |
2290 | # CONFIG_MEDIA_PCI_SUPPORT is not set | ||
1981 | CONFIG_V4L_PLATFORM_DRIVERS=y | 2291 | CONFIG_V4L_PLATFORM_DRIVERS=y |
2292 | # CONFIG_VIDEO_CAFE_CCIC is not set | ||
1982 | # CONFIG_VIDEO_TIMBERDALE is not set | 2293 | # CONFIG_VIDEO_TIMBERDALE is not set |
1983 | CONFIG_VIDEO_MXC_OUTPUT=y | 2294 | CONFIG_VIDEO_MXC_OUTPUT=y |
1984 | CONFIG_VIDEO_MXC_CAPTURE=m | 2295 | CONFIG_VIDEO_MXC_CAPTURE=m |
1985 | 2296 | ||
1986 | # | 2297 | # |
1987 | # MXC Camera/V4L2 PRP Features support | 2298 | # MXC Camera/V4L2 PRP Features support |
1988 | # | 2299 | # |
1989 | CONFIG_VIDEO_MXC_IPU_CAMERA=y | 2300 | CONFIG_VIDEO_MXC_IPU_CAMERA=y |
1990 | CONFIG_VIDEO_MXC_CSI_CAMERA=m | 2301 | CONFIG_VIDEO_MXC_CSI_CAMERA=m |
1991 | CONFIG_MXC_CAMERA_OV5640=m | 2302 | CONFIG_MXC_CAMERA_OV5640=m |
1992 | CONFIG_MXC_CAMERA_OV5642=m | 2303 | CONFIG_MXC_CAMERA_OV5642=m |
1993 | CONFIG_MXC_CAMERA_OV5640_MIPI=m | 2304 | CONFIG_MXC_CAMERA_OV5640_MIPI=m |
1994 | CONFIG_MXC_TVIN_ADV7180=m | 2305 | CONFIG_MXC_TVIN_ADV7180=m |
1995 | CONFIG_MXC_VADC=m | 2306 | CONFIG_MXC_VADC=m |
1996 | CONFIG_MXC_IPU_DEVICE_QUEUE_SDC=m | 2307 | CONFIG_MXC_IPU_DEVICE_QUEUE_SDC=m |
1997 | CONFIG_MXC_IPU_PRP_ENC=m | 2308 | CONFIG_MXC_IPU_PRP_ENC=m |
1998 | CONFIG_MXC_IPU_CSI_ENC=m | 2309 | CONFIG_MXC_IPU_CSI_ENC=m |
1999 | CONFIG_VIDEO_MXC_IPU_OUTPUT=y | 2310 | CONFIG_VIDEO_MXC_IPU_OUTPUT=y |
2000 | CONFIG_VIDEO_MXC_PXP_V4L2=y | 2311 | CONFIG_VIDEO_MXC_PXP_V4L2=y |
2001 | CONFIG_SOC_CAMERA=y | 2312 | CONFIG_SOC_CAMERA=y |
2002 | # CONFIG_SOC_CAMERA_PLATFORM is not set | 2313 | # CONFIG_SOC_CAMERA_PLATFORM is not set |
2003 | CONFIG_MX3_VIDEO=y | 2314 | CONFIG_MX3_VIDEO=y |
2004 | CONFIG_VIDEO_MX3=y | 2315 | CONFIG_VIDEO_MX3=y |
2005 | # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set | 2316 | # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set |
2006 | # CONFIG_VIDEO_SH_MOBILE_CEU is not set | 2317 | # CONFIG_VIDEO_SH_MOBILE_CEU is not set |
2007 | # CONFIG_V4L_MEM2MEM_DRIVERS is not set | 2318 | # CONFIG_V4L_MEM2MEM_DRIVERS is not set |
2008 | # CONFIG_V4L_TEST_DRIVERS is not set | 2319 | # CONFIG_V4L_TEST_DRIVERS is not set |
2009 | 2320 | ||
2010 | # | 2321 | # |
2011 | # Supported MMC/SDIO adapters | 2322 | # Supported MMC/SDIO adapters |
2012 | # | 2323 | # |
2013 | CONFIG_RADIO_ADAPTERS=y | 2324 | CONFIG_RADIO_ADAPTERS=y |
2014 | # CONFIG_RADIO_SI470X is not set | 2325 | # CONFIG_RADIO_SI470X is not set |
2015 | CONFIG_RADIO_SI476X=y | 2326 | CONFIG_RADIO_SI476X=y |
2016 | # CONFIG_USB_MR800 is not set | 2327 | # CONFIG_USB_MR800 is not set |
2017 | # CONFIG_USB_DSBR is not set | 2328 | # CONFIG_USB_DSBR is not set |
2329 | # CONFIG_RADIO_MAXIRADIO is not set | ||
2018 | # CONFIG_RADIO_SHARK is not set | 2330 | # CONFIG_RADIO_SHARK is not set |
2019 | # CONFIG_RADIO_SHARK2 is not set | 2331 | # CONFIG_RADIO_SHARK2 is not set |
2020 | # CONFIG_I2C_SI4713 is not set | 2332 | # CONFIG_I2C_SI4713 is not set |
2021 | # CONFIG_RADIO_SI4713 is not set | 2333 | # CONFIG_RADIO_SI4713 is not set |
2022 | # CONFIG_USB_KEENE is not set | 2334 | # CONFIG_USB_KEENE is not set |
2023 | # CONFIG_USB_MA901 is not set | 2335 | # CONFIG_USB_MA901 is not set |
2024 | # CONFIG_RADIO_TEA5764 is not set | 2336 | # CONFIG_RADIO_TEA5764 is not set |
2025 | # CONFIG_RADIO_SAA7706H is not set | 2337 | # CONFIG_RADIO_SAA7706H is not set |
2026 | # CONFIG_RADIO_TEF6862 is not set | 2338 | # CONFIG_RADIO_TEF6862 is not set |
2027 | # CONFIG_RADIO_WL1273 is not set | 2339 | # CONFIG_RADIO_WL1273 is not set |
2028 | 2340 | ||
2029 | # | 2341 | # |
2030 | # Texas Instruments WL128x FM driver (ST based) | 2342 | # Texas Instruments WL128x FM driver (ST based) |
2031 | # | 2343 | # |
2032 | # CONFIG_CYPRESS_FIRMWARE is not set | 2344 | # CONFIG_CYPRESS_FIRMWARE is not set |
2033 | 2345 | ||
2034 | # | 2346 | # |
2035 | # Media ancillary drivers (tuners, sensors, i2c, frontends) | 2347 | # Media ancillary drivers (tuners, sensors, i2c, frontends) |
2036 | # | 2348 | # |
2037 | CONFIG_MEDIA_SUBDRV_AUTOSELECT=y | 2349 | CONFIG_MEDIA_SUBDRV_AUTOSELECT=y |
2038 | CONFIG_MEDIA_ATTACH=y | 2350 | CONFIG_MEDIA_ATTACH=y |
2039 | 2351 | ||
2040 | # | 2352 | # |
2041 | # Audio decoders, processors and mixers | 2353 | # Audio decoders, processors and mixers |
2042 | # | 2354 | # |
2043 | 2355 | ||
2044 | # | 2356 | # |
2045 | # RDS decoders | 2357 | # RDS decoders |
2046 | # | 2358 | # |
2047 | 2359 | ||
2048 | # | 2360 | # |
2049 | # Video decoders | 2361 | # Video decoders |
2050 | # | 2362 | # |
2051 | 2363 | ||
2052 | # | 2364 | # |
2053 | # Video and audio decoders | 2365 | # Video and audio decoders |
2054 | # | 2366 | # |
2055 | 2367 | ||
2056 | # | 2368 | # |
2057 | # Video encoders | 2369 | # Video encoders |
2058 | # | 2370 | # |
2059 | 2371 | ||
2060 | # | 2372 | # |
2061 | # Camera sensor devices | 2373 | # Camera sensor devices |
2062 | # | 2374 | # |
2063 | 2375 | ||
2064 | # | 2376 | # |
2065 | # Flash devices | 2377 | # Flash devices |
2066 | # | 2378 | # |
2067 | 2379 | ||
2068 | # | 2380 | # |
2069 | # Video improvement chips | 2381 | # Video improvement chips |
2070 | # | 2382 | # |
2071 | 2383 | ||
2072 | # | 2384 | # |
2073 | # Miscelaneous helper chips | 2385 | # Miscelaneous helper chips |
2074 | # | 2386 | # |
2075 | 2387 | ||
2076 | # | 2388 | # |
2077 | # Sensors used on soc_camera driver | 2389 | # Sensors used on soc_camera driver |
2078 | # | 2390 | # |
2079 | 2391 | ||
2080 | # | 2392 | # |
2081 | # soc_camera sensor drivers | 2393 | # soc_camera sensor drivers |
2082 | # | 2394 | # |
2083 | # CONFIG_SOC_CAMERA_IMX074 is not set | 2395 | # CONFIG_SOC_CAMERA_IMX074 is not set |
2084 | # CONFIG_SOC_CAMERA_MT9M001 is not set | 2396 | # CONFIG_SOC_CAMERA_MT9M001 is not set |
2085 | # CONFIG_SOC_CAMERA_MT9M111 is not set | 2397 | # CONFIG_SOC_CAMERA_MT9M111 is not set |
2086 | # CONFIG_SOC_CAMERA_MT9T031 is not set | 2398 | # CONFIG_SOC_CAMERA_MT9T031 is not set |
2087 | # CONFIG_SOC_CAMERA_MT9T112 is not set | 2399 | # CONFIG_SOC_CAMERA_MT9T112 is not set |
2088 | # CONFIG_SOC_CAMERA_MT9V022 is not set | 2400 | # CONFIG_SOC_CAMERA_MT9V022 is not set |
2089 | CONFIG_SOC_CAMERA_OV2640=y | 2401 | CONFIG_SOC_CAMERA_OV2640=y |
2090 | # CONFIG_SOC_CAMERA_OV5642 is not set | 2402 | # CONFIG_SOC_CAMERA_OV5642 is not set |
2091 | # CONFIG_SOC_CAMERA_OV6650 is not set | 2403 | # CONFIG_SOC_CAMERA_OV6650 is not set |
2092 | # CONFIG_SOC_CAMERA_OV772X is not set | 2404 | # CONFIG_SOC_CAMERA_OV772X is not set |
2093 | # CONFIG_SOC_CAMERA_OV9640 is not set | 2405 | # CONFIG_SOC_CAMERA_OV9640 is not set |
2094 | # CONFIG_SOC_CAMERA_OV9740 is not set | 2406 | # CONFIG_SOC_CAMERA_OV9740 is not set |
2095 | # CONFIG_SOC_CAMERA_RJ54N1 is not set | 2407 | # CONFIG_SOC_CAMERA_RJ54N1 is not set |
2096 | # CONFIG_SOC_CAMERA_TW9910 is not set | 2408 | # CONFIG_SOC_CAMERA_TW9910 is not set |
2097 | CONFIG_MEDIA_TUNER=y | 2409 | CONFIG_MEDIA_TUNER=y |
2098 | CONFIG_MEDIA_TUNER_SIMPLE=y | 2410 | CONFIG_MEDIA_TUNER_SIMPLE=y |
2099 | CONFIG_MEDIA_TUNER_TDA8290=y | 2411 | CONFIG_MEDIA_TUNER_TDA8290=y |
2100 | CONFIG_MEDIA_TUNER_TDA827X=y | 2412 | CONFIG_MEDIA_TUNER_TDA827X=y |
2101 | CONFIG_MEDIA_TUNER_TDA18271=y | 2413 | CONFIG_MEDIA_TUNER_TDA18271=y |
2102 | CONFIG_MEDIA_TUNER_TDA9887=y | 2414 | CONFIG_MEDIA_TUNER_TDA9887=y |
2103 | CONFIG_MEDIA_TUNER_TEA5761=y | 2415 | CONFIG_MEDIA_TUNER_TEA5761=y |
2104 | CONFIG_MEDIA_TUNER_TEA5767=y | 2416 | CONFIG_MEDIA_TUNER_TEA5767=y |
2105 | CONFIG_MEDIA_TUNER_MT20XX=y | 2417 | CONFIG_MEDIA_TUNER_MT20XX=y |
2106 | CONFIG_MEDIA_TUNER_XC2028=y | 2418 | CONFIG_MEDIA_TUNER_XC2028=y |
2107 | CONFIG_MEDIA_TUNER_XC5000=y | 2419 | CONFIG_MEDIA_TUNER_XC5000=y |
2108 | CONFIG_MEDIA_TUNER_XC4000=y | 2420 | CONFIG_MEDIA_TUNER_XC4000=y |
2109 | CONFIG_MEDIA_TUNER_MC44S803=y | 2421 | CONFIG_MEDIA_TUNER_MC44S803=y |
2110 | 2422 | ||
2111 | # | 2423 | # |
2112 | # Tools to develop new frontends | 2424 | # Tools to develop new frontends |
2113 | # | 2425 | # |
2114 | # CONFIG_DVB_DUMMY_FE is not set | 2426 | # CONFIG_DVB_DUMMY_FE is not set |
2115 | 2427 | ||
2116 | # | 2428 | # |
2117 | # Graphics support | 2429 | # Graphics support |
2118 | # | 2430 | # |
2431 | CONFIG_VGA_ARB=y | ||
2432 | CONFIG_VGA_ARB_MAX_GPUS=16 | ||
2119 | CONFIG_DRM=y | 2433 | CONFIG_DRM=y |
2434 | # CONFIG_DRM_TDFX is not set | ||
2435 | # CONFIG_DRM_R128 is not set | ||
2436 | # CONFIG_DRM_RADEON is not set | ||
2437 | # CONFIG_DRM_NOUVEAU is not set | ||
2438 | # CONFIG_DRM_MGA is not set | ||
2439 | # CONFIG_DRM_VIA is not set | ||
2440 | # CONFIG_DRM_SAVAGE is not set | ||
2120 | CONFIG_DRM_VIVANTE=y | 2441 | CONFIG_DRM_VIVANTE=y |
2121 | # CONFIG_DRM_EXYNOS is not set | 2442 | # CONFIG_DRM_EXYNOS is not set |
2443 | # CONFIG_DRM_VMWGFX is not set | ||
2122 | # CONFIG_DRM_UDL is not set | 2444 | # CONFIG_DRM_UDL is not set |
2445 | # CONFIG_DRM_AST is not set | ||
2446 | # CONFIG_DRM_MGAG200 is not set | ||
2447 | # CONFIG_DRM_CIRRUS_QEMU is not set | ||
2123 | # CONFIG_DRM_TILCDC is not set | 2448 | # CONFIG_DRM_TILCDC is not set |
2449 | # CONFIG_DRM_QXL is not set | ||
2124 | # CONFIG_TEGRA_HOST1X is not set | 2450 | # CONFIG_TEGRA_HOST1X is not set |
2125 | # CONFIG_VGASTATE is not set | 2451 | # CONFIG_VGASTATE is not set |
2126 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | 2452 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set |
2127 | CONFIG_VIDEOMODE_HELPERS=y | 2453 | CONFIG_VIDEOMODE_HELPERS=y |
2128 | CONFIG_HDMI=y | 2454 | CONFIG_HDMI=y |
2129 | CONFIG_FB=y | 2455 | CONFIG_FB=y |
2130 | # CONFIG_FIRMWARE_EDID is not set | 2456 | # CONFIG_FIRMWARE_EDID is not set |
2131 | # CONFIG_FB_DDC is not set | 2457 | # CONFIG_FB_DDC is not set |
2132 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | 2458 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set |
2133 | CONFIG_FB_CFB_FILLRECT=y | 2459 | CONFIG_FB_CFB_FILLRECT=y |
2134 | CONFIG_FB_CFB_COPYAREA=y | 2460 | CONFIG_FB_CFB_COPYAREA=y |
2135 | CONFIG_FB_CFB_IMAGEBLIT=y | 2461 | CONFIG_FB_CFB_IMAGEBLIT=y |
2136 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | 2462 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set |
2137 | # CONFIG_FB_SYS_FILLRECT is not set | 2463 | # CONFIG_FB_SYS_FILLRECT is not set |
2138 | # CONFIG_FB_SYS_COPYAREA is not set | 2464 | # CONFIG_FB_SYS_COPYAREA is not set |
2139 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 2465 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
2140 | # CONFIG_FB_FOREIGN_ENDIAN is not set | 2466 | # CONFIG_FB_FOREIGN_ENDIAN is not set |
2141 | # CONFIG_FB_SYS_FOPS is not set | 2467 | # CONFIG_FB_SYS_FOPS is not set |
2142 | CONFIG_FB_DEFERRED_IO=y | 2468 | CONFIG_FB_DEFERRED_IO=y |
2143 | # CONFIG_FB_SVGALIB is not set | 2469 | # CONFIG_FB_SVGALIB is not set |
2144 | # CONFIG_FB_MACMODES is not set | 2470 | # CONFIG_FB_MACMODES is not set |
2145 | # CONFIG_FB_BACKLIGHT is not set | 2471 | # CONFIG_FB_BACKLIGHT is not set |
2146 | CONFIG_FB_MODE_HELPERS=y | 2472 | CONFIG_FB_MODE_HELPERS=y |
2147 | # CONFIG_FB_TILEBLITTING is not set | 2473 | # CONFIG_FB_TILEBLITTING is not set |
2148 | 2474 | ||
2149 | # | 2475 | # |
2150 | # Frame buffer hardware drivers | 2476 | # Frame buffer hardware drivers |
2151 | # | 2477 | # |
2478 | # CONFIG_FB_CIRRUS is not set | ||
2479 | # CONFIG_FB_PM2 is not set | ||
2480 | # CONFIG_FB_CYBER2000 is not set | ||
2481 | # CONFIG_FB_ASILIANT is not set | ||
2482 | # CONFIG_FB_IMSTT is not set | ||
2152 | # CONFIG_FB_UVESA is not set | 2483 | # CONFIG_FB_UVESA is not set |
2153 | # CONFIG_FB_S1D13XXX is not set | 2484 | # CONFIG_FB_S1D13XXX is not set |
2485 | # CONFIG_FB_NVIDIA is not set | ||
2486 | # CONFIG_FB_RIVA is not set | ||
2487 | # CONFIG_FB_I740 is not set | ||
2488 | # CONFIG_FB_MATROX is not set | ||
2489 | # CONFIG_FB_RADEON is not set | ||
2490 | # CONFIG_FB_ATY128 is not set | ||
2491 | # CONFIG_FB_ATY is not set | ||
2492 | # CONFIG_FB_S3 is not set | ||
2493 | # CONFIG_FB_SAVAGE is not set | ||
2494 | # CONFIG_FB_SIS is not set | ||
2495 | # CONFIG_FB_NEOMAGIC is not set | ||
2496 | # CONFIG_FB_KYRO is not set | ||
2497 | # CONFIG_FB_3DFX is not set | ||
2498 | # CONFIG_FB_VOODOO1 is not set | ||
2499 | # CONFIG_FB_VT8623 is not set | ||
2500 | # CONFIG_FB_TRIDENT is not set | ||
2501 | # CONFIG_FB_ARK is not set | ||
2502 | # CONFIG_FB_PM3 is not set | ||
2503 | # CONFIG_FB_CARMINE is not set | ||
2154 | # CONFIG_FB_TMIO is not set | 2504 | # CONFIG_FB_TMIO is not set |
2155 | # CONFIG_FB_SMSCUFX is not set | 2505 | # CONFIG_FB_SMSCUFX is not set |
2156 | # CONFIG_FB_UDL is not set | 2506 | # CONFIG_FB_UDL is not set |
2157 | # CONFIG_FB_GOLDFISH is not set | 2507 | # CONFIG_FB_GOLDFISH is not set |
2158 | # CONFIG_FB_VIRTUAL is not set | 2508 | # CONFIG_FB_VIRTUAL is not set |
2159 | # CONFIG_FB_METRONOME is not set | 2509 | # CONFIG_FB_METRONOME is not set |
2510 | # CONFIG_FB_MB862XX is not set | ||
2160 | CONFIG_FB_MX3=y | 2511 | CONFIG_FB_MX3=y |
2161 | # CONFIG_FB_BROADSHEET is not set | 2512 | # CONFIG_FB_BROADSHEET is not set |
2162 | # CONFIG_FB_AUO_K190X is not set | 2513 | # CONFIG_FB_AUO_K190X is not set |
2163 | CONFIG_FB_MXS=y | 2514 | CONFIG_FB_MXS=y |
2164 | # CONFIG_FB_SIMPLE is not set | 2515 | # CONFIG_FB_SIMPLE is not set |
2165 | # CONFIG_EXYNOS_VIDEO is not set | 2516 | # CONFIG_EXYNOS_VIDEO is not set |
2166 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | 2517 | CONFIG_BACKLIGHT_LCD_SUPPORT=y |
2167 | CONFIG_LCD_CLASS_DEVICE=y | 2518 | CONFIG_LCD_CLASS_DEVICE=y |
2168 | CONFIG_LCD_L4F00242T03=y | 2519 | CONFIG_LCD_L4F00242T03=y |
2169 | # CONFIG_LCD_LMS283GF05 is not set | 2520 | # CONFIG_LCD_LMS283GF05 is not set |
2170 | # CONFIG_LCD_LTV350QV is not set | 2521 | # CONFIG_LCD_LTV350QV is not set |
2171 | # CONFIG_LCD_ILI922X is not set | 2522 | # CONFIG_LCD_ILI922X is not set |
2172 | # CONFIG_LCD_ILI9320 is not set | 2523 | # CONFIG_LCD_ILI9320 is not set |
2173 | # CONFIG_LCD_TDO24M is not set | 2524 | # CONFIG_LCD_TDO24M is not set |
2174 | # CONFIG_LCD_VGG2432A4 is not set | 2525 | # CONFIG_LCD_VGG2432A4 is not set |
2175 | CONFIG_LCD_PLATFORM=y | 2526 | CONFIG_LCD_PLATFORM=y |
2176 | # CONFIG_LCD_S6E63M0 is not set | 2527 | # CONFIG_LCD_S6E63M0 is not set |
2177 | # CONFIG_LCD_LD9040 is not set | 2528 | # CONFIG_LCD_LD9040 is not set |
2178 | # CONFIG_LCD_AMS369FG06 is not set | 2529 | # CONFIG_LCD_AMS369FG06 is not set |
2179 | # CONFIG_LCD_LMS501KF03 is not set | 2530 | # CONFIG_LCD_LMS501KF03 is not set |
2180 | # CONFIG_LCD_HX8357 is not set | 2531 | # CONFIG_LCD_HX8357 is not set |
2181 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | 2532 | CONFIG_BACKLIGHT_CLASS_DEVICE=y |
2182 | CONFIG_BACKLIGHT_GENERIC=y | 2533 | CONFIG_BACKLIGHT_GENERIC=y |
2183 | CONFIG_BACKLIGHT_PWM=y | 2534 | CONFIG_BACKLIGHT_PWM=y |
2184 | # CONFIG_BACKLIGHT_DA9052 is not set | 2535 | # CONFIG_BACKLIGHT_DA9052 is not set |
2185 | # CONFIG_BACKLIGHT_ADP8860 is not set | 2536 | # CONFIG_BACKLIGHT_ADP8860 is not set |
2186 | # CONFIG_BACKLIGHT_ADP8870 is not set | 2537 | # CONFIG_BACKLIGHT_ADP8870 is not set |
2187 | # CONFIG_BACKLIGHT_LM3630 is not set | 2538 | # CONFIG_BACKLIGHT_LM3630 is not set |
2188 | # CONFIG_BACKLIGHT_LM3639 is not set | 2539 | # CONFIG_BACKLIGHT_LM3639 is not set |
2189 | # CONFIG_BACKLIGHT_LP855X is not set | 2540 | # CONFIG_BACKLIGHT_LP855X is not set |
2190 | CONFIG_FB_MXC=y | 2541 | CONFIG_FB_MXC=y |
2191 | CONFIG_FB_MXC_SYNC_PANEL=y | 2542 | CONFIG_FB_MXC_SYNC_PANEL=y |
2192 | CONFIG_FB_MXC_LDB=y | 2543 | CONFIG_FB_MXC_LDB=y |
2193 | CONFIG_FB_MXC_MIPI_DSI=y | 2544 | CONFIG_FB_MXC_MIPI_DSI=y |
2194 | CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y | 2545 | CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y |
2195 | CONFIG_FB_MXC_HDMI=y | 2546 | CONFIG_FB_MXC_HDMI=y |
2196 | CONFIG_FB_MXC_EDID=y | 2547 | CONFIG_FB_MXC_EDID=y |
2197 | CONFIG_FB_MXC_EINK_PANEL=y | 2548 | CONFIG_FB_MXC_EINK_PANEL=y |
2198 | # CONFIG_FB_MXC_EINK_AUTO_UPDATE_MODE is not set | 2549 | # CONFIG_FB_MXC_EINK_AUTO_UPDATE_MODE is not set |
2199 | CONFIG_FB_MXS_SII902X=y | 2550 | CONFIG_FB_MXS_SII902X=y |
2200 | CONFIG_FB_MXC_DCIC=m | 2551 | CONFIG_FB_MXC_DCIC=m |
2201 | CONFIG_HANNSTAR_CABC=y | 2552 | CONFIG_HANNSTAR_CABC=y |
2202 | 2553 | ||
2203 | # | 2554 | # |
2204 | # Console display driver support | 2555 | # Console display driver support |
2205 | # | 2556 | # |
2206 | CONFIG_DUMMY_CONSOLE=y | 2557 | CONFIG_DUMMY_CONSOLE=y |
2207 | CONFIG_FRAMEBUFFER_CONSOLE=y | 2558 | CONFIG_FRAMEBUFFER_CONSOLE=y |
2208 | CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y | 2559 | CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y |
2209 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | 2560 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set |
2210 | CONFIG_FONTS=y | 2561 | CONFIG_FONTS=y |
2211 | CONFIG_FONT_8x8=y | 2562 | CONFIG_FONT_8x8=y |
2212 | CONFIG_FONT_8x16=y | 2563 | CONFIG_FONT_8x16=y |
2213 | # CONFIG_FONT_6x11 is not set | 2564 | # CONFIG_FONT_6x11 is not set |
2214 | # CONFIG_FONT_7x14 is not set | 2565 | # CONFIG_FONT_7x14 is not set |
2215 | # CONFIG_FONT_PEARL_8x8 is not set | 2566 | # CONFIG_FONT_PEARL_8x8 is not set |
2216 | # CONFIG_FONT_ACORN_8x8 is not set | 2567 | # CONFIG_FONT_ACORN_8x8 is not set |
2217 | # CONFIG_FONT_MINI_4x6 is not set | 2568 | # CONFIG_FONT_MINI_4x6 is not set |
2218 | # CONFIG_FONT_SUN8x16 is not set | 2569 | # CONFIG_FONT_SUN8x16 is not set |
2219 | # CONFIG_FONT_SUN12x22 is not set | 2570 | # CONFIG_FONT_SUN12x22 is not set |
2220 | # CONFIG_FONT_10x18 is not set | 2571 | # CONFIG_FONT_10x18 is not set |
2221 | CONFIG_LOGO=y | 2572 | CONFIG_LOGO=y |
2222 | CONFIG_LOGO_LINUX_MONO=y | 2573 | CONFIG_LOGO_LINUX_MONO=y |
2223 | CONFIG_LOGO_LINUX_VGA16=y | 2574 | CONFIG_LOGO_LINUX_VGA16=y |
2224 | CONFIG_LOGO_LINUX_CLUT224=y | 2575 | CONFIG_LOGO_LINUX_CLUT224=y |
2225 | # CONFIG_FB_SSD1307 is not set | 2576 | # CONFIG_FB_SSD1307 is not set |
2226 | CONFIG_SOUND=y | 2577 | CONFIG_SOUND=y |
2227 | # CONFIG_SOUND_OSS_CORE is not set | 2578 | # CONFIG_SOUND_OSS_CORE is not set |
2228 | CONFIG_SND=y | 2579 | CONFIG_SND=y |
2229 | CONFIG_SND_TIMER=y | 2580 | CONFIG_SND_TIMER=y |
2230 | CONFIG_SND_PCM=y | 2581 | CONFIG_SND_PCM=y |
2231 | CONFIG_SND_COMPRESS_OFFLOAD=y | 2582 | CONFIG_SND_COMPRESS_OFFLOAD=y |
2232 | CONFIG_SND_JACK=y | 2583 | CONFIG_SND_JACK=y |
2233 | # CONFIG_SND_SEQUENCER is not set | 2584 | # CONFIG_SND_SEQUENCER is not set |
2234 | # CONFIG_SND_MIXER_OSS is not set | 2585 | # CONFIG_SND_MIXER_OSS is not set |
2235 | # CONFIG_SND_PCM_OSS is not set | 2586 | # CONFIG_SND_PCM_OSS is not set |
2236 | # CONFIG_SND_HRTIMER is not set | 2587 | # CONFIG_SND_HRTIMER is not set |
2237 | # CONFIG_SND_DYNAMIC_MINORS is not set | 2588 | # CONFIG_SND_DYNAMIC_MINORS is not set |
2238 | CONFIG_SND_SUPPORT_OLD_API=y | 2589 | CONFIG_SND_SUPPORT_OLD_API=y |
2239 | CONFIG_SND_VERBOSE_PROCFS=y | 2590 | CONFIG_SND_VERBOSE_PROCFS=y |
2240 | # CONFIG_SND_VERBOSE_PRINTK is not set | 2591 | # CONFIG_SND_VERBOSE_PRINTK is not set |
2241 | # CONFIG_SND_DEBUG is not set | 2592 | # CONFIG_SND_DEBUG is not set |
2242 | CONFIG_SND_KCTL_JACK=y | 2593 | CONFIG_SND_KCTL_JACK=y |
2243 | # CONFIG_SND_RAWMIDI_SEQ is not set | 2594 | # CONFIG_SND_RAWMIDI_SEQ is not set |
2244 | # CONFIG_SND_OPL3_LIB_SEQ is not set | 2595 | # CONFIG_SND_OPL3_LIB_SEQ is not set |
2245 | # CONFIG_SND_OPL4_LIB_SEQ is not set | 2596 | # CONFIG_SND_OPL4_LIB_SEQ is not set |
2246 | # CONFIG_SND_SBAWE_SEQ is not set | 2597 | # CONFIG_SND_SBAWE_SEQ is not set |
2247 | # CONFIG_SND_EMU10K1_SEQ is not set | 2598 | # CONFIG_SND_EMU10K1_SEQ is not set |
2248 | CONFIG_SND_DRIVERS=y | 2599 | CONFIG_SND_DRIVERS=y |
2249 | # CONFIG_SND_DUMMY is not set | 2600 | # CONFIG_SND_DUMMY is not set |
2250 | # CONFIG_SND_ALOOP is not set | 2601 | # CONFIG_SND_ALOOP is not set |
2251 | # CONFIG_SND_MTPAV is not set | 2602 | # CONFIG_SND_MTPAV is not set |
2252 | # CONFIG_SND_SERIAL_U16550 is not set | 2603 | # CONFIG_SND_SERIAL_U16550 is not set |
2253 | # CONFIG_SND_MPU401 is not set | 2604 | # CONFIG_SND_MPU401 is not set |
2605 | CONFIG_SND_PCI=y | ||
2606 | # CONFIG_SND_AD1889 is not set | ||
2607 | # CONFIG_SND_ALS300 is not set | ||
2608 | # CONFIG_SND_ALI5451 is not set | ||
2609 | # CONFIG_SND_ATIIXP is not set | ||
2610 | # CONFIG_SND_ATIIXP_MODEM is not set | ||
2611 | # CONFIG_SND_AU8810 is not set | ||
2612 | # CONFIG_SND_AU8820 is not set | ||
2613 | # CONFIG_SND_AU8830 is not set | ||
2614 | # CONFIG_SND_AW2 is not set | ||
2615 | # CONFIG_SND_AZT3328 is not set | ||
2616 | # CONFIG_SND_BT87X is not set | ||
2617 | # CONFIG_SND_CA0106 is not set | ||
2618 | # CONFIG_SND_CMIPCI is not set | ||
2619 | # CONFIG_SND_OXYGEN is not set | ||
2620 | # CONFIG_SND_CS4281 is not set | ||
2621 | # CONFIG_SND_CS46XX is not set | ||
2622 | # CONFIG_SND_CS5535AUDIO is not set | ||
2623 | # CONFIG_SND_CTXFI is not set | ||
2624 | # CONFIG_SND_DARLA20 is not set | ||
2625 | # CONFIG_SND_GINA20 is not set | ||
2626 | # CONFIG_SND_LAYLA20 is not set | ||
2627 | # CONFIG_SND_DARLA24 is not set | ||
2628 | # CONFIG_SND_GINA24 is not set | ||
2629 | # CONFIG_SND_LAYLA24 is not set | ||
2630 | # CONFIG_SND_MONA is not set | ||
2631 | # CONFIG_SND_MIA is not set | ||
2632 | # CONFIG_SND_ECHO3G is not set | ||
2633 | # CONFIG_SND_INDIGO is not set | ||
2634 | # CONFIG_SND_INDIGOIO is not set | ||
2635 | # CONFIG_SND_INDIGODJ is not set | ||
2636 | # CONFIG_SND_INDIGOIOX is not set | ||
2637 | # CONFIG_SND_INDIGODJX is not set | ||
2638 | # CONFIG_SND_EMU10K1 is not set | ||
2639 | # CONFIG_SND_EMU10K1X is not set | ||
2640 | # CONFIG_SND_ENS1370 is not set | ||
2641 | # CONFIG_SND_ENS1371 is not set | ||
2642 | # CONFIG_SND_ES1938 is not set | ||
2643 | # CONFIG_SND_ES1968 is not set | ||
2644 | # CONFIG_SND_FM801 is not set | ||
2645 | # CONFIG_SND_HDA_INTEL is not set | ||
2646 | # CONFIG_SND_HDSP is not set | ||
2647 | # CONFIG_SND_HDSPM is not set | ||
2648 | # CONFIG_SND_ICE1712 is not set | ||
2649 | # CONFIG_SND_ICE1724 is not set | ||
2650 | # CONFIG_SND_INTEL8X0 is not set | ||
2651 | # CONFIG_SND_INTEL8X0M is not set | ||
2652 | # CONFIG_SND_KORG1212 is not set | ||
2653 | # CONFIG_SND_LOLA is not set | ||
2654 | # CONFIG_SND_LX6464ES is not set | ||
2655 | # CONFIG_SND_MAESTRO3 is not set | ||
2656 | # CONFIG_SND_MIXART is not set | ||
2657 | # CONFIG_SND_NM256 is not set | ||
2658 | # CONFIG_SND_PCXHR is not set | ||
2659 | # CONFIG_SND_RIPTIDE is not set | ||
2660 | # CONFIG_SND_RME32 is not set | ||
2661 | # CONFIG_SND_RME96 is not set | ||
2662 | # CONFIG_SND_RME9652 is not set | ||
2663 | # CONFIG_SND_SONICVIBES is not set | ||
2664 | # CONFIG_SND_TRIDENT is not set | ||
2665 | # CONFIG_SND_VIA82XX is not set | ||
2666 | # CONFIG_SND_VIA82XX_MODEM is not set | ||
2667 | # CONFIG_SND_VIRTUOSO is not set | ||
2668 | # CONFIG_SND_VX222 is not set | ||
2669 | # CONFIG_SND_YMFPCI is not set | ||
2254 | CONFIG_SND_ARM=y | 2670 | CONFIG_SND_ARM=y |
2255 | # CONFIG_SND_SPI is not set | 2671 | # CONFIG_SND_SPI is not set |
2256 | # CONFIG_SND_USB is not set | 2672 | # CONFIG_SND_USB is not set |
2257 | CONFIG_SND_SOC=y | 2673 | CONFIG_SND_SOC=y |
2258 | CONFIG_SND_SOC_DMAENGINE_PCM=y | 2674 | CONFIG_SND_SOC_DMAENGINE_PCM=y |
2259 | CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y | 2675 | CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y |
2260 | # CONFIG_SND_ATMEL_SOC is not set | 2676 | # CONFIG_SND_ATMEL_SOC is not set |
2261 | # CONFIG_SND_DESIGNWARE_I2S is not set | 2677 | # CONFIG_SND_DESIGNWARE_I2S is not set |
2262 | CONFIG_SND_SOC_FSL_SAI=y | 2678 | CONFIG_SND_SOC_FSL_SAI=y |
2263 | CONFIG_SND_SOC_FSL_SSI=y | 2679 | CONFIG_SND_SOC_FSL_SSI=y |
2264 | CONFIG_SND_SOC_FSL_ASRC=y | 2680 | CONFIG_SND_SOC_FSL_ASRC=y |
2265 | CONFIG_SND_SOC_FSL_ESAI=y | 2681 | CONFIG_SND_SOC_FSL_ESAI=y |
2266 | CONFIG_SND_SOC_FSL_SPDIF=y | 2682 | CONFIG_SND_SOC_FSL_SPDIF=y |
2267 | CONFIG_SND_SOC_FSL_HDMI=y | 2683 | CONFIG_SND_SOC_FSL_HDMI=y |
2268 | CONFIG_SND_SOC_FSL_UTILS=y | 2684 | CONFIG_SND_SOC_FSL_UTILS=y |
2269 | CONFIG_SND_IMX_SOC=y | 2685 | CONFIG_SND_IMX_SOC=y |
2270 | CONFIG_SND_SOC_IMX_SSI=y | 2686 | CONFIG_SND_SOC_IMX_SSI=y |
2271 | CONFIG_SND_SOC_IMX_PCM_FIQ=y | 2687 | CONFIG_SND_SOC_IMX_PCM_FIQ=y |
2272 | CONFIG_SND_SOC_IMX_PCM_DMA=y | 2688 | CONFIG_SND_SOC_IMX_PCM_DMA=y |
2273 | CONFIG_SND_SOC_IMX_HDMI_DMA=y | 2689 | CONFIG_SND_SOC_IMX_HDMI_DMA=y |
2274 | CONFIG_SND_SOC_IMX_AUDMUX=y | 2690 | CONFIG_SND_SOC_IMX_AUDMUX=y |
2275 | CONFIG_SND_SOC_EUKREA_TLV320=y | 2691 | CONFIG_SND_SOC_EUKREA_TLV320=y |
2276 | CONFIG_SND_SOC_IMX_CS42888=y | 2692 | CONFIG_SND_SOC_IMX_CS42888=y |
2277 | CONFIG_SND_SOC_IMX_WM8962=y | 2693 | CONFIG_SND_SOC_IMX_WM8962=y |
2278 | # CONFIG_SND_SOC_IMX_WM8962_ANDROID is not set | 2694 | # CONFIG_SND_SOC_IMX_WM8962_ANDROID is not set |
2279 | CONFIG_SND_SOC_IMX_SGTL5000=y | 2695 | CONFIG_SND_SOC_IMX_SGTL5000=y |
2280 | CONFIG_SND_SOC_IMX_MQS=y | 2696 | CONFIG_SND_SOC_IMX_MQS=y |
2281 | CONFIG_SND_SOC_IMX_SPDIF=y | 2697 | CONFIG_SND_SOC_IMX_SPDIF=y |
2282 | CONFIG_SND_SOC_IMX_MC13783=y | 2698 | CONFIG_SND_SOC_IMX_MC13783=y |
2283 | CONFIG_SND_SOC_IMX_HDMI=y | 2699 | CONFIG_SND_SOC_IMX_HDMI=y |
2284 | CONFIG_SND_SOC_IMX_SI476X=y | 2700 | CONFIG_SND_SOC_IMX_SI476X=y |
2285 | CONFIG_SND_SOC_I2C_AND_SPI=y | 2701 | CONFIG_SND_SOC_I2C_AND_SPI=y |
2286 | # CONFIG_SND_SOC_ALL_CODECS is not set | 2702 | # CONFIG_SND_SOC_ALL_CODECS is not set |
2287 | # CONFIG_SND_SOC_CS42XX8_I2C is not set | 2703 | # CONFIG_SND_SOC_CS42XX8_I2C is not set |
2288 | CONFIG_SND_SOC_FSL_MQS=y | 2704 | CONFIG_SND_SOC_FSL_MQS=y |
2289 | CONFIG_SND_SOC_OMAP_HDMI_CODEC=y | 2705 | CONFIG_SND_SOC_OMAP_HDMI_CODEC=y |
2290 | CONFIG_SND_SOC_SGTL5000=y | 2706 | CONFIG_SND_SOC_SGTL5000=y |
2291 | CONFIG_SND_SOC_SI476X=y | 2707 | CONFIG_SND_SOC_SI476X=y |
2292 | CONFIG_SND_SOC_SPDIF=y | 2708 | CONFIG_SND_SOC_SPDIF=y |
2293 | CONFIG_SND_SOC_TLV320AIC23=y | 2709 | CONFIG_SND_SOC_TLV320AIC23=y |
2294 | CONFIG_SND_SOC_WM8962=y | 2710 | CONFIG_SND_SOC_WM8962=y |
2295 | CONFIG_SND_SOC_MC13783=y | 2711 | CONFIG_SND_SOC_MC13783=y |
2296 | # CONFIG_SND_SIMPLE_CARD is not set | 2712 | # CONFIG_SND_SIMPLE_CARD is not set |
2297 | # CONFIG_SOUND_PRIME is not set | 2713 | # CONFIG_SOUND_PRIME is not set |
2298 | 2714 | ||
2299 | # | 2715 | # |
2300 | # HID support | 2716 | # HID support |
2301 | # | 2717 | # |
2302 | CONFIG_HID=y | 2718 | CONFIG_HID=y |
2303 | # CONFIG_HID_BATTERY_STRENGTH is not set | 2719 | # CONFIG_HID_BATTERY_STRENGTH is not set |
2304 | # CONFIG_HIDRAW is not set | 2720 | # CONFIG_HIDRAW is not set |
2305 | # CONFIG_UHID is not set | 2721 | # CONFIG_UHID is not set |
2306 | CONFIG_HID_GENERIC=y | 2722 | CONFIG_HID_GENERIC=y |
2307 | 2723 | ||
2308 | # | 2724 | # |
2309 | # Special HID drivers | 2725 | # Special HID drivers |
2310 | # | 2726 | # |
2311 | # CONFIG_HID_A4TECH is not set | 2727 | # CONFIG_HID_A4TECH is not set |
2312 | # CONFIG_HID_ACRUX is not set | 2728 | # CONFIG_HID_ACRUX is not set |
2313 | # CONFIG_HID_APPLE is not set | 2729 | # CONFIG_HID_APPLE is not set |
2314 | # CONFIG_HID_APPLEIR is not set | 2730 | # CONFIG_HID_APPLEIR is not set |
2315 | # CONFIG_HID_AUREAL is not set | 2731 | # CONFIG_HID_AUREAL is not set |
2316 | # CONFIG_HID_BELKIN is not set | 2732 | # CONFIG_HID_BELKIN is not set |
2317 | # CONFIG_HID_CHERRY is not set | 2733 | # CONFIG_HID_CHERRY is not set |
2318 | # CONFIG_HID_CHICONY is not set | 2734 | # CONFIG_HID_CHICONY is not set |
2319 | # CONFIG_HID_PRODIKEYS is not set | 2735 | # CONFIG_HID_PRODIKEYS is not set |
2320 | # CONFIG_HID_CYPRESS is not set | 2736 | # CONFIG_HID_CYPRESS is not set |
2321 | # CONFIG_HID_DRAGONRISE is not set | 2737 | # CONFIG_HID_DRAGONRISE is not set |
2322 | # CONFIG_HID_EMS_FF is not set | 2738 | # CONFIG_HID_EMS_FF is not set |
2323 | # CONFIG_HID_ELECOM is not set | 2739 | # CONFIG_HID_ELECOM is not set |
2324 | # CONFIG_HID_EZKEY is not set | 2740 | # CONFIG_HID_EZKEY is not set |
2325 | # CONFIG_HID_HOLTEK is not set | 2741 | # CONFIG_HID_HOLTEK is not set |
2326 | # CONFIG_HID_KEYTOUCH is not set | 2742 | # CONFIG_HID_KEYTOUCH is not set |
2327 | # CONFIG_HID_KYE is not set | 2743 | # CONFIG_HID_KYE is not set |
2328 | # CONFIG_HID_UCLOGIC is not set | 2744 | # CONFIG_HID_UCLOGIC is not set |
2329 | # CONFIG_HID_WALTOP is not set | 2745 | # CONFIG_HID_WALTOP is not set |
2330 | # CONFIG_HID_GYRATION is not set | 2746 | # CONFIG_HID_GYRATION is not set |
2331 | # CONFIG_HID_ICADE is not set | 2747 | # CONFIG_HID_ICADE is not set |
2332 | # CONFIG_HID_TWINHAN is not set | 2748 | # CONFIG_HID_TWINHAN is not set |
2333 | # CONFIG_HID_KENSINGTON is not set | 2749 | # CONFIG_HID_KENSINGTON is not set |
2334 | # CONFIG_HID_LCPOWER is not set | 2750 | # CONFIG_HID_LCPOWER is not set |
2335 | # CONFIG_HID_LENOVO_TPKBD is not set | 2751 | # CONFIG_HID_LENOVO_TPKBD is not set |
2336 | # CONFIG_HID_LOGITECH is not set | 2752 | # CONFIG_HID_LOGITECH is not set |
2337 | # CONFIG_HID_MAGICMOUSE is not set | 2753 | # CONFIG_HID_MAGICMOUSE is not set |
2338 | # CONFIG_HID_MICROSOFT is not set | 2754 | # CONFIG_HID_MICROSOFT is not set |
2339 | # CONFIG_HID_MONTEREY is not set | 2755 | # CONFIG_HID_MONTEREY is not set |
2340 | # CONFIG_HID_MULTITOUCH is not set | 2756 | # CONFIG_HID_MULTITOUCH is not set |
2341 | # CONFIG_HID_NTRIG is not set | 2757 | # CONFIG_HID_NTRIG is not set |
2342 | # CONFIG_HID_ORTEK is not set | 2758 | # CONFIG_HID_ORTEK is not set |
2343 | # CONFIG_HID_PANTHERLORD is not set | 2759 | # CONFIG_HID_PANTHERLORD is not set |
2344 | # CONFIG_HID_PETALYNX is not set | 2760 | # CONFIG_HID_PETALYNX is not set |
2345 | # CONFIG_HID_PICOLCD is not set | 2761 | # CONFIG_HID_PICOLCD is not set |
2346 | # CONFIG_HID_PRIMAX is not set | 2762 | # CONFIG_HID_PRIMAX is not set |
2347 | # CONFIG_HID_PS3REMOTE is not set | 2763 | # CONFIG_HID_PS3REMOTE is not set |
2348 | # CONFIG_HID_ROCCAT is not set | 2764 | # CONFIG_HID_ROCCAT is not set |
2349 | # CONFIG_HID_SAITEK is not set | 2765 | # CONFIG_HID_SAITEK is not set |
2350 | # CONFIG_HID_SAMSUNG is not set | 2766 | # CONFIG_HID_SAMSUNG is not set |
2351 | # CONFIG_HID_SONY is not set | 2767 | # CONFIG_HID_SONY is not set |
2352 | # CONFIG_HID_SPEEDLINK is not set | 2768 | # CONFIG_HID_SPEEDLINK is not set |
2353 | # CONFIG_HID_STEELSERIES is not set | 2769 | # CONFIG_HID_STEELSERIES is not set |
2354 | # CONFIG_HID_SUNPLUS is not set | 2770 | # CONFIG_HID_SUNPLUS is not set |
2355 | # CONFIG_HID_GREENASIA is not set | 2771 | # CONFIG_HID_GREENASIA is not set |
2356 | # CONFIG_HID_SMARTJOYPLUS is not set | 2772 | # CONFIG_HID_SMARTJOYPLUS is not set |
2357 | # CONFIG_HID_TIVO is not set | 2773 | # CONFIG_HID_TIVO is not set |
2358 | # CONFIG_HID_TOPSEED is not set | 2774 | # CONFIG_HID_TOPSEED is not set |
2359 | # CONFIG_HID_THINGM is not set | 2775 | # CONFIG_HID_THINGM is not set |
2360 | # CONFIG_HID_THRUSTMASTER is not set | 2776 | # CONFIG_HID_THRUSTMASTER is not set |
2361 | # CONFIG_HID_WACOM is not set | 2777 | # CONFIG_HID_WACOM is not set |
2362 | # CONFIG_HID_WIIMOTE is not set | 2778 | # CONFIG_HID_WIIMOTE is not set |
2363 | # CONFIG_HID_ZEROPLUS is not set | 2779 | # CONFIG_HID_ZEROPLUS is not set |
2364 | # CONFIG_HID_ZYDACRON is not set | 2780 | # CONFIG_HID_ZYDACRON is not set |
2365 | # CONFIG_HID_SENSOR_HUB is not set | 2781 | # CONFIG_HID_SENSOR_HUB is not set |
2366 | 2782 | ||
2367 | # | 2783 | # |
2368 | # USB HID support | 2784 | # USB HID support |
2369 | # | 2785 | # |
2370 | CONFIG_USB_HID=y | 2786 | CONFIG_USB_HID=y |
2371 | # CONFIG_HID_PID is not set | 2787 | # CONFIG_HID_PID is not set |
2372 | # CONFIG_USB_HIDDEV is not set | 2788 | # CONFIG_USB_HIDDEV is not set |
2373 | 2789 | ||
2374 | # | 2790 | # |
2375 | # I2C HID support | 2791 | # I2C HID support |
2376 | # | 2792 | # |
2377 | # CONFIG_I2C_HID is not set | 2793 | # CONFIG_I2C_HID is not set |
2378 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 2794 | CONFIG_USB_ARCH_HAS_OHCI=y |
2379 | CONFIG_USB_ARCH_HAS_EHCI=y | 2795 | CONFIG_USB_ARCH_HAS_EHCI=y |
2380 | # CONFIG_USB_ARCH_HAS_XHCI is not set | 2796 | CONFIG_USB_ARCH_HAS_XHCI=y |
2381 | CONFIG_USB_SUPPORT=y | 2797 | CONFIG_USB_SUPPORT=y |
2382 | CONFIG_USB_COMMON=y | 2798 | CONFIG_USB_COMMON=y |
2383 | CONFIG_USB_ARCH_HAS_HCD=y | 2799 | CONFIG_USB_ARCH_HAS_HCD=y |
2384 | CONFIG_USB=y | 2800 | CONFIG_USB=y |
2385 | # CONFIG_USB_DEBUG is not set | 2801 | # CONFIG_USB_DEBUG is not set |
2386 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | 2802 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set |
2387 | 2803 | ||
2388 | # | 2804 | # |
2389 | # Miscellaneous USB options | 2805 | # Miscellaneous USB options |
2390 | # | 2806 | # |
2391 | CONFIG_USB_DEFAULT_PERSIST=y | 2807 | CONFIG_USB_DEFAULT_PERSIST=y |
2392 | # CONFIG_USB_DYNAMIC_MINORS is not set | 2808 | # CONFIG_USB_DYNAMIC_MINORS is not set |
2393 | # CONFIG_USB_OTG is not set | 2809 | # CONFIG_USB_OTG is not set |
2394 | # CONFIG_USB_OTG_WHITELIST is not set | 2810 | # CONFIG_USB_OTG_WHITELIST is not set |
2395 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | 2811 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set |
2396 | # CONFIG_USB_OTG_FSM is not set | 2812 | # CONFIG_USB_OTG_FSM is not set |
2397 | # CONFIG_USB_MON is not set | 2813 | # CONFIG_USB_MON is not set |
2398 | # CONFIG_USB_WUSB_CBAF is not set | 2814 | # CONFIG_USB_WUSB_CBAF is not set |
2399 | 2815 | ||
2400 | # | 2816 | # |
2401 | # USB Host Controller Drivers | 2817 | # USB Host Controller Drivers |
2402 | # | 2818 | # |
2403 | # CONFIG_USB_C67X00_HCD is not set | 2819 | # CONFIG_USB_C67X00_HCD is not set |
2820 | # CONFIG_USB_XHCI_HCD is not set | ||
2404 | CONFIG_USB_EHCI_HCD=y | 2821 | CONFIG_USB_EHCI_HCD=y |
2405 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | 2822 | CONFIG_USB_EHCI_ROOT_HUB_TT=y |
2406 | CONFIG_USB_EHCI_TT_NEWSCHED=y | 2823 | CONFIG_USB_EHCI_TT_NEWSCHED=y |
2824 | CONFIG_USB_EHCI_PCI=y | ||
2407 | # CONFIG_USB_EHCI_MXC is not set | 2825 | # CONFIG_USB_EHCI_MXC is not set |
2408 | # CONFIG_USB_EHCI_HCD_PLATFORM is not set | 2826 | # CONFIG_USB_EHCI_HCD_PLATFORM is not set |
2409 | # CONFIG_USB_OXU210HP_HCD is not set | 2827 | # CONFIG_USB_OXU210HP_HCD is not set |
2410 | # CONFIG_USB_ISP116X_HCD is not set | 2828 | # CONFIG_USB_ISP116X_HCD is not set |
2411 | # CONFIG_USB_ISP1760_HCD is not set | 2829 | # CONFIG_USB_ISP1760_HCD is not set |
2412 | # CONFIG_USB_ISP1362_HCD is not set | 2830 | # CONFIG_USB_ISP1362_HCD is not set |
2831 | # CONFIG_USB_OHCI_HCD is not set | ||
2832 | # CONFIG_USB_UHCI_HCD is not set | ||
2413 | # CONFIG_USB_SL811_HCD is not set | 2833 | # CONFIG_USB_SL811_HCD is not set |
2414 | # CONFIG_USB_R8A66597_HCD is not set | 2834 | # CONFIG_USB_R8A66597_HCD is not set |
2415 | # CONFIG_USB_IMX21_HCD is not set | 2835 | # CONFIG_USB_IMX21_HCD is not set |
2416 | CONFIG_USB_HCD_TEST_MODE=y | 2836 | CONFIG_USB_HCD_TEST_MODE=y |
2417 | # CONFIG_USB_MUSB_HDRC is not set | 2837 | # CONFIG_USB_MUSB_HDRC is not set |
2418 | # CONFIG_USB_RENESAS_USBHS is not set | 2838 | # CONFIG_USB_RENESAS_USBHS is not set |
2419 | 2839 | ||
2420 | # | 2840 | # |
2421 | # USB Device Class drivers | 2841 | # USB Device Class drivers |
2422 | # | 2842 | # |
2423 | # CONFIG_USB_ACM is not set | 2843 | # CONFIG_USB_ACM is not set |
2424 | # CONFIG_USB_PRINTER is not set | 2844 | # CONFIG_USB_PRINTER is not set |
2425 | # CONFIG_USB_WDM is not set | 2845 | # CONFIG_USB_WDM is not set |
2426 | # CONFIG_USB_TMC is not set | 2846 | # CONFIG_USB_TMC is not set |
2427 | 2847 | ||
2428 | # | 2848 | # |
2429 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may | 2849 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
2430 | # | 2850 | # |
2431 | 2851 | ||
2432 | # | 2852 | # |
2433 | # also be needed; see USB_STORAGE Help for more info | 2853 | # also be needed; see USB_STORAGE Help for more info |
2434 | # | 2854 | # |
2435 | CONFIG_USB_STORAGE=y | 2855 | CONFIG_USB_STORAGE=y |
2436 | # CONFIG_USB_STORAGE_DEBUG is not set | 2856 | # CONFIG_USB_STORAGE_DEBUG is not set |
2437 | # CONFIG_USB_STORAGE_REALTEK is not set | 2857 | # CONFIG_USB_STORAGE_REALTEK is not set |
2438 | # CONFIG_USB_STORAGE_DATAFAB is not set | 2858 | # CONFIG_USB_STORAGE_DATAFAB is not set |
2439 | # CONFIG_USB_STORAGE_FREECOM is not set | 2859 | # CONFIG_USB_STORAGE_FREECOM is not set |
2440 | # CONFIG_USB_STORAGE_ISD200 is not set | 2860 | # CONFIG_USB_STORAGE_ISD200 is not set |
2441 | # CONFIG_USB_STORAGE_USBAT is not set | 2861 | # CONFIG_USB_STORAGE_USBAT is not set |
2442 | # CONFIG_USB_STORAGE_SDDR09 is not set | 2862 | # CONFIG_USB_STORAGE_SDDR09 is not set |
2443 | # CONFIG_USB_STORAGE_SDDR55 is not set | 2863 | # CONFIG_USB_STORAGE_SDDR55 is not set |
2444 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 2864 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
2445 | # CONFIG_USB_STORAGE_ALAUDA is not set | 2865 | # CONFIG_USB_STORAGE_ALAUDA is not set |
2446 | # CONFIG_USB_STORAGE_ONETOUCH is not set | 2866 | # CONFIG_USB_STORAGE_ONETOUCH is not set |
2447 | # CONFIG_USB_STORAGE_KARMA is not set | 2867 | # CONFIG_USB_STORAGE_KARMA is not set |
2448 | # CONFIG_USB_STORAGE_CYPRESS_ATACB is not set | 2868 | # CONFIG_USB_STORAGE_CYPRESS_ATACB is not set |
2449 | # CONFIG_USB_STORAGE_ENE_UB6250 is not set | 2869 | # CONFIG_USB_STORAGE_ENE_UB6250 is not set |
2450 | 2870 | ||
2451 | # | 2871 | # |
2452 | # USB Imaging devices | 2872 | # USB Imaging devices |
2453 | # | 2873 | # |
2454 | # CONFIG_USB_MDC800 is not set | 2874 | # CONFIG_USB_MDC800 is not set |
2455 | # CONFIG_USB_MICROTEK is not set | 2875 | # CONFIG_USB_MICROTEK is not set |
2456 | # CONFIG_USB_DWC3 is not set | 2876 | # CONFIG_USB_DWC3 is not set |
2457 | CONFIG_USB_CHIPIDEA=y | 2877 | CONFIG_USB_CHIPIDEA=y |
2458 | CONFIG_USB_CHIPIDEA_UDC=y | 2878 | CONFIG_USB_CHIPIDEA_UDC=y |
2459 | CONFIG_USB_CHIPIDEA_HOST=y | 2879 | CONFIG_USB_CHIPIDEA_HOST=y |
2460 | # CONFIG_USB_CHIPIDEA_DEBUG is not set | 2880 | # CONFIG_USB_CHIPIDEA_DEBUG is not set |
2461 | 2881 | ||
2462 | # | 2882 | # |
2463 | # USB port drivers | 2883 | # USB port drivers |
2464 | # | 2884 | # |
2465 | # CONFIG_USB_SERIAL is not set | 2885 | # CONFIG_USB_SERIAL is not set |
2466 | 2886 | ||
2467 | # | 2887 | # |
2468 | # USB Miscellaneous drivers | 2888 | # USB Miscellaneous drivers |
2469 | # | 2889 | # |
2470 | # CONFIG_USB_EMI62 is not set | 2890 | # CONFIG_USB_EMI62 is not set |
2471 | # CONFIG_USB_EMI26 is not set | 2891 | # CONFIG_USB_EMI26 is not set |
2472 | # CONFIG_USB_ADUTUX is not set | 2892 | # CONFIG_USB_ADUTUX is not set |
2473 | # CONFIG_USB_SEVSEG is not set | 2893 | # CONFIG_USB_SEVSEG is not set |
2474 | # CONFIG_USB_RIO500 is not set | 2894 | # CONFIG_USB_RIO500 is not set |
2475 | # CONFIG_USB_LEGOTOWER is not set | 2895 | # CONFIG_USB_LEGOTOWER is not set |
2476 | # CONFIG_USB_LCD is not set | 2896 | # CONFIG_USB_LCD is not set |
2477 | # CONFIG_USB_LED is not set | 2897 | # CONFIG_USB_LED is not set |
2478 | # CONFIG_USB_CYPRESS_CY7C63 is not set | 2898 | # CONFIG_USB_CYPRESS_CY7C63 is not set |
2479 | # CONFIG_USB_CYTHERM is not set | 2899 | # CONFIG_USB_CYTHERM is not set |
2480 | # CONFIG_USB_IDMOUSE is not set | 2900 | # CONFIG_USB_IDMOUSE is not set |
2481 | # CONFIG_USB_FTDI_ELAN is not set | 2901 | # CONFIG_USB_FTDI_ELAN is not set |
2482 | # CONFIG_USB_APPLEDISPLAY is not set | 2902 | # CONFIG_USB_APPLEDISPLAY is not set |
2483 | # CONFIG_USB_SISUSBVGA is not set | 2903 | # CONFIG_USB_SISUSBVGA is not set |
2484 | # CONFIG_USB_LD is not set | 2904 | # CONFIG_USB_LD is not set |
2485 | # CONFIG_USB_TRANCEVIBRATOR is not set | 2905 | # CONFIG_USB_TRANCEVIBRATOR is not set |
2486 | # CONFIG_USB_IOWARRIOR is not set | 2906 | # CONFIG_USB_IOWARRIOR is not set |
2487 | # CONFIG_USB_TEST is not set | 2907 | # CONFIG_USB_TEST is not set |
2488 | CONFIG_USB_EHSET_TEST_FIXTURE=m | 2908 | CONFIG_USB_EHSET_TEST_FIXTURE=m |
2489 | # CONFIG_USB_ISIGHTFW is not set | 2909 | # CONFIG_USB_ISIGHTFW is not set |
2490 | # CONFIG_USB_YUREX is not set | 2910 | # CONFIG_USB_YUREX is not set |
2491 | # CONFIG_USB_EZUSB_FX2 is not set | 2911 | # CONFIG_USB_EZUSB_FX2 is not set |
2492 | # CONFIG_USB_HSIC_USB3503 is not set | 2912 | # CONFIG_USB_HSIC_USB3503 is not set |
2493 | 2913 | ||
2494 | # | 2914 | # |
2495 | # USB Physical Layer drivers | 2915 | # USB Physical Layer drivers |
2496 | # | 2916 | # |
2497 | CONFIG_USB_PHY=y | 2917 | CONFIG_USB_PHY=y |
2498 | CONFIG_NOP_USB_XCEIV=y | 2918 | CONFIG_NOP_USB_XCEIV=y |
2499 | # CONFIG_OMAP_CONTROL_USB is not set | 2919 | # CONFIG_OMAP_CONTROL_USB is not set |
2500 | # CONFIG_OMAP_USB3 is not set | 2920 | # CONFIG_OMAP_USB3 is not set |
2501 | # CONFIG_SAMSUNG_USBPHY is not set | 2921 | # CONFIG_SAMSUNG_USBPHY is not set |
2502 | # CONFIG_SAMSUNG_USB2PHY is not set | 2922 | # CONFIG_SAMSUNG_USB2PHY is not set |
2503 | # CONFIG_SAMSUNG_USB3PHY is not set | 2923 | # CONFIG_SAMSUNG_USB3PHY is not set |
2504 | # CONFIG_USB_GPIO_VBUS is not set | 2924 | # CONFIG_USB_GPIO_VBUS is not set |
2505 | # CONFIG_USB_ISP1301 is not set | 2925 | # CONFIG_USB_ISP1301 is not set |
2506 | CONFIG_USB_MXS_PHY=y | 2926 | CONFIG_USB_MXS_PHY=y |
2507 | # CONFIG_USB_RCAR_PHY is not set | 2927 | # CONFIG_USB_RCAR_PHY is not set |
2508 | # CONFIG_USB_ULPI is not set | 2928 | # CONFIG_USB_ULPI is not set |
2509 | CONFIG_USB_GADGET=y | 2929 | CONFIG_USB_GADGET=y |
2510 | # CONFIG_USB_GADGET_DEBUG is not set | 2930 | # CONFIG_USB_GADGET_DEBUG is not set |
2511 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | 2931 | # CONFIG_USB_GADGET_DEBUG_FILES is not set |
2512 | # CONFIG_USB_GADGET_DEBUG_FS is not set | 2932 | # CONFIG_USB_GADGET_DEBUG_FS is not set |
2513 | CONFIG_USB_GADGET_VBUS_DRAW=2 | 2933 | CONFIG_USB_GADGET_VBUS_DRAW=2 |
2514 | CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 | 2934 | CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 |
2515 | 2935 | ||
2516 | # | 2936 | # |
2517 | # USB Peripheral Controller | 2937 | # USB Peripheral Controller |
2518 | # | 2938 | # |
2519 | # CONFIG_USB_FSL_USB2 is not set | 2939 | # CONFIG_USB_FSL_USB2 is not set |
2520 | # CONFIG_USB_FUSB300 is not set | 2940 | # CONFIG_USB_FUSB300 is not set |
2521 | # CONFIG_USB_R8A66597 is not set | 2941 | # CONFIG_USB_R8A66597 is not set |
2522 | # CONFIG_USB_PXA27X is not set | 2942 | # CONFIG_USB_PXA27X is not set |
2523 | # CONFIG_USB_MV_UDC is not set | 2943 | # CONFIG_USB_MV_UDC is not set |
2524 | # CONFIG_USB_MV_U3D is not set | 2944 | # CONFIG_USB_MV_U3D is not set |
2525 | # CONFIG_USB_M66592 is not set | 2945 | # CONFIG_USB_M66592 is not set |
2946 | # CONFIG_USB_AMD5536UDC is not set | ||
2526 | # CONFIG_USB_NET2272 is not set | 2947 | # CONFIG_USB_NET2272 is not set |
2948 | # CONFIG_USB_NET2280 is not set | ||
2949 | # CONFIG_USB_GOKU is not set | ||
2950 | # CONFIG_USB_EG20T is not set | ||
2527 | # CONFIG_USB_DUMMY_HCD is not set | 2951 | # CONFIG_USB_DUMMY_HCD is not set |
2528 | CONFIG_USB_LIBCOMPOSITE=m | 2952 | CONFIG_USB_LIBCOMPOSITE=m |
2529 | CONFIG_USB_F_ACM=m | 2953 | CONFIG_USB_F_ACM=m |
2530 | CONFIG_USB_F_SS_LB=m | 2954 | CONFIG_USB_F_SS_LB=m |
2531 | CONFIG_USB_U_SERIAL=m | 2955 | CONFIG_USB_U_SERIAL=m |
2532 | CONFIG_USB_F_SERIAL=m | 2956 | CONFIG_USB_F_SERIAL=m |
2533 | CONFIG_USB_F_OBEX=m | 2957 | CONFIG_USB_F_OBEX=m |
2534 | CONFIG_USB_ZERO=m | 2958 | CONFIG_USB_ZERO=m |
2535 | # CONFIG_USB_AUDIO is not set | 2959 | # CONFIG_USB_AUDIO is not set |
2536 | CONFIG_USB_ETH=m | 2960 | CONFIG_USB_ETH=m |
2537 | CONFIG_USB_ETH_RNDIS=y | 2961 | CONFIG_USB_ETH_RNDIS=y |
2538 | # CONFIG_USB_ETH_EEM is not set | 2962 | # CONFIG_USB_ETH_EEM is not set |
2539 | CONFIG_USB_G_NCM=m | 2963 | CONFIG_USB_G_NCM=m |
2540 | # CONFIG_USB_GADGETFS is not set | 2964 | # CONFIG_USB_GADGETFS is not set |
2541 | # CONFIG_USB_FUNCTIONFS is not set | 2965 | # CONFIG_USB_FUNCTIONFS is not set |
2542 | CONFIG_USB_MASS_STORAGE=m | 2966 | CONFIG_USB_MASS_STORAGE=m |
2543 | # CONFIG_FSL_UTP is not set | 2967 | # CONFIG_FSL_UTP is not set |
2544 | CONFIG_USB_G_SERIAL=m | 2968 | CONFIG_USB_G_SERIAL=m |
2545 | # CONFIG_USB_MIDI_GADGET is not set | 2969 | # CONFIG_USB_MIDI_GADGET is not set |
2546 | # CONFIG_USB_G_PRINTER is not set | 2970 | # CONFIG_USB_G_PRINTER is not set |
2547 | # CONFIG_USB_CDC_COMPOSITE is not set | 2971 | # CONFIG_USB_CDC_COMPOSITE is not set |
2548 | # CONFIG_USB_G_ACM_MS is not set | 2972 | # CONFIG_USB_G_ACM_MS is not set |
2549 | # CONFIG_USB_G_MULTI is not set | 2973 | # CONFIG_USB_G_MULTI is not set |
2550 | # CONFIG_USB_G_HID is not set | 2974 | # CONFIG_USB_G_HID is not set |
2551 | # CONFIG_USB_G_DBGP is not set | 2975 | # CONFIG_USB_G_DBGP is not set |
2552 | # CONFIG_USB_G_WEBCAM is not set | 2976 | # CONFIG_USB_G_WEBCAM is not set |
2977 | # CONFIG_UWB is not set | ||
2553 | CONFIG_MMC=y | 2978 | CONFIG_MMC=y |
2554 | # CONFIG_MMC_DEBUG is not set | 2979 | # CONFIG_MMC_DEBUG is not set |
2555 | CONFIG_MMC_UNSAFE_RESUME=y | 2980 | CONFIG_MMC_UNSAFE_RESUME=y |
2556 | # CONFIG_MMC_CLKGATE is not set | 2981 | # CONFIG_MMC_CLKGATE is not set |
2557 | 2982 | ||
2558 | # | 2983 | # |
2559 | # MMC/SD/SDIO Card Drivers | 2984 | # MMC/SD/SDIO Card Drivers |
2560 | # | 2985 | # |
2561 | CONFIG_MMC_BLOCK=y | 2986 | CONFIG_MMC_BLOCK=y |
2562 | CONFIG_MMC_BLOCK_MINORS=8 | 2987 | CONFIG_MMC_BLOCK_MINORS=8 |
2563 | CONFIG_MMC_BLOCK_BOUNCE=y | 2988 | CONFIG_MMC_BLOCK_BOUNCE=y |
2564 | # CONFIG_SDIO_UART is not set | 2989 | # CONFIG_SDIO_UART is not set |
2565 | # CONFIG_MMC_TEST is not set | 2990 | # CONFIG_MMC_TEST is not set |
2566 | 2991 | ||
2567 | # | 2992 | # |
2568 | # MMC/SD/SDIO Host Controller Drivers | 2993 | # MMC/SD/SDIO Host Controller Drivers |
2569 | # | 2994 | # |
2570 | CONFIG_MMC_SDHCI=y | 2995 | CONFIG_MMC_SDHCI=y |
2571 | CONFIG_MMC_SDHCI_IO_ACCESSORS=y | 2996 | CONFIG_MMC_SDHCI_IO_ACCESSORS=y |
2997 | # CONFIG_MMC_SDHCI_PCI is not set | ||
2572 | CONFIG_MMC_SDHCI_PLTFM=y | 2998 | CONFIG_MMC_SDHCI_PLTFM=y |
2573 | CONFIG_MMC_SDHCI_ESDHC_IMX=y | 2999 | CONFIG_MMC_SDHCI_ESDHC_IMX=y |
2574 | # CONFIG_MMC_SDHCI_PXAV3 is not set | 3000 | # CONFIG_MMC_SDHCI_PXAV3 is not set |
2575 | # CONFIG_MMC_SDHCI_PXAV2 is not set | 3001 | # CONFIG_MMC_SDHCI_PXAV2 is not set |
2576 | # CONFIG_MMC_MXC is not set | 3002 | # CONFIG_MMC_MXC is not set |
3003 | # CONFIG_MMC_TIFM_SD is not set | ||
3004 | # CONFIG_MMC_CB710 is not set | ||
3005 | # CONFIG_MMC_VIA_SDMMC is not set | ||
2577 | # CONFIG_MMC_DW is not set | 3006 | # CONFIG_MMC_DW is not set |
2578 | # CONFIG_MMC_VUB300 is not set | 3007 | # CONFIG_MMC_VUB300 is not set |
2579 | # CONFIG_MMC_USHC is not set | 3008 | # CONFIG_MMC_USHC is not set |
2580 | # CONFIG_MEMSTICK is not set | 3009 | # CONFIG_MEMSTICK is not set |
2581 | 3010 | ||
2582 | # | 3011 | # |
2583 | # MXC support drivers | 3012 | # MXC support drivers |
2584 | # | 3013 | # |
2585 | CONFIG_MXC_IPU=y | 3014 | CONFIG_MXC_IPU=y |
2586 | 3015 | ||
2587 | # | 3016 | # |
2588 | # MXC Vivante GPU support | 3017 | # MXC Vivante GPU support |
2589 | # | 3018 | # |
2590 | CONFIG_MXC_GPU_VIV=y | 3019 | CONFIG_MXC_GPU_VIV=y |
2591 | CONFIG_MXC_IPU_V3=y | 3020 | CONFIG_MXC_IPU_V3=y |
2592 | 3021 | ||
2593 | # | 3022 | # |
2594 | # MXC Asynchronous Sample Rate Converter support | 3023 | # MXC Asynchronous Sample Rate Converter support |
2595 | # | 3024 | # |
2596 | CONFIG_MXC_ASRC=y | 3025 | CONFIG_MXC_ASRC=y |
2597 | 3026 | ||
2598 | # | 3027 | # |
2599 | # MXC VPU(Video Processing Unit) support | 3028 | # MXC VPU(Video Processing Unit) support |
2600 | # | 3029 | # |
2601 | CONFIG_MXC_VPU=y | 3030 | CONFIG_MXC_VPU=y |
2602 | # CONFIG_MXC_VPU_DEBUG is not set | 3031 | # CONFIG_MXC_VPU_DEBUG is not set |
2603 | # CONFIG_MX6_VPU_352M is not set | 3032 | # CONFIG_MX6_VPU_352M is not set |
2604 | 3033 | ||
2605 | # | 3034 | # |
2606 | # MXC HDMI CEC (Consumer Electronics Control) support | 3035 | # MXC HDMI CEC (Consumer Electronics Control) support |
2607 | # | 3036 | # |
2608 | # CONFIG_MXC_HDMI_CEC is not set | 3037 | # CONFIG_MXC_HDMI_CEC is not set |
2609 | 3038 | ||
2610 | # | 3039 | # |
2611 | # MXC MIPI Support | 3040 | # MXC MIPI Support |
2612 | # | 3041 | # |
2613 | CONFIG_MXC_MIPI_CSI2=y | 3042 | CONFIG_MXC_MIPI_CSI2=y |
2614 | 3043 | ||
2615 | # | 3044 | # |
2616 | # MXC Media Local Bus Driver | 3045 | # MXC Media Local Bus Driver |
2617 | # | 3046 | # |
2618 | CONFIG_MXC_MLB=y | 3047 | CONFIG_MXC_MLB=y |
2619 | CONFIG_MXC_MLB150=m | 3048 | CONFIG_MXC_MLB150=m |
2620 | CONFIG_LEDS_GPIO_REGISTER=y | 3049 | CONFIG_LEDS_GPIO_REGISTER=y |
2621 | CONFIG_NEW_LEDS=y | 3050 | CONFIG_NEW_LEDS=y |
2622 | CONFIG_LEDS_CLASS=y | 3051 | CONFIG_LEDS_CLASS=y |
2623 | 3052 | ||
2624 | # | 3053 | # |
2625 | # LED drivers | 3054 | # LED drivers |
2626 | # | 3055 | # |
2627 | # CONFIG_LEDS_LM3530 is not set | 3056 | # CONFIG_LEDS_LM3530 is not set |
2628 | # CONFIG_LEDS_LM3642 is not set | 3057 | # CONFIG_LEDS_LM3642 is not set |
2629 | # CONFIG_LEDS_PCA9532 is not set | 3058 | # CONFIG_LEDS_PCA9532 is not set |
2630 | CONFIG_LEDS_GPIO=y | 3059 | CONFIG_LEDS_GPIO=y |
2631 | # CONFIG_LEDS_LP3944 is not set | 3060 | # CONFIG_LEDS_LP3944 is not set |
2632 | # CONFIG_LEDS_LP5521 is not set | 3061 | # CONFIG_LEDS_LP5521 is not set |
2633 | # CONFIG_LEDS_LP5523 is not set | 3062 | # CONFIG_LEDS_LP5523 is not set |
2634 | # CONFIG_LEDS_LP5562 is not set | 3063 | # CONFIG_LEDS_LP5562 is not set |
2635 | # CONFIG_LEDS_PCA955X is not set | 3064 | # CONFIG_LEDS_PCA955X is not set |
2636 | # CONFIG_LEDS_PCA9633 is not set | 3065 | # CONFIG_LEDS_PCA9633 is not set |
2637 | # CONFIG_LEDS_DA9052 is not set | 3066 | # CONFIG_LEDS_DA9052 is not set |
2638 | # CONFIG_LEDS_DAC124S085 is not set | 3067 | # CONFIG_LEDS_DAC124S085 is not set |
2639 | # CONFIG_LEDS_PWM is not set | 3068 | # CONFIG_LEDS_PWM is not set |
2640 | # CONFIG_LEDS_REGULATOR is not set | 3069 | # CONFIG_LEDS_REGULATOR is not set |
2641 | # CONFIG_LEDS_BD2802 is not set | 3070 | # CONFIG_LEDS_BD2802 is not set |
2642 | # CONFIG_LEDS_LT3593 is not set | 3071 | # CONFIG_LEDS_LT3593 is not set |
2643 | # CONFIG_LEDS_MC13783 is not set | 3072 | # CONFIG_LEDS_MC13783 is not set |
2644 | # CONFIG_LEDS_RENESAS_TPU is not set | 3073 | # CONFIG_LEDS_RENESAS_TPU is not set |
2645 | # CONFIG_LEDS_TCA6507 is not set | 3074 | # CONFIG_LEDS_TCA6507 is not set |
2646 | # CONFIG_LEDS_LM355x is not set | 3075 | # CONFIG_LEDS_LM355x is not set |
2647 | # CONFIG_LEDS_OT200 is not set | 3076 | # CONFIG_LEDS_OT200 is not set |
2648 | # CONFIG_LEDS_BLINKM is not set | 3077 | # CONFIG_LEDS_BLINKM is not set |
2649 | 3078 | ||
2650 | # | 3079 | # |
2651 | # LED Triggers | 3080 | # LED Triggers |
2652 | # | 3081 | # |
2653 | CONFIG_LEDS_TRIGGERS=y | 3082 | CONFIG_LEDS_TRIGGERS=y |
2654 | # CONFIG_LEDS_TRIGGER_TIMER is not set | 3083 | # CONFIG_LEDS_TRIGGER_TIMER is not set |
2655 | # CONFIG_LEDS_TRIGGER_ONESHOT is not set | 3084 | # CONFIG_LEDS_TRIGGER_ONESHOT is not set |
2656 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set | 3085 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set |
2657 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | 3086 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set |
2658 | # CONFIG_LEDS_TRIGGER_CPU is not set | 3087 | # CONFIG_LEDS_TRIGGER_CPU is not set |
2659 | CONFIG_LEDS_TRIGGER_GPIO=y | 3088 | CONFIG_LEDS_TRIGGER_GPIO=y |
2660 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | 3089 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set |
2661 | 3090 | ||
2662 | # | 3091 | # |
2663 | # iptables trigger is under Netfilter config (LED target) | 3092 | # iptables trigger is under Netfilter config (LED target) |
2664 | # | 3093 | # |
2665 | # CONFIG_LEDS_TRIGGER_TRANSIENT is not set | 3094 | # CONFIG_LEDS_TRIGGER_TRANSIENT is not set |
2666 | # CONFIG_LEDS_TRIGGER_CAMERA is not set | 3095 | # CONFIG_LEDS_TRIGGER_CAMERA is not set |
2667 | # CONFIG_ACCESSIBILITY is not set | 3096 | # CONFIG_ACCESSIBILITY is not set |
3097 | # CONFIG_INFINIBAND is not set | ||
2668 | # CONFIG_EDAC is not set | 3098 | # CONFIG_EDAC is not set |
2669 | CONFIG_RTC_LIB=y | 3099 | CONFIG_RTC_LIB=y |
2670 | CONFIG_RTC_CLASS=y | 3100 | CONFIG_RTC_CLASS=y |
2671 | CONFIG_RTC_HCTOSYS=y | 3101 | CONFIG_RTC_HCTOSYS=y |
2672 | CONFIG_RTC_SYSTOHC=y | 3102 | CONFIG_RTC_SYSTOHC=y |
2673 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | 3103 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" |
2674 | # CONFIG_RTC_DEBUG is not set | 3104 | # CONFIG_RTC_DEBUG is not set |
2675 | 3105 | ||
2676 | # | 3106 | # |
2677 | # RTC interfaces | 3107 | # RTC interfaces |
2678 | # | 3108 | # |
2679 | CONFIG_RTC_INTF_SYSFS=y | 3109 | CONFIG_RTC_INTF_SYSFS=y |
2680 | CONFIG_RTC_INTF_PROC=y | 3110 | CONFIG_RTC_INTF_PROC=y |
2681 | CONFIG_RTC_INTF_DEV=y | 3111 | CONFIG_RTC_INTF_DEV=y |
2682 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y | 3112 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y |
2683 | # CONFIG_RTC_DRV_TEST is not set | 3113 | # CONFIG_RTC_DRV_TEST is not set |
2684 | 3114 | ||
2685 | # | 3115 | # |
2686 | # I2C RTC drivers | 3116 | # I2C RTC drivers |
2687 | # | 3117 | # |
2688 | # CONFIG_RTC_DRV_DS1307 is not set | 3118 | # CONFIG_RTC_DRV_DS1307 is not set |
2689 | # CONFIG_RTC_DRV_DS1374 is not set | 3119 | # CONFIG_RTC_DRV_DS1374 is not set |
2690 | # CONFIG_RTC_DRV_DS1672 is not set | 3120 | # CONFIG_RTC_DRV_DS1672 is not set |
2691 | # CONFIG_RTC_DRV_DS3232 is not set | 3121 | # CONFIG_RTC_DRV_DS3232 is not set |
2692 | # CONFIG_RTC_DRV_MAX6900 is not set | 3122 | # CONFIG_RTC_DRV_MAX6900 is not set |
2693 | # CONFIG_RTC_DRV_RS5C372 is not set | 3123 | # CONFIG_RTC_DRV_RS5C372 is not set |
2694 | # CONFIG_RTC_DRV_ISL1208 is not set | 3124 | # CONFIG_RTC_DRV_ISL1208 is not set |
2695 | # CONFIG_RTC_DRV_ISL12022 is not set | 3125 | # CONFIG_RTC_DRV_ISL12022 is not set |
2696 | # CONFIG_RTC_DRV_X1205 is not set | 3126 | # CONFIG_RTC_DRV_X1205 is not set |
2697 | # CONFIG_RTC_DRV_PCF8523 is not set | 3127 | # CONFIG_RTC_DRV_PCF8523 is not set |
2698 | # CONFIG_RTC_DRV_PCF8563 is not set | 3128 | # CONFIG_RTC_DRV_PCF8563 is not set |
2699 | # CONFIG_RTC_DRV_PCF8583 is not set | 3129 | # CONFIG_RTC_DRV_PCF8583 is not set |
2700 | # CONFIG_RTC_DRV_M41T80 is not set | 3130 | # CONFIG_RTC_DRV_M41T80 is not set |
2701 | # CONFIG_RTC_DRV_BQ32K is not set | 3131 | # CONFIG_RTC_DRV_BQ32K is not set |
2702 | CONFIG_RTC_DRV_S35390A=y | 3132 | CONFIG_RTC_DRV_S35390A=y |
2703 | # CONFIG_RTC_DRV_FM3130 is not set | 3133 | # CONFIG_RTC_DRV_FM3130 is not set |
2704 | # CONFIG_RTC_DRV_RX8581 is not set | 3134 | # CONFIG_RTC_DRV_RX8581 is not set |
2705 | # CONFIG_RTC_DRV_RX8025 is not set | 3135 | # CONFIG_RTC_DRV_RX8025 is not set |
2706 | # CONFIG_RTC_DRV_EM3027 is not set | 3136 | # CONFIG_RTC_DRV_EM3027 is not set |
2707 | # CONFIG_RTC_DRV_RV3029C2 is not set | 3137 | # CONFIG_RTC_DRV_RV3029C2 is not set |
2708 | 3138 | ||
2709 | # | 3139 | # |
2710 | # SPI RTC drivers | 3140 | # SPI RTC drivers |
2711 | # | 3141 | # |
2712 | # CONFIG_RTC_DRV_M41T93 is not set | 3142 | # CONFIG_RTC_DRV_M41T93 is not set |
2713 | # CONFIG_RTC_DRV_M41T94 is not set | 3143 | # CONFIG_RTC_DRV_M41T94 is not set |
2714 | # CONFIG_RTC_DRV_DS1305 is not set | 3144 | # CONFIG_RTC_DRV_DS1305 is not set |
2715 | # CONFIG_RTC_DRV_DS1390 is not set | 3145 | # CONFIG_RTC_DRV_DS1390 is not set |
2716 | # CONFIG_RTC_DRV_MAX6902 is not set | 3146 | # CONFIG_RTC_DRV_MAX6902 is not set |
2717 | # CONFIG_RTC_DRV_R9701 is not set | 3147 | # CONFIG_RTC_DRV_R9701 is not set |
2718 | # CONFIG_RTC_DRV_RS5C348 is not set | 3148 | # CONFIG_RTC_DRV_RS5C348 is not set |
2719 | # CONFIG_RTC_DRV_DS3234 is not set | 3149 | # CONFIG_RTC_DRV_DS3234 is not set |
2720 | # CONFIG_RTC_DRV_PCF2123 is not set | 3150 | # CONFIG_RTC_DRV_PCF2123 is not set |
2721 | # CONFIG_RTC_DRV_RX4581 is not set | 3151 | # CONFIG_RTC_DRV_RX4581 is not set |
2722 | 3152 | ||
2723 | # | 3153 | # |
2724 | # Platform RTC drivers | 3154 | # Platform RTC drivers |
2725 | # | 3155 | # |
2726 | # CONFIG_RTC_DRV_CMOS is not set | 3156 | # CONFIG_RTC_DRV_CMOS is not set |
2727 | # CONFIG_RTC_DRV_DS1286 is not set | 3157 | # CONFIG_RTC_DRV_DS1286 is not set |
2728 | # CONFIG_RTC_DRV_DS1511 is not set | 3158 | # CONFIG_RTC_DRV_DS1511 is not set |
2729 | # CONFIG_RTC_DRV_DS1553 is not set | 3159 | # CONFIG_RTC_DRV_DS1553 is not set |
2730 | # CONFIG_RTC_DRV_DS1742 is not set | 3160 | # CONFIG_RTC_DRV_DS1742 is not set |
2731 | # CONFIG_RTC_DRV_DA9052 is not set | 3161 | # CONFIG_RTC_DRV_DA9052 is not set |
2732 | # CONFIG_RTC_DRV_STK17TA8 is not set | 3162 | # CONFIG_RTC_DRV_STK17TA8 is not set |
2733 | # CONFIG_RTC_DRV_M48T86 is not set | 3163 | # CONFIG_RTC_DRV_M48T86 is not set |
2734 | # CONFIG_RTC_DRV_M48T35 is not set | 3164 | # CONFIG_RTC_DRV_M48T35 is not set |
2735 | # CONFIG_RTC_DRV_M48T59 is not set | 3165 | # CONFIG_RTC_DRV_M48T59 is not set |
2736 | # CONFIG_RTC_DRV_MSM6242 is not set | 3166 | # CONFIG_RTC_DRV_MSM6242 is not set |
2737 | # CONFIG_RTC_DRV_BQ4802 is not set | 3167 | # CONFIG_RTC_DRV_BQ4802 is not set |
2738 | # CONFIG_RTC_DRV_RP5C01 is not set | 3168 | # CONFIG_RTC_DRV_RP5C01 is not set |
2739 | # CONFIG_RTC_DRV_V3020 is not set | 3169 | # CONFIG_RTC_DRV_V3020 is not set |
2740 | # CONFIG_RTC_DRV_DS2404 is not set | 3170 | # CONFIG_RTC_DRV_DS2404 is not set |
2741 | 3171 | ||
2742 | # | 3172 | # |
2743 | # on-CPU RTC drivers | 3173 | # on-CPU RTC drivers |
2744 | # | 3174 | # |
2745 | # CONFIG_RTC_DRV_IMXDI is not set | 3175 | # CONFIG_RTC_DRV_IMXDI is not set |
2746 | # CONFIG_RTC_DRV_MC13XXX is not set | 3176 | # CONFIG_RTC_DRV_MC13XXX is not set |
2747 | # CONFIG_RTC_DRV_MXC is not set | 3177 | # CONFIG_RTC_DRV_MXC is not set |
2748 | # CONFIG_RTC_DRV_SNVS is not set | 3178 | # CONFIG_RTC_DRV_SNVS is not set |
2749 | 3179 | ||
2750 | # | 3180 | # |
2751 | # HID Sensor RTC drivers | 3181 | # HID Sensor RTC drivers |
2752 | # | 3182 | # |
2753 | # CONFIG_RTC_DRV_HID_SENSOR_TIME is not set | 3183 | # CONFIG_RTC_DRV_HID_SENSOR_TIME is not set |
2754 | CONFIG_DMADEVICES=y | 3184 | CONFIG_DMADEVICES=y |
2755 | # CONFIG_DMADEVICES_DEBUG is not set | 3185 | # CONFIG_DMADEVICES_DEBUG is not set |
2756 | 3186 | ||
2757 | # | 3187 | # |
2758 | # DMA Devices | 3188 | # DMA Devices |
2759 | # | 3189 | # |
2760 | # CONFIG_DW_DMAC is not set | 3190 | # CONFIG_DW_DMAC is not set |
2761 | CONFIG_MX3_IPU=y | 3191 | CONFIG_MX3_IPU=y |
2762 | CONFIG_MX3_IPU_IRQS=4 | 3192 | CONFIG_MX3_IPU_IRQS=4 |
2763 | CONFIG_MXC_PXP_V2=y | 3193 | CONFIG_MXC_PXP_V2=y |
2764 | CONFIG_MXC_PXP_CLIENT_DEVICE=y | 3194 | CONFIG_MXC_PXP_CLIENT_DEVICE=y |
2765 | # CONFIG_TIMB_DMA is not set | 3195 | # CONFIG_TIMB_DMA is not set |
2766 | CONFIG_IMX_SDMA=y | 3196 | CONFIG_IMX_SDMA=y |
2767 | # CONFIG_IMX_DMA is not set | 3197 | # CONFIG_IMX_DMA is not set |
2768 | CONFIG_MXS_DMA=y | 3198 | CONFIG_MXS_DMA=y |
2769 | CONFIG_DMA_ENGINE=y | 3199 | CONFIG_DMA_ENGINE=y |
2770 | CONFIG_DMA_OF=y | 3200 | CONFIG_DMA_OF=y |
2771 | 3201 | ||
2772 | # | 3202 | # |
2773 | # DMA Clients | 3203 | # DMA Clients |
2774 | # | 3204 | # |
2775 | # CONFIG_ASYNC_TX_DMA is not set | 3205 | # CONFIG_ASYNC_TX_DMA is not set |
2776 | # CONFIG_DMATEST is not set | 3206 | # CONFIG_DMATEST is not set |
2777 | # CONFIG_AUXDISPLAY is not set | 3207 | # CONFIG_AUXDISPLAY is not set |
2778 | # CONFIG_UIO is not set | 3208 | # CONFIG_UIO is not set |
2779 | # CONFIG_VIRT_DRIVERS is not set | 3209 | # CONFIG_VIRT_DRIVERS is not set |
2780 | 3210 | ||
2781 | # | 3211 | # |
2782 | # Virtio drivers | 3212 | # Virtio drivers |
2783 | # | 3213 | # |
3214 | # CONFIG_VIRTIO_PCI is not set | ||
2784 | # CONFIG_VIRTIO_MMIO is not set | 3215 | # CONFIG_VIRTIO_MMIO is not set |
2785 | 3216 | ||
2786 | # | 3217 | # |
2787 | # Microsoft Hyper-V guest support | 3218 | # Microsoft Hyper-V guest support |
2788 | # | 3219 | # |
2789 | CONFIG_STAGING=y | 3220 | CONFIG_STAGING=y |
3221 | # CONFIG_ET131X is not set | ||
2790 | # CONFIG_USBIP_CORE is not set | 3222 | # CONFIG_USBIP_CORE is not set |
2791 | # CONFIG_W35UND is not set | 3223 | # CONFIG_W35UND is not set |
2792 | # CONFIG_PRISM2_USB is not set | 3224 | # CONFIG_PRISM2_USB is not set |
2793 | # CONFIG_ECHO is not set | 3225 | # CONFIG_ECHO is not set |
2794 | # CONFIG_COMEDI is not set | 3226 | # CONFIG_COMEDI is not set |
2795 | # CONFIG_ASUS_OLED is not set | 3227 | # CONFIG_ASUS_OLED is not set |
3228 | # CONFIG_R8187SE is not set | ||
3229 | # CONFIG_RTL8192U is not set | ||
2796 | # CONFIG_RTLLIB is not set | 3230 | # CONFIG_RTLLIB is not set |
2797 | # CONFIG_R8712U is not set | 3231 | # CONFIG_R8712U is not set |
2798 | # CONFIG_RTS5139 is not set | 3232 | # CONFIG_RTS5139 is not set |
2799 | # CONFIG_TRANZPORT is not set | 3233 | # CONFIG_TRANZPORT is not set |
3234 | # CONFIG_IDE_PHISON is not set | ||
2800 | # CONFIG_LINE6_USB is not set | 3235 | # CONFIG_LINE6_USB is not set |
3236 | # CONFIG_VT6655 is not set | ||
2801 | # CONFIG_VT6656 is not set | 3237 | # CONFIG_VT6656 is not set |
3238 | # CONFIG_DX_SEP is not set | ||
2802 | 3239 | ||
2803 | # | 3240 | # |
2804 | # IIO staging drivers | 3241 | # IIO staging drivers |
2805 | # | 3242 | # |
2806 | 3243 | ||
2807 | # | 3244 | # |
2808 | # Accelerometers | 3245 | # Accelerometers |
2809 | # | 3246 | # |
2810 | # CONFIG_ADIS16201 is not set | 3247 | # CONFIG_ADIS16201 is not set |
2811 | # CONFIG_ADIS16203 is not set | 3248 | # CONFIG_ADIS16203 is not set |
2812 | # CONFIG_ADIS16204 is not set | 3249 | # CONFIG_ADIS16204 is not set |
2813 | # CONFIG_ADIS16209 is not set | 3250 | # CONFIG_ADIS16209 is not set |
2814 | # CONFIG_ADIS16220 is not set | 3251 | # CONFIG_ADIS16220 is not set |
2815 | # CONFIG_ADIS16240 is not set | 3252 | # CONFIG_ADIS16240 is not set |
2816 | # CONFIG_LIS3L02DQ is not set | 3253 | # CONFIG_LIS3L02DQ is not set |
2817 | 3254 | ||
2818 | # | 3255 | # |
2819 | # Analog to digital converters | 3256 | # Analog to digital converters |
2820 | # | 3257 | # |
2821 | # CONFIG_AD7291 is not set | 3258 | # CONFIG_AD7291 is not set |
2822 | # CONFIG_AD7606 is not set | 3259 | # CONFIG_AD7606 is not set |
2823 | # CONFIG_AD799X is not set | 3260 | # CONFIG_AD799X is not set |
2824 | # CONFIG_AD7780 is not set | 3261 | # CONFIG_AD7780 is not set |
2825 | # CONFIG_AD7816 is not set | 3262 | # CONFIG_AD7816 is not set |
2826 | # CONFIG_AD7192 is not set | 3263 | # CONFIG_AD7192 is not set |
2827 | # CONFIG_AD7280 is not set | 3264 | # CONFIG_AD7280 is not set |
2828 | 3265 | ||
2829 | # | 3266 | # |
2830 | # Analog digital bi-direction converters | 3267 | # Analog digital bi-direction converters |
2831 | # | 3268 | # |
2832 | # CONFIG_ADT7316 is not set | 3269 | # CONFIG_ADT7316 is not set |
2833 | 3270 | ||
2834 | # | 3271 | # |
2835 | # Capacitance to digital converters | 3272 | # Capacitance to digital converters |
2836 | # | 3273 | # |
2837 | # CONFIG_AD7150 is not set | 3274 | # CONFIG_AD7150 is not set |
2838 | # CONFIG_AD7152 is not set | 3275 | # CONFIG_AD7152 is not set |
2839 | # CONFIG_AD7746 is not set | 3276 | # CONFIG_AD7746 is not set |
2840 | 3277 | ||
2841 | # | 3278 | # |
2842 | # Direct Digital Synthesis | 3279 | # Direct Digital Synthesis |
2843 | # | 3280 | # |
2844 | # CONFIG_AD5930 is not set | 3281 | # CONFIG_AD5930 is not set |
2845 | # CONFIG_AD9832 is not set | 3282 | # CONFIG_AD9832 is not set |
2846 | # CONFIG_AD9834 is not set | 3283 | # CONFIG_AD9834 is not set |
2847 | # CONFIG_AD9850 is not set | 3284 | # CONFIG_AD9850 is not set |
2848 | # CONFIG_AD9852 is not set | 3285 | # CONFIG_AD9852 is not set |
2849 | # CONFIG_AD9910 is not set | 3286 | # CONFIG_AD9910 is not set |
2850 | # CONFIG_AD9951 is not set | 3287 | # CONFIG_AD9951 is not set |
2851 | 3288 | ||
2852 | # | 3289 | # |
2853 | # Digital gyroscope sensors | 3290 | # Digital gyroscope sensors |
2854 | # | 3291 | # |
2855 | # CONFIG_ADIS16060 is not set | 3292 | # CONFIG_ADIS16060 is not set |
2856 | # CONFIG_ADIS16130 is not set | 3293 | # CONFIG_ADIS16130 is not set |
2857 | # CONFIG_ADIS16260 is not set | 3294 | # CONFIG_ADIS16260 is not set |
2858 | 3295 | ||
2859 | # | 3296 | # |
2860 | # Network Analyzer, Impedance Converters | 3297 | # Network Analyzer, Impedance Converters |
2861 | # | 3298 | # |
2862 | # CONFIG_AD5933 is not set | 3299 | # CONFIG_AD5933 is not set |
2863 | 3300 | ||
2864 | # | 3301 | # |
2865 | # Light sensors | 3302 | # Light sensors |
2866 | # | 3303 | # |
2867 | # CONFIG_SENSORS_ISL29018 is not set | 3304 | # CONFIG_SENSORS_ISL29018 is not set |
2868 | # CONFIG_SENSORS_ISL29028 is not set | 3305 | # CONFIG_SENSORS_ISL29028 is not set |
2869 | # CONFIG_TSL2583 is not set | 3306 | # CONFIG_TSL2583 is not set |
2870 | # CONFIG_TSL2x7x is not set | 3307 | # CONFIG_TSL2x7x is not set |
2871 | 3308 | ||
2872 | # | 3309 | # |
2873 | # Magnetometer sensors | 3310 | # Magnetometer sensors |
2874 | # | 3311 | # |
2875 | # CONFIG_SENSORS_HMC5843 is not set | 3312 | # CONFIG_SENSORS_HMC5843 is not set |
2876 | 3313 | ||
2877 | # | 3314 | # |
2878 | # Active energy metering IC | 3315 | # Active energy metering IC |
2879 | # | 3316 | # |
2880 | # CONFIG_ADE7753 is not set | 3317 | # CONFIG_ADE7753 is not set |
2881 | # CONFIG_ADE7754 is not set | 3318 | # CONFIG_ADE7754 is not set |
2882 | # CONFIG_ADE7758 is not set | 3319 | # CONFIG_ADE7758 is not set |
2883 | # CONFIG_ADE7759 is not set | 3320 | # CONFIG_ADE7759 is not set |
2884 | # CONFIG_ADE7854 is not set | 3321 | # CONFIG_ADE7854 is not set |
2885 | 3322 | ||
2886 | # | 3323 | # |
2887 | # Resolver to digital converters | 3324 | # Resolver to digital converters |
2888 | # | 3325 | # |
2889 | # CONFIG_AD2S90 is not set | 3326 | # CONFIG_AD2S90 is not set |
2890 | # CONFIG_AD2S1200 is not set | 3327 | # CONFIG_AD2S1200 is not set |
2891 | # CONFIG_AD2S1210 is not set | 3328 | # CONFIG_AD2S1210 is not set |
2892 | 3329 | ||
2893 | # | 3330 | # |
2894 | # Triggers - standalone | 3331 | # Triggers - standalone |
2895 | # | 3332 | # |
2896 | # CONFIG_IIO_SIMPLE_DUMMY is not set | 3333 | # CONFIG_IIO_SIMPLE_DUMMY is not set |
2897 | # CONFIG_ZSMALLOC is not set | 3334 | # CONFIG_ZSMALLOC is not set |
3335 | # CONFIG_FB_SM7XX is not set | ||
3336 | # CONFIG_CRYSTALHD is not set | ||
3337 | # CONFIG_FB_XGI is not set | ||
2898 | # CONFIG_USB_ENESTORAGE is not set | 3338 | # CONFIG_USB_ENESTORAGE is not set |
2899 | # CONFIG_BCM_WIMAX is not set | 3339 | # CONFIG_BCM_WIMAX is not set |
2900 | # CONFIG_FT1000 is not set | 3340 | # CONFIG_FT1000 is not set |
2901 | 3341 | ||
2902 | # | 3342 | # |
2903 | # Speakup console speech | 3343 | # Speakup console speech |
2904 | # | 3344 | # |
2905 | # CONFIG_SPEAKUP is not set | 3345 | # CONFIG_SPEAKUP is not set |
2906 | # CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set | 3346 | # CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set |
2907 | # CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set | 3347 | # CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set |
2908 | # CONFIG_STAGING_MEDIA is not set | 3348 | # CONFIG_STAGING_MEDIA is not set |
2909 | 3349 | ||
2910 | # | 3350 | # |
2911 | # Android | 3351 | # Android |
2912 | # | 3352 | # |
2913 | # CONFIG_ANDROID is not set | 3353 | # CONFIG_ANDROID is not set |
2914 | # CONFIG_USB_WPAN_HCD is not set | 3354 | # CONFIG_USB_WPAN_HCD is not set |
2915 | # CONFIG_WIMAX_GDM72XX is not set | 3355 | # CONFIG_WIMAX_GDM72XX is not set |
2916 | # CONFIG_CSR_WIFI is not set | 3356 | # CONFIG_CSR_WIFI is not set |
3357 | CONFIG_NET_VENDOR_SILICOM=y | ||
3358 | # CONFIG_SBYPASS is not set | ||
3359 | # CONFIG_BPCTL is not set | ||
2917 | # CONFIG_CED1401 is not set | 3360 | # CONFIG_CED1401 is not set |
2918 | # CONFIG_DRM_IMX is not set | 3361 | # CONFIG_DRM_IMX is not set |
2919 | # CONFIG_DGRP is not set | 3362 | # CONFIG_DGRP is not set |
2920 | CONFIG_CLKDEV_LOOKUP=y | 3363 | CONFIG_CLKDEV_LOOKUP=y |
2921 | CONFIG_HAVE_CLK_PREPARE=y | 3364 | CONFIG_HAVE_CLK_PREPARE=y |
2922 | CONFIG_COMMON_CLK=y | 3365 | CONFIG_COMMON_CLK=y |
2923 | 3366 | ||
2924 | # | 3367 | # |
2925 | # Common Clock Framework | 3368 | # Common Clock Framework |
2926 | # | 3369 | # |
2927 | CONFIG_COMMON_CLK_DEBUG=y | 3370 | CONFIG_COMMON_CLK_DEBUG=y |
2928 | # CONFIG_COMMON_CLK_SI5351 is not set | 3371 | # CONFIG_COMMON_CLK_SI5351 is not set |
2929 | 3372 | ||
2930 | # | 3373 | # |
2931 | # Hardware Spinlock drivers | 3374 | # Hardware Spinlock drivers |
2932 | # | 3375 | # |
2933 | CONFIG_CLKSRC_OF=y | 3376 | CONFIG_CLKSRC_OF=y |
2934 | CONFIG_CLKSRC_MMIO=y | 3377 | CONFIG_CLKSRC_MMIO=y |
2935 | CONFIG_VF_PIT_TIMER=y | 3378 | CONFIG_VF_PIT_TIMER=y |
2936 | # CONFIG_MAILBOX is not set | 3379 | # CONFIG_MAILBOX is not set |
2937 | # CONFIG_IOMMU_SUPPORT is not set | 3380 | # CONFIG_IOMMU_SUPPORT is not set |
2938 | 3381 | ||
2939 | # | 3382 | # |
2940 | # Remoteproc drivers | 3383 | # Remoteproc drivers |
2941 | # | 3384 | # |
2942 | # CONFIG_STE_MODEM_RPROC is not set | 3385 | # CONFIG_STE_MODEM_RPROC is not set |
2943 | 3386 | ||
2944 | # | 3387 | # |
2945 | # Rpmsg drivers | 3388 | # Rpmsg drivers |
2946 | # | 3389 | # |
2947 | # CONFIG_PM_DEVFREQ is not set | 3390 | # CONFIG_PM_DEVFREQ is not set |
2948 | # CONFIG_EXTCON is not set | 3391 | # CONFIG_EXTCON is not set |
2949 | # CONFIG_MEMORY is not set | 3392 | # CONFIG_MEMORY is not set |
2950 | CONFIG_IIO=y | 3393 | CONFIG_IIO=y |
2951 | # CONFIG_IIO_BUFFER is not set | 3394 | # CONFIG_IIO_BUFFER is not set |
2952 | # CONFIG_IIO_TRIGGER is not set | 3395 | # CONFIG_IIO_TRIGGER is not set |
2953 | 3396 | ||
2954 | # | 3397 | # |
2955 | # Accelerometers | 3398 | # Accelerometers |
2956 | # | 3399 | # |
2957 | # CONFIG_KXSD9 is not set | 3400 | # CONFIG_KXSD9 is not set |
2958 | # CONFIG_IIO_ST_ACCEL_3AXIS is not set | 3401 | # CONFIG_IIO_ST_ACCEL_3AXIS is not set |
2959 | 3402 | ||
2960 | # | 3403 | # |
2961 | # Analog to digital converters | 3404 | # Analog to digital converters |
2962 | # | 3405 | # |
2963 | # CONFIG_AD7266 is not set | 3406 | # CONFIG_AD7266 is not set |
2964 | # CONFIG_AD7298 is not set | 3407 | # CONFIG_AD7298 is not set |
2965 | # CONFIG_AD7923 is not set | 3408 | # CONFIG_AD7923 is not set |
2966 | # CONFIG_AD7791 is not set | 3409 | # CONFIG_AD7791 is not set |
2967 | # CONFIG_AD7793 is not set | 3410 | # CONFIG_AD7793 is not set |
2968 | # CONFIG_AD7476 is not set | 3411 | # CONFIG_AD7476 is not set |
2969 | # CONFIG_AD7887 is not set | 3412 | # CONFIG_AD7887 is not set |
2970 | # CONFIG_EXYNOS_ADC is not set | 3413 | # CONFIG_EXYNOS_ADC is not set |
2971 | # CONFIG_MAX1363 is not set | 3414 | # CONFIG_MAX1363 is not set |
2972 | # CONFIG_TI_ADC081C is not set | 3415 | # CONFIG_TI_ADC081C is not set |
2973 | CONFIG_VF610_ADC=y | 3416 | CONFIG_VF610_ADC=y |
2974 | 3417 | ||
2975 | # | 3418 | # |
2976 | # Amplifiers | 3419 | # Amplifiers |
2977 | # | 3420 | # |
2978 | # CONFIG_AD8366 is not set | 3421 | # CONFIG_AD8366 is not set |
2979 | 3422 | ||
2980 | # | 3423 | # |
2981 | # Hid Sensor IIO Common | 3424 | # Hid Sensor IIO Common |
2982 | # | 3425 | # |
2983 | 3426 | ||
2984 | # | 3427 | # |
2985 | # Digital to analog converters | 3428 | # Digital to analog converters |
2986 | # | 3429 | # |
2987 | # CONFIG_AD5064 is not set | 3430 | # CONFIG_AD5064 is not set |
2988 | # CONFIG_AD5360 is not set | 3431 | # CONFIG_AD5360 is not set |
2989 | # CONFIG_AD5380 is not set | 3432 | # CONFIG_AD5380 is not set |
2990 | # CONFIG_AD5421 is not set | 3433 | # CONFIG_AD5421 is not set |
2991 | # CONFIG_AD5624R_SPI is not set | 3434 | # CONFIG_AD5624R_SPI is not set |
2992 | # CONFIG_AD5446 is not set | 3435 | # CONFIG_AD5446 is not set |
2993 | # CONFIG_AD5449 is not set | 3436 | # CONFIG_AD5449 is not set |
2994 | # CONFIG_AD5504 is not set | 3437 | # CONFIG_AD5504 is not set |
2995 | # CONFIG_AD5755 is not set | 3438 | # CONFIG_AD5755 is not set |
2996 | # CONFIG_AD5764 is not set | 3439 | # CONFIG_AD5764 is not set |
2997 | # CONFIG_AD5791 is not set | 3440 | # CONFIG_AD5791 is not set |
2998 | # CONFIG_AD5686 is not set | 3441 | # CONFIG_AD5686 is not set |
2999 | # CONFIG_MAX517 is not set | 3442 | # CONFIG_MAX517 is not set |
3000 | # CONFIG_MCP4725 is not set | 3443 | # CONFIG_MCP4725 is not set |
3001 | 3444 | ||
3002 | # | 3445 | # |
3003 | # Frequency Synthesizers DDS/PLL | 3446 | # Frequency Synthesizers DDS/PLL |
3004 | # | 3447 | # |
3005 | 3448 | ||
3006 | # | 3449 | # |
3007 | # Clock Generator/Distribution | 3450 | # Clock Generator/Distribution |
3008 | # | 3451 | # |
3009 | # CONFIG_AD9523 is not set | 3452 | # CONFIG_AD9523 is not set |
3010 | 3453 | ||
3011 | # | 3454 | # |
3012 | # Phase-Locked Loop (PLL) frequency synthesizers | 3455 | # Phase-Locked Loop (PLL) frequency synthesizers |
3013 | # | 3456 | # |
3014 | # CONFIG_ADF4350 is not set | 3457 | # CONFIG_ADF4350 is not set |
3015 | 3458 | ||
3016 | # | 3459 | # |
3017 | # Digital gyroscope sensors | 3460 | # Digital gyroscope sensors |
3018 | # | 3461 | # |
3019 | # CONFIG_ADIS16080 is not set | 3462 | # CONFIG_ADIS16080 is not set |
3020 | # CONFIG_ADIS16136 is not set | 3463 | # CONFIG_ADIS16136 is not set |
3021 | # CONFIG_ADXRS450 is not set | 3464 | # CONFIG_ADXRS450 is not set |
3022 | # CONFIG_IIO_ST_GYRO_3AXIS is not set | 3465 | # CONFIG_IIO_ST_GYRO_3AXIS is not set |
3023 | # CONFIG_ITG3200 is not set | 3466 | # CONFIG_ITG3200 is not set |
3024 | 3467 | ||
3025 | # | 3468 | # |
3026 | # Inertial measurement units | 3469 | # Inertial measurement units |
3027 | # | 3470 | # |
3028 | # CONFIG_ADIS16400 is not set | 3471 | # CONFIG_ADIS16400 is not set |
3029 | # CONFIG_ADIS16480 is not set | 3472 | # CONFIG_ADIS16480 is not set |
3030 | # CONFIG_INV_MPU6050_IIO is not set | 3473 | # CONFIG_INV_MPU6050_IIO is not set |
3031 | 3474 | ||
3032 | # | 3475 | # |
3033 | # Light sensors | 3476 | # Light sensors |
3034 | # | 3477 | # |
3035 | # CONFIG_ADJD_S311 is not set | 3478 | # CONFIG_ADJD_S311 is not set |
3036 | # CONFIG_SENSORS_TSL2563 is not set | 3479 | # CONFIG_SENSORS_TSL2563 is not set |
3037 | # CONFIG_VCNL4000 is not set | 3480 | # CONFIG_VCNL4000 is not set |
3038 | 3481 | ||
3039 | # | 3482 | # |
3040 | # Magnetometer sensors | 3483 | # Magnetometer sensors |
3041 | # | 3484 | # |
3042 | # CONFIG_AK8975 is not set | 3485 | # CONFIG_AK8975 is not set |
3043 | # CONFIG_IIO_ST_MAGN_3AXIS is not set | 3486 | # CONFIG_IIO_ST_MAGN_3AXIS is not set |
3487 | # CONFIG_VME_BUS is not set | ||
3044 | CONFIG_PWM=y | 3488 | CONFIG_PWM=y |
3045 | CONFIG_PWM_IMX=y | 3489 | CONFIG_PWM_IMX=y |
3046 | CONFIG_IRQCHIP=y | 3490 | CONFIG_IRQCHIP=y |
3047 | CONFIG_ARM_GIC=y | 3491 | CONFIG_ARM_GIC=y |
3048 | # CONFIG_IPACK_BUS is not set | 3492 | # CONFIG_IPACK_BUS is not set |
3049 | CONFIG_ARCH_HAS_RESET_CONTROLLER=y | 3493 | CONFIG_ARCH_HAS_RESET_CONTROLLER=y |
3050 | CONFIG_RESET_CONTROLLER=y | 3494 | CONFIG_RESET_CONTROLLER=y |
3051 | CONFIG_RESET_GPIO=y | 3495 | CONFIG_RESET_GPIO=y |
3052 | 3496 | ||
3053 | # | 3497 | # |
3054 | # File systems | 3498 | # File systems |
3055 | # | 3499 | # |
3056 | CONFIG_DCACHE_WORD_ACCESS=y | 3500 | CONFIG_DCACHE_WORD_ACCESS=y |
3057 | CONFIG_EXT2_FS=y | 3501 | CONFIG_EXT2_FS=y |
3058 | CONFIG_EXT2_FS_XATTR=y | 3502 | CONFIG_EXT2_FS_XATTR=y |
3059 | CONFIG_EXT2_FS_POSIX_ACL=y | 3503 | CONFIG_EXT2_FS_POSIX_ACL=y |
3060 | CONFIG_EXT2_FS_SECURITY=y | 3504 | CONFIG_EXT2_FS_SECURITY=y |
3061 | # CONFIG_EXT2_FS_XIP is not set | 3505 | # CONFIG_EXT2_FS_XIP is not set |
3062 | CONFIG_EXT3_FS=y | 3506 | CONFIG_EXT3_FS=y |
3063 | CONFIG_EXT3_DEFAULTS_TO_ORDERED=y | 3507 | CONFIG_EXT3_DEFAULTS_TO_ORDERED=y |
3064 | CONFIG_EXT3_FS_XATTR=y | 3508 | CONFIG_EXT3_FS_XATTR=y |
3065 | CONFIG_EXT3_FS_POSIX_ACL=y | 3509 | CONFIG_EXT3_FS_POSIX_ACL=y |
3066 | CONFIG_EXT3_FS_SECURITY=y | 3510 | CONFIG_EXT3_FS_SECURITY=y |
3067 | CONFIG_EXT4_FS=y | 3511 | CONFIG_EXT4_FS=y |
3068 | CONFIG_EXT4_FS_POSIX_ACL=y | 3512 | CONFIG_EXT4_FS_POSIX_ACL=y |
3069 | CONFIG_EXT4_FS_SECURITY=y | 3513 | CONFIG_EXT4_FS_SECURITY=y |
3070 | # CONFIG_EXT4_DEBUG is not set | 3514 | # CONFIG_EXT4_DEBUG is not set |
3071 | CONFIG_JBD=y | 3515 | CONFIG_JBD=y |
3072 | # CONFIG_JBD_DEBUG is not set | 3516 | # CONFIG_JBD_DEBUG is not set |
3073 | CONFIG_JBD2=y | 3517 | CONFIG_JBD2=y |
3074 | # CONFIG_JBD2_DEBUG is not set | 3518 | # CONFIG_JBD2_DEBUG is not set |
3075 | CONFIG_FS_MBCACHE=y | 3519 | CONFIG_FS_MBCACHE=y |
3076 | # CONFIG_REISERFS_FS is not set | 3520 | # CONFIG_REISERFS_FS is not set |
3077 | # CONFIG_JFS_FS is not set | 3521 | # CONFIG_JFS_FS is not set |
3078 | # CONFIG_XFS_FS is not set | 3522 | # CONFIG_XFS_FS is not set |
3079 | # CONFIG_GFS2_FS is not set | 3523 | # CONFIG_GFS2_FS is not set |
3080 | # CONFIG_OCFS2_FS is not set | 3524 | # CONFIG_OCFS2_FS is not set |
3081 | # CONFIG_BTRFS_FS is not set | 3525 | # CONFIG_BTRFS_FS is not set |
3082 | # CONFIG_NILFS2_FS is not set | 3526 | # CONFIG_NILFS2_FS is not set |
3083 | CONFIG_FS_POSIX_ACL=y | 3527 | CONFIG_FS_POSIX_ACL=y |
3084 | CONFIG_FILE_LOCKING=y | 3528 | CONFIG_FILE_LOCKING=y |
3085 | CONFIG_FSNOTIFY=y | 3529 | CONFIG_FSNOTIFY=y |
3086 | CONFIG_DNOTIFY=y | 3530 | CONFIG_DNOTIFY=y |
3087 | CONFIG_INOTIFY_USER=y | 3531 | CONFIG_INOTIFY_USER=y |
3088 | # CONFIG_FANOTIFY is not set | 3532 | # CONFIG_FANOTIFY is not set |
3089 | CONFIG_QUOTA=y | 3533 | CONFIG_QUOTA=y |
3090 | CONFIG_QUOTA_NETLINK_INTERFACE=y | 3534 | CONFIG_QUOTA_NETLINK_INTERFACE=y |
3091 | # CONFIG_PRINT_QUOTA_WARNING is not set | 3535 | # CONFIG_PRINT_QUOTA_WARNING is not set |
3092 | # CONFIG_QUOTA_DEBUG is not set | 3536 | # CONFIG_QUOTA_DEBUG is not set |
3093 | # CONFIG_QFMT_V1 is not set | 3537 | # CONFIG_QFMT_V1 is not set |
3094 | # CONFIG_QFMT_V2 is not set | 3538 | # CONFIG_QFMT_V2 is not set |
3095 | CONFIG_QUOTACTL=y | 3539 | CONFIG_QUOTACTL=y |
3096 | CONFIG_AUTOFS4_FS=y | 3540 | CONFIG_AUTOFS4_FS=y |
3097 | CONFIG_FUSE_FS=y | 3541 | CONFIG_FUSE_FS=y |
3098 | # CONFIG_CUSE is not set | 3542 | # CONFIG_CUSE is not set |
3099 | 3543 | ||
3100 | # | 3544 | # |
3101 | # Caches | 3545 | # Caches |
3102 | # | 3546 | # |
3103 | # CONFIG_FSCACHE is not set | 3547 | # CONFIG_FSCACHE is not set |
3104 | 3548 | ||
3105 | # | 3549 | # |
3106 | # CD-ROM/DVD Filesystems | 3550 | # CD-ROM/DVD Filesystems |
3107 | # | 3551 | # |
3108 | CONFIG_ISO9660_FS=m | 3552 | CONFIG_ISO9660_FS=m |
3109 | CONFIG_JOLIET=y | 3553 | CONFIG_JOLIET=y |
3110 | CONFIG_ZISOFS=y | 3554 | CONFIG_ZISOFS=y |
3111 | CONFIG_UDF_FS=m | 3555 | CONFIG_UDF_FS=m |
3112 | CONFIG_UDF_NLS=y | 3556 | CONFIG_UDF_NLS=y |
3113 | 3557 | ||
3114 | # | 3558 | # |
3115 | # DOS/FAT/NT Filesystems | 3559 | # DOS/FAT/NT Filesystems |
3116 | # | 3560 | # |
3117 | CONFIG_FAT_FS=y | 3561 | CONFIG_FAT_FS=y |
3118 | CONFIG_MSDOS_FS=m | 3562 | CONFIG_MSDOS_FS=m |
3119 | CONFIG_VFAT_FS=y | 3563 | CONFIG_VFAT_FS=y |
3120 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | 3564 | CONFIG_FAT_DEFAULT_CODEPAGE=437 |
3121 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | 3565 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" |
3122 | # CONFIG_NTFS_FS is not set | 3566 | # CONFIG_NTFS_FS is not set |
3123 | 3567 | ||
3124 | # | 3568 | # |
3125 | # Pseudo filesystems | 3569 | # Pseudo filesystems |
3126 | # | 3570 | # |
3127 | CONFIG_PROC_FS=y | 3571 | CONFIG_PROC_FS=y |
3128 | CONFIG_PROC_SYSCTL=y | 3572 | CONFIG_PROC_SYSCTL=y |
3129 | CONFIG_PROC_PAGE_MONITOR=y | 3573 | CONFIG_PROC_PAGE_MONITOR=y |
3130 | CONFIG_SYSFS=y | 3574 | CONFIG_SYSFS=y |
3131 | CONFIG_TMPFS=y | 3575 | CONFIG_TMPFS=y |
3132 | # CONFIG_TMPFS_POSIX_ACL is not set | 3576 | # CONFIG_TMPFS_POSIX_ACL is not set |
3133 | # CONFIG_TMPFS_XATTR is not set | 3577 | # CONFIG_TMPFS_XATTR is not set |
3134 | # CONFIG_HUGETLB_PAGE is not set | 3578 | # CONFIG_HUGETLB_PAGE is not set |
3135 | CONFIG_CONFIGFS_FS=m | 3579 | CONFIG_CONFIGFS_FS=m |
3136 | CONFIG_MISC_FILESYSTEMS=y | 3580 | CONFIG_MISC_FILESYSTEMS=y |
3137 | # CONFIG_ADFS_FS is not set | 3581 | # CONFIG_ADFS_FS is not set |
3138 | # CONFIG_AFFS_FS is not set | 3582 | # CONFIG_AFFS_FS is not set |
3139 | # CONFIG_ECRYPT_FS is not set | 3583 | # CONFIG_ECRYPT_FS is not set |
3140 | # CONFIG_HFS_FS is not set | 3584 | # CONFIG_HFS_FS is not set |
3141 | # CONFIG_HFSPLUS_FS is not set | 3585 | # CONFIG_HFSPLUS_FS is not set |
3142 | # CONFIG_BEFS_FS is not set | 3586 | # CONFIG_BEFS_FS is not set |
3143 | # CONFIG_BFS_FS is not set | 3587 | # CONFIG_BFS_FS is not set |
3144 | # CONFIG_EFS_FS is not set | 3588 | # CONFIG_EFS_FS is not set |
3145 | CONFIG_JFFS2_FS=y | 3589 | CONFIG_JFFS2_FS=y |
3146 | CONFIG_JFFS2_FS_DEBUG=0 | 3590 | CONFIG_JFFS2_FS_DEBUG=0 |
3147 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 3591 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
3148 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | 3592 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set |
3149 | # CONFIG_JFFS2_SUMMARY is not set | 3593 | # CONFIG_JFFS2_SUMMARY is not set |
3150 | # CONFIG_JFFS2_FS_XATTR is not set | 3594 | # CONFIG_JFFS2_FS_XATTR is not set |
3151 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 3595 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
3152 | CONFIG_JFFS2_ZLIB=y | 3596 | CONFIG_JFFS2_ZLIB=y |
3153 | # CONFIG_JFFS2_LZO is not set | 3597 | # CONFIG_JFFS2_LZO is not set |
3154 | CONFIG_JFFS2_RTIME=y | 3598 | CONFIG_JFFS2_RTIME=y |
3155 | # CONFIG_JFFS2_RUBIN is not set | 3599 | # CONFIG_JFFS2_RUBIN is not set |
3156 | CONFIG_UBIFS_FS=y | 3600 | CONFIG_UBIFS_FS=y |
3157 | # CONFIG_UBIFS_FS_ADVANCED_COMPR is not set | 3601 | # CONFIG_UBIFS_FS_ADVANCED_COMPR is not set |
3158 | CONFIG_UBIFS_FS_LZO=y | 3602 | CONFIG_UBIFS_FS_LZO=y |
3159 | CONFIG_UBIFS_FS_ZLIB=y | 3603 | CONFIG_UBIFS_FS_ZLIB=y |
3160 | # CONFIG_LOGFS is not set | 3604 | # CONFIG_LOGFS is not set |
3161 | # CONFIG_CRAMFS is not set | 3605 | # CONFIG_CRAMFS is not set |
3162 | # CONFIG_SQUASHFS is not set | 3606 | # CONFIG_SQUASHFS is not set |
3163 | # CONFIG_VXFS_FS is not set | 3607 | # CONFIG_VXFS_FS is not set |
3164 | # CONFIG_MINIX_FS is not set | 3608 | # CONFIG_MINIX_FS is not set |
3165 | # CONFIG_OMFS_FS is not set | 3609 | # CONFIG_OMFS_FS is not set |
3166 | # CONFIG_HPFS_FS is not set | 3610 | # CONFIG_HPFS_FS is not set |
3167 | # CONFIG_QNX4FS_FS is not set | 3611 | # CONFIG_QNX4FS_FS is not set |
3168 | # CONFIG_QNX6FS_FS is not set | 3612 | # CONFIG_QNX6FS_FS is not set |
3169 | # CONFIG_ROMFS_FS is not set | 3613 | # CONFIG_ROMFS_FS is not set |
3170 | # CONFIG_PSTORE is not set | 3614 | # CONFIG_PSTORE is not set |
3171 | # CONFIG_SYSV_FS is not set | 3615 | # CONFIG_SYSV_FS is not set |
3172 | # CONFIG_UFS_FS is not set | 3616 | # CONFIG_UFS_FS is not set |
3173 | # CONFIG_F2FS_FS is not set | 3617 | # CONFIG_F2FS_FS is not set |
3174 | CONFIG_NETWORK_FILESYSTEMS=y | 3618 | CONFIG_NETWORK_FILESYSTEMS=y |
3175 | CONFIG_NFS_FS=y | 3619 | CONFIG_NFS_FS=y |
3176 | CONFIG_NFS_V2=y | 3620 | CONFIG_NFS_V2=y |
3177 | CONFIG_NFS_V3=y | 3621 | CONFIG_NFS_V3=y |
3178 | CONFIG_NFS_V3_ACL=y | 3622 | CONFIG_NFS_V3_ACL=y |
3179 | CONFIG_NFS_V4=y | 3623 | CONFIG_NFS_V4=y |
3180 | # CONFIG_NFS_SWAP is not set | 3624 | # CONFIG_NFS_SWAP is not set |
3181 | # CONFIG_NFS_V4_1 is not set | 3625 | # CONFIG_NFS_V4_1 is not set |
3182 | CONFIG_ROOT_NFS=y | 3626 | CONFIG_ROOT_NFS=y |
3183 | # CONFIG_NFS_USE_LEGACY_DNS is not set | 3627 | # CONFIG_NFS_USE_LEGACY_DNS is not set |
3184 | CONFIG_NFS_USE_KERNEL_DNS=y | 3628 | CONFIG_NFS_USE_KERNEL_DNS=y |
3185 | # CONFIG_NFSD is not set | 3629 | # CONFIG_NFSD is not set |
3186 | CONFIG_LOCKD=y | 3630 | CONFIG_LOCKD=y |
3187 | CONFIG_LOCKD_V4=y | 3631 | CONFIG_LOCKD_V4=y |
3188 | CONFIG_NFS_ACL_SUPPORT=y | 3632 | CONFIG_NFS_ACL_SUPPORT=y |
3189 | CONFIG_NFS_COMMON=y | 3633 | CONFIG_NFS_COMMON=y |
3190 | CONFIG_SUNRPC=y | 3634 | CONFIG_SUNRPC=y |
3191 | CONFIG_SUNRPC_GSS=y | 3635 | CONFIG_SUNRPC_GSS=y |
3192 | # CONFIG_SUNRPC_DEBUG is not set | 3636 | # CONFIG_SUNRPC_DEBUG is not set |
3193 | # CONFIG_CEPH_FS is not set | 3637 | # CONFIG_CEPH_FS is not set |
3194 | # CONFIG_CIFS is not set | 3638 | # CONFIG_CIFS is not set |
3195 | # CONFIG_NCP_FS is not set | 3639 | # CONFIG_NCP_FS is not set |
3196 | # CONFIG_CODA_FS is not set | 3640 | # CONFIG_CODA_FS is not set |
3197 | # CONFIG_AFS_FS is not set | 3641 | # CONFIG_AFS_FS is not set |
3198 | CONFIG_NLS=y | 3642 | CONFIG_NLS=y |
3199 | CONFIG_NLS_DEFAULT="cp437" | 3643 | CONFIG_NLS_DEFAULT="cp437" |
3200 | CONFIG_NLS_CODEPAGE_437=y | 3644 | CONFIG_NLS_CODEPAGE_437=y |
3201 | # CONFIG_NLS_CODEPAGE_737 is not set | 3645 | # CONFIG_NLS_CODEPAGE_737 is not set |
3202 | # CONFIG_NLS_CODEPAGE_775 is not set | 3646 | # CONFIG_NLS_CODEPAGE_775 is not set |
3203 | # CONFIG_NLS_CODEPAGE_850 is not set | 3647 | # CONFIG_NLS_CODEPAGE_850 is not set |
3204 | # CONFIG_NLS_CODEPAGE_852 is not set | 3648 | # CONFIG_NLS_CODEPAGE_852 is not set |
3205 | # CONFIG_NLS_CODEPAGE_855 is not set | 3649 | # CONFIG_NLS_CODEPAGE_855 is not set |
3206 | # CONFIG_NLS_CODEPAGE_857 is not set | 3650 | # CONFIG_NLS_CODEPAGE_857 is not set |
3207 | # CONFIG_NLS_CODEPAGE_860 is not set | 3651 | # CONFIG_NLS_CODEPAGE_860 is not set |
3208 | # CONFIG_NLS_CODEPAGE_861 is not set | 3652 | # CONFIG_NLS_CODEPAGE_861 is not set |
3209 | # CONFIG_NLS_CODEPAGE_862 is not set | 3653 | # CONFIG_NLS_CODEPAGE_862 is not set |
3210 | # CONFIG_NLS_CODEPAGE_863 is not set | 3654 | # CONFIG_NLS_CODEPAGE_863 is not set |
3211 | # CONFIG_NLS_CODEPAGE_864 is not set | 3655 | # CONFIG_NLS_CODEPAGE_864 is not set |
3212 | # CONFIG_NLS_CODEPAGE_865 is not set | 3656 | # CONFIG_NLS_CODEPAGE_865 is not set |
3213 | # CONFIG_NLS_CODEPAGE_866 is not set | 3657 | # CONFIG_NLS_CODEPAGE_866 is not set |
3214 | # CONFIG_NLS_CODEPAGE_869 is not set | 3658 | # CONFIG_NLS_CODEPAGE_869 is not set |
3215 | # CONFIG_NLS_CODEPAGE_936 is not set | 3659 | # CONFIG_NLS_CODEPAGE_936 is not set |
3216 | # CONFIG_NLS_CODEPAGE_950 is not set | 3660 | # CONFIG_NLS_CODEPAGE_950 is not set |
3217 | # CONFIG_NLS_CODEPAGE_932 is not set | 3661 | # CONFIG_NLS_CODEPAGE_932 is not set |
3218 | # CONFIG_NLS_CODEPAGE_949 is not set | 3662 | # CONFIG_NLS_CODEPAGE_949 is not set |
3219 | # CONFIG_NLS_CODEPAGE_874 is not set | 3663 | # CONFIG_NLS_CODEPAGE_874 is not set |
3220 | # CONFIG_NLS_ISO8859_8 is not set | 3664 | # CONFIG_NLS_ISO8859_8 is not set |
3221 | # CONFIG_NLS_CODEPAGE_1250 is not set | 3665 | # CONFIG_NLS_CODEPAGE_1250 is not set |
3222 | # CONFIG_NLS_CODEPAGE_1251 is not set | 3666 | # CONFIG_NLS_CODEPAGE_1251 is not set |
3223 | CONFIG_NLS_ASCII=y | 3667 | CONFIG_NLS_ASCII=y |
3224 | CONFIG_NLS_ISO8859_1=y | 3668 | CONFIG_NLS_ISO8859_1=y |
3225 | # CONFIG_NLS_ISO8859_2 is not set | 3669 | # CONFIG_NLS_ISO8859_2 is not set |
3226 | # CONFIG_NLS_ISO8859_3 is not set | 3670 | # CONFIG_NLS_ISO8859_3 is not set |
3227 | # CONFIG_NLS_ISO8859_4 is not set | 3671 | # CONFIG_NLS_ISO8859_4 is not set |
3228 | # CONFIG_NLS_ISO8859_5 is not set | 3672 | # CONFIG_NLS_ISO8859_5 is not set |
3229 | # CONFIG_NLS_ISO8859_6 is not set | 3673 | # CONFIG_NLS_ISO8859_6 is not set |
3230 | # CONFIG_NLS_ISO8859_7 is not set | 3674 | # CONFIG_NLS_ISO8859_7 is not set |
3231 | # CONFIG_NLS_ISO8859_9 is not set | 3675 | # CONFIG_NLS_ISO8859_9 is not set |
3232 | # CONFIG_NLS_ISO8859_13 is not set | 3676 | # CONFIG_NLS_ISO8859_13 is not set |
3233 | # CONFIG_NLS_ISO8859_14 is not set | 3677 | # CONFIG_NLS_ISO8859_14 is not set |
3234 | CONFIG_NLS_ISO8859_15=m | 3678 | CONFIG_NLS_ISO8859_15=m |
3235 | # CONFIG_NLS_KOI8_R is not set | 3679 | # CONFIG_NLS_KOI8_R is not set |
3236 | # CONFIG_NLS_KOI8_U is not set | 3680 | # CONFIG_NLS_KOI8_U is not set |
3237 | # CONFIG_NLS_MAC_ROMAN is not set | 3681 | # CONFIG_NLS_MAC_ROMAN is not set |
3238 | # CONFIG_NLS_MAC_CELTIC is not set | 3682 | # CONFIG_NLS_MAC_CELTIC is not set |
3239 | # CONFIG_NLS_MAC_CENTEURO is not set | 3683 | # CONFIG_NLS_MAC_CENTEURO is not set |
3240 | # CONFIG_NLS_MAC_CROATIAN is not set | 3684 | # CONFIG_NLS_MAC_CROATIAN is not set |
3241 | # CONFIG_NLS_MAC_CYRILLIC is not set | 3685 | # CONFIG_NLS_MAC_CYRILLIC is not set |
3242 | # CONFIG_NLS_MAC_GAELIC is not set | 3686 | # CONFIG_NLS_MAC_GAELIC is not set |
3243 | # CONFIG_NLS_MAC_GREEK is not set | 3687 | # CONFIG_NLS_MAC_GREEK is not set |
3244 | # CONFIG_NLS_MAC_ICELAND is not set | 3688 | # CONFIG_NLS_MAC_ICELAND is not set |
3245 | # CONFIG_NLS_MAC_INUIT is not set | 3689 | # CONFIG_NLS_MAC_INUIT is not set |
3246 | # CONFIG_NLS_MAC_ROMANIAN is not set | 3690 | # CONFIG_NLS_MAC_ROMANIAN is not set |
3247 | # CONFIG_NLS_MAC_TURKISH is not set | 3691 | # CONFIG_NLS_MAC_TURKISH is not set |
3248 | CONFIG_NLS_UTF8=y | 3692 | CONFIG_NLS_UTF8=y |
3249 | # CONFIG_DLM is not set | 3693 | # CONFIG_DLM is not set |
3250 | 3694 | ||
3251 | # | 3695 | # |
3252 | # Kernel hacking | 3696 | # Kernel hacking |
3253 | # | 3697 | # |
3254 | # CONFIG_PRINTK_TIME is not set | 3698 | # CONFIG_PRINTK_TIME is not set |
3255 | CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 | 3699 | CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 |
3256 | CONFIG_ENABLE_WARN_DEPRECATED=y | 3700 | CONFIG_ENABLE_WARN_DEPRECATED=y |
3257 | CONFIG_ENABLE_MUST_CHECK=y | 3701 | CONFIG_ENABLE_MUST_CHECK=y |
3258 | CONFIG_FRAME_WARN=1024 | 3702 | CONFIG_FRAME_WARN=1024 |
3259 | CONFIG_MAGIC_SYSRQ=y | 3703 | CONFIG_MAGIC_SYSRQ=y |
3260 | # CONFIG_STRIP_ASM_SYMS is not set | 3704 | # CONFIG_STRIP_ASM_SYMS is not set |
3261 | # CONFIG_READABLE_ASM is not set | 3705 | # CONFIG_READABLE_ASM is not set |
3262 | # CONFIG_UNUSED_SYMBOLS is not set | 3706 | # CONFIG_UNUSED_SYMBOLS is not set |
3263 | CONFIG_DEBUG_FS=y | 3707 | CONFIG_DEBUG_FS=y |
3264 | # CONFIG_HEADERS_CHECK is not set | 3708 | # CONFIG_HEADERS_CHECK is not set |
3265 | # CONFIG_DEBUG_SECTION_MISMATCH is not set | 3709 | # CONFIG_DEBUG_SECTION_MISMATCH is not set |
3266 | CONFIG_DEBUG_KERNEL=y | 3710 | CONFIG_DEBUG_KERNEL=y |
3267 | # CONFIG_DEBUG_SHIRQ is not set | 3711 | # CONFIG_DEBUG_SHIRQ is not set |
3268 | # CONFIG_LOCKUP_DETECTOR is not set | 3712 | # CONFIG_LOCKUP_DETECTOR is not set |
3269 | # CONFIG_PANIC_ON_OOPS is not set | 3713 | # CONFIG_PANIC_ON_OOPS is not set |
3270 | CONFIG_PANIC_ON_OOPS_VALUE=0 | 3714 | CONFIG_PANIC_ON_OOPS_VALUE=0 |
3271 | # CONFIG_DETECT_HUNG_TASK is not set | 3715 | # CONFIG_DETECT_HUNG_TASK is not set |
3272 | # CONFIG_SCHED_DEBUG is not set | 3716 | # CONFIG_SCHED_DEBUG is not set |
3273 | # CONFIG_SCHEDSTATS is not set | 3717 | # CONFIG_SCHEDSTATS is not set |
3274 | # CONFIG_TIMER_STATS is not set | 3718 | # CONFIG_TIMER_STATS is not set |
3275 | # CONFIG_DEBUG_OBJECTS is not set | 3719 | # CONFIG_DEBUG_OBJECTS is not set |
3276 | # CONFIG_SLUB_STATS is not set | 3720 | # CONFIG_SLUB_STATS is not set |
3277 | CONFIG_HAVE_DEBUG_KMEMLEAK=y | 3721 | CONFIG_HAVE_DEBUG_KMEMLEAK=y |
3278 | # CONFIG_DEBUG_KMEMLEAK is not set | 3722 | # CONFIG_DEBUG_KMEMLEAK is not set |
3279 | CONFIG_DEBUG_PREEMPT=y | 3723 | CONFIG_DEBUG_PREEMPT=y |
3280 | # CONFIG_DEBUG_RT_MUTEXES is not set | 3724 | # CONFIG_DEBUG_RT_MUTEXES is not set |
3281 | # CONFIG_RT_MUTEX_TESTER is not set | 3725 | # CONFIG_RT_MUTEX_TESTER is not set |
3282 | # CONFIG_DEBUG_SPINLOCK is not set | 3726 | # CONFIG_DEBUG_SPINLOCK is not set |
3283 | # CONFIG_DEBUG_MUTEXES is not set | 3727 | # CONFIG_DEBUG_MUTEXES is not set |
3284 | # CONFIG_DEBUG_LOCK_ALLOC is not set | 3728 | # CONFIG_DEBUG_LOCK_ALLOC is not set |
3285 | # CONFIG_PROVE_LOCKING is not set | 3729 | # CONFIG_PROVE_LOCKING is not set |
3286 | # CONFIG_LOCK_STAT is not set | 3730 | # CONFIG_LOCK_STAT is not set |
3287 | # CONFIG_DEBUG_ATOMIC_SLEEP is not set | 3731 | # CONFIG_DEBUG_ATOMIC_SLEEP is not set |
3288 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | 3732 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set |
3289 | # CONFIG_DEBUG_STACK_USAGE is not set | 3733 | # CONFIG_DEBUG_STACK_USAGE is not set |
3290 | # CONFIG_DEBUG_KOBJECT is not set | 3734 | # CONFIG_DEBUG_KOBJECT is not set |
3291 | # CONFIG_DEBUG_HIGHMEM is not set | 3735 | # CONFIG_DEBUG_HIGHMEM is not set |
3292 | # CONFIG_DEBUG_BUGVERBOSE is not set | 3736 | # CONFIG_DEBUG_BUGVERBOSE is not set |
3293 | # CONFIG_DEBUG_INFO is not set | 3737 | # CONFIG_DEBUG_INFO is not set |
3294 | # CONFIG_DEBUG_VM is not set | 3738 | # CONFIG_DEBUG_VM is not set |
3295 | # CONFIG_DEBUG_WRITECOUNT is not set | 3739 | # CONFIG_DEBUG_WRITECOUNT is not set |
3296 | # CONFIG_DEBUG_MEMORY_INIT is not set | 3740 | # CONFIG_DEBUG_MEMORY_INIT is not set |
3297 | # CONFIG_DEBUG_LIST is not set | 3741 | # CONFIG_DEBUG_LIST is not set |
3298 | # CONFIG_TEST_LIST_SORT is not set | 3742 | # CONFIG_TEST_LIST_SORT is not set |
3299 | # CONFIG_DEBUG_SG is not set | 3743 | # CONFIG_DEBUG_SG is not set |
3300 | # CONFIG_DEBUG_NOTIFIERS is not set | 3744 | # CONFIG_DEBUG_NOTIFIERS is not set |
3301 | # CONFIG_DEBUG_CREDENTIALS is not set | 3745 | # CONFIG_DEBUG_CREDENTIALS is not set |
3302 | # CONFIG_BOOT_PRINTK_DELAY is not set | 3746 | # CONFIG_BOOT_PRINTK_DELAY is not set |
3303 | 3747 | ||
3304 | # | 3748 | # |
3305 | # RCU Debugging | 3749 | # RCU Debugging |
3306 | # | 3750 | # |
3307 | # CONFIG_PROVE_RCU_DELAY is not set | 3751 | # CONFIG_PROVE_RCU_DELAY is not set |
3308 | # CONFIG_SPARSE_RCU_POINTER is not set | 3752 | # CONFIG_SPARSE_RCU_POINTER is not set |
3309 | # CONFIG_RCU_TORTURE_TEST is not set | 3753 | # CONFIG_RCU_TORTURE_TEST is not set |
3310 | CONFIG_RCU_CPU_STALL_TIMEOUT=21 | 3754 | CONFIG_RCU_CPU_STALL_TIMEOUT=21 |
3311 | CONFIG_RCU_CPU_STALL_VERBOSE=y | 3755 | CONFIG_RCU_CPU_STALL_VERBOSE=y |
3312 | # CONFIG_RCU_CPU_STALL_INFO is not set | 3756 | # CONFIG_RCU_CPU_STALL_INFO is not set |
3313 | # CONFIG_RCU_TRACE is not set | 3757 | # CONFIG_RCU_TRACE is not set |
3314 | # CONFIG_BACKTRACE_SELF_TEST is not set | 3758 | # CONFIG_BACKTRACE_SELF_TEST is not set |
3315 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | 3759 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set |
3316 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | 3760 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set |
3317 | # CONFIG_DEBUG_PER_CPU_MAPS is not set | 3761 | # CONFIG_DEBUG_PER_CPU_MAPS is not set |
3318 | # CONFIG_LKDTM is not set | 3762 | # CONFIG_LKDTM is not set |
3319 | # CONFIG_NOTIFIER_ERROR_INJECTION is not set | 3763 | # CONFIG_NOTIFIER_ERROR_INJECTION is not set |
3320 | # CONFIG_FAULT_INJECTION is not set | 3764 | # CONFIG_FAULT_INJECTION is not set |
3321 | # CONFIG_DEBUG_PAGEALLOC is not set | 3765 | # CONFIG_DEBUG_PAGEALLOC is not set |
3322 | CONFIG_HAVE_FUNCTION_TRACER=y | 3766 | CONFIG_HAVE_FUNCTION_TRACER=y |
3323 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | 3767 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y |
3324 | CONFIG_HAVE_DYNAMIC_FTRACE=y | 3768 | CONFIG_HAVE_DYNAMIC_FTRACE=y |
3325 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | 3769 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y |
3326 | CONFIG_HAVE_SYSCALL_TRACEPOINTS=y | 3770 | CONFIG_HAVE_SYSCALL_TRACEPOINTS=y |
3327 | CONFIG_HAVE_C_RECORDMCOUNT=y | 3771 | CONFIG_HAVE_C_RECORDMCOUNT=y |
3328 | CONFIG_TRACING_SUPPORT=y | 3772 | CONFIG_TRACING_SUPPORT=y |
3329 | # CONFIG_FTRACE is not set | 3773 | # CONFIG_FTRACE is not set |
3330 | # CONFIG_RBTREE_TEST is not set | 3774 | # CONFIG_RBTREE_TEST is not set |
3331 | # CONFIG_INTERVAL_TREE_TEST is not set | 3775 | # CONFIG_INTERVAL_TREE_TEST is not set |
3332 | # CONFIG_DYNAMIC_DEBUG is not set | 3776 | # CONFIG_DYNAMIC_DEBUG is not set |
3333 | # CONFIG_DMA_API_DEBUG is not set | 3777 | # CONFIG_DMA_API_DEBUG is not set |
3334 | # CONFIG_ATOMIC64_SELFTEST is not set | 3778 | # CONFIG_ATOMIC64_SELFTEST is not set |
3335 | # CONFIG_SAMPLES is not set | 3779 | # CONFIG_SAMPLES is not set |
3336 | CONFIG_HAVE_ARCH_KGDB=y | 3780 | CONFIG_HAVE_ARCH_KGDB=y |
3337 | # CONFIG_KGDB is not set | 3781 | # CONFIG_KGDB is not set |
3338 | # CONFIG_TEST_STRING_HELPERS is not set | 3782 | # CONFIG_TEST_STRING_HELPERS is not set |
3339 | # CONFIG_TEST_KSTRTOX is not set | 3783 | # CONFIG_TEST_KSTRTOX is not set |
3340 | # CONFIG_STRICT_DEVMEM is not set | 3784 | # CONFIG_STRICT_DEVMEM is not set |
3341 | CONFIG_ARM_UNWIND=y | 3785 | CONFIG_ARM_UNWIND=y |
3342 | # CONFIG_DEBUG_USER is not set | 3786 | # CONFIG_DEBUG_USER is not set |
3343 | # CONFIG_DEBUG_LL is not set | 3787 | # CONFIG_DEBUG_LL is not set |
3344 | CONFIG_DEBUG_IMX_UART_PORT=1 | 3788 | CONFIG_DEBUG_IMX_UART_PORT=1 |
3345 | CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" | 3789 | CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" |
3346 | CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" | 3790 | CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" |
3347 | # CONFIG_PID_IN_CONTEXTIDR is not set | 3791 | # CONFIG_PID_IN_CONTEXTIDR is not set |
3348 | 3792 | ||
3349 | # | 3793 | # |
3350 | # Security options | 3794 | # Security options |
3351 | # | 3795 | # |
3352 | CONFIG_KEYS=y | 3796 | CONFIG_KEYS=y |
3353 | # CONFIG_ENCRYPTED_KEYS is not set | 3797 | # CONFIG_ENCRYPTED_KEYS is not set |
3354 | # CONFIG_KEYS_DEBUG_PROC_KEYS is not set | 3798 | # CONFIG_KEYS_DEBUG_PROC_KEYS is not set |
3355 | # CONFIG_SECURITY_DMESG_RESTRICT is not set | 3799 | # CONFIG_SECURITY_DMESG_RESTRICT is not set |
3356 | # CONFIG_SECURITY is not set | 3800 | # CONFIG_SECURITY is not set |
3357 | CONFIG_SECURITYFS=y | 3801 | CONFIG_SECURITYFS=y |
3358 | CONFIG_DEFAULT_SECURITY_DAC=y | 3802 | CONFIG_DEFAULT_SECURITY_DAC=y |
3359 | CONFIG_DEFAULT_SECURITY="" | 3803 | CONFIG_DEFAULT_SECURITY="" |
3360 | CONFIG_CRYPTO=y | 3804 | CONFIG_CRYPTO=y |
3361 | 3805 | ||
3362 | # | 3806 | # |
3363 | # Crypto core or helper | 3807 | # Crypto core or helper |
3364 | # | 3808 | # |
3365 | CONFIG_CRYPTO_ALGAPI=y | 3809 | CONFIG_CRYPTO_ALGAPI=y |
3366 | CONFIG_CRYPTO_ALGAPI2=y | 3810 | CONFIG_CRYPTO_ALGAPI2=y |
3367 | CONFIG_CRYPTO_AEAD=y | 3811 | CONFIG_CRYPTO_AEAD=y |
3368 | CONFIG_CRYPTO_AEAD2=y | 3812 | CONFIG_CRYPTO_AEAD2=y |
3369 | CONFIG_CRYPTO_BLKCIPHER=y | 3813 | CONFIG_CRYPTO_BLKCIPHER=y |
3370 | CONFIG_CRYPTO_BLKCIPHER2=y | 3814 | CONFIG_CRYPTO_BLKCIPHER2=y |
3371 | CONFIG_CRYPTO_HASH=y | 3815 | CONFIG_CRYPTO_HASH=y |
3372 | CONFIG_CRYPTO_HASH2=y | 3816 | CONFIG_CRYPTO_HASH2=y |
3373 | CONFIG_CRYPTO_RNG=y | 3817 | CONFIG_CRYPTO_RNG=y |
3374 | CONFIG_CRYPTO_RNG2=y | 3818 | CONFIG_CRYPTO_RNG2=y |
3375 | CONFIG_CRYPTO_PCOMP2=y | 3819 | CONFIG_CRYPTO_PCOMP2=y |
3376 | CONFIG_CRYPTO_MANAGER=y | 3820 | CONFIG_CRYPTO_MANAGER=y |
3377 | CONFIG_CRYPTO_MANAGER2=y | 3821 | CONFIG_CRYPTO_MANAGER2=y |
3378 | CONFIG_CRYPTO_USER=y | 3822 | CONFIG_CRYPTO_USER=y |
3379 | CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y | 3823 | CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y |
3380 | CONFIG_CRYPTO_GF128MUL=y | 3824 | CONFIG_CRYPTO_GF128MUL=y |
3381 | CONFIG_CRYPTO_NULL=y | 3825 | CONFIG_CRYPTO_NULL=y |
3382 | # CONFIG_CRYPTO_PCRYPT is not set | 3826 | # CONFIG_CRYPTO_PCRYPT is not set |
3383 | CONFIG_CRYPTO_WORKQUEUE=y | 3827 | CONFIG_CRYPTO_WORKQUEUE=y |
3384 | # CONFIG_CRYPTO_CRYPTD is not set | 3828 | # CONFIG_CRYPTO_CRYPTD is not set |
3385 | CONFIG_CRYPTO_AUTHENC=y | 3829 | CONFIG_CRYPTO_AUTHENC=y |
3386 | CONFIG_CRYPTO_TEST=m | 3830 | CONFIG_CRYPTO_TEST=m |
3387 | 3831 | ||
3388 | # | 3832 | # |
3389 | # Authenticated Encryption with Associated Data | 3833 | # Authenticated Encryption with Associated Data |
3390 | # | 3834 | # |
3391 | CONFIG_CRYPTO_CCM=y | 3835 | CONFIG_CRYPTO_CCM=y |
3392 | CONFIG_CRYPTO_GCM=y | 3836 | CONFIG_CRYPTO_GCM=y |
3393 | CONFIG_CRYPTO_SEQIV=y | 3837 | CONFIG_CRYPTO_SEQIV=y |
3394 | 3838 | ||
3395 | # | 3839 | # |
3396 | # Block modes | 3840 | # Block modes |
3397 | # | 3841 | # |
3398 | CONFIG_CRYPTO_CBC=y | 3842 | CONFIG_CRYPTO_CBC=y |
3399 | CONFIG_CRYPTO_CTR=y | 3843 | CONFIG_CRYPTO_CTR=y |
3400 | CONFIG_CRYPTO_CTS=y | 3844 | CONFIG_CRYPTO_CTS=y |
3401 | CONFIG_CRYPTO_ECB=y | 3845 | CONFIG_CRYPTO_ECB=y |
3402 | CONFIG_CRYPTO_LRW=y | 3846 | CONFIG_CRYPTO_LRW=y |
3403 | # CONFIG_CRYPTO_PCBC is not set | 3847 | # CONFIG_CRYPTO_PCBC is not set |
3404 | CONFIG_CRYPTO_XTS=y | 3848 | CONFIG_CRYPTO_XTS=y |
3405 | 3849 | ||
3406 | # | 3850 | # |
3407 | # Hash modes | 3851 | # Hash modes |
3408 | # | 3852 | # |
3409 | # CONFIG_CRYPTO_CMAC is not set | 3853 | # CONFIG_CRYPTO_CMAC is not set |
3410 | # CONFIG_CRYPTO_HMAC is not set | 3854 | # CONFIG_CRYPTO_HMAC is not set |
3411 | # CONFIG_CRYPTO_XCBC is not set | 3855 | # CONFIG_CRYPTO_XCBC is not set |
3412 | # CONFIG_CRYPTO_VMAC is not set | 3856 | # CONFIG_CRYPTO_VMAC is not set |
3413 | 3857 | ||
3414 | # | 3858 | # |
3415 | # Digest | 3859 | # Digest |
3416 | # | 3860 | # |
3417 | CONFIG_CRYPTO_CRC32C=y | 3861 | CONFIG_CRYPTO_CRC32C=y |
3418 | # CONFIG_CRYPTO_CRC32 is not set | 3862 | # CONFIG_CRYPTO_CRC32 is not set |
3419 | CONFIG_CRYPTO_GHASH=y | 3863 | CONFIG_CRYPTO_GHASH=y |
3420 | CONFIG_CRYPTO_MD4=y | 3864 | CONFIG_CRYPTO_MD4=y |
3421 | CONFIG_CRYPTO_MD5=y | 3865 | CONFIG_CRYPTO_MD5=y |
3422 | CONFIG_CRYPTO_MICHAEL_MIC=y | 3866 | CONFIG_CRYPTO_MICHAEL_MIC=y |
3423 | CONFIG_CRYPTO_RMD128=y | 3867 | CONFIG_CRYPTO_RMD128=y |
3424 | CONFIG_CRYPTO_RMD160=y | 3868 | CONFIG_CRYPTO_RMD160=y |
3425 | CONFIG_CRYPTO_RMD256=y | 3869 | CONFIG_CRYPTO_RMD256=y |
3426 | CONFIG_CRYPTO_RMD320=y | 3870 | CONFIG_CRYPTO_RMD320=y |
3427 | CONFIG_CRYPTO_SHA1=y | 3871 | CONFIG_CRYPTO_SHA1=y |
3428 | # CONFIG_CRYPTO_SHA1_ARM is not set | 3872 | # CONFIG_CRYPTO_SHA1_ARM is not set |
3429 | CONFIG_CRYPTO_SHA256=y | 3873 | CONFIG_CRYPTO_SHA256=y |
3430 | CONFIG_CRYPTO_SHA512=y | 3874 | CONFIG_CRYPTO_SHA512=y |
3431 | CONFIG_CRYPTO_TGR192=y | 3875 | CONFIG_CRYPTO_TGR192=y |
3432 | CONFIG_CRYPTO_WP512=y | 3876 | CONFIG_CRYPTO_WP512=y |
3433 | 3877 | ||
3434 | # | 3878 | # |
3435 | # Ciphers | 3879 | # Ciphers |
3436 | # | 3880 | # |
3437 | CONFIG_CRYPTO_AES=y | 3881 | CONFIG_CRYPTO_AES=y |
3438 | # CONFIG_CRYPTO_AES_ARM is not set | 3882 | # CONFIG_CRYPTO_AES_ARM is not set |
3439 | # CONFIG_CRYPTO_ANUBIS is not set | 3883 | # CONFIG_CRYPTO_ANUBIS is not set |
3440 | CONFIG_CRYPTO_ARC4=y | 3884 | CONFIG_CRYPTO_ARC4=y |
3441 | CONFIG_CRYPTO_BLOWFISH=y | 3885 | CONFIG_CRYPTO_BLOWFISH=y |
3442 | CONFIG_CRYPTO_BLOWFISH_COMMON=y | 3886 | CONFIG_CRYPTO_BLOWFISH_COMMON=y |
3443 | CONFIG_CRYPTO_CAMELLIA=y | 3887 | CONFIG_CRYPTO_CAMELLIA=y |
3444 | # CONFIG_CRYPTO_CAST5 is not set | 3888 | # CONFIG_CRYPTO_CAST5 is not set |
3445 | # CONFIG_CRYPTO_CAST6 is not set | 3889 | # CONFIG_CRYPTO_CAST6 is not set |
3446 | CONFIG_CRYPTO_DES=y | 3890 | CONFIG_CRYPTO_DES=y |
3447 | # CONFIG_CRYPTO_FCRYPT is not set | 3891 | # CONFIG_CRYPTO_FCRYPT is not set |
3448 | # CONFIG_CRYPTO_KHAZAD is not set | 3892 | # CONFIG_CRYPTO_KHAZAD is not set |
3449 | # CONFIG_CRYPTO_SALSA20 is not set | 3893 | # CONFIG_CRYPTO_SALSA20 is not set |
3450 | # CONFIG_CRYPTO_SEED is not set | 3894 | # CONFIG_CRYPTO_SEED is not set |
3451 | # CONFIG_CRYPTO_SERPENT is not set | 3895 | # CONFIG_CRYPTO_SERPENT is not set |
3452 | # CONFIG_CRYPTO_TEA is not set | 3896 | # CONFIG_CRYPTO_TEA is not set |
3453 | CONFIG_CRYPTO_TWOFISH=y | 3897 | CONFIG_CRYPTO_TWOFISH=y |
3454 | CONFIG_CRYPTO_TWOFISH_COMMON=y | 3898 | CONFIG_CRYPTO_TWOFISH_COMMON=y |
3455 | 3899 | ||
3456 | # | 3900 | # |
3457 | # Compression | 3901 | # Compression |
3458 | # | 3902 | # |
3459 | CONFIG_CRYPTO_DEFLATE=y | 3903 | CONFIG_CRYPTO_DEFLATE=y |
3460 | # CONFIG_CRYPTO_ZLIB is not set | 3904 | # CONFIG_CRYPTO_ZLIB is not set |
3461 | CONFIG_CRYPTO_LZO=y | 3905 | CONFIG_CRYPTO_LZO=y |
3462 | 3906 | ||
3463 | # | 3907 | # |
3464 | # Random Number Generation | 3908 | # Random Number Generation |
3465 | # | 3909 | # |
3466 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | 3910 | # CONFIG_CRYPTO_ANSI_CPRNG is not set |
3467 | # CONFIG_CRYPTO_USER_API_HASH is not set | 3911 | # CONFIG_CRYPTO_USER_API_HASH is not set |
3468 | # CONFIG_CRYPTO_USER_API_SKCIPHER is not set | 3912 | # CONFIG_CRYPTO_USER_API_SKCIPHER is not set |
3469 | CONFIG_CRYPTO_HW=y | 3913 | CONFIG_CRYPTO_HW=y |
3914 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | ||
3470 | CONFIG_CRYPTO_DEV_FSL_CAAM=y | 3915 | CONFIG_CRYPTO_DEV_FSL_CAAM=y |
3471 | CONFIG_CRYPTO_DEV_FSL_CAAM_JR=y | 3916 | CONFIG_CRYPTO_DEV_FSL_CAAM_JR=y |
3472 | CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 | 3917 | CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 |
3473 | # CONFIG_CRYPTO_DEV_FSL_CAAM_INTC is not set | 3918 | # CONFIG_CRYPTO_DEV_FSL_CAAM_INTC is not set |
3474 | CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=y | 3919 | CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=y |
3475 | CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=y | 3920 | CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=y |
3476 | CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=y | 3921 | CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=y |
3477 | # CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_TEST is not set | 3922 | # CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_TEST is not set |
3478 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y | 3923 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y |
3479 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_SLOTSIZE=7 | 3924 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_SLOTSIZE=7 |
3480 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=y | 3925 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=y |
3481 | CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y | 3926 | CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y |
3482 | # CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set | 3927 | # CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set |
3483 | # CONFIG_ASYMMETRIC_KEY_TYPE is not set | 3928 | # CONFIG_ASYMMETRIC_KEY_TYPE is not set |
3484 | # CONFIG_BINARY_PRINTF is not set | 3929 | # CONFIG_BINARY_PRINTF is not set |
3485 | 3930 | ||
3486 | # | 3931 | # |
3487 | # Library routines | 3932 | # Library routines |
3488 | # | 3933 | # |
3489 | CONFIG_BITREVERSE=y | 3934 | CONFIG_BITREVERSE=y |
3490 | CONFIG_RATIONAL=y | 3935 | CONFIG_RATIONAL=y |
3491 | CONFIG_GENERIC_STRNCPY_FROM_USER=y | 3936 | CONFIG_GENERIC_STRNCPY_FROM_USER=y |
3492 | CONFIG_GENERIC_STRNLEN_USER=y | 3937 | CONFIG_GENERIC_STRNLEN_USER=y |
3493 | CONFIG_GENERIC_PCI_IOMAP=y | 3938 | CONFIG_GENERIC_PCI_IOMAP=y |
3494 | CONFIG_GENERIC_IO=y | 3939 | CONFIG_GENERIC_IO=y |
3495 | CONFIG_STMP_DEVICE=y | 3940 | CONFIG_STMP_DEVICE=y |
3496 | CONFIG_CRC_CCITT=m | 3941 | CONFIG_CRC_CCITT=m |
3497 | CONFIG_CRC16=y | 3942 | CONFIG_CRC16=y |
3498 | CONFIG_CRC_T10DIF=y | 3943 | CONFIG_CRC_T10DIF=y |
3499 | CONFIG_CRC_ITU_T=m | 3944 | CONFIG_CRC_ITU_T=m |
3500 | CONFIG_CRC32=y | 3945 | CONFIG_CRC32=y |
3501 | # CONFIG_CRC32_SELFTEST is not set | 3946 | # CONFIG_CRC32_SELFTEST is not set |
3502 | CONFIG_CRC32_SLICEBY8=y | 3947 | CONFIG_CRC32_SLICEBY8=y |
3503 | # CONFIG_CRC32_SLICEBY4 is not set | 3948 | # CONFIG_CRC32_SLICEBY4 is not set |
3504 | # CONFIG_CRC32_SARWATE is not set | 3949 | # CONFIG_CRC32_SARWATE is not set |
3505 | # CONFIG_CRC32_BIT is not set | 3950 | # CONFIG_CRC32_BIT is not set |
3506 | CONFIG_CRC7=m | 3951 | CONFIG_CRC7=m |
3507 | CONFIG_LIBCRC32C=m | 3952 | CONFIG_LIBCRC32C=m |
3508 | # CONFIG_CRC8 is not set | 3953 | # CONFIG_CRC8 is not set |
3509 | CONFIG_ZLIB_INFLATE=y | 3954 | CONFIG_ZLIB_INFLATE=y |
3510 | CONFIG_ZLIB_DEFLATE=y | 3955 | CONFIG_ZLIB_DEFLATE=y |
3511 | CONFIG_LZO_COMPRESS=y | 3956 | CONFIG_LZO_COMPRESS=y |
3512 | CONFIG_LZO_DECOMPRESS=y | 3957 | CONFIG_LZO_DECOMPRESS=y |
3513 | # CONFIG_XZ_DEC is not set | 3958 | # CONFIG_XZ_DEC is not set |
3514 | # CONFIG_XZ_DEC_BCJ is not set | 3959 | # CONFIG_XZ_DEC_BCJ is not set |
3515 | CONFIG_DECOMPRESS_GZIP=y | 3960 | CONFIG_DECOMPRESS_GZIP=y |
3516 | CONFIG_GENERIC_ALLOCATOR=y | 3961 | CONFIG_GENERIC_ALLOCATOR=y |
3517 | CONFIG_HAS_IOMEM=y | 3962 | CONFIG_HAS_IOMEM=y |
3518 | CONFIG_HAS_IOPORT=y | 3963 | CONFIG_HAS_IOPORT=y |
3519 | CONFIG_HAS_DMA=y | 3964 | CONFIG_HAS_DMA=y |
3520 | CONFIG_CPU_RMAP=y | 3965 | CONFIG_CPU_RMAP=y |
3521 | CONFIG_DQL=y | 3966 | CONFIG_DQL=y |
3522 | CONFIG_NLATTR=y | 3967 | CONFIG_NLATTR=y |
3523 | CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y | 3968 | CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y |
3524 | CONFIG_AVERAGE=y | 3969 | CONFIG_AVERAGE=y |
3525 | # CONFIG_CORDIC is not set | 3970 | # CONFIG_CORDIC is not set |
3526 | # CONFIG_DDR is not set | 3971 | # CONFIG_DDR is not set |
arch/arm/mach-imx/clk-imx6q.c
1 | /* | 1 | /* |
2 | * Copyright 2011-2015 Freescale Semiconductor, Inc. | 2 | * Copyright 2011-2015 Freescale Semiconductor, Inc. |
3 | * Copyright 2011 Linaro Ltd. | 3 | * Copyright 2011 Linaro Ltd. |
4 | * | 4 | * |
5 | * The code contained herein is licensed under the GNU General Public | 5 | * The code contained herein is licensed under the GNU General Public |
6 | * License. You may obtain a copy of the GNU General Public License | 6 | * License. You may obtain a copy of the GNU General Public License |
7 | * Version 2 or later at the following locations: | 7 | * Version 2 or later at the following locations: |
8 | * | 8 | * |
9 | * http://www.opensource.org/licenses/gpl-license.html | 9 | * http://www.opensource.org/licenses/gpl-license.html |
10 | * http://www.gnu.org/copyleft/gpl.html | 10 | * http://www.gnu.org/copyleft/gpl.html |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #include <linux/init.h> | 13 | #include <linux/init.h> |
14 | #include <linux/types.h> | 14 | #include <linux/types.h> |
15 | #include <linux/clk.h> | 15 | #include <linux/clk.h> |
16 | #include <linux/clkdev.h> | 16 | #include <linux/clkdev.h> |
17 | #include <linux/err.h> | 17 | #include <linux/err.h> |
18 | #include <linux/io.h> | 18 | #include <linux/io.h> |
19 | #include <linux/of.h> | 19 | #include <linux/of.h> |
20 | #include <linux/of_address.h> | 20 | #include <linux/of_address.h> |
21 | #include <linux/of_irq.h> | 21 | #include <linux/of_irq.h> |
22 | 22 | ||
23 | #include "clk.h" | 23 | #include "clk.h" |
24 | #include "common.h" | 24 | #include "common.h" |
25 | #include "hardware.h" | 25 | #include "hardware.h" |
26 | 26 | ||
27 | #define CCM_CCGR_OFFSET(index) (index * 2) | 27 | #define CCM_CCGR_OFFSET(index) (index * 2) |
28 | 28 | ||
29 | static const char *step_sels[] = { "osc", "pll2_pfd2_396m", }; | 29 | static const char *step_sels[] = { "osc", "pll2_pfd2_396m", }; |
30 | static const char *pll1_sw_sels[] = { "pll1_sys", "step", }; | 30 | static const char *pll1_sw_sels[] = { "pll1_sys", "step", }; |
31 | static const char *periph_pre_sels[] = { "pll2_bus", "pll2_pfd2_396m", "pll2_pfd0_352m", "pll2_198m", }; | 31 | static const char *periph_pre_sels[] = { "pll2_bus", "pll2_pfd2_396m", "pll2_pfd0_352m", "pll2_198m", }; |
32 | static const char *periph_clk2_sels[] = { "pll3_usb_otg", "osc", "osc", "dummy", }; | 32 | static const char *periph_clk2_sels[] = { "pll3_usb_otg", "osc", "osc", "dummy", }; |
33 | static const char *periph2_clk2_sels[] = { "pll3_usb_otg", "pll2_bus", }; | 33 | static const char *periph2_clk2_sels[] = { "pll3_usb_otg", "pll2_bus", }; |
34 | static const char *periph_sels[] = { "periph_pre", "periph_clk2", }; | 34 | static const char *periph_sels[] = { "periph_pre", "periph_clk2", }; |
35 | static const char *periph2_sels[] = { "periph2_pre", "periph2_clk2", }; | 35 | static const char *periph2_sels[] = { "periph2_pre", "periph2_clk2", }; |
36 | static const char *axi_alt_sels[] = { "pll2_pfd2_396m", "pll3_pfd1_540m", }; | 36 | static const char *axi_alt_sels[] = { "pll2_pfd2_396m", "pll3_pfd1_540m", }; |
37 | static const char *axi_sels[] = { "periph", "axi_alt_sel", }; | 37 | static const char *axi_sels[] = { "periph", "axi_alt_sel", }; |
38 | static const char *audio_sels[] = { "pll4_audio_div", "pll3_pfd2_508m", "pll3_pfd3_454m", "pll3_usb_otg", }; | 38 | static const char *audio_sels[] = { "pll4_audio_div", "pll3_pfd2_508m", "pll3_pfd3_454m", "pll3_usb_otg", }; |
39 | static const char *gpu_axi_sels[] = { "axi", "ahb", }; | 39 | static const char *gpu_axi_sels[] = { "axi", "ahb", }; |
40 | static const char *gpu2d_core_sels[] = { "axi", "pll3_usb_otg", "pll2_pfd0_352m", "pll2_pfd2_396m", }; | 40 | static const char *gpu2d_core_sels[] = { "axi", "pll3_usb_otg", "pll2_pfd0_352m", "pll2_pfd2_396m", }; |
41 | static const char *gpu3d_core_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll2_pfd1_594m", "pll2_pfd2_396m", }; | 41 | static const char *gpu3d_core_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll2_pfd1_594m", "pll2_pfd2_396m", }; |
42 | static const char *gpu3d_shader_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll2_pfd1_594m", "pll3_pfd0_720m", }; | 42 | static const char *gpu3d_shader_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll2_pfd1_594m", "pll3_pfd0_720m", }; |
43 | static const char *ipu_sels[] = { "mmdc_ch0_axi_podf", "pll2_pfd2_396m", "pll3_120m", "pll3_pfd1_540m", }; | 43 | static const char *ipu_sels[] = { "mmdc_ch0_axi_podf", "pll2_pfd2_396m", "pll3_120m", "pll3_pfd1_540m", }; |
44 | static const char *ldb_di_sels[] = { "pll5_video_div", "pll2_pfd0_352m", "pll2_pfd2_396m", "mmdc_ch1_axi", "pll3_usb_otg", }; | 44 | static const char *ldb_di_sels[] = { "pll5_video_div", "pll2_pfd0_352m", "pll2_pfd2_396m", "mmdc_ch1_axi", "pll3_usb_otg", }; |
45 | static const char *ldb_di0_div_sels[] = { "ldb_di0_div_3_5", "ldb_di0_div_7", }; | 45 | static const char *ldb_di0_div_sels[] = { "ldb_di0_div_3_5", "ldb_di0_div_7", }; |
46 | static const char *ldb_di1_div_sels[] = { "ldb_di1_div_3_5", "ldb_di1_div_7", }; | 46 | static const char *ldb_di1_div_sels[] = { "ldb_di1_div_3_5", "ldb_di1_div_7", }; |
47 | static const char *ipu_di_pre_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll5_video_div", "pll2_pfd0_352m", "pll2_pfd2_396m", "pll3_pfd1_540m", }; | 47 | static const char *ipu_di_pre_sels[] = { "mmdc_ch0_axi_podf", "pll3_usb_otg", "pll5_video_div", "pll2_pfd0_352m", "pll2_pfd2_396m", "pll3_pfd1_540m", }; |
48 | static const char *ipu1_di0_sels[] = { "ipu1_di0_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; | 48 | static const char *ipu1_di0_sels[] = { "ipu1_di0_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; |
49 | static const char *ipu1_di1_sels[] = { "ipu1_di1_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; | 49 | static const char *ipu1_di1_sels[] = { "ipu1_di1_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; |
50 | static const char *ipu2_di0_sels[] = { "ipu2_di0_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; | 50 | static const char *ipu2_di0_sels[] = { "ipu2_di0_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; |
51 | static const char *ipu2_di1_sels[] = { "ipu2_di1_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; | 51 | static const char *ipu2_di1_sels[] = { "ipu2_di1_pre", "dummy", "dummy", "ldb_di0", "ldb_di1", }; |
52 | static const char *hsi_tx_sels[] = { "pll3_120m", "pll2_pfd2_396m", }; | 52 | static const char *hsi_tx_sels[] = { "pll3_120m", "pll2_pfd2_396m", }; |
53 | static const char *pcie_axi_sels[] = { "axi", "ahb", }; | 53 | static const char *pcie_axi_sels[] = { "axi", "ahb", }; |
54 | static const char *ssi_sels[] = { "pll3_pfd2_508m", "pll3_pfd3_454m", "pll4_audio_div", }; | 54 | static const char *ssi_sels[] = { "pll3_pfd2_508m", "pll3_pfd3_454m", "pll4_audio_div", }; |
55 | static const char *usdhc_sels[] = { "pll2_pfd2_396m", "pll2_pfd0_352m", }; | 55 | static const char *usdhc_sels[] = { "pll2_pfd2_396m", "pll2_pfd0_352m", }; |
56 | static const char *enfc_sels[] = { "pll2_pfd0_352m", "pll2_bus", "pll3_usb_otg", "pll2_pfd2_396m", }; | 56 | static const char *enfc_sels[] = { "pll2_pfd0_352m", "pll2_bus", "pll3_usb_otg", "pll2_pfd2_396m", }; |
57 | static const char *emi_sels[] = { "pll2_pfd2_396m", "pll3_usb_otg", "axi", "pll2_pfd0_352m", }; | 57 | static const char *emi_sels[] = { "pll2_pfd2_396m", "pll3_usb_otg", "axi", "pll2_pfd0_352m", }; |
58 | static const char *emi_slow_sels[] = { "axi", "pll3_usb_otg", "pll2_pfd2_396m", "pll2_pfd0_352m", }; | 58 | static const char *emi_slow_sels[] = { "axi", "pll3_usb_otg", "pll2_pfd2_396m", "pll2_pfd0_352m", }; |
59 | static const char *vdo_axi_sels[] = { "axi", "ahb", }; | 59 | static const char *vdo_axi_sels[] = { "axi", "ahb", }; |
60 | static const char *vpu_axi_sels[] = { "axi", "pll2_pfd2_396m", "pll2_pfd0_352m", }; | 60 | static const char *vpu_axi_sels[] = { "axi", "pll2_pfd2_396m", "pll2_pfd0_352m", }; |
61 | static const char *cko1_sels[] = { "pll3_usb_otg", "pll2_bus", "pll1_sys", "pll5_video_div", | 61 | static const char *cko1_sels[] = { "pll3_usb_otg", "pll2_bus", "pll1_sys", "pll5_video_div", |
62 | "dummy", "axi", "enfc", "ipu1_di0", "ipu1_di1", "ipu2_di0", | 62 | "dummy", "axi", "enfc", "ipu1_di0", "ipu1_di1", "ipu2_di0", |
63 | "ipu2_di1", "ahb", "ipg", "ipg_per", "ckil", "pll4_audio_div", }; | 63 | "ipu2_di1", "ahb", "ipg", "ipg_per", "ckil", "pll4_audio_div", }; |
64 | static const char *cko2_sels[] = { | 64 | static const char *cko2_sels[] = { |
65 | "mmdc_ch0_axi_podf", "mmdc_ch1_axi", "usdhc4", "usdhc1", | 65 | "mmdc_ch0_axi_podf", "mmdc_ch1_axi", "usdhc4", "usdhc1", |
66 | "gpu2d_axi", "dummy", "ecspi_root", "gpu3d_axi", | 66 | "gpu2d_axi", "dummy", "ecspi_root", "gpu3d_axi", |
67 | "usdhc3", "dummy", "arm", "ipu1", | 67 | "usdhc3", "dummy", "arm", "ipu1", |
68 | "ipu2", "vdo_axi", "osc", "gpu2d_core", | 68 | "ipu2", "vdo_axi", "osc", "gpu2d_core", |
69 | "gpu3d_core", "usdhc2", "ssi1", "ssi2", | 69 | "gpu3d_core", "usdhc2", "ssi1", "ssi2", |
70 | "ssi3", "gpu3d_shader", "vpu_axi", "can_root", | 70 | "ssi3", "gpu3d_shader", "vpu_axi", "can_root", |
71 | "ldb_di0", "ldb_di1", "esai_extal", "eim_slow", | 71 | "ldb_di0", "ldb_di1", "esai_extal", "eim_slow", |
72 | "uart_serial", "spdif", "spdif1", "hsi_tx", | 72 | "uart_serial", "spdif", "spdif1", "hsi_tx", |
73 | }; | 73 | }; |
74 | static const char *cko_sels[] = { "cko1", "cko2", }; | 74 | static const char *cko_sels[] = { "cko1", "cko2", }; |
75 | static const char *lvds_sels[] = { "arm", "pll1_sys", "dummy", "dummy", "dummy", "dummy", "dummy", "pll5_video_div", | 75 | static const char *lvds_sels[] = { "arm", "pll1_sys", "dummy", "dummy", "dummy", "dummy", "dummy", "pll5_video_div", |
76 | "dummy", "dummy", "pcie_ref", "sata_ref", "usbphy1", "usbphy2", }; | 76 | "dummy", "dummy", "pcie_ref", "sata_ref", "usbphy1", "usbphy2", }; |
77 | static const char *pll_av_sels[] = { "osc", "lvds1_in", "lvds2_in", "dummy", }; | 77 | static const char *pll_av_sels[] = { "osc", "lvds1_in", "lvds2_in", "dummy", }; |
78 | static void __iomem *anatop_base; | 78 | static void __iomem *anatop_base; |
79 | static void __iomem *ccm_base; | 79 | static void __iomem *ccm_base; |
80 | 80 | ||
81 | static u32 share_count_esai; | 81 | static u32 share_count_esai; |
82 | static u32 share_count_ssi1; | 82 | static u32 share_count_ssi1; |
83 | static u32 share_count_ssi2; | 83 | static u32 share_count_ssi2; |
84 | static u32 share_count_ssi3; | 84 | static u32 share_count_ssi3; |
85 | 85 | ||
86 | enum mx6q_clks { | 86 | enum mx6q_clks { |
87 | dummy, ckil, ckih, osc, pll2_pfd0_352m, pll2_pfd1_594m, pll2_pfd2_396m, | 87 | dummy, ckil, ckih, osc, pll2_pfd0_352m, pll2_pfd1_594m, pll2_pfd2_396m, |
88 | pll3_pfd0_720m, pll3_pfd1_540m, pll3_pfd2_508m, pll3_pfd3_454m, | 88 | pll3_pfd0_720m, pll3_pfd1_540m, pll3_pfd2_508m, pll3_pfd3_454m, |
89 | pll2_198m, pll3_120m, pll3_80m, pll3_60m, twd, step, pll1_sw, | 89 | pll2_198m, pll3_120m, pll3_80m, pll3_60m, twd, step, pll1_sw, |
90 | periph_pre, periph2_pre, periph_clk2_sel, periph2_clk2_sel, axi_sel, | 90 | periph_pre, periph2_pre, periph_clk2_sel, periph2_clk2_sel, axi_sel, |
91 | esai_sel, spdif1_sel, spdif_sel, gpu2d_axi, gpu3d_axi, gpu2d_core_sel, | 91 | esai_sel, spdif1_sel, spdif_sel, gpu2d_axi, gpu3d_axi, gpu2d_core_sel, |
92 | gpu3d_core_sel, gpu3d_shader_sel, ipu1_sel, ipu2_sel, ldb_di0_sel, | 92 | gpu3d_core_sel, gpu3d_shader_sel, ipu1_sel, ipu2_sel, ldb_di0_sel, |
93 | ldb_di1_sel, ipu1_di0_pre_sel, ipu1_di1_pre_sel, ipu2_di0_pre_sel, | 93 | ldb_di1_sel, ipu1_di0_pre_sel, ipu1_di1_pre_sel, ipu2_di0_pre_sel, |
94 | ipu2_di1_pre_sel, ipu1_di0_sel, ipu1_di1_sel, ipu2_di0_sel, | 94 | ipu2_di1_pre_sel, ipu1_di0_sel, ipu1_di1_sel, ipu2_di0_sel, |
95 | ipu2_di1_sel, hsi_tx_sel, pcie_axi_sel, ssi1_sel, ssi2_sel, ssi3_sel, | 95 | ipu2_di1_sel, hsi_tx_sel, pcie_axi_sel, ssi1_sel, ssi2_sel, ssi3_sel, |
96 | usdhc1_sel, usdhc2_sel, usdhc3_sel, usdhc4_sel, enfc_sel, emi_sel, | 96 | usdhc1_sel, usdhc2_sel, usdhc3_sel, usdhc4_sel, enfc_sel, emi_sel, |
97 | emi_slow_sel, vdo_axi_sel, vpu_axi_sel, cko1_sel, periph, periph2, | 97 | emi_slow_sel, vdo_axi_sel, vpu_axi_sel, cko1_sel, periph, periph2, |
98 | periph_clk2, periph2_clk2, ipg, ipg_per, esai_pred, esai_podf, | 98 | periph_clk2, periph2_clk2, ipg, ipg_per, esai_pred, esai_podf, |
99 | spdif1_pred, spdif1_podf, spdif_pred, spdif_podf, can_root, ecspi_root, | 99 | spdif1_pred, spdif1_podf, spdif_pred, spdif_podf, can_root, ecspi_root, |
100 | gpu2d_core_podf, gpu3d_core_podf, gpu3d_shader, ipu1_podf, ipu2_podf, | 100 | gpu2d_core_podf, gpu3d_core_podf, gpu3d_shader, ipu1_podf, ipu2_podf, |
101 | ldb_di0_podf_unused, ldb_di1_podf_unused, ipu1_di0_pre, ipu1_di1_pre, | 101 | ldb_di0_podf_unused, ldb_di1_podf_unused, ipu1_di0_pre, ipu1_di1_pre, |
102 | ipu2_di0_pre, ipu2_di1_pre, hsi_tx_podf, ssi1_pred, ssi1_podf, | 102 | ipu2_di0_pre, ipu2_di1_pre, hsi_tx_podf, ssi1_pred, ssi1_podf, |
103 | ssi2_pred, ssi2_podf, ssi3_pred, ssi3_podf, uart_serial_podf, | 103 | ssi2_pred, ssi2_podf, ssi3_pred, ssi3_podf, uart_serial_podf, |
104 | usdhc1_podf, usdhc2_podf, usdhc3_podf, usdhc4_podf, enfc_pred, enfc_podf, | 104 | usdhc1_podf, usdhc2_podf, usdhc3_podf, usdhc4_podf, enfc_pred, enfc_podf, |
105 | emi_podf, emi_slow_podf, vpu_axi_podf, cko1_podf, axi, mmdc_ch0_axi_podf, | 105 | emi_podf, emi_slow_podf, vpu_axi_podf, cko1_podf, axi, mmdc_ch0_axi_podf, |
106 | mmdc_ch1_axi_podf, arm, ahb, apbh_dma, asrc_gate, can1_ipg, can1_serial, | 106 | mmdc_ch1_axi_podf, arm, ahb, apbh_dma, asrc_gate, can1_ipg, can1_serial, |
107 | can2_ipg, can2_serial, ecspi1, ecspi2, ecspi3, ecspi4, ecspi5, enet, | 107 | can2_ipg, can2_serial, ecspi1, ecspi2, ecspi3, ecspi4, ecspi5, enet, |
108 | esai_extal, gpt_ipg, gpt_ipg_per, gpu2d_core, gpu3d_core, hdmi_iahb, | 108 | esai_extal, gpt_ipg, gpt_ipg_per, gpu2d_core, gpu3d_core, hdmi_iahb, |
109 | hdmi_isfr, i2c1, i2c2, i2c3, iim, enfc, ipu1, ipu1_di0, ipu1_di1, ipu2, | 109 | hdmi_isfr, i2c1, i2c2, i2c3, iim, enfc, ipu1, ipu1_di0, ipu1_di1, ipu2, |
110 | ipu2_di0, ldb_di0, ldb_di1, ipu2_di1, hsi_tx, mlb, mmdc_ch0_axi, | 110 | ipu2_di0, ldb_di0, ldb_di1, ipu2_di1, hsi_tx, mlb, mmdc_ch0_axi, |
111 | mmdc_ch1_axi, ocram, openvg_axi, pcie_axi, pwm1, pwm2, pwm3, pwm4, per1_bch, | 111 | mmdc_ch1_axi, ocram, openvg_axi, pcie_axi, pwm1, pwm2, pwm3, pwm4, per1_bch, |
112 | gpmi_bch_apb, gpmi_bch, gpmi_io, gpmi_apb, sata, sdma, spba, ssi1, | 112 | gpmi_bch_apb, gpmi_bch, gpmi_io, gpmi_apb, sata, sdma, spba, ssi1, |
113 | ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, | 113 | ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, |
114 | usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, | 114 | usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, |
115 | pll4_audio, pll5_video, pll8_mlb, pll7_usb_host, pll6_enet, ssi1_ipg, | 115 | pll4_audio, pll5_video, pll8_mlb, pll7_usb_host, pll6_enet, ssi1_ipg, |
116 | ssi2_ipg, ssi3_ipg, rom, usbphy1, usbphy2, ldb_di0_div_3_5, ldb_di1_div_3_5, | 116 | ssi2_ipg, ssi3_ipg, rom, usbphy1, usbphy2, ldb_di0_div_3_5, ldb_di1_div_3_5, |
117 | sata_ref, sata_ref_100m, pcie_ref, pcie_ref_125m, enet_ref, usbphy1_gate, | 117 | sata_ref, sata_ref_100m, pcie_ref, pcie_ref_125m, enet_ref, usbphy1_gate, |
118 | usbphy2_gate, pll4_post_div, pll5_post_div, pll5_video_div, eim_slow, | 118 | usbphy2_gate, pll4_post_div, pll5_post_div, pll5_video_div, eim_slow, |
119 | spdif, cko2_sel, cko2_podf, cko2, cko, vdoa, gpt_3m, video_27m, | 119 | spdif, cko2_sel, cko2_podf, cko2, cko, vdoa, gpt_3m, video_27m, |
120 | ldb_di0_div_7, ldb_di1_div_7, ldb_di0_div_sel, ldb_di1_div_sel, | 120 | ldb_di0_div_7, ldb_di1_div_7, ldb_di0_div_sel, ldb_di1_div_sel, |
121 | pll4_audio_div, lvds1_sel, lvds1_in, lvds1_out, caam_mem, caam_aclk, | 121 | pll4_audio_div, lvds1_sel, lvds1_in, lvds1_out, caam_mem, caam_aclk, |
122 | caam_ipg, epit1, epit2, tzasc2, pll4_sel, lvds2_sel, lvds2_in, lvds2_out, | 122 | caam_ipg, epit1, epit2, tzasc2, pll4_sel, lvds2_sel, lvds2_in, lvds2_out, |
123 | anaclk1, anaclk2, spdif1, asrc_ipg, asrc_mem, esai_ipg, esai_mem, | 123 | anaclk1, anaclk2, spdif1, asrc_ipg, asrc_mem, esai_ipg, esai_mem, |
124 | axi_alt_sel, dcic1, dcic2, clk_max | 124 | axi_alt_sel, dcic1, dcic2, clk_max |
125 | }; | 125 | }; |
126 | 126 | ||
127 | static struct clk *clk[clk_max]; | 127 | static struct clk *clk[clk_max]; |
128 | static struct clk_onecell_data clk_data; | 128 | static struct clk_onecell_data clk_data; |
129 | 129 | ||
130 | static enum mx6q_clks const clks_init_on[] __initconst = { | 130 | static enum mx6q_clks const clks_init_on[] __initconst = { |
131 | mmdc_ch0_axi, rom, arm, ocram, | 131 | mmdc_ch0_axi, rom, arm, ocram, |
132 | }; | 132 | }; |
133 | 133 | ||
134 | static struct clk_div_table clk_enet_ref_table[] = { | 134 | static struct clk_div_table clk_enet_ref_table[] = { |
135 | { .val = 0, .div = 20, }, | 135 | { .val = 0, .div = 20, }, |
136 | { .val = 1, .div = 10, }, | 136 | { .val = 1, .div = 10, }, |
137 | { .val = 2, .div = 5, }, | 137 | { .val = 2, .div = 5, }, |
138 | { .val = 3, .div = 4, }, | 138 | { .val = 3, .div = 4, }, |
139 | }; | 139 | }; |
140 | 140 | ||
141 | static struct clk_div_table post_div_table[] = { | 141 | static struct clk_div_table post_div_table[] = { |
142 | { .val = 2, .div = 1, }, | 142 | { .val = 2, .div = 1, }, |
143 | { .val = 1, .div = 2, }, | 143 | { .val = 1, .div = 2, }, |
144 | { .val = 0, .div = 4, }, | 144 | { .val = 0, .div = 4, }, |
145 | { } | 145 | { } |
146 | }; | 146 | }; |
147 | 147 | ||
148 | static struct clk_div_table video_div_table[] = { | 148 | static struct clk_div_table video_div_table[] = { |
149 | { .val = 0, .div = 1, }, | 149 | { .val = 0, .div = 1, }, |
150 | { .val = 1, .div = 2, }, | 150 | { .val = 1, .div = 2, }, |
151 | { .val = 2, .div = 1, }, | 151 | { .val = 2, .div = 1, }, |
152 | { .val = 3, .div = 4, }, | 152 | { .val = 3, .div = 4, }, |
153 | { } | 153 | { } |
154 | }; | 154 | }; |
155 | 155 | ||
156 | /* | 156 | /* |
157 | * Kernel parameter 'ldb_di_clk_sel' is used to select parent of ldb_di_clk, | 157 | * Kernel parameter 'ldb_di_clk_sel' is used to select parent of ldb_di_clk, |
158 | * among the following clocks. | 158 | * among the following clocks. |
159 | * 'pll5_video_div' | 159 | * 'pll5_video_div' |
160 | * 'pll2_pfd0_352m' | 160 | * 'pll2_pfd0_352m' |
161 | * 'pll2_pfd2_396m' | 161 | * 'pll2_pfd2_396m' |
162 | * 'mmdc_ch1_axi' | 162 | * 'mmdc_ch1_axi' |
163 | * 'pll3_usb_otg' | 163 | * 'pll3_usb_otg' |
164 | * Example format: ldb_di_clk_sel=pll5_video_div | 164 | * Example format: ldb_di_clk_sel=pll5_video_div |
165 | * If the kernel parameter is absent or invalid, pll2_pfd0_352m will be | 165 | * If the kernel parameter is absent or invalid, pll2_pfd0_352m will be |
166 | * selected by default. | 166 | * selected by default. |
167 | */ | 167 | */ |
168 | static int ldb_di_sel = 1; | 168 | static int ldb_di_sel = 1; |
169 | 169 | ||
170 | static int __init get_ldb_di_parent(char *p) | 170 | static int __init get_ldb_di_parent(char *p) |
171 | { | 171 | { |
172 | int i; | 172 | int i; |
173 | 173 | ||
174 | for (i = 0; i < ARRAY_SIZE(ldb_di_sels); i++) { | 174 | for (i = 0; i < ARRAY_SIZE(ldb_di_sels); i++) { |
175 | if (strcmp(p, ldb_di_sels[i]) == 0) { | 175 | if (strcmp(p, ldb_di_sels[i]) == 0) { |
176 | ldb_di_sel = i; | 176 | ldb_di_sel = i; |
177 | break; | 177 | break; |
178 | } | 178 | } |
179 | } | 179 | } |
180 | 180 | ||
181 | return 0; | 181 | return 0; |
182 | } | 182 | } |
183 | early_param("ldb_di_clk_sel", get_ldb_di_parent); | 183 | early_param("ldb_di_clk_sel", get_ldb_di_parent); |
184 | 184 | ||
185 | static void init_ldb_clks(void) | 185 | static void init_ldb_clks(void) |
186 | { | 186 | { |
187 | u32 reg; | 187 | u32 reg; |
188 | 188 | ||
189 | /* | 189 | /* |
190 | * Need to follow a strict procedure when changing the LDB | 190 | * Need to follow a strict procedure when changing the LDB |
191 | * clock, else we can introduce a glitch. Things to keep in | 191 | * clock, else we can introduce a glitch. Things to keep in |
192 | * mind: | 192 | * mind: |
193 | * 1. The current and new parent clocks must be disabled. | 193 | * 1. The current and new parent clocks must be disabled. |
194 | * 2. The default clock for ldb_dio_clk is mmdc_ch1 which has | 194 | * 2. The default clock for ldb_dio_clk is mmdc_ch1 which has |
195 | * no CG bit. | 195 | * no CG bit. |
196 | * 3. In the RTL implementation of the LDB_DI_CLK_SEL mux | 196 | * 3. In the RTL implementation of the LDB_DI_CLK_SEL mux |
197 | * the top four options are in one mux and the PLL3 option along | 197 | * the top four options are in one mux and the PLL3 option along |
198 | * with another option is in the second mux. There is third mux | 198 | * with another option is in the second mux. There is third mux |
199 | * used to decide between the first and second mux. | 199 | * used to decide between the first and second mux. |
200 | * The code below switches the parent to the bottom mux first | 200 | * The code below switches the parent to the bottom mux first |
201 | * and then manipulates the top mux. This ensures that no glitch | 201 | * and then manipulates the top mux. This ensures that no glitch |
202 | * will enter the divider. | 202 | * will enter the divider. |
203 | * | 203 | * |
204 | * Need to disable MMDC_CH1 clock manually as there is no CG bit | 204 | * Need to disable MMDC_CH1 clock manually as there is no CG bit |
205 | * for this clock. The only way to disable this clock is to move | 205 | * for this clock. The only way to disable this clock is to move |
206 | * it topll3_sw_clk and then to disable pll3_sw_clk | 206 | * it topll3_sw_clk and then to disable pll3_sw_clk |
207 | * Make sure periph2_clk2_sel is set to pll3_sw_clk | 207 | * Make sure periph2_clk2_sel is set to pll3_sw_clk |
208 | */ | 208 | */ |
209 | reg = readl_relaxed(ccm_base + 0x18); | 209 | reg = readl_relaxed(ccm_base + 0x18); |
210 | reg &= ~(1 << 20); | 210 | reg &= ~(1 << 20); |
211 | writel_relaxed(reg, ccm_base + 0x18); | 211 | writel_relaxed(reg, ccm_base + 0x18); |
212 | 212 | ||
213 | /* | 213 | /* |
214 | * Set MMDC_CH1 mask bit. | 214 | * Set MMDC_CH1 mask bit. |
215 | */ | 215 | */ |
216 | reg = readl_relaxed(ccm_base + 0x4); | 216 | reg = readl_relaxed(ccm_base + 0x4); |
217 | reg |= 1 << 16; | 217 | reg |= 1 << 16; |
218 | writel_relaxed(reg, ccm_base + 0x4); | 218 | writel_relaxed(reg, ccm_base + 0x4); |
219 | 219 | ||
220 | /* | 220 | /* |
221 | * Set the periph2_clk_sel to the top mux so that | 221 | * Set the periph2_clk_sel to the top mux so that |
222 | * mmdc_ch1 is from pll3_sw_clk. | 222 | * mmdc_ch1 is from pll3_sw_clk. |
223 | */ | 223 | */ |
224 | reg = readl_relaxed(ccm_base + 0x14); | 224 | reg = readl_relaxed(ccm_base + 0x14); |
225 | reg |= 1 << 26; | 225 | reg |= 1 << 26; |
226 | writel_relaxed(reg, ccm_base + 0x14); | 226 | writel_relaxed(reg, ccm_base + 0x14); |
227 | 227 | ||
228 | /* | 228 | /* |
229 | * Wait for the clock switch. | 229 | * Wait for the clock switch. |
230 | */ | 230 | */ |
231 | while (readl_relaxed(ccm_base + 0x48)) | 231 | while (readl_relaxed(ccm_base + 0x48)) |
232 | ; | 232 | ; |
233 | 233 | ||
234 | /* | 234 | /* |
235 | * Disable pll3_sw_clk by selecting the bypass clock source. | 235 | * Disable pll3_sw_clk by selecting the bypass clock source. |
236 | */ | 236 | */ |
237 | reg = readl_relaxed(ccm_base + 0xc); | 237 | reg = readl_relaxed(ccm_base + 0xc); |
238 | reg |= 1 << 0; | 238 | reg |= 1 << 0; |
239 | writel_relaxed(reg, ccm_base + 0xc); | 239 | writel_relaxed(reg, ccm_base + 0xc); |
240 | 240 | ||
241 | /* | 241 | /* |
242 | * Set the ldb_di0_clk and ldb_di1_clk to 111b. | 242 | * Set the ldb_di0_clk and ldb_di1_clk to 111b. |
243 | */ | 243 | */ |
244 | reg = readl_relaxed(ccm_base + 0x2c); | 244 | reg = readl_relaxed(ccm_base + 0x2c); |
245 | reg |= ((7 << 9) | (7 << 12)); | 245 | reg |= ((7 << 9) | (7 << 12)); |
246 | writel_relaxed(reg, ccm_base + 0x2c); | 246 | writel_relaxed(reg, ccm_base + 0x2c); |
247 | 247 | ||
248 | /* | 248 | /* |
249 | * Set the ldb_di0_clk and ldb_di1_clk to 100b. | 249 | * Set the ldb_di0_clk and ldb_di1_clk to 100b. |
250 | */ | 250 | */ |
251 | reg = readl_relaxed(ccm_base + 0x2c); | 251 | reg = readl_relaxed(ccm_base + 0x2c); |
252 | reg &= ~((7 << 9) | (7 << 12)); | 252 | reg &= ~((7 << 9) | (7 << 12)); |
253 | reg |= ((4 << 9) | (4 << 12)); | 253 | reg |= ((4 << 9) | (4 << 12)); |
254 | writel_relaxed(reg, ccm_base + 0x2c); | 254 | writel_relaxed(reg, ccm_base + 0x2c); |
255 | 255 | ||
256 | /* | 256 | /* |
257 | * Perform the LDB parent clock switch. | 257 | * Perform the LDB parent clock switch. |
258 | */ | 258 | */ |
259 | reg = readl_relaxed(ccm_base + 0x2c); | 259 | reg = readl_relaxed(ccm_base + 0x2c); |
260 | reg &= ~((7 << 9) | (7 << 12)); | 260 | reg &= ~((7 << 9) | (7 << 12)); |
261 | reg |= ((ldb_di_sel << 9) | (ldb_di_sel << 12)); | 261 | reg |= ((ldb_di_sel << 9) | (ldb_di_sel << 12)); |
262 | writel_relaxed(reg, ccm_base + 0x2c); | 262 | writel_relaxed(reg, ccm_base + 0x2c); |
263 | 263 | ||
264 | /* | 264 | /* |
265 | * Unbypass pll3_sw_clk. | 265 | * Unbypass pll3_sw_clk. |
266 | */ | 266 | */ |
267 | reg = readl_relaxed(ccm_base + 0xc); | 267 | reg = readl_relaxed(ccm_base + 0xc); |
268 | reg &= ~(1 << 0); | 268 | reg &= ~(1 << 0); |
269 | writel_relaxed(reg, ccm_base + 0xc); | 269 | writel_relaxed(reg, ccm_base + 0xc); |
270 | 270 | ||
271 | /* | 271 | /* |
272 | * Set the periph2_clk_sel back to the bottom mux so that | 272 | * Set the periph2_clk_sel back to the bottom mux so that |
273 | * mmdc_ch1 is from its original parent. | 273 | * mmdc_ch1 is from its original parent. |
274 | */ | 274 | */ |
275 | reg = readl_relaxed(ccm_base + 0x14); | 275 | reg = readl_relaxed(ccm_base + 0x14); |
276 | reg &= ~(1 << 26); | 276 | reg &= ~(1 << 26); |
277 | writel_relaxed(reg, ccm_base + 0x14); | 277 | writel_relaxed(reg, ccm_base + 0x14); |
278 | 278 | ||
279 | /* | 279 | /* |
280 | * Wait for the clock switch. | 280 | * Wait for the clock switch. |
281 | */ | 281 | */ |
282 | while (readl_relaxed(ccm_base + 0x48)) | 282 | while (readl_relaxed(ccm_base + 0x48)) |
283 | ; | 283 | ; |
284 | 284 | ||
285 | /* | 285 | /* |
286 | * Clear MMDC_CH1 mask bit. | 286 | * Clear MMDC_CH1 mask bit. |
287 | */ | 287 | */ |
288 | reg = readl_relaxed(ccm_base + 0x4); | 288 | reg = readl_relaxed(ccm_base + 0x4); |
289 | reg &= ~(1 << 16); | 289 | reg &= ~(1 << 16); |
290 | writel_relaxed(reg, ccm_base + 0x4); | 290 | writel_relaxed(reg, ccm_base + 0x4); |
291 | 291 | ||
292 | } | 292 | } |
293 | 293 | ||
294 | static void __init imx6q_clocks_init(struct device_node *ccm_node) | 294 | static void __init imx6q_clocks_init(struct device_node *ccm_node) |
295 | { | 295 | { |
296 | struct device_node *np; | 296 | struct device_node *np; |
297 | void __iomem *base; | 297 | void __iomem *base; |
298 | int i, irq; | 298 | int i, irq; |
299 | u32 reg; | 299 | u32 reg; |
300 | 300 | ||
301 | clk[dummy] = imx_clk_fixed("dummy", 0); | 301 | clk[dummy] = imx_clk_fixed("dummy", 0); |
302 | clk[ckil] = imx_obtain_fixed_clock("ckil", 0); | 302 | clk[ckil] = imx_obtain_fixed_clock("ckil", 0); |
303 | clk[ckih] = imx_obtain_fixed_clock("ckih1", 0); | 303 | clk[ckih] = imx_obtain_fixed_clock("ckih1", 0); |
304 | clk[osc] = imx_obtain_fixed_clock("osc", 0); | 304 | clk[osc] = imx_obtain_fixed_clock("osc", 0); |
305 | /* Clock source from external clock via ANACLK1/2 PADs */ | 305 | /* Clock source from external clock via ANACLK1/2 PADs */ |
306 | clk[anaclk1] = imx_obtain_fixed_clock("anaclk1", 0); | 306 | clk[anaclk1] = imx_obtain_fixed_clock("anaclk1", 0); |
307 | clk[anaclk2] = imx_obtain_fixed_clock("anaclk2", 0); | 307 | clk[anaclk2] = imx_obtain_fixed_clock("anaclk2", 0); |
308 | 308 | ||
309 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-anatop"); | 309 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-anatop"); |
310 | anatop_base = base = of_iomap(np, 0); | 310 | anatop_base = base = of_iomap(np, 0); |
311 | WARN_ON(!base); | 311 | WARN_ON(!base); |
312 | 312 | ||
313 | /* Audio/video PLL post dividers do not work on i.MX6q revision 1.0 */ | 313 | /* Audio/video PLL post dividers do not work on i.MX6q revision 1.0 */ |
314 | if (cpu_is_imx6q() && imx_get_soc_revision() == IMX_CHIP_REVISION_1_0) { | 314 | if (cpu_is_imx6q() && imx_get_soc_revision() == IMX_CHIP_REVISION_1_0) { |
315 | post_div_table[1].div = 1; | 315 | post_div_table[1].div = 1; |
316 | post_div_table[2].div = 1; | 316 | post_div_table[2].div = 1; |
317 | video_div_table[1].div = 1; | 317 | video_div_table[1].div = 1; |
318 | video_div_table[2].div = 1; | 318 | video_div_table[2].div = 1; |
319 | }; | 319 | }; |
320 | 320 | ||
321 | /* type name parent_name base div_mask */ | 321 | /* type name parent_name base div_mask */ |
322 | clk[pll1_sys] = imx_clk_pllv3(IMX_PLLV3_SYS, "pll1_sys", "osc", base, 0x7f, false); | 322 | clk[pll1_sys] = imx_clk_pllv3(IMX_PLLV3_SYS, "pll1_sys", "osc", base, 0x7f, false); |
323 | clk[pll2_bus] = imx_clk_pllv3(IMX_PLLV3_GENERIC, "pll2_bus", "osc", base + 0x30, 0x1, false); | 323 | clk[pll2_bus] = imx_clk_pllv3(IMX_PLLV3_GENERIC, "pll2_bus", "osc", base + 0x30, 0x1, false); |
324 | clk[pll3_usb_otg] = imx_clk_pllv3(IMX_PLLV3_USB, "pll3_usb_otg", "osc", base + 0x10, 0x3, false); | 324 | clk[pll3_usb_otg] = imx_clk_pllv3(IMX_PLLV3_USB, "pll3_usb_otg", "osc", base + 0x10, 0x3, false); |
325 | clk[pll4_audio] = imx_clk_pllv3(IMX_PLLV3_AV, "pll4_audio", "pll4_sel", base + 0x70, 0x7f, false); | 325 | clk[pll4_audio] = imx_clk_pllv3(IMX_PLLV3_AV, "pll4_audio", "pll4_sel", base + 0x70, 0x7f, false); |
326 | clk[pll5_video] = imx_clk_pllv3(IMX_PLLV3_AV, "pll5_video", "osc", base + 0xa0, 0x7f, false); | 326 | clk[pll5_video] = imx_clk_pllv3(IMX_PLLV3_AV, "pll5_video", "osc", base + 0xa0, 0x7f, false); |
327 | clk[pll6_enet] = imx_clk_pllv3(IMX_PLLV3_ENET, "pll6_enet", "osc", base + 0xe0, 0x3, false); | 327 | clk[pll6_enet] = imx_clk_pllv3(IMX_PLLV3_ENET, "pll6_enet", "osc", base + 0xe0, 0x3, false); |
328 | clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_usb_host", "osc", base + 0x20, 0x3, false); | 328 | clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_usb_host", "osc", base + 0x20, 0x3, false); |
329 | 329 | ||
330 | /* name reg shift width parent_names num_parents */ | 330 | /* name reg shift width parent_names num_parents */ |
331 | clk[lvds1_sel] = imx_clk_mux("lvds1_sel", base + 0x160, 0, 5, lvds_sels, ARRAY_SIZE(lvds_sels)); | 331 | clk[lvds1_sel] = imx_clk_mux("lvds1_sel", base + 0x160, 0, 5, lvds_sels, ARRAY_SIZE(lvds_sels)); |
332 | clk[lvds2_sel] = imx_clk_mux("lvds2_sel", base + 0x160, 5, 5, lvds_sels, ARRAY_SIZE(lvds_sels)); | 332 | clk[lvds2_sel] = imx_clk_mux("lvds2_sel", base + 0x160, 5, 5, lvds_sels, ARRAY_SIZE(lvds_sels)); |
333 | clk[pll4_sel] = imx_clk_mux("pll4_sel", base + 0x70, 14, 2, pll_av_sels, ARRAY_SIZE(pll_av_sels)); | 333 | clk[pll4_sel] = imx_clk_mux("pll4_sel", base + 0x70, 14, 2, pll_av_sels, ARRAY_SIZE(pll_av_sels)); |
334 | 334 | ||
335 | /* | 335 | /* |
336 | * Bit 20 is the reserved and read-only bit, we do this only for: | 336 | * Bit 20 is the reserved and read-only bit, we do this only for: |
337 | * - Do nothing for usbphy clk_enable/disable | 337 | * - Do nothing for usbphy clk_enable/disable |
338 | * - Keep refcount when do usbphy clk_enable/disable, in that case, | 338 | * - Keep refcount when do usbphy clk_enable/disable, in that case, |
339 | * the clk framework may need to enable/disable usbphy's parent | 339 | * the clk framework may need to enable/disable usbphy's parent |
340 | */ | 340 | */ |
341 | clk[usbphy1] = imx_clk_gate("usbphy1", "pll3_usb_otg", base + 0x10, 20); | 341 | clk[usbphy1] = imx_clk_gate("usbphy1", "pll3_usb_otg", base + 0x10, 20); |
342 | clk[usbphy2] = imx_clk_gate("usbphy2", "pll7_usb_host", base + 0x20, 20); | 342 | clk[usbphy2] = imx_clk_gate("usbphy2", "pll7_usb_host", base + 0x20, 20); |
343 | 343 | ||
344 | /* | 344 | /* |
345 | * usbphy*_gate needs to be on after system boots up, and software | 345 | * usbphy*_gate needs to be on after system boots up, and software |
346 | * never needs to control it anymore. | 346 | * never needs to control it anymore. |
347 | */ | 347 | */ |
348 | clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "dummy", base + 0x10, 6); | 348 | clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "dummy", base + 0x10, 6); |
349 | clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", "dummy", base + 0x20, 6); | 349 | clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", "dummy", base + 0x20, 6); |
350 | 350 | ||
351 | clk[sata_ref] = imx_clk_fixed_factor("sata_ref", "pll6_enet", 1, 5); | 351 | clk[sata_ref] = imx_clk_fixed_factor("sata_ref", "pll6_enet", 1, 5); |
352 | clk[pcie_ref] = imx_clk_fixed_factor("pcie_ref", "pll6_enet", 1, 4); | 352 | clk[pcie_ref] = imx_clk_fixed_factor("pcie_ref", "pll6_enet", 1, 4); |
353 | /* NOTICE: The gate of the lvds1/2 in/out is used to select the clk direction */ | 353 | /* NOTICE: The gate of the lvds1/2 in/out is used to select the clk direction */ |
354 | clk[lvds1_in] = imx_clk_gate("lvds1_in", "anaclk1", base + 0x160, 12); | 354 | clk[lvds1_in] = imx_clk_gate("lvds1_in", "anaclk1", base + 0x160, 12); |
355 | clk[lvds2_in] = imx_clk_gate("lvds2_in", "anaclk2", base + 0x160, 13); | 355 | clk[lvds2_in] = imx_clk_gate("lvds2_in", "anaclk2", base + 0x160, 13); |
356 | clk[lvds1_out] = imx_clk_gate("lvds1_out", "lvds1_sel", base + 0x160, 10); | 356 | clk[lvds1_out] = imx_clk_gate("lvds1_out", "lvds1_sel", base + 0x160, 10); |
357 | clk[lvds2_out] = imx_clk_gate("lvds2_out", "lvds2_sel", base + 0x160, 11); | 357 | clk[lvds2_out] = imx_clk_gate("lvds2_out", "lvds2_sel", base + 0x160, 11); |
358 | 358 | ||
359 | clk[sata_ref_100m] = imx_clk_gate("sata_ref_100m", "sata_ref", base + 0xe0, 20); | 359 | clk[sata_ref_100m] = imx_clk_gate("sata_ref_100m", "sata_ref", base + 0xe0, 20); |
360 | clk[pcie_ref_125m] = imx_clk_gate("pcie_ref_125m", "pcie_ref", base + 0xe0, 19); | 360 | clk[pcie_ref_125m] = imx_clk_gate("pcie_ref_125m", "pcie_ref", base + 0xe0, 19); |
361 | 361 | ||
362 | clk[enet_ref] = clk_register_divider_table(NULL, "enet_ref", "pll6_enet", 0, | 362 | clk[enet_ref] = clk_register_divider_table(NULL, "enet_ref", "pll6_enet", 0, |
363 | base + 0xe0, 0, 2, 0, clk_enet_ref_table, | 363 | base + 0xe0, 0, 2, 0, clk_enet_ref_table, |
364 | &imx_ccm_lock); | 364 | &imx_ccm_lock); |
365 | 365 | ||
366 | /* name parent_name reg idx */ | 366 | /* name parent_name reg idx */ |
367 | clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", "pll2_bus", base + 0x100, 0); | 367 | clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", "pll2_bus", base + 0x100, 0); |
368 | clk[pll2_pfd1_594m] = imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); | 368 | clk[pll2_pfd1_594m] = imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); |
369 | clk[pll2_pfd2_396m] = imx_clk_pfd("pll2_pfd2_396m", "pll2_bus", base + 0x100, 2); | 369 | clk[pll2_pfd2_396m] = imx_clk_pfd("pll2_pfd2_396m", "pll2_bus", base + 0x100, 2); |
370 | clk[pll3_pfd0_720m] = imx_clk_pfd("pll3_pfd0_720m", "pll3_usb_otg", base + 0xf0, 0); | 370 | clk[pll3_pfd0_720m] = imx_clk_pfd("pll3_pfd0_720m", "pll3_usb_otg", base + 0xf0, 0); |
371 | clk[pll3_pfd1_540m] = imx_clk_pfd("pll3_pfd1_540m", "pll3_usb_otg", base + 0xf0, 1); | 371 | clk[pll3_pfd1_540m] = imx_clk_pfd("pll3_pfd1_540m", "pll3_usb_otg", base + 0xf0, 1); |
372 | clk[pll3_pfd2_508m] = imx_clk_pfd("pll3_pfd2_508m", "pll3_usb_otg", base + 0xf0, 2); | 372 | clk[pll3_pfd2_508m] = imx_clk_pfd("pll3_pfd2_508m", "pll3_usb_otg", base + 0xf0, 2); |
373 | clk[pll3_pfd3_454m] = imx_clk_pfd("pll3_pfd3_454m", "pll3_usb_otg", base + 0xf0, 3); | 373 | clk[pll3_pfd3_454m] = imx_clk_pfd("pll3_pfd3_454m", "pll3_usb_otg", base + 0xf0, 3); |
374 | 374 | ||
375 | /* name parent_name mult div */ | 375 | /* name parent_name mult div */ |
376 | clk[pll2_198m] = imx_clk_fixed_factor("pll2_198m", "pll2_pfd2_396m", 1, 2); | 376 | clk[pll2_198m] = imx_clk_fixed_factor("pll2_198m", "pll2_pfd2_396m", 1, 2); |
377 | clk[pll3_120m] = imx_clk_fixed_factor("pll3_120m", "pll3_usb_otg", 1, 4); | 377 | clk[pll3_120m] = imx_clk_fixed_factor("pll3_120m", "pll3_usb_otg", 1, 4); |
378 | clk[pll3_80m] = imx_clk_fixed_factor("pll3_80m", "pll3_usb_otg", 1, 6); | 378 | clk[pll3_80m] = imx_clk_fixed_factor("pll3_80m", "pll3_usb_otg", 1, 6); |
379 | clk[pll3_60m] = imx_clk_fixed_factor("pll3_60m", "pll3_usb_otg", 1, 8); | 379 | clk[pll3_60m] = imx_clk_fixed_factor("pll3_60m", "pll3_usb_otg", 1, 8); |
380 | clk[twd] = imx_clk_fixed_factor("twd", "arm", 1, 2); | 380 | clk[twd] = imx_clk_fixed_factor("twd", "arm", 1, 2); |
381 | clk[gpt_3m] = imx_clk_fixed_factor("gpt_3m", "osc", 1, 8); | 381 | clk[gpt_3m] = imx_clk_fixed_factor("gpt_3m", "osc", 1, 8); |
382 | clk[video_27m] = imx_clk_fixed_factor("video_27m", "pll3_pfd1_540m", 1, 20); | 382 | clk[video_27m] = imx_clk_fixed_factor("video_27m", "pll3_pfd1_540m", 1, 20); |
383 | if (cpu_is_imx6dl()) { | 383 | if (cpu_is_imx6dl()) { |
384 | clk[gpu2d_axi] = imx_clk_fixed_factor("gpu2d_axi", "mmdc_ch0_axi_podf", 1, 1); | 384 | clk[gpu2d_axi] = imx_clk_fixed_factor("gpu2d_axi", "mmdc_ch0_axi_podf", 1, 1); |
385 | clk[gpu3d_axi] = imx_clk_fixed_factor("gpu3d_axi", "mmdc_ch0_axi_podf", 1, 1); | 385 | clk[gpu3d_axi] = imx_clk_fixed_factor("gpu3d_axi", "mmdc_ch0_axi_podf", 1, 1); |
386 | } | 386 | } |
387 | 387 | ||
388 | clk[pll4_post_div] = clk_register_divider_table(NULL, "pll4_post_div", "pll4_audio", CLK_SET_RATE_PARENT, base + 0x70, 19, 2, 0, post_div_table, &imx_ccm_lock); | 388 | clk[pll4_post_div] = clk_register_divider_table(NULL, "pll4_post_div", "pll4_audio", CLK_SET_RATE_PARENT, base + 0x70, 19, 2, 0, post_div_table, &imx_ccm_lock); |
389 | clk[pll4_audio_div] = clk_register_divider(NULL, "pll4_audio_div", "pll4_post_div", CLK_SET_RATE_PARENT, base + 0x170, 15, 1, 0, &imx_ccm_lock); | 389 | clk[pll4_audio_div] = clk_register_divider(NULL, "pll4_audio_div", "pll4_post_div", CLK_SET_RATE_PARENT, base + 0x170, 15, 1, 0, &imx_ccm_lock); |
390 | clk[pll5_post_div] = clk_register_divider_table(NULL, "pll5_post_div", "pll5_video", CLK_SET_RATE_PARENT, base + 0xa0, 19, 2, 0, post_div_table, &imx_ccm_lock); | 390 | clk[pll5_post_div] = clk_register_divider_table(NULL, "pll5_post_div", "pll5_video", CLK_SET_RATE_PARENT, base + 0xa0, 19, 2, 0, post_div_table, &imx_ccm_lock); |
391 | clk[pll5_video_div] = clk_register_divider_table(NULL, "pll5_video_div", "pll5_post_div", CLK_SET_RATE_PARENT, base + 0x170, 30, 2, 0, video_div_table, &imx_ccm_lock); | 391 | clk[pll5_video_div] = clk_register_divider_table(NULL, "pll5_video_div", "pll5_post_div", CLK_SET_RATE_PARENT, base + 0x170, 30, 2, 0, video_div_table, &imx_ccm_lock); |
392 | 392 | ||
393 | np = ccm_node; | 393 | np = ccm_node; |
394 | ccm_base = base = of_iomap(np, 0); | 394 | ccm_base = base = of_iomap(np, 0); |
395 | WARN_ON(!base); | 395 | WARN_ON(!base); |
396 | imx6_pm_set_ccm_base(base); | 396 | imx6_pm_set_ccm_base(base); |
397 | 397 | ||
398 | /* name reg shift width parent_names num_parents */ | 398 | /* name reg shift width parent_names num_parents */ |
399 | clk[step] = imx_clk_mux("step", base + 0xc, 8, 1, step_sels, ARRAY_SIZE(step_sels)); | 399 | clk[step] = imx_clk_mux("step", base + 0xc, 8, 1, step_sels, ARRAY_SIZE(step_sels)); |
400 | clk[pll1_sw] = imx_clk_mux_glitchless("pll1_sw", base + 0xc, 2, 1, pll1_sw_sels, ARRAY_SIZE(pll1_sw_sels)); | 400 | clk[pll1_sw] = imx_clk_mux_glitchless("pll1_sw", base + 0xc, 2, 1, pll1_sw_sels, ARRAY_SIZE(pll1_sw_sels)); |
401 | clk[periph_pre] = imx_clk_mux_bus("periph_pre", base + 0x18, 18, 2, periph_pre_sels, ARRAY_SIZE(periph_pre_sels)); | 401 | clk[periph_pre] = imx_clk_mux_bus("periph_pre", base + 0x18, 18, 2, periph_pre_sels, ARRAY_SIZE(periph_pre_sels)); |
402 | clk[periph2_pre] = imx_clk_mux("periph2_pre", base + 0x18, 21, 2, periph_pre_sels, ARRAY_SIZE(periph_pre_sels)); | 402 | clk[periph2_pre] = imx_clk_mux("periph2_pre", base + 0x18, 21, 2, periph_pre_sels, ARRAY_SIZE(periph_pre_sels)); |
403 | clk[periph_clk2_sel] = imx_clk_mux_bus("periph_clk2_sel", base + 0x18, 12, 2, periph_clk2_sels, ARRAY_SIZE(periph_clk2_sels)); | 403 | clk[periph_clk2_sel] = imx_clk_mux_bus("periph_clk2_sel", base + 0x18, 12, 2, periph_clk2_sels, ARRAY_SIZE(periph_clk2_sels)); |
404 | clk[periph2_clk2_sel] = imx_clk_mux("periph2_clk2_sel", base + 0x18, 20, 1, periph2_clk2_sels, ARRAY_SIZE(periph2_clk2_sels)); | 404 | clk[periph2_clk2_sel] = imx_clk_mux("periph2_clk2_sel", base + 0x18, 20, 1, periph2_clk2_sels, ARRAY_SIZE(periph2_clk2_sels)); |
405 | clk[axi_alt_sel] = imx_clk_mux("axi_alt_sel", base + 0x14, 7, 1, axi_alt_sels, ARRAY_SIZE(axi_alt_sels)); | 405 | clk[axi_alt_sel] = imx_clk_mux("axi_alt_sel", base + 0x14, 7, 1, axi_alt_sels, ARRAY_SIZE(axi_alt_sels)); |
406 | clk[axi_sel] = imx_clk_mux_glitchless("axi_sel", base + 0x14, 6, 1, axi_sels, ARRAY_SIZE(axi_sels)); | 406 | clk[axi_sel] = imx_clk_mux_glitchless("axi_sel", base + 0x14, 6, 1, axi_sels, ARRAY_SIZE(axi_sels)); |
407 | clk[esai_sel] = imx_clk_mux("esai_sel", base + 0x20, 19, 2, audio_sels, ARRAY_SIZE(audio_sels)); | 407 | clk[esai_sel] = imx_clk_mux("esai_sel", base + 0x20, 19, 2, audio_sels, ARRAY_SIZE(audio_sels)); |
408 | clk[spdif1_sel] = imx_clk_mux("spdif1_sel", base + 0x30, 7, 2, audio_sels, ARRAY_SIZE(audio_sels)); | 408 | clk[spdif1_sel] = imx_clk_mux("spdif1_sel", base + 0x30, 7, 2, audio_sels, ARRAY_SIZE(audio_sels)); |
409 | clk[spdif_sel] = imx_clk_mux("spdif_sel", base + 0x30, 20, 2, audio_sels, ARRAY_SIZE(audio_sels)); | 409 | clk[spdif_sel] = imx_clk_mux("spdif_sel", base + 0x30, 20, 2, audio_sels, ARRAY_SIZE(audio_sels)); |
410 | if (cpu_is_imx6q()) { | 410 | if (cpu_is_imx6q()) { |
411 | clk[gpu2d_axi] = imx_clk_mux("gpu2d_axi", base + 0x18, 0, 1, gpu_axi_sels, ARRAY_SIZE(gpu_axi_sels)); | 411 | clk[gpu2d_axi] = imx_clk_mux("gpu2d_axi", base + 0x18, 0, 1, gpu_axi_sels, ARRAY_SIZE(gpu_axi_sels)); |
412 | clk[gpu3d_axi] = imx_clk_mux("gpu3d_axi", base + 0x18, 1, 1, gpu_axi_sels, ARRAY_SIZE(gpu_axi_sels)); | 412 | clk[gpu3d_axi] = imx_clk_mux("gpu3d_axi", base + 0x18, 1, 1, gpu_axi_sels, ARRAY_SIZE(gpu_axi_sels)); |
413 | } | 413 | } |
414 | clk[gpu2d_core_sel] = imx_clk_mux("gpu2d_core_sel", base + 0x18, 16, 2, gpu2d_core_sels, ARRAY_SIZE(gpu2d_core_sels)); | 414 | clk[gpu2d_core_sel] = imx_clk_mux("gpu2d_core_sel", base + 0x18, 16, 2, gpu2d_core_sels, ARRAY_SIZE(gpu2d_core_sels)); |
415 | clk[gpu3d_core_sel] = imx_clk_mux("gpu3d_core_sel", base + 0x18, 4, 2, gpu3d_core_sels, ARRAY_SIZE(gpu3d_core_sels)); | 415 | clk[gpu3d_core_sel] = imx_clk_mux("gpu3d_core_sel", base + 0x18, 4, 2, gpu3d_core_sels, ARRAY_SIZE(gpu3d_core_sels)); |
416 | clk[gpu3d_shader_sel] = imx_clk_mux("gpu3d_shader_sel", base + 0x18, 8, 2, gpu3d_shader_sels, ARRAY_SIZE(gpu3d_shader_sels)); | 416 | clk[gpu3d_shader_sel] = imx_clk_mux("gpu3d_shader_sel", base + 0x18, 8, 2, gpu3d_shader_sels, ARRAY_SIZE(gpu3d_shader_sels)); |
417 | clk[ipu1_sel] = imx_clk_mux("ipu1_sel", base + 0x3c, 9, 2, ipu_sels, ARRAY_SIZE(ipu_sels)); | 417 | clk[ipu1_sel] = imx_clk_mux("ipu1_sel", base + 0x3c, 9, 2, ipu_sels, ARRAY_SIZE(ipu_sels)); |
418 | clk[ipu2_sel] = imx_clk_mux("ipu2_sel", base + 0x3c, 14, 2, ipu_sels, ARRAY_SIZE(ipu_sels)); | 418 | clk[ipu2_sel] = imx_clk_mux("ipu2_sel", base + 0x3c, 14, 2, ipu_sels, ARRAY_SIZE(ipu_sels)); |
419 | clk[ldb_di0_div_sel] = imx_clk_mux_flags("ldb_di0_div_sel", base + 0x20, 10, 1, ldb_di0_div_sels, ARRAY_SIZE(ldb_di0_div_sels), CLK_SET_RATE_PARENT); | 419 | clk[ldb_di0_div_sel] = imx_clk_mux_flags("ldb_di0_div_sel", base + 0x20, 10, 1, ldb_di0_div_sels, ARRAY_SIZE(ldb_di0_div_sels), CLK_SET_RATE_PARENT); |
420 | clk[ldb_di1_div_sel] = imx_clk_mux_flags("ldb_di1_div_sel", base + 0x20, 11, 1, ldb_di1_div_sels, ARRAY_SIZE(ldb_di1_div_sels), CLK_SET_RATE_PARENT); | 420 | clk[ldb_di1_div_sel] = imx_clk_mux_flags("ldb_di1_div_sel", base + 0x20, 11, 1, ldb_di1_div_sels, ARRAY_SIZE(ldb_di1_div_sels), CLK_SET_RATE_PARENT); |
421 | clk[ipu1_di0_pre_sel] = imx_clk_mux_flags("ipu1_di0_pre_sel", base + 0x34, 6, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); | 421 | clk[ipu1_di0_pre_sel] = imx_clk_mux_flags("ipu1_di0_pre_sel", base + 0x34, 6, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); |
422 | clk[ipu1_di1_pre_sel] = imx_clk_mux_flags("ipu1_di1_pre_sel", base + 0x34, 15, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); | 422 | clk[ipu1_di1_pre_sel] = imx_clk_mux_flags("ipu1_di1_pre_sel", base + 0x34, 15, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); |
423 | clk[ipu2_di0_pre_sel] = imx_clk_mux_flags("ipu2_di0_pre_sel", base + 0x38, 6, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); | 423 | clk[ipu2_di0_pre_sel] = imx_clk_mux_flags("ipu2_di0_pre_sel", base + 0x38, 6, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); |
424 | clk[ipu2_di1_pre_sel] = imx_clk_mux_flags("ipu2_di1_pre_sel", base + 0x38, 15, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); | 424 | clk[ipu2_di1_pre_sel] = imx_clk_mux_flags("ipu2_di1_pre_sel", base + 0x38, 15, 3, ipu_di_pre_sels, ARRAY_SIZE(ipu_di_pre_sels), CLK_SET_RATE_PARENT); |
425 | clk[ipu1_di0_sel] = imx_clk_mux_flags("ipu1_di0_sel", base + 0x34, 0, 3, ipu1_di0_sels, ARRAY_SIZE(ipu1_di0_sels), CLK_SET_RATE_PARENT); | 425 | clk[ipu1_di0_sel] = imx_clk_mux_flags("ipu1_di0_sel", base + 0x34, 0, 3, ipu1_di0_sels, ARRAY_SIZE(ipu1_di0_sels), CLK_SET_RATE_PARENT); |
426 | clk[ipu1_di1_sel] = imx_clk_mux_flags("ipu1_di1_sel", base + 0x34, 9, 3, ipu1_di1_sels, ARRAY_SIZE(ipu1_di1_sels), CLK_SET_RATE_PARENT); | 426 | clk[ipu1_di1_sel] = imx_clk_mux_flags("ipu1_di1_sel", base + 0x34, 9, 3, ipu1_di1_sels, ARRAY_SIZE(ipu1_di1_sels), CLK_SET_RATE_PARENT); |
427 | clk[ipu2_di0_sel] = imx_clk_mux_flags("ipu2_di0_sel", base + 0x38, 0, 3, ipu2_di0_sels, ARRAY_SIZE(ipu2_di0_sels), CLK_SET_RATE_PARENT); | 427 | clk[ipu2_di0_sel] = imx_clk_mux_flags("ipu2_di0_sel", base + 0x38, 0, 3, ipu2_di0_sels, ARRAY_SIZE(ipu2_di0_sels), CLK_SET_RATE_PARENT); |
428 | clk[ipu2_di1_sel] = imx_clk_mux_flags("ipu2_di1_sel", base + 0x38, 9, 3, ipu2_di1_sels, ARRAY_SIZE(ipu2_di1_sels), CLK_SET_RATE_PARENT); | 428 | clk[ipu2_di1_sel] = imx_clk_mux_flags("ipu2_di1_sel", base + 0x38, 9, 3, ipu2_di1_sels, ARRAY_SIZE(ipu2_di1_sels), CLK_SET_RATE_PARENT); |
429 | clk[hsi_tx_sel] = imx_clk_mux("hsi_tx_sel", base + 0x30, 28, 1, hsi_tx_sels, ARRAY_SIZE(hsi_tx_sels)); | 429 | clk[hsi_tx_sel] = imx_clk_mux("hsi_tx_sel", base + 0x30, 28, 1, hsi_tx_sels, ARRAY_SIZE(hsi_tx_sels)); |
430 | clk[pcie_axi_sel] = imx_clk_mux("pcie_axi_sel", base + 0x18, 10, 1, pcie_axi_sels, ARRAY_SIZE(pcie_axi_sels)); | 430 | clk[pcie_axi_sel] = imx_clk_mux("pcie_axi_sel", base + 0x18, 10, 1, pcie_axi_sels, ARRAY_SIZE(pcie_axi_sels)); |
431 | clk[ssi1_sel] = imx_clk_fixup_mux("ssi1_sel", base + 0x1c, 10, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); | 431 | clk[ssi1_sel] = imx_clk_fixup_mux("ssi1_sel", base + 0x1c, 10, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); |
432 | clk[ssi2_sel] = imx_clk_fixup_mux("ssi2_sel", base + 0x1c, 12, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); | 432 | clk[ssi2_sel] = imx_clk_fixup_mux("ssi2_sel", base + 0x1c, 12, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); |
433 | clk[ssi3_sel] = imx_clk_fixup_mux("ssi3_sel", base + 0x1c, 14, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); | 433 | clk[ssi3_sel] = imx_clk_fixup_mux("ssi3_sel", base + 0x1c, 14, 2, ssi_sels, ARRAY_SIZE(ssi_sels), imx_cscmr1_fixup); |
434 | clk[usdhc1_sel] = imx_clk_fixup_mux("usdhc1_sel", base + 0x1c, 16, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); | 434 | clk[usdhc1_sel] = imx_clk_fixup_mux("usdhc1_sel", base + 0x1c, 16, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); |
435 | clk[usdhc2_sel] = imx_clk_fixup_mux("usdhc2_sel", base + 0x1c, 17, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); | 435 | clk[usdhc2_sel] = imx_clk_fixup_mux("usdhc2_sel", base + 0x1c, 17, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); |
436 | clk[usdhc3_sel] = imx_clk_fixup_mux("usdhc3_sel", base + 0x1c, 18, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); | 436 | clk[usdhc3_sel] = imx_clk_fixup_mux("usdhc3_sel", base + 0x1c, 18, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); |
437 | clk[usdhc4_sel] = imx_clk_fixup_mux("usdhc4_sel", base + 0x1c, 19, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); | 437 | clk[usdhc4_sel] = imx_clk_fixup_mux("usdhc4_sel", base + 0x1c, 19, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels), imx_cscmr1_fixup); |
438 | clk[enfc_sel] = imx_clk_mux("enfc_sel", base + 0x2c, 16, 2, enfc_sels, ARRAY_SIZE(enfc_sels)); | 438 | clk[enfc_sel] = imx_clk_mux("enfc_sel", base + 0x2c, 16, 2, enfc_sels, ARRAY_SIZE(enfc_sels)); |
439 | clk[emi_sel] = imx_clk_fixup_mux("emi_sel", base + 0x1c, 27, 2, emi_sels, ARRAY_SIZE(emi_sels), imx_cscmr1_fixup); | 439 | clk[emi_sel] = imx_clk_fixup_mux("emi_sel", base + 0x1c, 27, 2, emi_sels, ARRAY_SIZE(emi_sels), imx_cscmr1_fixup); |
440 | clk[emi_slow_sel] = imx_clk_fixup_mux("emi_slow_sel", base + 0x1c, 29, 2, emi_slow_sels, ARRAY_SIZE(emi_slow_sels), imx_cscmr1_fixup); | 440 | clk[emi_slow_sel] = imx_clk_fixup_mux("emi_slow_sel", base + 0x1c, 29, 2, emi_slow_sels, ARRAY_SIZE(emi_slow_sels), imx_cscmr1_fixup); |
441 | clk[vdo_axi_sel] = imx_clk_mux("vdo_axi_sel", base + 0x18, 11, 1, vdo_axi_sels, ARRAY_SIZE(vdo_axi_sels)); | 441 | clk[vdo_axi_sel] = imx_clk_mux("vdo_axi_sel", base + 0x18, 11, 1, vdo_axi_sels, ARRAY_SIZE(vdo_axi_sels)); |
442 | clk[vpu_axi_sel] = imx_clk_mux("vpu_axi_sel", base + 0x18, 14, 2, vpu_axi_sels, ARRAY_SIZE(vpu_axi_sels)); | 442 | clk[vpu_axi_sel] = imx_clk_mux("vpu_axi_sel", base + 0x18, 14, 2, vpu_axi_sels, ARRAY_SIZE(vpu_axi_sels)); |
443 | clk[cko1_sel] = imx_clk_mux("cko1_sel", base + 0x60, 0, 4, cko1_sels, ARRAY_SIZE(cko1_sels)); | 443 | clk[cko1_sel] = imx_clk_mux("cko1_sel", base + 0x60, 0, 4, cko1_sels, ARRAY_SIZE(cko1_sels)); |
444 | clk[cko2_sel] = imx_clk_mux("cko2_sel", base + 0x60, 16, 5, cko2_sels, ARRAY_SIZE(cko2_sels)); | 444 | clk[cko2_sel] = imx_clk_mux("cko2_sel", base + 0x60, 16, 5, cko2_sels, ARRAY_SIZE(cko2_sels)); |
445 | clk[cko] = imx_clk_mux("cko", base + 0x60, 8, 1, cko_sels, ARRAY_SIZE(cko_sels)); | 445 | clk[cko] = imx_clk_mux("cko", base + 0x60, 8, 1, cko_sels, ARRAY_SIZE(cko_sels)); |
446 | 446 | ||
447 | /* name reg shift width busy: reg, shift parent_names num_parents */ | 447 | /* name reg shift width busy: reg, shift parent_names num_parents */ |
448 | clk[periph] = imx_clk_busy_mux("periph", base + 0x14, 25, 1, base + 0x48, 5, periph_sels, ARRAY_SIZE(periph_sels)); | 448 | clk[periph] = imx_clk_busy_mux("periph", base + 0x14, 25, 1, base + 0x48, 5, periph_sels, ARRAY_SIZE(periph_sels)); |
449 | clk[periph2] = imx_clk_busy_mux("periph2", base + 0x14, 26, 1, base + 0x48, 3, periph2_sels, ARRAY_SIZE(periph2_sels)); | 449 | clk[periph2] = imx_clk_busy_mux("periph2", base + 0x14, 26, 1, base + 0x48, 3, periph2_sels, ARRAY_SIZE(periph2_sels)); |
450 | 450 | ||
451 | /* name parent_name reg shift width */ | 451 | /* name parent_name reg shift width */ |
452 | clk[periph_clk2] = imx_clk_divider("periph_clk2", "periph_clk2_sel", base + 0x14, 27, 3); | 452 | clk[periph_clk2] = imx_clk_divider("periph_clk2", "periph_clk2_sel", base + 0x14, 27, 3); |
453 | clk[periph2_clk2] = imx_clk_divider("periph2_clk2", "periph2_clk2_sel", base + 0x14, 0, 3); | 453 | clk[periph2_clk2] = imx_clk_divider("periph2_clk2", "periph2_clk2_sel", base + 0x14, 0, 3); |
454 | clk[ipg] = imx_clk_divider("ipg", "ahb", base + 0x14, 8, 2); | 454 | clk[ipg] = imx_clk_divider("ipg", "ahb", base + 0x14, 8, 2); |
455 | clk[ipg_per] = imx_clk_fixup_divider("ipg_per", "ipg", base + 0x1c, 0, 6, imx_cscmr1_fixup); | 455 | clk[ipg_per] = imx_clk_fixup_divider("ipg_per", "ipg", base + 0x1c, 0, 6, imx_cscmr1_fixup); |
456 | clk[esai_pred] = imx_clk_divider("esai_pred", "esai_sel", base + 0x28, 9, 3); | 456 | clk[esai_pred] = imx_clk_divider("esai_pred", "esai_sel", base + 0x28, 9, 3); |
457 | clk[esai_podf] = imx_clk_divider("esai_podf", "esai_pred", base + 0x28, 25, 3); | 457 | clk[esai_podf] = imx_clk_divider("esai_podf", "esai_pred", base + 0x28, 25, 3); |
458 | clk[spdif1_pred] = imx_clk_divider("spdif1_pred", "spdif1_sel", base + 0x30, 12, 3); | 458 | clk[spdif1_pred] = imx_clk_divider("spdif1_pred", "spdif1_sel", base + 0x30, 12, 3); |
459 | clk[spdif1_podf] = imx_clk_divider("spdif1_podf", "spdif1_pred", base + 0x30, 9, 3); | 459 | clk[spdif1_podf] = imx_clk_divider("spdif1_podf", "spdif1_pred", base + 0x30, 9, 3); |
460 | clk[spdif_pred] = imx_clk_divider("spdif_pred", "spdif_sel", base + 0x30, 25, 3); | 460 | clk[spdif_pred] = imx_clk_divider("spdif_pred", "spdif_sel", base + 0x30, 25, 3); |
461 | clk[spdif_podf] = imx_clk_divider("spdif_podf", "spdif_pred", base + 0x30, 22, 3); | 461 | clk[spdif_podf] = imx_clk_divider("spdif_podf", "spdif_pred", base + 0x30, 22, 3); |
462 | clk[can_root] = imx_clk_divider("can_root", "pll3_60m", base + 0x20, 2, 6); | 462 | clk[can_root] = imx_clk_divider("can_root", "pll3_60m", base + 0x20, 2, 6); |
463 | clk[ecspi_root] = imx_clk_divider("ecspi_root", "pll3_60m", base + 0x38, 19, 6); | 463 | clk[ecspi_root] = imx_clk_divider("ecspi_root", "pll3_60m", base + 0x38, 19, 6); |
464 | clk[gpu2d_core_podf] = imx_clk_divider("gpu2d_core_podf", "gpu2d_core_sel", base + 0x18, 23, 3); | 464 | clk[gpu2d_core_podf] = imx_clk_divider("gpu2d_core_podf", "gpu2d_core_sel", base + 0x18, 23, 3); |
465 | clk[gpu3d_core_podf] = imx_clk_divider("gpu3d_core_podf", "gpu3d_core_sel", base + 0x18, 26, 3); | 465 | clk[gpu3d_core_podf] = imx_clk_divider("gpu3d_core_podf", "gpu3d_core_sel", base + 0x18, 26, 3); |
466 | clk[gpu3d_shader] = imx_clk_divider("gpu3d_shader", "gpu3d_shader_sel", base + 0x18, 29, 3); | 466 | clk[gpu3d_shader] = imx_clk_divider("gpu3d_shader", "gpu3d_shader_sel", base + 0x18, 29, 3); |
467 | clk[ipu1_podf] = imx_clk_divider("ipu1_podf", "ipu1_sel", base + 0x3c, 11, 3); | 467 | clk[ipu1_podf] = imx_clk_divider("ipu1_podf", "ipu1_sel", base + 0x3c, 11, 3); |
468 | clk[ipu2_podf] = imx_clk_divider("ipu2_podf", "ipu2_sel", base + 0x3c, 16, 3); | 468 | clk[ipu2_podf] = imx_clk_divider("ipu2_podf", "ipu2_sel", base + 0x3c, 16, 3); |
469 | clk[ldb_di0_div_3_5] = imx_clk_fixed_factor("ldb_di0_div_3_5", ldb_di_sels[ldb_di_sel], 2, 7); | 469 | clk[ldb_di0_div_3_5] = imx_clk_fixed_factor("ldb_di0_div_3_5", ldb_di_sels[ldb_di_sel], 2, 7); |
470 | clk[ldb_di0_div_7] = imx_clk_fixed_factor("ldb_di0_div_7", ldb_di_sels[ldb_di_sel], 1, 7); | 470 | clk[ldb_di0_div_7] = imx_clk_fixed_factor("ldb_di0_div_7", ldb_di_sels[ldb_di_sel], 1, 7); |
471 | clk[ldb_di1_div_3_5] = imx_clk_fixed_factor("ldb_di1_div_3_5", ldb_di_sels[ldb_di_sel], 2, 7); | 471 | clk[ldb_di1_div_3_5] = imx_clk_fixed_factor("ldb_di1_div_3_5", ldb_di_sels[ldb_di_sel], 2, 7); |
472 | clk[ldb_di1_div_7] = imx_clk_fixed_factor("ldb_di1_div_7", ldb_di_sels[ldb_di_sel], 1, 7); | 472 | clk[ldb_di1_div_7] = imx_clk_fixed_factor("ldb_di1_div_7", ldb_di_sels[ldb_di_sel], 1, 7); |
473 | clk[ipu1_di0_pre] = imx_clk_divider("ipu1_di0_pre", "ipu1_di0_pre_sel", base + 0x34, 3, 3); | 473 | clk[ipu1_di0_pre] = imx_clk_divider("ipu1_di0_pre", "ipu1_di0_pre_sel", base + 0x34, 3, 3); |
474 | clk[ipu1_di1_pre] = imx_clk_divider("ipu1_di1_pre", "ipu1_di1_pre_sel", base + 0x34, 12, 3); | 474 | clk[ipu1_di1_pre] = imx_clk_divider("ipu1_di1_pre", "ipu1_di1_pre_sel", base + 0x34, 12, 3); |
475 | clk[ipu2_di0_pre] = imx_clk_divider("ipu2_di0_pre", "ipu2_di0_pre_sel", base + 0x38, 3, 3); | 475 | clk[ipu2_di0_pre] = imx_clk_divider("ipu2_di0_pre", "ipu2_di0_pre_sel", base + 0x38, 3, 3); |
476 | clk[ipu2_di1_pre] = imx_clk_divider("ipu2_di1_pre", "ipu2_di1_pre_sel", base + 0x38, 12, 3); | 476 | clk[ipu2_di1_pre] = imx_clk_divider("ipu2_di1_pre", "ipu2_di1_pre_sel", base + 0x38, 12, 3); |
477 | clk[hsi_tx_podf] = imx_clk_divider("hsi_tx_podf", "hsi_tx_sel", base + 0x30, 29, 3); | 477 | clk[hsi_tx_podf] = imx_clk_divider("hsi_tx_podf", "hsi_tx_sel", base + 0x30, 29, 3); |
478 | clk[ssi1_pred] = imx_clk_divider("ssi1_pred", "ssi1_sel", base + 0x28, 6, 3); | 478 | clk[ssi1_pred] = imx_clk_divider("ssi1_pred", "ssi1_sel", base + 0x28, 6, 3); |
479 | clk[ssi1_podf] = imx_clk_divider("ssi1_podf", "ssi1_pred", base + 0x28, 0, 6); | 479 | clk[ssi1_podf] = imx_clk_divider("ssi1_podf", "ssi1_pred", base + 0x28, 0, 6); |
480 | clk[ssi2_pred] = imx_clk_divider("ssi2_pred", "ssi2_sel", base + 0x2c, 6, 3); | 480 | clk[ssi2_pred] = imx_clk_divider("ssi2_pred", "ssi2_sel", base + 0x2c, 6, 3); |
481 | clk[ssi2_podf] = imx_clk_divider("ssi2_podf", "ssi2_pred", base + 0x2c, 0, 6); | 481 | clk[ssi2_podf] = imx_clk_divider("ssi2_podf", "ssi2_pred", base + 0x2c, 0, 6); |
482 | clk[ssi3_pred] = imx_clk_divider("ssi3_pred", "ssi3_sel", base + 0x28, 22, 3); | 482 | clk[ssi3_pred] = imx_clk_divider("ssi3_pred", "ssi3_sel", base + 0x28, 22, 3); |
483 | clk[ssi3_podf] = imx_clk_divider("ssi3_podf", "ssi3_pred", base + 0x28, 16, 6); | 483 | clk[ssi3_podf] = imx_clk_divider("ssi3_podf", "ssi3_pred", base + 0x28, 16, 6); |
484 | clk[uart_serial_podf] = imx_clk_divider("uart_serial_podf", "pll3_80m", base + 0x24, 0, 6); | 484 | clk[uart_serial_podf] = imx_clk_divider("uart_serial_podf", "pll3_80m", base + 0x24, 0, 6); |
485 | clk[usdhc1_podf] = imx_clk_divider("usdhc1_podf", "usdhc1_sel", base + 0x24, 11, 3); | 485 | clk[usdhc1_podf] = imx_clk_divider("usdhc1_podf", "usdhc1_sel", base + 0x24, 11, 3); |
486 | clk[usdhc2_podf] = imx_clk_divider("usdhc2_podf", "usdhc2_sel", base + 0x24, 16, 3); | 486 | clk[usdhc2_podf] = imx_clk_divider("usdhc2_podf", "usdhc2_sel", base + 0x24, 16, 3); |
487 | clk[usdhc3_podf] = imx_clk_divider("usdhc3_podf", "usdhc3_sel", base + 0x24, 19, 3); | 487 | clk[usdhc3_podf] = imx_clk_divider("usdhc3_podf", "usdhc3_sel", base + 0x24, 19, 3); |
488 | clk[usdhc4_podf] = imx_clk_divider("usdhc4_podf", "usdhc4_sel", base + 0x24, 22, 3); | 488 | clk[usdhc4_podf] = imx_clk_divider("usdhc4_podf", "usdhc4_sel", base + 0x24, 22, 3); |
489 | clk[enfc_pred] = imx_clk_divider("enfc_pred", "enfc_sel", base + 0x2c, 18, 3); | 489 | clk[enfc_pred] = imx_clk_divider("enfc_pred", "enfc_sel", base + 0x2c, 18, 3); |
490 | clk[enfc_podf] = imx_clk_divider("enfc_podf", "enfc_pred", base + 0x2c, 21, 6); | 490 | clk[enfc_podf] = imx_clk_divider("enfc_podf", "enfc_pred", base + 0x2c, 21, 6); |
491 | clk[emi_podf] = imx_clk_fixup_divider("emi_podf", "emi_sel", base + 0x1c, 20, 3, imx_cscmr1_fixup); | 491 | clk[emi_podf] = imx_clk_fixup_divider("emi_podf", "emi_sel", base + 0x1c, 20, 3, imx_cscmr1_fixup); |
492 | clk[emi_slow_podf] = imx_clk_fixup_divider("emi_slow_podf", "emi_slow_sel", base + 0x1c, 23, 3, imx_cscmr1_fixup); | 492 | clk[emi_slow_podf] = imx_clk_fixup_divider("emi_slow_podf", "emi_slow_sel", base + 0x1c, 23, 3, imx_cscmr1_fixup); |
493 | clk[vpu_axi_podf] = imx_clk_divider("vpu_axi_podf", "vpu_axi_sel", base + 0x24, 25, 3); | 493 | clk[vpu_axi_podf] = imx_clk_divider("vpu_axi_podf", "vpu_axi_sel", base + 0x24, 25, 3); |
494 | clk[cko1_podf] = imx_clk_divider("cko1_podf", "cko1_sel", base + 0x60, 4, 3); | 494 | clk[cko1_podf] = imx_clk_divider("cko1_podf", "cko1_sel", base + 0x60, 4, 3); |
495 | clk[cko2_podf] = imx_clk_divider("cko2_podf", "cko2_sel", base + 0x60, 21, 3); | 495 | clk[cko2_podf] = imx_clk_divider("cko2_podf", "cko2_sel", base + 0x60, 21, 3); |
496 | 496 | ||
497 | /* name parent_name reg shift width busy: reg, shift */ | 497 | /* name parent_name reg shift width busy: reg, shift */ |
498 | clk[axi] = imx_clk_busy_divider("axi", "axi_sel", base + 0x14, 16, 3, base + 0x48, 0); | 498 | clk[axi] = imx_clk_busy_divider("axi", "axi_sel", base + 0x14, 16, 3, base + 0x48, 0); |
499 | clk[mmdc_ch0_axi_podf] = imx_clk_busy_divider("mmdc_ch0_axi_podf", "periph", base + 0x14, 19, 3, base + 0x48, 4); | 499 | clk[mmdc_ch0_axi_podf] = imx_clk_busy_divider("mmdc_ch0_axi_podf", "periph", base + 0x14, 19, 3, base + 0x48, 4); |
500 | clk[mmdc_ch1_axi_podf] = imx_clk_busy_divider("mmdc_ch1_axi_podf", "periph2", base + 0x14, 3, 3, base + 0x48, 2); | 500 | clk[mmdc_ch1_axi_podf] = imx_clk_busy_divider("mmdc_ch1_axi_podf", "periph2", base + 0x14, 3, 3, base + 0x48, 2); |
501 | clk[arm] = imx_clk_busy_divider("arm", "pll1_sw", base + 0x10, 0, 3, base + 0x48, 16); | 501 | clk[arm] = imx_clk_busy_divider("arm", "pll1_sw", base + 0x10, 0, 3, base + 0x48, 16); |
502 | clk[ahb] = imx_clk_busy_divider("ahb", "periph", base + 0x14, 10, 3, base + 0x48, 1); | 502 | clk[ahb] = imx_clk_busy_divider("ahb", "periph", base + 0x14, 10, 3, base + 0x48, 1); |
503 | 503 | ||
504 | /* name parent_name reg shift */ | 504 | /* name parent_name reg shift */ |
505 | clk[apbh_dma] = imx_clk_gate2("apbh_dma", "usdhc3", base + 0x68, 4); | 505 | clk[apbh_dma] = imx_clk_gate2("apbh_dma", "usdhc3", base + 0x68, 4); |
506 | clk[asrc_gate] = imx_clk_gate2("asrc_gate", "ahb", base + 0x68, 6); | 506 | clk[asrc_gate] = imx_clk_gate2("asrc_gate", "ahb", base + 0x68, 6); |
507 | clk[asrc_ipg] = imx_clk_fixed_factor("asrc_ipg", "asrc_gate", 1, 1); | 507 | clk[asrc_ipg] = imx_clk_fixed_factor("asrc_ipg", "asrc_gate", 1, 1); |
508 | clk[asrc_mem] = imx_clk_fixed_factor("asrc_mem", "asrc_gate", 1, 1); | 508 | clk[asrc_mem] = imx_clk_fixed_factor("asrc_mem", "asrc_gate", 1, 1); |
509 | clk[caam_mem] = imx_clk_gate2("caam_mem", "ahb", base + 0x68, 8); | 509 | clk[caam_mem] = imx_clk_gate2("caam_mem", "ahb", base + 0x68, 8); |
510 | clk[caam_aclk] = imx_clk_gate2("caam_aclk", "ahb", base + 0x68, 10); | 510 | clk[caam_aclk] = imx_clk_gate2("caam_aclk", "ahb", base + 0x68, 10); |
511 | clk[caam_ipg] = imx_clk_gate2("caam_ipg", "ipg", base + 0x68, 12); | 511 | clk[caam_ipg] = imx_clk_gate2("caam_ipg", "ipg", base + 0x68, 12); |
512 | clk[can1_ipg] = imx_clk_gate2("can1_ipg", "ipg", base + 0x68, 14); | 512 | clk[can1_ipg] = imx_clk_gate2("can1_ipg", "ipg", base + 0x68, 14); |
513 | clk[can1_serial] = imx_clk_gate2("can1_serial", "can_root", base + 0x68, 16); | 513 | clk[can1_serial] = imx_clk_gate2("can1_serial", "can_root", base + 0x68, 16); |
514 | clk[can2_ipg] = imx_clk_gate2("can2_ipg", "ipg", base + 0x68, 18); | 514 | clk[can2_ipg] = imx_clk_gate2("can2_ipg", "ipg", base + 0x68, 18); |
515 | clk[can2_serial] = imx_clk_gate2("can2_serial", "can_root", base + 0x68, 20); | 515 | clk[can2_serial] = imx_clk_gate2("can2_serial", "can_root", base + 0x68, 20); |
516 | clk[dcic1] = imx_clk_gate2("dcic1", "ipu1_podf", base + 0x68, 24); | 516 | clk[dcic1] = imx_clk_gate2("dcic1", "ipu1_podf", base + 0x68, 24); |
517 | clk[dcic2] = imx_clk_gate2("dcic2", "ipu2_podf", base + 0x68, 26); | 517 | clk[dcic2] = imx_clk_gate2("dcic2", "ipu2_podf", base + 0x68, 26); |
518 | clk[ecspi1] = imx_clk_gate2("ecspi1", "ecspi_root", base + 0x6c, 0); | 518 | clk[ecspi1] = imx_clk_gate2("ecspi1", "ecspi_root", base + 0x6c, 0); |
519 | clk[ecspi2] = imx_clk_gate2("ecspi2", "ecspi_root", base + 0x6c, 2); | 519 | clk[ecspi2] = imx_clk_gate2("ecspi2", "ecspi_root", base + 0x6c, 2); |
520 | clk[ecspi3] = imx_clk_gate2("ecspi3", "ecspi_root", base + 0x6c, 4); | 520 | clk[ecspi3] = imx_clk_gate2("ecspi3", "ecspi_root", base + 0x6c, 4); |
521 | clk[ecspi4] = imx_clk_gate2("ecspi4", "ecspi_root", base + 0x6c, 6); | 521 | clk[ecspi4] = imx_clk_gate2("ecspi4", "ecspi_root", base + 0x6c, 6); |
522 | if (cpu_is_imx6dl()) | 522 | if (cpu_is_imx6dl()) |
523 | /* ecspi5 is replaced with i2c4 on imx6dl & imx6s */ | 523 | /* ecspi5 is replaced with i2c4 on imx6dl & imx6s */ |
524 | clk[ecspi5] = imx_clk_gate2("i2c4", "ipg_per", base + 0x6c, 8); | 524 | clk[ecspi5] = imx_clk_gate2("i2c4", "ipg_per", base + 0x6c, 8); |
525 | else | 525 | else |
526 | clk[ecspi5] = imx_clk_gate2("ecspi5", "ecspi_root", base + 0x6c, 8); | 526 | clk[ecspi5] = imx_clk_gate2("ecspi5", "ecspi_root", base + 0x6c, 8); |
527 | clk[enet] = imx_clk_gate2("enet", "ipg", base + 0x6c, 10); | 527 | clk[enet] = imx_clk_gate2("enet", "ipg", base + 0x6c, 10); |
528 | clk[epit1] = imx_clk_gate2("epit1", "ipg", base + 0x6c, 12); | 528 | clk[epit1] = imx_clk_gate2("epit1", "ipg", base + 0x6c, 12); |
529 | clk[epit2] = imx_clk_gate2("epit2", "ipg", base + 0x6c, 14); | 529 | clk[epit2] = imx_clk_gate2("epit2", "ipg", base + 0x6c, 14); |
530 | clk[esai_extal] = imx_clk_gate2_shared("esai_extal", "esai_podf", base + 0x6c, 16, &share_count_esai); | 530 | clk[esai_extal] = imx_clk_gate2_shared("esai_extal", "esai_podf", base + 0x6c, 16, &share_count_esai); |
531 | clk[esai_ipg] = imx_clk_gate2_shared("esai_ipg", "ahb", base + 0x6c, 16, &share_count_esai); | 531 | clk[esai_ipg] = imx_clk_gate2_shared("esai_ipg", "ahb", base + 0x6c, 16, &share_count_esai); |
532 | clk[esai_mem] = imx_clk_gate2_shared("esai_mem", "ahb", base + 0x6c, 16, &share_count_esai); | 532 | clk[esai_mem] = imx_clk_gate2_shared("esai_mem", "ahb", base + 0x6c, 16, &share_count_esai); |
533 | clk[gpt_ipg] = imx_clk_gate2("gpt_ipg", "ipg", base + 0x6c, 20); | 533 | clk[gpt_ipg] = imx_clk_gate2("gpt_ipg", "ipg", base + 0x6c, 20); |
534 | clk[gpt_ipg_per] = imx_clk_gate2("gpt_ipg_per", "ipg_per", base + 0x6c, 22); | 534 | clk[gpt_ipg_per] = imx_clk_gate2("gpt_ipg_per", "ipg_per", base + 0x6c, 22); |
535 | if (cpu_is_imx6dl()) | 535 | if (cpu_is_imx6dl()) |
536 | /* | 536 | /* |
537 | * The multiplexer and divider of imx6q clock gpu3d_shader get | 537 | * The multiplexer and divider of imx6q clock gpu3d_shader get |
538 | * redefined/reused as gpu2d_core_sel and gpu2d_core_podf on imx6dl. | 538 | * redefined/reused as gpu2d_core_sel and gpu2d_core_podf on imx6dl. |
539 | */ | 539 | */ |
540 | clk[gpu2d_core] = imx_clk_gate2("gpu2d_core", "gpu3d_shader", base + 0x6c, 24); | 540 | clk[gpu2d_core] = imx_clk_gate2("gpu2d_core", "gpu3d_shader", base + 0x6c, 24); |
541 | else | 541 | else |
542 | clk[gpu2d_core] = imx_clk_gate2("gpu2d_core", "gpu2d_core_podf", base + 0x6c, 24); | 542 | clk[gpu2d_core] = imx_clk_gate2("gpu2d_core", "gpu2d_core_podf", base + 0x6c, 24); |
543 | clk[gpu3d_core] = imx_clk_gate2("gpu3d_core", "gpu3d_core_podf", base + 0x6c, 26); | 543 | clk[gpu3d_core] = imx_clk_gate2("gpu3d_core", "gpu3d_core_podf", base + 0x6c, 26); |
544 | clk[hdmi_iahb] = imx_clk_gate2("hdmi_iahb", "ahb", base + 0x70, 0); | 544 | clk[hdmi_iahb] = imx_clk_gate2("hdmi_iahb", "ahb", base + 0x70, 0); |
545 | clk[hdmi_isfr] = imx_clk_gate2("hdmi_isfr", "pll3_pfd1_540m", base + 0x70, 4); | 545 | clk[hdmi_isfr] = imx_clk_gate2("hdmi_isfr", "pll3_pfd1_540m", base + 0x70, 4); |
546 | clk[i2c1] = imx_clk_gate2("i2c1", "ipg_per", base + 0x70, 6); | 546 | clk[i2c1] = imx_clk_gate2("i2c1", "ipg_per", base + 0x70, 6); |
547 | clk[i2c2] = imx_clk_gate2("i2c2", "ipg_per", base + 0x70, 8); | 547 | clk[i2c2] = imx_clk_gate2("i2c2", "ipg_per", base + 0x70, 8); |
548 | clk[i2c3] = imx_clk_gate2("i2c3", "ipg_per", base + 0x70, 10); | 548 | clk[i2c3] = imx_clk_gate2("i2c3", "ipg_per", base + 0x70, 10); |
549 | clk[iim] = imx_clk_gate2("iim", "ipg", base + 0x70, 12); | 549 | clk[iim] = imx_clk_gate2("iim", "ipg", base + 0x70, 12); |
550 | clk[enfc] = imx_clk_gate2("enfc", "enfc_podf", base + 0x70, 14); | 550 | clk[enfc] = imx_clk_gate2("enfc", "enfc_podf", base + 0x70, 14); |
551 | clk[tzasc2] = imx_clk_gate2("tzasc2", "mmdc_ch0_axi_podf", base + 0x70, 24); | 551 | clk[tzasc2] = imx_clk_gate2("tzasc2", "mmdc_ch0_axi_podf", base + 0x70, 24); |
552 | clk[vdoa] = imx_clk_gate2("vdoa", "vdo_axi", base + 0x70, 26); | 552 | clk[vdoa] = imx_clk_gate2("vdoa", "vdo_axi", base + 0x70, 26); |
553 | clk[ipu1] = imx_clk_gate2("ipu1", "ipu1_podf", base + 0x74, 0); | 553 | clk[ipu1] = imx_clk_gate2("ipu1", "ipu1_podf", base + 0x74, 0); |
554 | clk[ipu1_di0] = imx_clk_gate2("ipu1_di0", "ipu1_di0_sel", base + 0x74, 2); | 554 | clk[ipu1_di0] = imx_clk_gate2("ipu1_di0", "ipu1_di0_sel", base + 0x74, 2); |
555 | clk[ipu1_di1] = imx_clk_gate2("ipu1_di1", "ipu1_di1_sel", base + 0x74, 4); | 555 | clk[ipu1_di1] = imx_clk_gate2("ipu1_di1", "ipu1_di1_sel", base + 0x74, 4); |
556 | clk[ipu2] = imx_clk_gate2("ipu2", "ipu2_podf", base + 0x74, 6); | 556 | clk[ipu2] = imx_clk_gate2("ipu2", "ipu2_podf", base + 0x74, 6); |
557 | clk[ipu2_di0] = imx_clk_gate2("ipu2_di0", "ipu2_di0_sel", base + 0x74, 8); | 557 | clk[ipu2_di0] = imx_clk_gate2("ipu2_di0", "ipu2_di0_sel", base + 0x74, 8); |
558 | clk[ipu2_di1] = imx_clk_gate2("ipu2_di1", "ipu2_di1_sel", base + 0x74, 10); | 558 | clk[ipu2_di1] = imx_clk_gate2("ipu2_di1", "ipu2_di1_sel", base + 0x74, 10); |
559 | clk[ldb_di0] = imx_clk_gate2("ldb_di0", "ldb_di0_div_sel", base + 0x74, 12); | 559 | clk[ldb_di0] = imx_clk_gate2("ldb_di0", "ldb_di0_div_sel", base + 0x74, 12); |
560 | clk[ldb_di1] = imx_clk_gate2("ldb_di1", "ldb_di1_div_sel", base + 0x74, 14); | 560 | clk[ldb_di1] = imx_clk_gate2("ldb_di1", "ldb_di1_div_sel", base + 0x74, 14); |
561 | clk[hsi_tx] = imx_clk_gate2("hsi_tx", "hsi_tx_podf", base + 0x74, 16); | 561 | clk[hsi_tx] = imx_clk_gate2("hsi_tx", "hsi_tx_podf", base + 0x74, 16); |
562 | if (cpu_is_imx6dl()) | 562 | if (cpu_is_imx6dl()) |
563 | /* | 563 | /* |
564 | * The multiplexer and divider of the imx6q clock gpu2d get | 564 | * The multiplexer and divider of the imx6q clock gpu2d get |
565 | * redefined/reused as mlb_sys_sel and mlb_sys_clk_podf on imx6dl. | 565 | * redefined/reused as mlb_sys_sel and mlb_sys_clk_podf on imx6dl. |
566 | */ | 566 | */ |
567 | clk[mlb] = imx_clk_gate2("mlb", "gpu2d_core_podf", base + 0x74, 18); | 567 | clk[mlb] = imx_clk_gate2("mlb", "gpu2d_core_podf", base + 0x74, 18); |
568 | else | 568 | else |
569 | clk[mlb] = imx_clk_gate2("mlb", "axi", base + 0x74, 18); | 569 | clk[mlb] = imx_clk_gate2("mlb", "axi", base + 0x74, 18); |
570 | clk[ocram] = imx_clk_busy_gate("ocram", "ahb", base + 0x74, 28); | 570 | clk[ocram] = imx_clk_busy_gate("ocram", "ahb", base + 0x74, 28); |
571 | clk[openvg_axi] = imx_clk_gate2("openvg_axi", "axi", base + 0x74, 30); | 571 | clk[openvg_axi] = imx_clk_gate2("openvg_axi", "axi", base + 0x74, 30); |
572 | clk[pcie_axi] = imx_clk_gate2("pcie_axi", "pcie_axi_sel", base + 0x78, 0); | 572 | clk[pcie_axi] = imx_clk_gate2("pcie_axi", "pcie_axi_sel", base + 0x78, 0); |
573 | clk[per1_bch] = imx_clk_gate2("per1_bch", "usdhc3", base + 0x78, 12); | 573 | clk[per1_bch] = imx_clk_gate2("per1_bch", "usdhc3", base + 0x78, 12); |
574 | clk[pwm1] = imx_clk_gate2("pwm1", "ipg_per", base + 0x78, 16); | 574 | clk[pwm1] = imx_clk_gate2("pwm1", "ipg_per", base + 0x78, 16); |
575 | clk[pwm2] = imx_clk_gate2("pwm2", "ipg_per", base + 0x78, 18); | 575 | clk[pwm2] = imx_clk_gate2("pwm2", "ipg_per", base + 0x78, 18); |
576 | clk[pwm3] = imx_clk_gate2("pwm3", "ipg_per", base + 0x78, 20); | 576 | clk[pwm3] = imx_clk_gate2("pwm3", "ipg_per", base + 0x78, 20); |
577 | clk[pwm4] = imx_clk_gate2("pwm4", "ipg_per", base + 0x78, 22); | 577 | clk[pwm4] = imx_clk_gate2("pwm4", "ipg_per", base + 0x78, 22); |
578 | clk[gpmi_bch_apb] = imx_clk_gate2("gpmi_bch_apb", "usdhc3", base + 0x78, 24); | 578 | clk[gpmi_bch_apb] = imx_clk_gate2("gpmi_bch_apb", "usdhc3", base + 0x78, 24); |
579 | clk[gpmi_bch] = imx_clk_gate2("gpmi_bch", "usdhc4", base + 0x78, 26); | 579 | clk[gpmi_bch] = imx_clk_gate2("gpmi_bch", "usdhc4", base + 0x78, 26); |
580 | clk[gpmi_io] = imx_clk_gate2("gpmi_io", "enfc", base + 0x78, 28); | 580 | clk[gpmi_io] = imx_clk_gate2("gpmi_io", "enfc", base + 0x78, 28); |
581 | clk[gpmi_apb] = imx_clk_gate2("gpmi_apb", "usdhc3", base + 0x78, 30); | 581 | clk[gpmi_apb] = imx_clk_gate2("gpmi_apb", "usdhc3", base + 0x78, 30); |
582 | clk[rom] = imx_clk_gate2("rom", "ahb", base + 0x7c, 0); | 582 | clk[rom] = imx_clk_gate2("rom", "ahb", base + 0x7c, 0); |
583 | clk[sata] = imx_clk_gate2("sata", "ipg", base + 0x7c, 4); | 583 | clk[sata] = imx_clk_gate2("sata", "ipg", base + 0x7c, 4); |
584 | clk[sdma] = imx_clk_gate2("sdma", "ahb", base + 0x7c, 6); | 584 | clk[sdma] = imx_clk_gate2("sdma", "ahb", base + 0x7c, 6); |
585 | clk[spba] = imx_clk_gate2("spba", "ipg", base + 0x7c, 12); | 585 | clk[spba] = imx_clk_gate2("spba", "ipg", base + 0x7c, 12); |
586 | clk[spdif] = imx_clk_gate2("spdif", "spdif_podf", base + 0x7c, 14); | 586 | clk[spdif] = imx_clk_gate2("spdif", "spdif_podf", base + 0x7c, 14); |
587 | clk[ssi1_ipg] = imx_clk_gate2_shared("ssi1_ipg", "ipg", base + 0x7c, 18, &share_count_ssi1); | 587 | clk[ssi1_ipg] = imx_clk_gate2_shared("ssi1_ipg", "ipg", base + 0x7c, 18, &share_count_ssi1); |
588 | clk[ssi2_ipg] = imx_clk_gate2_shared("ssi2_ipg", "ipg", base + 0x7c, 20, &share_count_ssi2); | 588 | clk[ssi2_ipg] = imx_clk_gate2_shared("ssi2_ipg", "ipg", base + 0x7c, 20, &share_count_ssi2); |
589 | clk[ssi3_ipg] = imx_clk_gate2_shared("ssi3_ipg", "ipg", base + 0x7c, 22, &share_count_ssi3); | 589 | clk[ssi3_ipg] = imx_clk_gate2_shared("ssi3_ipg", "ipg", base + 0x7c, 22, &share_count_ssi3); |
590 | clk[ssi1] = imx_clk_gate2_shared("ssi1", "ssi1_podf", base + 0x7c, 18, &share_count_ssi1); | 590 | clk[ssi1] = imx_clk_gate2_shared("ssi1", "ssi1_podf", base + 0x7c, 18, &share_count_ssi1); |
591 | clk[ssi2] = imx_clk_gate2_shared("ssi2", "ssi2_podf", base + 0x7c, 20, &share_count_ssi2); | 591 | clk[ssi2] = imx_clk_gate2_shared("ssi2", "ssi2_podf", base + 0x7c, 20, &share_count_ssi2); |
592 | clk[ssi3] = imx_clk_gate2_shared("ssi3", "ssi3_podf", base + 0x7c, 22, &share_count_ssi3); | 592 | clk[ssi3] = imx_clk_gate2_shared("ssi3", "ssi3_podf", base + 0x7c, 22, &share_count_ssi3); |
593 | clk[uart_ipg] = imx_clk_gate2("uart_ipg", "ipg", base + 0x7c, 24); | 593 | clk[uart_ipg] = imx_clk_gate2("uart_ipg", "ipg", base + 0x7c, 24); |
594 | clk[uart_serial] = imx_clk_gate2("uart_serial", "uart_serial_podf", base + 0x7c, 26); | 594 | clk[uart_serial] = imx_clk_gate2("uart_serial", "uart_serial_podf", base + 0x7c, 26); |
595 | clk[usboh3] = imx_clk_gate2("usboh3", "ipg", base + 0x80, 0); | 595 | clk[usboh3] = imx_clk_gate2("usboh3", "ipg", base + 0x80, 0); |
596 | clk[usdhc1] = imx_clk_gate2("usdhc1", "usdhc1_podf", base + 0x80, 2); | 596 | clk[usdhc1] = imx_clk_gate2("usdhc1", "usdhc1_podf", base + 0x80, 2); |
597 | clk[usdhc2] = imx_clk_gate2("usdhc2", "usdhc2_podf", base + 0x80, 4); | 597 | clk[usdhc2] = imx_clk_gate2("usdhc2", "usdhc2_podf", base + 0x80, 4); |
598 | clk[usdhc3] = imx_clk_gate2("usdhc3", "usdhc3_podf", base + 0x80, 6); | 598 | clk[usdhc3] = imx_clk_gate2("usdhc3", "usdhc3_podf", base + 0x80, 6); |
599 | clk[usdhc4] = imx_clk_gate2("usdhc4", "usdhc4_podf", base + 0x80, 8); | 599 | clk[usdhc4] = imx_clk_gate2("usdhc4", "usdhc4_podf", base + 0x80, 8); |
600 | clk[eim_slow] = imx_clk_gate2("eim_slow", "emi_slow_podf", base + 0x80, 10); | 600 | clk[eim_slow] = imx_clk_gate2("eim_slow", "emi_slow_podf", base + 0x80, 10); |
601 | clk[vdo_axi] = imx_clk_gate2("vdo_axi", "vdo_axi_sel", base + 0x80, 12); | 601 | clk[vdo_axi] = imx_clk_gate2("vdo_axi", "vdo_axi_sel", base + 0x80, 12); |
602 | clk[vpu_axi] = imx_clk_gate2("vpu_axi", "vpu_axi_podf", base + 0x80, 14); | 602 | clk[vpu_axi] = imx_clk_gate2("vpu_axi", "vpu_axi_podf", base + 0x80, 14); |
603 | clk[cko1] = imx_clk_gate("cko1", "cko1_podf", base + 0x60, 7); | 603 | clk[cko1] = imx_clk_gate("cko1", "cko1_podf", base + 0x60, 7); |
604 | clk[cko2] = imx_clk_gate("cko2", "cko2_podf", base + 0x60, 24); | 604 | clk[cko2] = imx_clk_gate("cko2", "cko2_podf", base + 0x60, 24); |
605 | 605 | ||
606 | /* | 606 | /* |
607 | * These two clocks (mmdc_ch0_axi and mmdc_ch1_axi) were incorrectly | 607 | * These two clocks (mmdc_ch0_axi and mmdc_ch1_axi) were incorrectly |
608 | * implemented as gate at the beginning. To fix them with the minimized | 608 | * implemented as gate at the beginning. To fix them with the minimized |
609 | * impact, let's point them to their dividers. | 609 | * impact, let's point them to their dividers. |
610 | */ | 610 | */ |
611 | clk[mmdc_ch0_axi] = clk[mmdc_ch0_axi_podf]; | 611 | clk[mmdc_ch0_axi] = clk[mmdc_ch0_axi_podf]; |
612 | clk[mmdc_ch1_axi] = clk[mmdc_ch1_axi_podf]; | 612 | clk[mmdc_ch1_axi] = clk[mmdc_ch1_axi_podf]; |
613 | 613 | ||
614 | for (i = 0; i < ARRAY_SIZE(clk); i++) | 614 | for (i = 0; i < ARRAY_SIZE(clk); i++) |
615 | if (IS_ERR(clk[i])) | 615 | if (IS_ERR(clk[i])) |
616 | pr_err("i.MX6q clk %d: register failed with %ld\n", | 616 | pr_err("i.MX6q clk %d: register failed with %ld\n", |
617 | i, PTR_ERR(clk[i])); | 617 | i, PTR_ERR(clk[i])); |
618 | 618 | ||
619 | /* Initialize clock gate status */ | 619 | /* Initialize clock gate status */ |
620 | writel_relaxed(1 << CCM_CCGR_OFFSET(11) | | 620 | writel_relaxed(1 << CCM_CCGR_OFFSET(11) | |
621 | 3 << CCM_CCGR_OFFSET(1) | | 621 | 3 << CCM_CCGR_OFFSET(1) | |
622 | 3 << CCM_CCGR_OFFSET(0), base + 0x68); | 622 | 3 << CCM_CCGR_OFFSET(0), base + 0x68); |
623 | if (cpu_is_imx6q() && imx_get_soc_revision() == IMX_CHIP_REVISION_1_0) | 623 | if (cpu_is_imx6q() && imx_get_soc_revision() == IMX_CHIP_REVISION_1_0) |
624 | writel_relaxed(3 << CCM_CCGR_OFFSET(11) | | 624 | writel_relaxed(3 << CCM_CCGR_OFFSET(11) | |
625 | 3 << CCM_CCGR_OFFSET(10), base + 0x6c); | 625 | 3 << CCM_CCGR_OFFSET(10), base + 0x6c); |
626 | else | 626 | else |
627 | writel_relaxed(3 << CCM_CCGR_OFFSET(10), base + 0x6c); | 627 | writel_relaxed(3 << CCM_CCGR_OFFSET(10), base + 0x6c); |
628 | writel_relaxed(1 << CCM_CCGR_OFFSET(12) | | 628 | writel_relaxed(1 << CCM_CCGR_OFFSET(12) | |
629 | 3 << CCM_CCGR_OFFSET(11) | | 629 | 3 << CCM_CCGR_OFFSET(11) | |
630 | 3 << CCM_CCGR_OFFSET(10) | | 630 | 3 << CCM_CCGR_OFFSET(10) | |
631 | 3 << CCM_CCGR_OFFSET(9) | | 631 | 3 << CCM_CCGR_OFFSET(9) | |
632 | 3 << CCM_CCGR_OFFSET(8), base + 0x70); | 632 | 3 << CCM_CCGR_OFFSET(8), base + 0x70); |
633 | writel_relaxed(1 << CCM_CCGR_OFFSET(13) | | 633 | writel_relaxed(1 << CCM_CCGR_OFFSET(13) | |
634 | 3 << CCM_CCGR_OFFSET(12) | | 634 | 3 << CCM_CCGR_OFFSET(12) | |
635 | 1 << CCM_CCGR_OFFSET(11) | | 635 | 1 << CCM_CCGR_OFFSET(11) | |
636 | 3 << CCM_CCGR_OFFSET(10), base + 0x74); | 636 | 3 << CCM_CCGR_OFFSET(10), base + 0x74); |
637 | writel_relaxed(3 << CCM_CCGR_OFFSET(7) | | 637 | writel_relaxed(3 << CCM_CCGR_OFFSET(7) | |
638 | 3 << CCM_CCGR_OFFSET(6) | | 638 | 3 << CCM_CCGR_OFFSET(6) | |
639 | 3 << CCM_CCGR_OFFSET(4), base + 0x78); | 639 | 3 << CCM_CCGR_OFFSET(4), base + 0x78); |
640 | writel_relaxed(1 << CCM_CCGR_OFFSET(0), base + 0x7c); | 640 | writel_relaxed(1 << CCM_CCGR_OFFSET(0), base + 0x7c); |
641 | writel_relaxed(0, base + 0x80); | 641 | writel_relaxed(0, base + 0x80); |
642 | 642 | ||
643 | /* Make sure PFDs are disabled at boot. */ | 643 | /* Make sure PFDs are disabled at boot. */ |
644 | reg = readl_relaxed(anatop_base + 0x100); | 644 | reg = readl_relaxed(anatop_base + 0x100); |
645 | /* Cannot disable pll2_pfd2_396M, as it is the MMDC clock in iMX6DL */ | 645 | /* Cannot disable pll2_pfd2_396M, as it is the MMDC clock in iMX6DL */ |
646 | if (cpu_is_imx6dl()) | 646 | if (cpu_is_imx6dl()) |
647 | reg |= 0x80008080; | 647 | reg |= 0x80008080; |
648 | else | 648 | else |
649 | reg |= 0x80808080; | 649 | reg |= 0x80808080; |
650 | writel_relaxed(reg, anatop_base + 0x100); | 650 | writel_relaxed(reg, anatop_base + 0x100); |
651 | 651 | ||
652 | /* Disable PLL3 PFDs. */ | 652 | /* Disable PLL3 PFDs. */ |
653 | reg = readl_relaxed(anatop_base + 0xF0); | 653 | reg = readl_relaxed(anatop_base + 0xF0); |
654 | reg |= 0x80808080; | 654 | reg |= 0x80808080; |
655 | writel_relaxed(reg, anatop_base + 0xF0); | 655 | writel_relaxed(reg, anatop_base + 0xF0); |
656 | 656 | ||
657 | /* Make sure PLLs is disabled */ | 657 | /* Make sure PLLs is disabled */ |
658 | reg = readl_relaxed(anatop_base + 0xA0); | 658 | reg = readl_relaxed(anatop_base + 0xA0); |
659 | reg &= ~(1 << 13); | 659 | reg &= ~(1 << 13); |
660 | writel_relaxed(reg, anatop_base + 0xA0); | 660 | writel_relaxed(reg, anatop_base + 0xA0); |
661 | 661 | ||
662 | clk_data.clks = clk; | 662 | clk_data.clks = clk; |
663 | clk_data.clk_num = ARRAY_SIZE(clk); | 663 | clk_data.clk_num = ARRAY_SIZE(clk); |
664 | of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data); | 664 | of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data); |
665 | 665 | ||
666 | clk_register_clkdev(clk[gpt_ipg], "ipg", "imx-gpt.0"); | 666 | clk_register_clkdev(clk[gpt_ipg], "ipg", "imx-gpt.0"); |
667 | clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0"); | 667 | clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0"); |
668 | clk_register_clkdev(clk[gpt_3m], "gpt_3m", "imx-gpt.0"); | 668 | clk_register_clkdev(clk[gpt_3m], "gpt_3m", "imx-gpt.0"); |
669 | clk_register_clkdev(clk[cko1_sel], "cko1_sel", NULL); | 669 | clk_register_clkdev(clk[cko1_sel], "cko1_sel", NULL); |
670 | clk_register_clkdev(clk[ahb], "ahb", NULL); | 670 | clk_register_clkdev(clk[ahb], "ahb", NULL); |
671 | clk_register_clkdev(clk[cko1], "cko1", NULL); | 671 | clk_register_clkdev(clk[cko1], "cko1", NULL); |
672 | clk_register_clkdev(clk[arm], NULL, "cpu0"); | 672 | clk_register_clkdev(clk[arm], NULL, "cpu0"); |
673 | clk_register_clkdev(clk[pll4_audio_div], "pll4_audio_div", NULL); | 673 | clk_register_clkdev(clk[pll4_audio_div], "pll4_audio_div", NULL); |
674 | clk_register_clkdev(clk[pll4_sel], "pll4_sel", NULL); | 674 | clk_register_clkdev(clk[pll4_sel], "pll4_sel", NULL); |
675 | clk_register_clkdev(clk[lvds2_in], "lvds2_in", NULL); | 675 | clk_register_clkdev(clk[lvds2_in], "lvds2_in", NULL); |
676 | clk_register_clkdev(clk[esai_extal], "esai_extal", NULL); | 676 | clk_register_clkdev(clk[esai_extal], "esai_extal", NULL); |
677 | 677 | ||
678 | /* | 678 | /* |
679 | * The gpmi needs 100MHz frequency in the EDO/Sync mode, | 679 | * The gpmi needs 100MHz frequency in the EDO/Sync mode, |
680 | * We can not get the 100MHz from the pll2_pfd0_352m. | 680 | * We can not get the 100MHz from the pll2_pfd0_352m. |
681 | * So choose pll2_pfd2_396m as enfc_sel's parent. | 681 | * So choose pll2_pfd2_396m as enfc_sel's parent. |
682 | */ | 682 | */ |
683 | imx_clk_set_parent(clk[enfc_sel], clk[pll2_pfd2_396m]); | 683 | imx_clk_set_parent(clk[enfc_sel], clk[pll2_pfd2_396m]); |
684 | 684 | ||
685 | /* Set the parent clks of PCIe lvds1 and pcie_axi to be sata ref, axi */ | 685 | /* Set the parent clks of PCIe lvds1 and pcie_axi to be sata ref, axi */ |
686 | imx_clk_set_parent(clk[lvds1_sel], clk[sata_ref]); | 686 | imx_clk_set_parent(clk[lvds1_sel], clk[sata_ref]); |
687 | imx_clk_set_parent(clk[pcie_axi_sel], clk[axi]); | 687 | imx_clk_set_parent(clk[pcie_axi_sel], clk[axi]); |
688 | 688 | ||
689 | /* gpu clock initilazation */ | 689 | /* gpu clock initilazation */ |
690 | /* | 690 | /* |
691 | * On mx6dl, 2d core clock sources(sel, podf) is from 3d | 691 | * On mx6dl, 2d core clock sources(sel, podf) is from 3d |
692 | * shader core clock, but 3d shader clock multiplexer of | 692 | * shader core clock, but 3d shader clock multiplexer of |
693 | * mx6dl is different. For instance the equivalent of | 693 | * mx6dl is different. For instance the equivalent of |
694 | * pll2_pfd_594M on mx6q is pll2_pfd_528M on mx6dl. | 694 | * pll2_pfd_594M on mx6q is pll2_pfd_528M on mx6dl. |
695 | * Make a note here. | 695 | * Make a note here. |
696 | */ | 696 | */ |
697 | imx_clk_set_parent(clk[gpu3d_shader_sel], clk[pll2_pfd1_594m]); | 697 | imx_clk_set_parent(clk[gpu3d_shader_sel], clk[pll2_pfd1_594m]); |
698 | if (cpu_is_imx6dl()) { | 698 | if (cpu_is_imx6dl()) { |
699 | imx_clk_set_rate(clk[gpu2d_core], 528000000); | 699 | imx_clk_set_rate(clk[gpu2d_core], 528000000); |
700 | /* for mx6dl, change gpu3d_core parent to 594_PFD*/ | 700 | /* for mx6dl, change gpu3d_core parent to 594_PFD*/ |
701 | imx_clk_set_parent(clk[gpu3d_core_sel], clk[pll2_pfd1_594m]); | 701 | imx_clk_set_parent(clk[gpu3d_core_sel], clk[pll2_pfd1_594m]); |
702 | imx_clk_set_rate(clk[gpu3d_core], 528000000); | 702 | imx_clk_set_rate(clk[gpu3d_core], 528000000); |
703 | } else if (cpu_is_imx6q()) { | 703 | } else if (cpu_is_imx6q()) { |
704 | imx_clk_set_rate(clk[gpu3d_shader], 594000000); | 704 | imx_clk_set_rate(clk[gpu3d_shader], 594000000); |
705 | imx_clk_set_parent(clk[gpu3d_core_sel], clk[mmdc_ch0_axi]); | 705 | imx_clk_set_parent(clk[gpu3d_core_sel], clk[mmdc_ch0_axi]); |
706 | imx_clk_set_rate(clk[gpu3d_core], 528000000); | 706 | imx_clk_set_rate(clk[gpu3d_core], 528000000); |
707 | imx_clk_set_parent(clk[gpu2d_core_sel], clk[pll3_usb_otg]); | 707 | imx_clk_set_parent(clk[gpu2d_core_sel], clk[pll3_usb_otg]); |
708 | } | 708 | } |
709 | 709 | ||
710 | 710 | ||
711 | 711 | ||
712 | /* ipu clock initialization */ | 712 | /* ipu clock initialization */ |
713 | init_ldb_clks(); | 713 | init_ldb_clks(); |
714 | imx_clk_set_parent(clk[ldb_di0_sel], clk[pll5_video_div]); | ||
715 | imx_clk_set_parent(clk[ldb_di1_sel], clk[pll5_video_div]); | ||
714 | imx_clk_set_parent(clk[ipu1_di0_pre_sel], clk[pll5_video_div]); | 716 | imx_clk_set_parent(clk[ipu1_di0_pre_sel], clk[pll5_video_div]); |
715 | imx_clk_set_parent(clk[ipu1_di1_pre_sel], clk[pll5_video_div]); | 717 | imx_clk_set_parent(clk[ipu1_di1_pre_sel], clk[pll5_video_div]); |
716 | imx_clk_set_parent(clk[ipu2_di0_pre_sel], clk[pll5_video_div]); | 718 | imx_clk_set_parent(clk[ipu2_di0_pre_sel], clk[pll5_video_div]); |
717 | imx_clk_set_parent(clk[ipu2_di1_pre_sel], clk[pll5_video_div]); | 719 | imx_clk_set_parent(clk[ipu2_di1_pre_sel], clk[pll5_video_div]); |
718 | imx_clk_set_parent(clk[ipu1_di0_sel], clk[ipu1_di0_pre]); | 720 | imx_clk_set_parent(clk[ipu1_di0_sel], clk[ipu1_di0_pre]); |
719 | imx_clk_set_parent(clk[ipu1_di1_sel], clk[ipu1_di1_pre]); | 721 | imx_clk_set_parent(clk[ipu1_di1_sel], clk[ipu1_di1_pre]); |
720 | imx_clk_set_parent(clk[ipu2_di0_sel], clk[ipu2_di0_pre]); | 722 | imx_clk_set_parent(clk[ipu2_di0_sel], clk[ipu2_di0_pre]); |
721 | imx_clk_set_parent(clk[ipu2_di1_sel], clk[ipu2_di1_pre]); | 723 | imx_clk_set_parent(clk[ipu2_di1_sel], clk[ipu2_di1_pre]); |
722 | if (cpu_is_imx6dl()) { | 724 | if (cpu_is_imx6dl()) { |
723 | imx_clk_set_rate(clk[pll3_pfd1_540m], 540000000); | 725 | imx_clk_set_rate(clk[pll3_pfd1_540m], 540000000); |
724 | imx_clk_set_parent(clk[ipu1_sel], clk[pll3_pfd1_540m]); | 726 | imx_clk_set_parent(clk[ipu1_sel], clk[pll3_pfd1_540m]); |
725 | imx_clk_set_parent(clk[axi_alt_sel], clk[pll3_pfd1_540m]); | 727 | imx_clk_set_parent(clk[axi_alt_sel], clk[pll3_pfd1_540m]); |
726 | imx_clk_set_parent(clk[axi_sel], clk[axi_alt_sel]); | 728 | imx_clk_set_parent(clk[axi_sel], clk[axi_alt_sel]); |
727 | /* set epdc/pxp axi clock to 200Mhz */ | 729 | /* set epdc/pxp axi clock to 200Mhz */ |
728 | imx_clk_set_parent(clk[ipu2_sel], clk[pll2_pfd2_396m]); | 730 | imx_clk_set_parent(clk[ipu2_sel], clk[pll2_pfd2_396m]); |
729 | imx_clk_set_rate(clk[ipu2], 200000000); | 731 | imx_clk_set_rate(clk[ipu2], 200000000); |
730 | } else if (cpu_is_imx6q()) { | 732 | } else if (cpu_is_imx6q()) { |
731 | imx_clk_set_parent(clk[ipu1_sel], clk[mmdc_ch0_axi]); | 733 | imx_clk_set_parent(clk[ipu1_sel], clk[mmdc_ch0_axi]); |
732 | imx_clk_set_parent(clk[ipu2_sel], clk[mmdc_ch0_axi]); | 734 | imx_clk_set_parent(clk[ipu2_sel], clk[mmdc_ch0_axi]); |
733 | } | 735 | } |
734 | 736 | ||
735 | /* | 737 | /* |
736 | * Let's initially set up CLKO with OSC24M, since this configuration | 738 | * Let's initially set up CLKO with OSC24M, since this configuration |
737 | * is widely used by imx6q board designs to clock audio codec. | 739 | * is widely used by imx6q board designs to clock audio codec. |
738 | */ | 740 | */ |
739 | imx_clk_set_parent(clk[cko2_sel], clk[osc]); | 741 | imx_clk_set_parent(clk[cko2_sel], clk[osc]); |
740 | imx_clk_set_parent(clk[cko], clk[cko2]); | 742 | imx_clk_set_parent(clk[cko], clk[cko2]); |
741 | 743 | ||
742 | /* Audio clocks */ | 744 | /* Audio clocks */ |
743 | imx_clk_set_parent(clk[ssi1_sel], clk[pll4_audio_div]); | 745 | imx_clk_set_parent(clk[ssi1_sel], clk[pll4_audio_div]); |
744 | imx_clk_set_parent(clk[ssi2_sel], clk[pll4_audio_div]); | 746 | imx_clk_set_parent(clk[ssi2_sel], clk[pll4_audio_div]); |
745 | imx_clk_set_parent(clk[ssi3_sel], clk[pll4_audio_div]); | 747 | imx_clk_set_parent(clk[ssi3_sel], clk[pll4_audio_div]); |
746 | imx_clk_set_parent(clk[esai_sel], clk[pll4_audio_div]); | 748 | imx_clk_set_parent(clk[esai_sel], clk[pll4_audio_div]); |
747 | imx_clk_set_parent(clk[spdif_sel], clk[pll3_pfd3_454m]); | 749 | imx_clk_set_parent(clk[spdif_sel], clk[pll3_pfd3_454m]); |
748 | imx_clk_set_rate(clk[spdif_podf], 227368421); | 750 | imx_clk_set_rate(clk[spdif_podf], 227368421); |
749 | imx_clk_set_parent(clk[spdif1_sel], clk[pll3_usb_otg]); | 751 | imx_clk_set_parent(clk[spdif1_sel], clk[pll3_usb_otg]); |
750 | imx_clk_set_rate(clk[spdif1_sel], 7500000); | 752 | imx_clk_set_rate(clk[spdif1_sel], 7500000); |
751 | 753 | ||
752 | /* Set pll4_audio to a value that can derive 5K-88.2KHz and 8K-96KHz */ | 754 | /* Set pll4_audio to a value that can derive 5K-88.2KHz and 8K-96KHz */ |
753 | imx_clk_set_rate(clk[pll4_audio_div], 541900800); | 755 | imx_clk_set_rate(clk[pll4_audio_div], 541900800); |
754 | 756 | ||
755 | #ifdef CONFIG_MX6_VPU_352M | 757 | #ifdef CONFIG_MX6_VPU_352M |
756 | /* | 758 | /* |
757 | * If VPU 352M is enabled, then PLL2_PDF2 need to be | 759 | * If VPU 352M is enabled, then PLL2_PDF2 need to be |
758 | * set to 352M, cpufreq will be disabled as VDDSOC/PU | 760 | * set to 352M, cpufreq will be disabled as VDDSOC/PU |
759 | * need to be at highest voltage, scaling cpu freq is | 761 | * need to be at highest voltage, scaling cpu freq is |
760 | * not saving any power, and busfreq will be also disabled | 762 | * not saving any power, and busfreq will be also disabled |
761 | * as the PLL2_PFD2 is not at default freq, in a word, | 763 | * as the PLL2_PFD2 is not at default freq, in a word, |
762 | * all modules that sourceing clk from PLL2_PFD2 will | 764 | * all modules that sourceing clk from PLL2_PFD2 will |
763 | * be impacted. | 765 | * be impacted. |
764 | */ | 766 | */ |
765 | imx_clk_set_rate(clk[pll2_pfd2_396m], 352000000); | 767 | imx_clk_set_rate(clk[pll2_pfd2_396m], 352000000); |
766 | imx_clk_set_parent(clk[vpu_axi_sel], clk[pll2_pfd2_396m]); | 768 | imx_clk_set_parent(clk[vpu_axi_sel], clk[pll2_pfd2_396m]); |
767 | pr_info("VPU 352M is enabled!\n"); | 769 | pr_info("VPU 352M is enabled!\n"); |
768 | #endif | 770 | #endif |
769 | 771 | ||
770 | /* | 772 | /* |
771 | * Enable clocks only after both parent and rate are all initialized | 773 | * Enable clocks only after both parent and rate are all initialized |
772 | * as needed | 774 | * as needed |
773 | */ | 775 | */ |
774 | for (i = 0; i < ARRAY_SIZE(clks_init_on); i++) | 776 | for (i = 0; i < ARRAY_SIZE(clks_init_on); i++) |
775 | imx_clk_prepare_enable(clk[clks_init_on[i]]); | 777 | imx_clk_prepare_enable(clk[clks_init_on[i]]); |
776 | 778 | ||
777 | if (IS_ENABLED(CONFIG_USB_MXS_PHY)) { | 779 | if (IS_ENABLED(CONFIG_USB_MXS_PHY)) { |
778 | imx_clk_prepare_enable(clk[usbphy1_gate]); | 780 | imx_clk_prepare_enable(clk[usbphy1_gate]); |
779 | imx_clk_prepare_enable(clk[usbphy2_gate]); | 781 | imx_clk_prepare_enable(clk[usbphy2_gate]); |
780 | } | 782 | } |
781 | 783 | ||
782 | /* Set initial power mode */ | 784 | /* Set initial power mode */ |
783 | imx6_set_lpm(WAIT_CLOCKED); | 785 | imx6_set_lpm(WAIT_CLOCKED); |
784 | 786 | ||
785 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-gpt"); | 787 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-gpt"); |
786 | base = of_iomap(np, 0); | 788 | base = of_iomap(np, 0); |
787 | WARN_ON(!base); | 789 | WARN_ON(!base); |
788 | irq = irq_of_parse_and_map(np, 0); | 790 | irq = irq_of_parse_and_map(np, 0); |
789 | mxc_timer_init(base, irq); | 791 | mxc_timer_init(base, irq); |
790 | } | 792 | } |
791 | CLK_OF_DECLARE(imx6q, "fsl,imx6q-ccm", imx6q_clocks_init); | 793 | CLK_OF_DECLARE(imx6q, "fsl,imx6q-ccm", imx6q_clocks_init); |
792 | 794 |
drivers/pci/host/pci-imx6.c
1 | /* | 1 | /* |
2 | * PCIe host controller driver for Freescale i.MX6 SoCs | 2 | * PCIe host controller driver for Freescale i.MX6 SoCs |
3 | * | 3 | * |
4 | * Copyright (C) 2014 Freescale Semiconductor, Inc. All Rights Reserved. | 4 | * Copyright (C) 2014 Freescale Semiconductor, Inc. All Rights Reserved. |
5 | * Copyright (C) 2013 Kosagi | 5 | * Copyright (C) 2013 Kosagi |
6 | * http://www.kosagi.com | 6 | * http://www.kosagi.com |
7 | * | 7 | * |
8 | * Author: Sean Cross <xobs@kosagi.com> | 8 | * Author: Sean Cross <xobs@kosagi.com> |
9 | * | 9 | * |
10 | * This program is free software; you can redistribute it and/or modify | 10 | * This program is free software; you can redistribute it and/or modify |
11 | * it under the terms of the GNU General Public License version 2 as | 11 | * it under the terms of the GNU General Public License version 2 as |
12 | * published by the Free Software Foundation. | 12 | * published by the Free Software Foundation. |
13 | */ | 13 | */ |
14 | 14 | ||
15 | #include <linux/clk.h> | 15 | #include <linux/clk.h> |
16 | #include <linux/delay.h> | 16 | #include <linux/delay.h> |
17 | #include <linux/gpio.h> | 17 | #include <linux/gpio.h> |
18 | #include <linux/interrupt.h> | 18 | #include <linux/interrupt.h> |
19 | #include <linux/kernel.h> | 19 | #include <linux/kernel.h> |
20 | #include <linux/mfd/syscon.h> | 20 | #include <linux/mfd/syscon.h> |
21 | #include <linux/mfd/syscon/imx6q-iomuxc-gpr.h> | 21 | #include <linux/mfd/syscon/imx6q-iomuxc-gpr.h> |
22 | #include <linux/module.h> | 22 | #include <linux/module.h> |
23 | #include <linux/of_gpio.h> | 23 | #include <linux/of_gpio.h> |
24 | #include <linux/of_device.h> | 24 | #include <linux/of_device.h> |
25 | #include <linux/of_address.h> | 25 | #include <linux/of_address.h> |
26 | #include <linux/pci.h> | 26 | #include <linux/pci.h> |
27 | #include <linux/platform_device.h> | 27 | #include <linux/platform_device.h> |
28 | #include <linux/regmap.h> | 28 | #include <linux/regmap.h> |
29 | #include <linux/resource.h> | 29 | #include <linux/resource.h> |
30 | #include <linux/signal.h> | 30 | #include <linux/signal.h> |
31 | #include <linux/types.h> | 31 | #include <linux/types.h> |
32 | #include <linux/busfreq-imx6.h> | 32 | #include <linux/busfreq-imx6.h> |
33 | #include <linux/regulator/consumer.h> | 33 | #include <linux/regulator/consumer.h> |
34 | 34 | ||
35 | #include "pcie-designware.h" | 35 | #include "pcie-designware.h" |
36 | 36 | ||
37 | #define to_imx6_pcie(x) container_of(x, struct imx6_pcie, pp) | 37 | #define to_imx6_pcie(x) container_of(x, struct imx6_pcie, pp) |
38 | 38 | ||
39 | /* | 39 | /* |
40 | * The default value of the reserved ddr memory | 40 | * The default value of the reserved ddr memory |
41 | * used to verify EP/RC memory space access operations. | 41 | * used to verify EP/RC memory space access operations. |
42 | * The layout of the 1G ddr on SD boards | 42 | * The layout of the 1G ddr on SD boards |
43 | * [others]0x1000_0000 ~ 0x4FFF_FFFF | 43 | * [others]0x1000_0000 ~ 0x4FFF_FFFF |
44 | * [imx6sx]0x8000_0000 ~ 0xBFFF_FFFF | 44 | * [imx6sx]0x8000_0000 ~ 0xBFFF_FFFF |
45 | * | 45 | * |
46 | */ | 46 | */ |
47 | static u32 ddr_test_region = 0x40000000; | 47 | static u32 ddr_test_region = 0x40000000; |
48 | static u32 test_region_size = SZ_2M; | 48 | static u32 test_region_size = SZ_2M; |
49 | 49 | ||
50 | /* The pcie who have standalone power domain */ | 50 | /* The pcie who have standalone power domain */ |
51 | #define PCIE_PHY_HAS_PWR_DOMAIN BIT(0) | 51 | #define PCIE_PHY_HAS_PWR_DOMAIN BIT(0) |
52 | 52 | ||
53 | struct imx_pcie_data { | 53 | struct imx_pcie_data { |
54 | unsigned int flags; | 54 | unsigned int flags; |
55 | }; | 55 | }; |
56 | 56 | ||
57 | static const struct imx_pcie_data imx6sx_pcie_data = { | 57 | static const struct imx_pcie_data imx6sx_pcie_data = { |
58 | .flags = PCIE_PHY_HAS_PWR_DOMAIN, | 58 | .flags = PCIE_PHY_HAS_PWR_DOMAIN, |
59 | }; | 59 | }; |
60 | 60 | ||
61 | struct imx6_pcie { | 61 | struct imx6_pcie { |
62 | int reset_gpio; | 62 | int reset_gpio; |
63 | int power_on_gpio; | 63 | int power_on_gpio; |
64 | int wake_up_gpio; | 64 | int wake_up_gpio; |
65 | int disable_gpio; | 65 | int disable_gpio; |
66 | const struct imx_pcie_data *data; | 66 | const struct imx_pcie_data *data; |
67 | struct clk *lvds_gate; | 67 | struct clk *lvds_gate; |
68 | struct clk *sata_ref_100m; | 68 | struct clk *sata_ref_100m; |
69 | struct clk *pcie_ref_125m; | 69 | struct clk *pcie_ref_125m; |
70 | struct clk *pcie_axi; | 70 | struct clk *pcie_axi; |
71 | struct clk *dis_axi; | 71 | struct clk *dis_axi; |
72 | struct pcie_port pp; | 72 | struct pcie_port pp; |
73 | struct regmap *iomuxc_gpr; | 73 | struct regmap *iomuxc_gpr; |
74 | struct regulator *pcie_reg; | 74 | struct regulator *pcie_reg; |
75 | struct regulator *pcie_phy_reg; | 75 | struct regulator *pcie_phy_reg; |
76 | void __iomem *mem_base; | 76 | void __iomem *mem_base; |
77 | }; | 77 | }; |
78 | static struct imx6_pcie *imx6_pcie; | 78 | static struct imx6_pcie *imx6_pcie; |
79 | 79 | ||
80 | /* PCIe Port Logic registers (memory-mapped) */ | 80 | /* PCIe Port Logic registers (memory-mapped) */ |
81 | #define PL_OFFSET 0x700 | 81 | #define PL_OFFSET 0x700 |
82 | #define PCIE_PHY_DEBUG_R0 (PL_OFFSET + 0x28) | 82 | #define PCIE_PHY_DEBUG_R0 (PL_OFFSET + 0x28) |
83 | #define PCIE_PHY_DEBUG_R1 (PL_OFFSET + 0x2c) | 83 | #define PCIE_PHY_DEBUG_R1 (PL_OFFSET + 0x2c) |
84 | 84 | ||
85 | #define PCIE_PHY_CTRL (PL_OFFSET + 0x114) | 85 | #define PCIE_PHY_CTRL (PL_OFFSET + 0x114) |
86 | #define PCIE_PHY_CTRL_DATA_LOC 0 | 86 | #define PCIE_PHY_CTRL_DATA_LOC 0 |
87 | #define PCIE_PHY_CTRL_CAP_ADR_LOC 16 | 87 | #define PCIE_PHY_CTRL_CAP_ADR_LOC 16 |
88 | #define PCIE_PHY_CTRL_CAP_DAT_LOC 17 | 88 | #define PCIE_PHY_CTRL_CAP_DAT_LOC 17 |
89 | #define PCIE_PHY_CTRL_WR_LOC 18 | 89 | #define PCIE_PHY_CTRL_WR_LOC 18 |
90 | #define PCIE_PHY_CTRL_RD_LOC 19 | 90 | #define PCIE_PHY_CTRL_RD_LOC 19 |
91 | 91 | ||
92 | #define PCIE_PHY_STAT (PL_OFFSET + 0x110) | 92 | #define PCIE_PHY_STAT (PL_OFFSET + 0x110) |
93 | #define PCIE_PHY_STAT_ACK_LOC 16 | 93 | #define PCIE_PHY_STAT_ACK_LOC 16 |
94 | 94 | ||
95 | /* PHY registers (not memory-mapped) */ | 95 | /* PHY registers (not memory-mapped) */ |
96 | #define PCIE_PHY_RX_ASIC_OUT 0x100D | 96 | #define PCIE_PHY_RX_ASIC_OUT 0x100D |
97 | 97 | ||
98 | #define PHY_RX_OVRD_IN_LO 0x1005 | 98 | #define PHY_RX_OVRD_IN_LO 0x1005 |
99 | #define PHY_RX_OVRD_IN_LO_RX_DATA_EN (1 << 5) | 99 | #define PHY_RX_OVRD_IN_LO_RX_DATA_EN (1 << 5) |
100 | #define PHY_RX_OVRD_IN_LO_RX_PLL_EN (1 << 3) | 100 | #define PHY_RX_OVRD_IN_LO_RX_PLL_EN (1 << 3) |
101 | 101 | ||
102 | static inline bool is_imx6sx_pcie(struct imx6_pcie *imx6_pcie) | 102 | static inline bool is_imx6sx_pcie(struct imx6_pcie *imx6_pcie) |
103 | { | 103 | { |
104 | return imx6_pcie->data == &imx6sx_pcie_data; | 104 | return imx6_pcie->data == &imx6sx_pcie_data; |
105 | } | 105 | } |
106 | 106 | ||
107 | #ifdef DEBUG | 107 | #ifdef DEBUG |
108 | static int pcie_reg_dump(struct imx6_pcie *imx6_pcie) | 108 | static int pcie_reg_dump(struct imx6_pcie *imx6_pcie) |
109 | { | 109 | { |
110 | u32 val; | 110 | u32 val; |
111 | struct regmap *anatop_g; | 111 | struct regmap *anatop_g; |
112 | 112 | ||
113 | /* GPRs registers */ | 113 | /* GPRs registers */ |
114 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, &val); | 114 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, &val); |
115 | pr_info("<F> %s <L> %d gpr1 0x%08x.\n", __func__, __LINE__, val); | 115 | pr_info("<F> %s <L> %d gpr1 0x%08x.\n", __func__, __LINE__, val); |
116 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, &val); | 116 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, &val); |
117 | pr_info("<F> %s <L> %d gpr5 0x%08x.\n", __func__, __LINE__, val); | 117 | pr_info("<F> %s <L> %d gpr5 0x%08x.\n", __func__, __LINE__, val); |
118 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, &val); | 118 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, &val); |
119 | pr_info("<F> %s <L> %d gpr8 0x%08x.\n", __func__, __LINE__, val); | 119 | pr_info("<F> %s <L> %d gpr8 0x%08x.\n", __func__, __LINE__, val); |
120 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, &val); | 120 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, &val); |
121 | pr_info("<F> %s <L> %d gpr12 0x%08x.\n", __func__, __LINE__, val); | 121 | pr_info("<F> %s <L> %d gpr12 0x%08x.\n", __func__, __LINE__, val); |
122 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR13, &val); | 122 | regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR13, &val); |
123 | pr_info("<F> %s <L> %d gpr13 0x%08x.\n", __func__, __LINE__, val); | 123 | pr_info("<F> %s <L> %d gpr13 0x%08x.\n", __func__, __LINE__, val); |
124 | 124 | ||
125 | /* anatop registers: pll6_enet, misc1 */ | 125 | /* anatop registers: pll6_enet, misc1 */ |
126 | anatop_g = syscon_regmap_lookup_by_compatible("fsl,imx6q-anatop"); | 126 | anatop_g = syscon_regmap_lookup_by_compatible("fsl,imx6q-anatop"); |
127 | if (IS_ERR(anatop_g)) | 127 | if (IS_ERR(anatop_g)) |
128 | pr_err("failed to find fsl,imx6sx-anatop regmap\n"); | 128 | pr_err("failed to find fsl,imx6sx-anatop regmap\n"); |
129 | regmap_read(anatop_g, 0xe0, &val); | 129 | regmap_read(anatop_g, 0xe0, &val); |
130 | pr_info("<F> %s <L> %d pll6_enet 0x%08x.\n", __func__, __LINE__, val); | 130 | pr_info("<F> %s <L> %d pll6_enet 0x%08x.\n", __func__, __LINE__, val); |
131 | regmap_read(anatop_g, 0x160, &val); | 131 | regmap_read(anatop_g, 0x160, &val); |
132 | pr_info("<F> %s <L> %d misc1 0x%08x.\n", __func__, __LINE__, val); | 132 | pr_info("<F> %s <L> %d misc1 0x%08x.\n", __func__, __LINE__, val); |
133 | } | 133 | } |
134 | #endif | 134 | #endif |
135 | 135 | ||
136 | static int pcie_phy_poll_ack(void __iomem *dbi_base, int exp_val) | 136 | static int pcie_phy_poll_ack(void __iomem *dbi_base, int exp_val) |
137 | { | 137 | { |
138 | u32 val; | 138 | u32 val; |
139 | u32 max_iterations = 10; | 139 | u32 max_iterations = 10; |
140 | u32 wait_counter = 0; | 140 | u32 wait_counter = 0; |
141 | 141 | ||
142 | do { | 142 | do { |
143 | val = readl(dbi_base + PCIE_PHY_STAT); | 143 | val = readl(dbi_base + PCIE_PHY_STAT); |
144 | val = (val >> PCIE_PHY_STAT_ACK_LOC) & 0x1; | 144 | val = (val >> PCIE_PHY_STAT_ACK_LOC) & 0x1; |
145 | wait_counter++; | 145 | wait_counter++; |
146 | 146 | ||
147 | if (val == exp_val) | 147 | if (val == exp_val) |
148 | return 0; | 148 | return 0; |
149 | 149 | ||
150 | udelay(1); | 150 | udelay(1); |
151 | } while (wait_counter < max_iterations); | 151 | } while (wait_counter < max_iterations); |
152 | 152 | ||
153 | return -ETIMEDOUT; | 153 | return -ETIMEDOUT; |
154 | } | 154 | } |
155 | 155 | ||
156 | static int pcie_phy_wait_ack(void __iomem *dbi_base, int addr) | 156 | static int pcie_phy_wait_ack(void __iomem *dbi_base, int addr) |
157 | { | 157 | { |
158 | u32 val; | 158 | u32 val; |
159 | int ret; | 159 | int ret; |
160 | 160 | ||
161 | val = addr << PCIE_PHY_CTRL_DATA_LOC; | 161 | val = addr << PCIE_PHY_CTRL_DATA_LOC; |
162 | writel(val, dbi_base + PCIE_PHY_CTRL); | 162 | writel(val, dbi_base + PCIE_PHY_CTRL); |
163 | 163 | ||
164 | val |= (0x1 << PCIE_PHY_CTRL_CAP_ADR_LOC); | 164 | val |= (0x1 << PCIE_PHY_CTRL_CAP_ADR_LOC); |
165 | writel(val, dbi_base + PCIE_PHY_CTRL); | 165 | writel(val, dbi_base + PCIE_PHY_CTRL); |
166 | 166 | ||
167 | ret = pcie_phy_poll_ack(dbi_base, 1); | 167 | ret = pcie_phy_poll_ack(dbi_base, 1); |
168 | if (ret) | 168 | if (ret) |
169 | return ret; | 169 | return ret; |
170 | 170 | ||
171 | val = addr << PCIE_PHY_CTRL_DATA_LOC; | 171 | val = addr << PCIE_PHY_CTRL_DATA_LOC; |
172 | writel(val, dbi_base + PCIE_PHY_CTRL); | 172 | writel(val, dbi_base + PCIE_PHY_CTRL); |
173 | 173 | ||
174 | ret = pcie_phy_poll_ack(dbi_base, 0); | 174 | ret = pcie_phy_poll_ack(dbi_base, 0); |
175 | if (ret) | 175 | if (ret) |
176 | return ret; | 176 | return ret; |
177 | 177 | ||
178 | return 0; | 178 | return 0; |
179 | } | 179 | } |
180 | 180 | ||
181 | /* Read from the 16-bit PCIe PHY control registers (not memory-mapped) */ | 181 | /* Read from the 16-bit PCIe PHY control registers (not memory-mapped) */ |
182 | static int pcie_phy_read(void __iomem *dbi_base, int addr , int *data) | 182 | static int pcie_phy_read(void __iomem *dbi_base, int addr , int *data) |
183 | { | 183 | { |
184 | u32 val, phy_ctl; | 184 | u32 val, phy_ctl; |
185 | int ret; | 185 | int ret; |
186 | 186 | ||
187 | ret = pcie_phy_wait_ack(dbi_base, addr); | 187 | ret = pcie_phy_wait_ack(dbi_base, addr); |
188 | if (ret) | 188 | if (ret) |
189 | return ret; | 189 | return ret; |
190 | 190 | ||
191 | /* assert Read signal */ | 191 | /* assert Read signal */ |
192 | phy_ctl = 0x1 << PCIE_PHY_CTRL_RD_LOC; | 192 | phy_ctl = 0x1 << PCIE_PHY_CTRL_RD_LOC; |
193 | writel(phy_ctl, dbi_base + PCIE_PHY_CTRL); | 193 | writel(phy_ctl, dbi_base + PCIE_PHY_CTRL); |
194 | 194 | ||
195 | ret = pcie_phy_poll_ack(dbi_base, 1); | 195 | ret = pcie_phy_poll_ack(dbi_base, 1); |
196 | if (ret) | 196 | if (ret) |
197 | return ret; | 197 | return ret; |
198 | 198 | ||
199 | val = readl(dbi_base + PCIE_PHY_STAT); | 199 | val = readl(dbi_base + PCIE_PHY_STAT); |
200 | *data = val & 0xffff; | 200 | *data = val & 0xffff; |
201 | 201 | ||
202 | /* deassert Read signal */ | 202 | /* deassert Read signal */ |
203 | writel(0x00, dbi_base + PCIE_PHY_CTRL); | 203 | writel(0x00, dbi_base + PCIE_PHY_CTRL); |
204 | 204 | ||
205 | ret = pcie_phy_poll_ack(dbi_base, 0); | 205 | ret = pcie_phy_poll_ack(dbi_base, 0); |
206 | if (ret) | 206 | if (ret) |
207 | return ret; | 207 | return ret; |
208 | 208 | ||
209 | return 0; | 209 | return 0; |
210 | } | 210 | } |
211 | 211 | ||
212 | static int pcie_phy_write(void __iomem *dbi_base, int addr, int data) | 212 | static int pcie_phy_write(void __iomem *dbi_base, int addr, int data) |
213 | { | 213 | { |
214 | u32 var; | 214 | u32 var; |
215 | int ret; | 215 | int ret; |
216 | 216 | ||
217 | /* write addr */ | 217 | /* write addr */ |
218 | /* cap addr */ | 218 | /* cap addr */ |
219 | ret = pcie_phy_wait_ack(dbi_base, addr); | 219 | ret = pcie_phy_wait_ack(dbi_base, addr); |
220 | if (ret) | 220 | if (ret) |
221 | return ret; | 221 | return ret; |
222 | 222 | ||
223 | var = data << PCIE_PHY_CTRL_DATA_LOC; | 223 | var = data << PCIE_PHY_CTRL_DATA_LOC; |
224 | writel(var, dbi_base + PCIE_PHY_CTRL); | 224 | writel(var, dbi_base + PCIE_PHY_CTRL); |
225 | 225 | ||
226 | /* capture data */ | 226 | /* capture data */ |
227 | var |= (0x1 << PCIE_PHY_CTRL_CAP_DAT_LOC); | 227 | var |= (0x1 << PCIE_PHY_CTRL_CAP_DAT_LOC); |
228 | writel(var, dbi_base + PCIE_PHY_CTRL); | 228 | writel(var, dbi_base + PCIE_PHY_CTRL); |
229 | 229 | ||
230 | ret = pcie_phy_poll_ack(dbi_base, 1); | 230 | ret = pcie_phy_poll_ack(dbi_base, 1); |
231 | if (ret) | 231 | if (ret) |
232 | return ret; | 232 | return ret; |
233 | 233 | ||
234 | /* deassert cap data */ | 234 | /* deassert cap data */ |
235 | var = data << PCIE_PHY_CTRL_DATA_LOC; | 235 | var = data << PCIE_PHY_CTRL_DATA_LOC; |
236 | writel(var, dbi_base + PCIE_PHY_CTRL); | 236 | writel(var, dbi_base + PCIE_PHY_CTRL); |
237 | 237 | ||
238 | /* wait for ack de-assertion */ | 238 | /* wait for ack de-assertion */ |
239 | ret = pcie_phy_poll_ack(dbi_base, 0); | 239 | ret = pcie_phy_poll_ack(dbi_base, 0); |
240 | if (ret) | 240 | if (ret) |
241 | return ret; | 241 | return ret; |
242 | 242 | ||
243 | /* assert wr signal */ | 243 | /* assert wr signal */ |
244 | var = 0x1 << PCIE_PHY_CTRL_WR_LOC; | 244 | var = 0x1 << PCIE_PHY_CTRL_WR_LOC; |
245 | writel(var, dbi_base + PCIE_PHY_CTRL); | 245 | writel(var, dbi_base + PCIE_PHY_CTRL); |
246 | 246 | ||
247 | /* wait for ack */ | 247 | /* wait for ack */ |
248 | ret = pcie_phy_poll_ack(dbi_base, 1); | 248 | ret = pcie_phy_poll_ack(dbi_base, 1); |
249 | if (ret) | 249 | if (ret) |
250 | return ret; | 250 | return ret; |
251 | 251 | ||
252 | /* deassert wr signal */ | 252 | /* deassert wr signal */ |
253 | var = data << PCIE_PHY_CTRL_DATA_LOC; | 253 | var = data << PCIE_PHY_CTRL_DATA_LOC; |
254 | writel(var, dbi_base + PCIE_PHY_CTRL); | 254 | writel(var, dbi_base + PCIE_PHY_CTRL); |
255 | 255 | ||
256 | /* wait for ack de-assertion */ | 256 | /* wait for ack de-assertion */ |
257 | ret = pcie_phy_poll_ack(dbi_base, 0); | 257 | ret = pcie_phy_poll_ack(dbi_base, 0); |
258 | if (ret) | 258 | if (ret) |
259 | return ret; | 259 | return ret; |
260 | 260 | ||
261 | writel(0x0, dbi_base + PCIE_PHY_CTRL); | 261 | writel(0x0, dbi_base + PCIE_PHY_CTRL); |
262 | 262 | ||
263 | return 0; | 263 | return 0; |
264 | } | 264 | } |
265 | 265 | ||
266 | /* Added for PCI abort handling */ | 266 | /* Added for PCI abort handling */ |
267 | static int imx6q_pcie_abort_handler(unsigned long addr, | 267 | static int imx6q_pcie_abort_handler(unsigned long addr, |
268 | unsigned int fsr, struct pt_regs *regs) | 268 | unsigned int fsr, struct pt_regs *regs) |
269 | { | 269 | { |
270 | return 0; | 270 | return 0; |
271 | } | 271 | } |
272 | 272 | ||
273 | static int imx6_pcie_deassert_core_reset(struct pcie_port *pp) | 273 | static int imx6_pcie_deassert_core_reset(struct pcie_port *pp) |
274 | { | 274 | { |
275 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); | 275 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); |
276 | int ret; | 276 | int ret; |
277 | 277 | ||
278 | if (gpio_is_valid(imx6_pcie->power_on_gpio)) | 278 | if (gpio_is_valid(imx6_pcie->power_on_gpio)) |
279 | gpio_set_value_cansleep(imx6_pcie->power_on_gpio, 1); | 279 | gpio_set_value_cansleep(imx6_pcie->power_on_gpio, 1); |
280 | 280 | ||
281 | request_bus_freq(BUS_FREQ_HIGH); | 281 | request_bus_freq(BUS_FREQ_HIGH); |
282 | 282 | ||
283 | if (is_imx6sx_pcie(imx6_pcie)) { | 283 | if (is_imx6sx_pcie(imx6_pcie)) { |
284 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 284 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
285 | IMX6Q_GPR12_PCIE_TEST_PD, 0 << 30); | 285 | IMX6Q_GPR12_PCIE_TEST_PD, 0 << 30); |
286 | 286 | ||
287 | ret = clk_prepare_enable(imx6_pcie->dis_axi); | 287 | ret = clk_prepare_enable(imx6_pcie->dis_axi); |
288 | if (ret) { | 288 | if (ret) { |
289 | dev_err(pp->dev, "unable to enable dis_axi\n"); | 289 | dev_err(pp->dev, "unable to enable dis_axi\n"); |
290 | goto err_dis_axi; | 290 | goto err_dis_axi; |
291 | } | 291 | } |
292 | } else { | 292 | } else { |
293 | /* Those bits are not used anymore on imx6sx */ | 293 | /* Those bits are not used anymore on imx6sx */ |
294 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, | 294 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, |
295 | IMX6Q_GPR1_PCIE_TEST_PD, 0 << 18); | 295 | IMX6Q_GPR1_PCIE_TEST_PD, 0 << 18); |
296 | 296 | ||
297 | /* sata_ref is not used by pcie on imx6sx */ | 297 | /* sata_ref is not used by pcie on imx6sx */ |
298 | ret = clk_prepare_enable(imx6_pcie->sata_ref_100m); | 298 | ret = clk_prepare_enable(imx6_pcie->sata_ref_100m); |
299 | if (ret) { | 299 | if (ret) { |
300 | dev_err(pp->dev, "unable to enable sata_ref_100m\n"); | 300 | dev_err(pp->dev, "unable to enable sata_ref_100m\n"); |
301 | goto err_sata_ref; | 301 | goto err_sata_ref; |
302 | } | 302 | } |
303 | } | 303 | } |
304 | 304 | ||
305 | ret = clk_prepare_enable(imx6_pcie->pcie_ref_125m); | 305 | ret = clk_prepare_enable(imx6_pcie->pcie_ref_125m); |
306 | if (ret) { | 306 | if (ret) { |
307 | dev_err(pp->dev, "unable to enable pcie_ref_125m\n"); | 307 | dev_err(pp->dev, "unable to enable pcie_ref_125m\n"); |
308 | goto err_pcie_ref; | 308 | goto err_pcie_ref; |
309 | } | 309 | } |
310 | 310 | ||
311 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) | 311 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) |
312 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) { | 312 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) { |
313 | ret = clk_prepare_enable(imx6_pcie->lvds_gate); | 313 | ret = clk_prepare_enable(imx6_pcie->lvds_gate); |
314 | if (ret) { | 314 | if (ret) { |
315 | dev_err(pp->dev, "unable to enable lvds_gate\n"); | 315 | dev_err(pp->dev, "unable to enable lvds_gate\n"); |
316 | goto err_lvds_gate; | 316 | goto err_lvds_gate; |
317 | } | 317 | } |
318 | } | 318 | } |
319 | 319 | ||
320 | ret = clk_prepare_enable(imx6_pcie->pcie_axi); | 320 | ret = clk_prepare_enable(imx6_pcie->pcie_axi); |
321 | if (ret) { | 321 | if (ret) { |
322 | dev_err(pp->dev, "unable to enable pcie_axi\n"); | 322 | dev_err(pp->dev, "unable to enable pcie_axi\n"); |
323 | goto err_pcie_axi; | 323 | goto err_pcie_axi; |
324 | } | 324 | } |
325 | 325 | ||
326 | if (!is_imx6sx_pcie(imx6_pcie)) { | 326 | if (!is_imx6sx_pcie(imx6_pcie)) { |
327 | /* | 327 | /* |
328 | * This bit is not used anymore on imx6sx. | 328 | * This bit is not used anymore on imx6sx. |
329 | * wailt for the pcie clks are stable. | 329 | * wailt for the pcie clks are stable. |
330 | * ~4us is requried, let it to be 10us here. | 330 | * ~4us is requried, let it to be 10us here. |
331 | */ | 331 | */ |
332 | udelay(10); | 332 | udelay(10); |
333 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, | 333 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, |
334 | IMX6Q_GPR1_PCIE_REF_CLK_EN, 1 << 16); | 334 | IMX6Q_GPR1_PCIE_REF_CLK_EN, 1 << 16); |
335 | } | 335 | } |
336 | 336 | ||
337 | /* allow the clocks to stabilize */ | 337 | /* allow the clocks to stabilize */ |
338 | udelay(200); | 338 | usleep_range(200, 500); |
339 | 339 | ||
340 | if (gpio_is_valid(imx6_pcie->reset_gpio)) { | 340 | if (gpio_is_valid(imx6_pcie->reset_gpio)) { |
341 | gpio_set_value_cansleep(imx6_pcie->reset_gpio, 0); | 341 | gpio_set_value_cansleep(imx6_pcie->reset_gpio, 0); |
342 | mdelay(1); | 342 | msleep(100); |
343 | gpio_set_value_cansleep(imx6_pcie->reset_gpio, 1); | 343 | gpio_set_value_cansleep(imx6_pcie->reset_gpio, 1); |
344 | } | 344 | } |
345 | 345 | ||
346 | return 0; | 346 | return 0; |
347 | 347 | ||
348 | err_pcie_axi: | 348 | err_pcie_axi: |
349 | clk_disable_unprepare(imx6_pcie->lvds_gate); | 349 | clk_disable_unprepare(imx6_pcie->lvds_gate); |
350 | err_lvds_gate: | 350 | err_lvds_gate: |
351 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); | 351 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); |
352 | err_pcie_ref: | 352 | err_pcie_ref: |
353 | if (!is_imx6sx_pcie(imx6_pcie)) | 353 | if (!is_imx6sx_pcie(imx6_pcie)) |
354 | clk_disable_unprepare(imx6_pcie->sata_ref_100m); | 354 | clk_disable_unprepare(imx6_pcie->sata_ref_100m); |
355 | err_sata_ref: | 355 | err_sata_ref: |
356 | if (is_imx6sx_pcie(imx6_pcie)) | 356 | if (is_imx6sx_pcie(imx6_pcie)) |
357 | clk_disable_unprepare(imx6_pcie->dis_axi); | 357 | clk_disable_unprepare(imx6_pcie->dis_axi); |
358 | err_dis_axi: | 358 | err_dis_axi: |
359 | release_bus_freq(BUS_FREQ_HIGH); | 359 | release_bus_freq(BUS_FREQ_HIGH); |
360 | return ret; | 360 | return ret; |
361 | 361 | ||
362 | } | 362 | } |
363 | 363 | ||
364 | static void imx6_pcie_init_phy(struct pcie_port *pp) | 364 | static void imx6_pcie_init_phy(struct pcie_port *pp) |
365 | { | 365 | { |
366 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); | 366 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); |
367 | int ret; | 367 | int ret; |
368 | 368 | ||
369 | /* | 369 | /* |
370 | * iMX6SX PCIe has the stand-alone power domain | 370 | * iMX6SX PCIe has the stand-alone power domain |
371 | * add the initialization here for iMX6SX PCIe. | 371 | * add the initialization here for iMX6SX PCIe. |
372 | */ | 372 | */ |
373 | if (is_imx6sx_pcie(imx6_pcie)) { | 373 | if (is_imx6sx_pcie(imx6_pcie)) { |
374 | /* Force PCIe PHY reset */ | 374 | /* Force PCIe PHY reset */ |
375 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, | 375 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, |
376 | BIT(19), 1 << 19); | 376 | BIT(19), 1 << 19); |
377 | 377 | ||
378 | ret = regulator_enable(imx6_pcie->pcie_reg); | 378 | ret = regulator_enable(imx6_pcie->pcie_reg); |
379 | if (ret) | 379 | if (ret) |
380 | dev_info(pp->dev, "failed to enable pcie reg.\n"); | 380 | dev_info(pp->dev, "failed to enable pcie reg.\n"); |
381 | /* Power up PCIe PHY, ANATOP_REG_CORE offset 0x140, bit13-9 */ | 381 | /* Power up PCIe PHY, ANATOP_REG_CORE offset 0x140, bit13-9 */ |
382 | regulator_set_voltage(imx6_pcie->pcie_phy_reg, | 382 | regulator_set_voltage(imx6_pcie->pcie_phy_reg, |
383 | 1100000, 1100000); | 383 | 1100000, 1100000); |
384 | ret = regulator_enable(imx6_pcie->pcie_phy_reg); | 384 | ret = regulator_enable(imx6_pcie->pcie_phy_reg); |
385 | if (ret) | 385 | if (ret) |
386 | dev_info(pp->dev, "failed to enable pcie phy reg.\n"); | 386 | dev_info(pp->dev, "failed to enable pcie phy reg.\n"); |
387 | 387 | ||
388 | } | 388 | } |
389 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 389 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
390 | IMX6Q_GPR12_PCIE_CTL_2, 0 << 10); | 390 | IMX6Q_GPR12_PCIE_CTL_2, 0 << 10); |
391 | 391 | ||
392 | /* configure constant input signal to the pcie ctrl and phy */ | 392 | /* configure constant input signal to the pcie ctrl and phy */ |
393 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) | 393 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) |
394 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 394 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
395 | IMX6Q_GPR12_DEVICE_TYPE, | 395 | IMX6Q_GPR12_DEVICE_TYPE, |
396 | PCI_EXP_TYPE_ENDPOINT << 12); | 396 | PCI_EXP_TYPE_ENDPOINT << 12); |
397 | else | 397 | else |
398 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 398 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
399 | IMX6Q_GPR12_DEVICE_TYPE, | 399 | IMX6Q_GPR12_DEVICE_TYPE, |
400 | PCI_EXP_TYPE_ROOT_PORT << 12); | 400 | PCI_EXP_TYPE_ROOT_PORT << 12); |
401 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 401 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
402 | IMX6Q_GPR12_LOS_LEVEL, 9 << 4); | 402 | IMX6Q_GPR12_LOS_LEVEL, 9 << 4); |
403 | 403 | ||
404 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, | 404 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, |
405 | IMX6Q_GPR8_TX_DEEMPH_GEN1, 0 << 0); | 405 | IMX6Q_GPR8_TX_DEEMPH_GEN1, 0 << 0); |
406 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, | 406 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, |
407 | IMX6Q_GPR8_TX_DEEMPH_GEN2_3P5DB, 0 << 6); | 407 | IMX6Q_GPR8_TX_DEEMPH_GEN2_3P5DB, 0 << 6); |
408 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, | 408 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, |
409 | IMX6Q_GPR8_TX_DEEMPH_GEN2_6DB, 20 << 12); | 409 | IMX6Q_GPR8_TX_DEEMPH_GEN2_6DB, 20 << 12); |
410 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, | 410 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, |
411 | IMX6Q_GPR8_TX_SWING_FULL, 127 << 18); | 411 | IMX6Q_GPR8_TX_SWING_FULL, 127 << 18); |
412 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, | 412 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, |
413 | IMX6Q_GPR8_TX_SWING_LOW, 127 << 25); | 413 | IMX6Q_GPR8_TX_SWING_LOW, 127 << 25); |
414 | } | 414 | } |
415 | 415 | ||
416 | static irqreturn_t imx_pcie_msi_irq_handler(int irq, void *arg) | 416 | static irqreturn_t imx_pcie_msi_irq_handler(int irq, void *arg) |
417 | { | 417 | { |
418 | struct pcie_port *pp = arg; | 418 | struct pcie_port *pp = arg; |
419 | 419 | ||
420 | dw_handle_msi_irq(pp); | 420 | dw_handle_msi_irq(pp); |
421 | 421 | ||
422 | return IRQ_HANDLED; | 422 | return IRQ_HANDLED; |
423 | } | 423 | } |
424 | 424 | ||
425 | static int imx6_pcie_host_init(struct pcie_port *pp) | 425 | static int imx6_pcie_host_init(struct pcie_port *pp) |
426 | { | 426 | { |
427 | int count = 0; | 427 | int count = 0; |
428 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); | 428 | struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); |
429 | 429 | ||
430 | imx6_pcie_init_phy(pp); | 430 | imx6_pcie_init_phy(pp); |
431 | 431 | ||
432 | imx6_pcie_deassert_core_reset(pp); | 432 | imx6_pcie_deassert_core_reset(pp); |
433 | 433 | ||
434 | /* | 434 | /* |
435 | * iMX6SX PCIe has the stand-alone power domain. | 435 | * iMX6SX PCIe has the stand-alone power domain. |
436 | * refer to the initialization for iMX6SX PCIe, | 436 | * refer to the initialization for iMX6SX PCIe, |
437 | * release the PCIe PHY reset here, | 437 | * release the PCIe PHY reset here, |
438 | * before LTSSM enable is set. | 438 | * before LTSSM enable is set. |
439 | */ | 439 | */ |
440 | if (is_imx6sx_pcie(imx6_pcie)) | 440 | if (is_imx6sx_pcie(imx6_pcie)) |
441 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, | 441 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, |
442 | BIT(19), 0 << 19); | 442 | BIT(19), 0 << 19); |
443 | 443 | ||
444 | 444 | ||
445 | dw_pcie_setup_rc(pp); | 445 | dw_pcie_setup_rc(pp); |
446 | 446 | ||
447 | #ifdef DEBUG | 447 | #ifdef DEBUG |
448 | pcie_reg_dump(imx6_pcie); | 448 | pcie_reg_dump(imx6_pcie); |
449 | #endif | 449 | #endif |
450 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 450 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
451 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); | 451 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); |
452 | 452 | ||
453 | while (!dw_pcie_link_up(pp)) { | 453 | while (!dw_pcie_link_up(pp)) { |
454 | usleep_range(100, 1000); | 454 | usleep_range(100, 1000); |
455 | count++; | 455 | count++; |
456 | if (count >= 200) { | 456 | if (count >= 200) { |
457 | dev_err(pp->dev, "phy link never came up\n"); | 457 | dev_err(pp->dev, "phy link never came up\n"); |
458 | dev_dbg(pp->dev, | 458 | dev_dbg(pp->dev, |
459 | "DEBUG_R0: 0x%08x, DEBUG_R1: 0x%08x\n", | 459 | "DEBUG_R0: 0x%08x, DEBUG_R1: 0x%08x\n", |
460 | readl(pp->dbi_base + PCIE_PHY_DEBUG_R0), | 460 | readl(pp->dbi_base + PCIE_PHY_DEBUG_R0), |
461 | readl(pp->dbi_base + PCIE_PHY_DEBUG_R1)); | 461 | readl(pp->dbi_base + PCIE_PHY_DEBUG_R1)); |
462 | clk_disable_unprepare(imx6_pcie->pcie_axi); | 462 | clk_disable_unprepare(imx6_pcie->pcie_axi); |
463 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) | 463 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) |
464 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) | 464 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) |
465 | clk_disable_unprepare(imx6_pcie->lvds_gate); | 465 | clk_disable_unprepare(imx6_pcie->lvds_gate); |
466 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); | 466 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); |
467 | if (is_imx6sx_pcie(imx6_pcie)) { | 467 | if (is_imx6sx_pcie(imx6_pcie)) { |
468 | /* Disable clks and power down PCIe PHY */ | 468 | /* Disable clks and power down PCIe PHY */ |
469 | clk_disable_unprepare(imx6_pcie->dis_axi); | 469 | clk_disable_unprepare(imx6_pcie->dis_axi); |
470 | release_bus_freq(BUS_FREQ_HIGH); | 470 | release_bus_freq(BUS_FREQ_HIGH); |
471 | 471 | ||
472 | /* Put PCIe PHY to be isolation */ | 472 | /* Put PCIe PHY to be isolation */ |
473 | regmap_update_bits(imx6_pcie->iomuxc_gpr, | 473 | regmap_update_bits(imx6_pcie->iomuxc_gpr, |
474 | IOMUXC_GPR0, BIT(6), 1 << 6); | 474 | IOMUXC_GPR0, BIT(6), 1 << 6); |
475 | 475 | ||
476 | /* | 476 | /* |
477 | * Power down PCIe PHY. | 477 | * Power down PCIe PHY. |
478 | */ | 478 | */ |
479 | regulator_disable(imx6_pcie->pcie_phy_reg); | 479 | regulator_disable(imx6_pcie->pcie_phy_reg); |
480 | regulator_disable(imx6_pcie->pcie_reg); | 480 | regulator_disable(imx6_pcie->pcie_reg); |
481 | } else { | 481 | } else { |
482 | clk_disable_unprepare(imx6_pcie->sata_ref_100m); | 482 | clk_disable_unprepare(imx6_pcie->sata_ref_100m); |
483 | release_bus_freq(BUS_FREQ_HIGH); | 483 | release_bus_freq(BUS_FREQ_HIGH); |
484 | } | 484 | } |
485 | return -ENODEV; | 485 | return -ENODEV; |
486 | } | 486 | } |
487 | } | 487 | } |
488 | 488 | ||
489 | if (IS_ENABLED(CONFIG_PCI_MSI)) | 489 | if (IS_ENABLED(CONFIG_PCI_MSI)) |
490 | dw_pcie_msi_init(pp); | 490 | dw_pcie_msi_init(pp); |
491 | 491 | ||
492 | return 0; | 492 | return 0; |
493 | } | 493 | } |
494 | 494 | ||
495 | static int imx6_pcie_link_up(struct pcie_port *pp) | 495 | static int imx6_pcie_link_up(struct pcie_port *pp) |
496 | { | 496 | { |
497 | u32 rc, ltssm, rx_valid, temp; | 497 | u32 rc, ltssm, rx_valid, temp; |
498 | 498 | ||
499 | /* link is debug bit 36, debug register 1 starts at bit 32 */ | 499 | /* link is debug bit 36, debug register 1 starts at bit 32 */ |
500 | rc = readl(pp->dbi_base + PCIE_PHY_DEBUG_R1) & (0x1 << (36 - 32)); | 500 | rc = readl(pp->dbi_base + PCIE_PHY_DEBUG_R1) & (0x1 << (36 - 32)); |
501 | if (rc) | 501 | if (rc) |
502 | return -EAGAIN; | 502 | return -EAGAIN; |
503 | 503 | ||
504 | /* | 504 | /* |
505 | * From L0, initiate MAC entry to gen2 if EP/RC supports gen2. | 505 | * From L0, initiate MAC entry to gen2 if EP/RC supports gen2. |
506 | * Wait 2ms (LTSSM timeout is 24ms, PHY lock is ~5us in gen2). | 506 | * Wait 2ms (LTSSM timeout is 24ms, PHY lock is ~5us in gen2). |
507 | * If (MAC/LTSSM.state == Recovery.RcvrLock) | 507 | * If (MAC/LTSSM.state == Recovery.RcvrLock) |
508 | * && (PHY/rx_valid==0) then pulse PHY/rx_reset. Transition | 508 | * && (PHY/rx_valid==0) then pulse PHY/rx_reset. Transition |
509 | * to gen2 is stuck | 509 | * to gen2 is stuck |
510 | */ | 510 | */ |
511 | pcie_phy_read(pp->dbi_base, PCIE_PHY_RX_ASIC_OUT, &rx_valid); | 511 | pcie_phy_read(pp->dbi_base, PCIE_PHY_RX_ASIC_OUT, &rx_valid); |
512 | ltssm = readl(pp->dbi_base + PCIE_PHY_DEBUG_R0) & 0x3F; | 512 | ltssm = readl(pp->dbi_base + PCIE_PHY_DEBUG_R0) & 0x3F; |
513 | 513 | ||
514 | if (rx_valid & 0x01) | 514 | if (rx_valid & 0x01) |
515 | return 0; | 515 | return 0; |
516 | 516 | ||
517 | if (ltssm != 0x0d) | 517 | if (ltssm != 0x0d) |
518 | return 0; | 518 | return 0; |
519 | 519 | ||
520 | dev_err(pp->dev, "transition to gen2 is stuck, reset PHY!\n"); | 520 | dev_err(pp->dev, "transition to gen2 is stuck, reset PHY!\n"); |
521 | 521 | ||
522 | pcie_phy_read(pp->dbi_base, | 522 | pcie_phy_read(pp->dbi_base, |
523 | PHY_RX_OVRD_IN_LO, &temp); | 523 | PHY_RX_OVRD_IN_LO, &temp); |
524 | temp |= (PHY_RX_OVRD_IN_LO_RX_DATA_EN | 524 | temp |= (PHY_RX_OVRD_IN_LO_RX_DATA_EN |
525 | | PHY_RX_OVRD_IN_LO_RX_PLL_EN); | 525 | | PHY_RX_OVRD_IN_LO_RX_PLL_EN); |
526 | pcie_phy_write(pp->dbi_base, | 526 | pcie_phy_write(pp->dbi_base, |
527 | PHY_RX_OVRD_IN_LO, temp); | 527 | PHY_RX_OVRD_IN_LO, temp); |
528 | 528 | ||
529 | usleep_range(2000, 3000); | 529 | usleep_range(2000, 3000); |
530 | 530 | ||
531 | pcie_phy_read(pp->dbi_base, | 531 | pcie_phy_read(pp->dbi_base, |
532 | PHY_RX_OVRD_IN_LO, &temp); | 532 | PHY_RX_OVRD_IN_LO, &temp); |
533 | temp &= ~(PHY_RX_OVRD_IN_LO_RX_DATA_EN | 533 | temp &= ~(PHY_RX_OVRD_IN_LO_RX_DATA_EN |
534 | | PHY_RX_OVRD_IN_LO_RX_PLL_EN); | 534 | | PHY_RX_OVRD_IN_LO_RX_PLL_EN); |
535 | pcie_phy_write(pp->dbi_base, | 535 | pcie_phy_write(pp->dbi_base, |
536 | PHY_RX_OVRD_IN_LO, temp); | 536 | PHY_RX_OVRD_IN_LO, temp); |
537 | 537 | ||
538 | return 0; | 538 | return 0; |
539 | } | 539 | } |
540 | 540 | ||
541 | static struct pcie_host_ops imx6_pcie_host_ops = { | 541 | static struct pcie_host_ops imx6_pcie_host_ops = { |
542 | .link_up = imx6_pcie_link_up, | 542 | .link_up = imx6_pcie_link_up, |
543 | .host_init = imx6_pcie_host_init, | 543 | .host_init = imx6_pcie_host_init, |
544 | }; | 544 | }; |
545 | 545 | ||
546 | static int imx6_add_pcie_port(struct pcie_port *pp, | 546 | static int imx6_add_pcie_port(struct pcie_port *pp, |
547 | struct platform_device *pdev) | 547 | struct platform_device *pdev) |
548 | { | 548 | { |
549 | int ret; | 549 | int ret; |
550 | 550 | ||
551 | pp->irq = platform_get_irq(pdev, 0); | 551 | pp->irq = platform_get_irq(pdev, 0); |
552 | if (!pp->irq) { | 552 | if (!pp->irq) { |
553 | dev_err(&pdev->dev, "failed to get irq\n"); | 553 | dev_err(&pdev->dev, "failed to get irq\n"); |
554 | return -ENODEV; | 554 | return -ENODEV; |
555 | } | 555 | } |
556 | 556 | ||
557 | if (IS_ENABLED(CONFIG_PCI_MSI)) { | 557 | if (IS_ENABLED(CONFIG_PCI_MSI)) { |
558 | pp->msi_irq = pp->irq - 3; | 558 | pp->msi_irq = pp->irq - 3; |
559 | if (!pp->msi_irq) { | 559 | if (!pp->msi_irq) { |
560 | dev_err(&pdev->dev, "failed to get msi irq\n"); | 560 | dev_err(&pdev->dev, "failed to get msi irq\n"); |
561 | return -ENODEV; | 561 | return -ENODEV; |
562 | } | 562 | } |
563 | 563 | ||
564 | ret = devm_request_irq(&pdev->dev, pp->msi_irq, | 564 | ret = devm_request_irq(&pdev->dev, pp->msi_irq, |
565 | imx_pcie_msi_irq_handler, | 565 | imx_pcie_msi_irq_handler, |
566 | IRQF_SHARED, "imx6q-pcie", pp); | 566 | IRQF_SHARED, "imx6q-pcie", pp); |
567 | if (ret) { | 567 | if (ret) { |
568 | dev_err(&pdev->dev, "failed to request msi irq\n"); | 568 | dev_err(&pdev->dev, "failed to request msi irq\n"); |
569 | return ret; | 569 | return ret; |
570 | } | 570 | } |
571 | } | 571 | } |
572 | 572 | ||
573 | pp->root_bus_nr = -1; | 573 | pp->root_bus_nr = -1; |
574 | pp->ops = &imx6_pcie_host_ops; | 574 | pp->ops = &imx6_pcie_host_ops; |
575 | 575 | ||
576 | spin_lock_init(&pp->conf_lock); | 576 | spin_lock_init(&pp->conf_lock); |
577 | |||
578 | usleep_range(25000, 30000); | ||
579 | |||
577 | ret = dw_pcie_host_init(pp); | 580 | ret = dw_pcie_host_init(pp); |
578 | if (ret) { | 581 | if (ret) { |
579 | dev_err(&pdev->dev, "failed to initialize host\n"); | 582 | dev_err(&pdev->dev, "failed to initialize host\n"); |
580 | return ret; | 583 | return ret; |
581 | } | 584 | } |
582 | 585 | ||
583 | return 0; | 586 | return 0; |
584 | } | 587 | } |
585 | 588 | ||
586 | static ssize_t imx_pcie_bar0_addr_info(struct device *dev, | 589 | static ssize_t imx_pcie_bar0_addr_info(struct device *dev, |
587 | struct device_attribute *devattr, char *buf) | 590 | struct device_attribute *devattr, char *buf) |
588 | { | 591 | { |
589 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); | 592 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); |
590 | struct pcie_port *pp = &imx6_pcie->pp; | 593 | struct pcie_port *pp = &imx6_pcie->pp; |
591 | 594 | ||
592 | return sprintf(buf, "imx-pcie-bar0-addr-info start 0x%08x\n", | 595 | return sprintf(buf, "imx-pcie-bar0-addr-info start 0x%08x\n", |
593 | readl(pp->dbi_base + PCI_BASE_ADDRESS_0)); | 596 | readl(pp->dbi_base + PCI_BASE_ADDRESS_0)); |
594 | } | 597 | } |
595 | 598 | ||
596 | static ssize_t imx_pcie_bar0_addr_start(struct device *dev, | 599 | static ssize_t imx_pcie_bar0_addr_start(struct device *dev, |
597 | struct device_attribute *attr, const char *buf, size_t count) | 600 | struct device_attribute *attr, const char *buf, size_t count) |
598 | { | 601 | { |
599 | u32 bar_start; | 602 | u32 bar_start; |
600 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); | 603 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); |
601 | struct pcie_port *pp = &imx6_pcie->pp; | 604 | struct pcie_port *pp = &imx6_pcie->pp; |
602 | 605 | ||
603 | sscanf(buf, "%x\n", &bar_start); | 606 | sscanf(buf, "%x\n", &bar_start); |
604 | writel(bar_start, pp->dbi_base + PCI_BASE_ADDRESS_0); | 607 | writel(bar_start, pp->dbi_base + PCI_BASE_ADDRESS_0); |
605 | 608 | ||
606 | return count; | 609 | return count; |
607 | } | 610 | } |
608 | 611 | ||
609 | static void imx_pcie_regions_setup(struct device *dev) | 612 | static void imx_pcie_regions_setup(struct device *dev) |
610 | { | 613 | { |
611 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); | 614 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); |
612 | struct pcie_port *pp = &imx6_pcie->pp; | 615 | struct pcie_port *pp = &imx6_pcie->pp; |
613 | 616 | ||
614 | if (is_imx6sx_pcie(imx6_pcie)) | 617 | if (is_imx6sx_pcie(imx6_pcie)) |
615 | ddr_test_region = 0xb0000000; | 618 | ddr_test_region = 0xb0000000; |
616 | 619 | ||
617 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { | 620 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { |
618 | /* | 621 | /* |
619 | * region2 outbound used to access rc mem | 622 | * region2 outbound used to access rc mem |
620 | * in imx6 pcie ep/rc validation system | 623 | * in imx6 pcie ep/rc validation system |
621 | */ | 624 | */ |
622 | writel(2, pp->dbi_base + PCIE_ATU_VIEWPORT); | 625 | writel(2, pp->dbi_base + PCIE_ATU_VIEWPORT); |
623 | writel(pp->mem_base, pp->dbi_base + PCIE_ATU_LOWER_BASE); | 626 | writel(pp->mem_base, pp->dbi_base + PCIE_ATU_LOWER_BASE); |
624 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_BASE); | 627 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_BASE); |
625 | writel(pp->mem_base + test_region_size, | 628 | writel(pp->mem_base + test_region_size, |
626 | pp->dbi_base + PCIE_ATU_LIMIT); | 629 | pp->dbi_base + PCIE_ATU_LIMIT); |
627 | 630 | ||
628 | writel(ddr_test_region, | 631 | writel(ddr_test_region, |
629 | pp->dbi_base + PCIE_ATU_LOWER_TARGET); | 632 | pp->dbi_base + PCIE_ATU_LOWER_TARGET); |
630 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_TARGET); | 633 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_TARGET); |
631 | writel(PCIE_ATU_TYPE_MEM, pp->dbi_base + PCIE_ATU_CR1); | 634 | writel(PCIE_ATU_TYPE_MEM, pp->dbi_base + PCIE_ATU_CR1); |
632 | writel(PCIE_ATU_ENABLE, pp->dbi_base + PCIE_ATU_CR2); | 635 | writel(PCIE_ATU_ENABLE, pp->dbi_base + PCIE_ATU_CR2); |
633 | } | 636 | } |
634 | 637 | ||
635 | if (IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) { | 638 | if (IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) { |
636 | /* | 639 | /* |
637 | * region2 outbound used to access ep mem | 640 | * region2 outbound used to access ep mem |
638 | * in imx6 pcie ep/rc validation system | 641 | * in imx6 pcie ep/rc validation system |
639 | */ | 642 | */ |
640 | writel(2, pp->dbi_base + PCIE_ATU_VIEWPORT); | 643 | writel(2, pp->dbi_base + PCIE_ATU_VIEWPORT); |
641 | writel(pp->mem_base, pp->dbi_base + PCIE_ATU_LOWER_BASE); | 644 | writel(pp->mem_base, pp->dbi_base + PCIE_ATU_LOWER_BASE); |
642 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_BASE); | 645 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_BASE); |
643 | writel(pp->mem_base + test_region_size, | 646 | writel(pp->mem_base + test_region_size, |
644 | pp->dbi_base + PCIE_ATU_LIMIT); | 647 | pp->dbi_base + PCIE_ATU_LIMIT); |
645 | 648 | ||
646 | writel(ddr_test_region, | 649 | writel(ddr_test_region, |
647 | pp->dbi_base + PCIE_ATU_LOWER_TARGET); | 650 | pp->dbi_base + PCIE_ATU_LOWER_TARGET); |
648 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_TARGET); | 651 | writel(0, pp->dbi_base + PCIE_ATU_UPPER_TARGET); |
649 | writel(PCIE_ATU_TYPE_MEM, pp->dbi_base + PCIE_ATU_CR1); | 652 | writel(PCIE_ATU_TYPE_MEM, pp->dbi_base + PCIE_ATU_CR1); |
650 | writel(PCIE_ATU_ENABLE, pp->dbi_base + PCIE_ATU_CR2); | 653 | writel(PCIE_ATU_ENABLE, pp->dbi_base + PCIE_ATU_CR2); |
651 | } | 654 | } |
652 | } | 655 | } |
653 | 656 | ||
654 | static ssize_t imx_pcie_memw_info(struct device *dev, | 657 | static ssize_t imx_pcie_memw_info(struct device *dev, |
655 | struct device_attribute *devattr, char *buf) | 658 | struct device_attribute *devattr, char *buf) |
656 | { | 659 | { |
657 | return sprintf(buf, "imx-pcie-rc-memw-info start 0x%08x, size 0x%08x\n", | 660 | return sprintf(buf, "imx-pcie-rc-memw-info start 0x%08x, size 0x%08x\n", |
658 | ddr_test_region, test_region_size); | 661 | ddr_test_region, test_region_size); |
659 | } | 662 | } |
660 | 663 | ||
661 | static ssize_t | 664 | static ssize_t |
662 | imx_pcie_memw_start(struct device *dev, struct device_attribute *attr, | 665 | imx_pcie_memw_start(struct device *dev, struct device_attribute *attr, |
663 | const char *buf, size_t count) | 666 | const char *buf, size_t count) |
664 | { | 667 | { |
665 | u32 memw_start; | 668 | u32 memw_start; |
666 | 669 | ||
667 | sscanf(buf, "%x\n", &memw_start); | 670 | sscanf(buf, "%x\n", &memw_start); |
668 | 671 | ||
669 | if (memw_start < 0x10000000) { | 672 | if (memw_start < 0x10000000) { |
670 | dev_err(dev, "Invalid memory start address.\n"); | 673 | dev_err(dev, "Invalid memory start address.\n"); |
671 | dev_info(dev, "For example: echo 0x41000000 > /sys/..."); | 674 | dev_info(dev, "For example: echo 0x41000000 > /sys/..."); |
672 | return -1; | 675 | return -1; |
673 | } | 676 | } |
674 | 677 | ||
675 | if (ddr_test_region != memw_start) { | 678 | if (ddr_test_region != memw_start) { |
676 | ddr_test_region = memw_start; | 679 | ddr_test_region = memw_start; |
677 | /* Re-setup the iATU */ | 680 | /* Re-setup the iATU */ |
678 | imx_pcie_regions_setup(dev); | 681 | imx_pcie_regions_setup(dev); |
679 | } | 682 | } |
680 | 683 | ||
681 | return count; | 684 | return count; |
682 | } | 685 | } |
683 | 686 | ||
684 | static ssize_t | 687 | static ssize_t |
685 | imx_pcie_memw_size(struct device *dev, struct device_attribute *attr, | 688 | imx_pcie_memw_size(struct device *dev, struct device_attribute *attr, |
686 | const char *buf, size_t count) | 689 | const char *buf, size_t count) |
687 | { | 690 | { |
688 | u32 memw_size; | 691 | u32 memw_size; |
689 | 692 | ||
690 | sscanf(buf, "%x\n", &memw_size); | 693 | sscanf(buf, "%x\n", &memw_size); |
691 | 694 | ||
692 | if ((memw_size > (SZ_16M - SZ_1M)) || (memw_size < SZ_64K)) { | 695 | if ((memw_size > (SZ_16M - SZ_1M)) || (memw_size < SZ_64K)) { |
693 | dev_err(dev, "Invalid, should be [SZ_64K,SZ_16M - SZ_1MB].\n"); | 696 | dev_err(dev, "Invalid, should be [SZ_64K,SZ_16M - SZ_1MB].\n"); |
694 | dev_info(dev, "For example: echo 0x800000 > /sys/..."); | 697 | dev_info(dev, "For example: echo 0x800000 > /sys/..."); |
695 | return -1; | 698 | return -1; |
696 | } | 699 | } |
697 | 700 | ||
698 | if (test_region_size != memw_size) { | 701 | if (test_region_size != memw_size) { |
699 | test_region_size = memw_size; | 702 | test_region_size = memw_size; |
700 | /* Re-setup the iATU */ | 703 | /* Re-setup the iATU */ |
701 | imx_pcie_regions_setup(dev); | 704 | imx_pcie_regions_setup(dev); |
702 | } | 705 | } |
703 | 706 | ||
704 | return count; | 707 | return count; |
705 | } | 708 | } |
706 | 709 | ||
707 | static DEVICE_ATTR(memw_info, S_IRUGO, imx_pcie_memw_info, NULL); | 710 | static DEVICE_ATTR(memw_info, S_IRUGO, imx_pcie_memw_info, NULL); |
708 | static DEVICE_ATTR(memw_start_set, S_IWUGO, NULL, imx_pcie_memw_start); | 711 | static DEVICE_ATTR(memw_start_set, S_IWUGO, NULL, imx_pcie_memw_start); |
709 | static DEVICE_ATTR(memw_size_set, S_IWUGO, NULL, imx_pcie_memw_size); | 712 | static DEVICE_ATTR(memw_size_set, S_IWUGO, NULL, imx_pcie_memw_size); |
710 | static DEVICE_ATTR(ep_bar0_addr, S_IRWXUGO, imx_pcie_bar0_addr_info, | 713 | static DEVICE_ATTR(ep_bar0_addr, S_IRWXUGO, imx_pcie_bar0_addr_info, |
711 | imx_pcie_bar0_addr_start); | 714 | imx_pcie_bar0_addr_start); |
712 | 715 | ||
713 | static struct attribute *imx_pcie_attrs[] = { | 716 | static struct attribute *imx_pcie_attrs[] = { |
714 | /* | 717 | /* |
715 | * The start address, and the limitation (64KB ~ (16MB - 1MB)) | 718 | * The start address, and the limitation (64KB ~ (16MB - 1MB)) |
716 | * of the ddr mem window reserved by RC, and used for EP to access. | 719 | * of the ddr mem window reserved by RC, and used for EP to access. |
717 | * BTW, these attrs are only configured at EP side. | 720 | * BTW, these attrs are only configured at EP side. |
718 | */ | 721 | */ |
719 | &dev_attr_memw_info.attr, | 722 | &dev_attr_memw_info.attr, |
720 | &dev_attr_memw_start_set.attr, | 723 | &dev_attr_memw_start_set.attr, |
721 | &dev_attr_memw_size_set.attr, | 724 | &dev_attr_memw_size_set.attr, |
722 | &dev_attr_ep_bar0_addr.attr, | 725 | &dev_attr_ep_bar0_addr.attr, |
723 | NULL | 726 | NULL |
724 | }; | 727 | }; |
725 | 728 | ||
726 | static struct attribute_group imx_pcie_attrgroup = { | 729 | static struct attribute_group imx_pcie_attrgroup = { |
727 | .attrs = imx_pcie_attrs, | 730 | .attrs = imx_pcie_attrs, |
728 | }; | 731 | }; |
729 | 732 | ||
730 | static const struct of_device_id imx6_pcie_of_match[] = { | 733 | static const struct of_device_id imx6_pcie_of_match[] = { |
731 | { .compatible = "fsl,imx6q-pcie", }, | 734 | { .compatible = "fsl,imx6q-pcie", }, |
732 | { .compatible = "fsl,imx6sx-pcie", .data = &imx6sx_pcie_data}, | 735 | { .compatible = "fsl,imx6sx-pcie", .data = &imx6sx_pcie_data}, |
733 | { /* sentinel */ } | 736 | { /* sentinel */ } |
734 | }; | 737 | }; |
735 | MODULE_DEVICE_TABLE(of, imx6_pcie_of_match); | 738 | MODULE_DEVICE_TABLE(of, imx6_pcie_of_match); |
736 | 739 | ||
737 | static void imx6_pcie_setup_ep(struct pcie_port *pp) | 740 | static void imx6_pcie_setup_ep(struct pcie_port *pp) |
738 | { | 741 | { |
739 | /* CMD reg:I/O space, MEM space, and Bus Master Enable */ | 742 | /* CMD reg:I/O space, MEM space, and Bus Master Enable */ |
740 | writel(readl(pp->dbi_base + PCI_COMMAND) | 743 | writel(readl(pp->dbi_base + PCI_COMMAND) |
741 | | PCI_COMMAND_IO | 744 | | PCI_COMMAND_IO |
742 | | PCI_COMMAND_MEMORY | 745 | | PCI_COMMAND_MEMORY |
743 | | PCI_COMMAND_MASTER, | 746 | | PCI_COMMAND_MASTER, |
744 | pp->dbi_base + PCI_COMMAND); | 747 | pp->dbi_base + PCI_COMMAND); |
745 | 748 | ||
746 | /* | 749 | /* |
747 | * configure the class_rev(emaluate one memory ram ep device), | 750 | * configure the class_rev(emaluate one memory ram ep device), |
748 | * bar0 and bar1 of ep | 751 | * bar0 and bar1 of ep |
749 | */ | 752 | */ |
750 | writel(0xdeadbeaf, pp->dbi_base + PCI_VENDOR_ID); | 753 | writel(0xdeadbeaf, pp->dbi_base + PCI_VENDOR_ID); |
751 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) | 754 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) |
752 | | (PCI_CLASS_MEMORY_RAM << 16), | 755 | | (PCI_CLASS_MEMORY_RAM << 16), |
753 | pp->dbi_base + PCI_CLASS_REVISION); | 756 | pp->dbi_base + PCI_CLASS_REVISION); |
754 | writel(0xdeadbeaf, pp->dbi_base | 757 | writel(0xdeadbeaf, pp->dbi_base |
755 | + PCI_SUBSYSTEM_VENDOR_ID); | 758 | + PCI_SUBSYSTEM_VENDOR_ID); |
756 | 759 | ||
757 | /* 32bit none-prefetchable 8M bytes memory on bar0 */ | 760 | /* 32bit none-prefetchable 8M bytes memory on bar0 */ |
758 | writel(0x0, pp->dbi_base + PCI_BASE_ADDRESS_0); | 761 | writel(0x0, pp->dbi_base + PCI_BASE_ADDRESS_0); |
759 | writel(SZ_8M - 1, pp->dbi_base + (1 << 12) | 762 | writel(SZ_8M - 1, pp->dbi_base + (1 << 12) |
760 | + PCI_BASE_ADDRESS_0); | 763 | + PCI_BASE_ADDRESS_0); |
761 | 764 | ||
762 | /* None used bar1 */ | 765 | /* None used bar1 */ |
763 | writel(0x0, pp->dbi_base + PCI_BASE_ADDRESS_1); | 766 | writel(0x0, pp->dbi_base + PCI_BASE_ADDRESS_1); |
764 | writel(0, pp->dbi_base + (1 << 12) + PCI_BASE_ADDRESS_1); | 767 | writel(0, pp->dbi_base + (1 << 12) + PCI_BASE_ADDRESS_1); |
765 | 768 | ||
766 | /* 4K bytes IO on bar2 */ | 769 | /* 4K bytes IO on bar2 */ |
767 | writel(0x1, pp->dbi_base + PCI_BASE_ADDRESS_2); | 770 | writel(0x1, pp->dbi_base + PCI_BASE_ADDRESS_2); |
768 | writel(SZ_4K - 1, pp->dbi_base + (1 << 12) + | 771 | writel(SZ_4K - 1, pp->dbi_base + (1 << 12) + |
769 | PCI_BASE_ADDRESS_2); | 772 | PCI_BASE_ADDRESS_2); |
770 | 773 | ||
771 | /* | 774 | /* |
772 | * 32bit prefetchable 1M bytes memory on bar3 | 775 | * 32bit prefetchable 1M bytes memory on bar3 |
773 | * FIXME BAR MASK3 is not changable, the size | 776 | * FIXME BAR MASK3 is not changable, the size |
774 | * is fixed to 256 bytes. | 777 | * is fixed to 256 bytes. |
775 | */ | 778 | */ |
776 | writel(0x8, pp->dbi_base + PCI_BASE_ADDRESS_3); | 779 | writel(0x8, pp->dbi_base + PCI_BASE_ADDRESS_3); |
777 | writel(SZ_1M - 1, pp->dbi_base + (1 << 12) | 780 | writel(SZ_1M - 1, pp->dbi_base + (1 << 12) |
778 | + PCI_BASE_ADDRESS_3); | 781 | + PCI_BASE_ADDRESS_3); |
779 | 782 | ||
780 | /* | 783 | /* |
781 | * 64bit prefetchable 1M bytes memory on bar4-5. | 784 | * 64bit prefetchable 1M bytes memory on bar4-5. |
782 | * FIXME BAR4,5 are not enabled yet | 785 | * FIXME BAR4,5 are not enabled yet |
783 | */ | 786 | */ |
784 | writel(0xc, pp->dbi_base + PCI_BASE_ADDRESS_4); | 787 | writel(0xc, pp->dbi_base + PCI_BASE_ADDRESS_4); |
785 | writel(SZ_1M - 1, pp->dbi_base + (1 << 12) | 788 | writel(SZ_1M - 1, pp->dbi_base + (1 << 12) |
786 | + PCI_BASE_ADDRESS_4); | 789 | + PCI_BASE_ADDRESS_4); |
787 | writel(0, pp->dbi_base + (1 << 12) + PCI_BASE_ADDRESS_5); | 790 | writel(0, pp->dbi_base + (1 << 12) + PCI_BASE_ADDRESS_5); |
788 | } | 791 | } |
789 | 792 | ||
790 | #ifdef CONFIG_PM_SLEEP | 793 | #ifdef CONFIG_PM_SLEEP |
791 | static int pci_imx_suspend_noirq(struct device *dev) | 794 | static int pci_imx_suspend_noirq(struct device *dev) |
792 | { | 795 | { |
793 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); | 796 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); |
794 | struct pcie_port *pp = &imx6_pcie->pp; | 797 | struct pcie_port *pp = &imx6_pcie->pp; |
795 | 798 | ||
796 | if (is_imx6sx_pcie(imx6_pcie)) { | 799 | if (is_imx6sx_pcie(imx6_pcie)) { |
797 | if (IS_ENABLED(CONFIG_PCI_IMX6SX_EXTREMELY_PWR_SAVE)) { | 800 | if (IS_ENABLED(CONFIG_PCI_IMX6SX_EXTREMELY_PWR_SAVE)) { |
798 | if (IS_ENABLED(CONFIG_PCI_MSI)) | 801 | if (IS_ENABLED(CONFIG_PCI_MSI)) |
799 | dw_pcie_msi_cfg_save(pp); | 802 | dw_pcie_msi_cfg_save(pp); |
800 | 803 | ||
801 | /* Disable clks and power down PCIe PHY */ | 804 | /* Disable clks and power down PCIe PHY */ |
802 | clk_disable_unprepare(imx6_pcie->pcie_axi); | 805 | clk_disable_unprepare(imx6_pcie->pcie_axi); |
803 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) | 806 | if (!IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS) |
804 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) | 807 | && !IS_ENABLED(CONFIG_RC_MODE_IN_EP_RC_SYS)) |
805 | clk_disable_unprepare(imx6_pcie->lvds_gate); | 808 | clk_disable_unprepare(imx6_pcie->lvds_gate); |
806 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); | 809 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); |
807 | clk_disable_unprepare(imx6_pcie->dis_axi); | 810 | clk_disable_unprepare(imx6_pcie->dis_axi); |
808 | release_bus_freq(BUS_FREQ_HIGH); | 811 | release_bus_freq(BUS_FREQ_HIGH); |
809 | 812 | ||
810 | /* Put PCIe PHY to be isolation */ | 813 | /* Put PCIe PHY to be isolation */ |
811 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR0, | 814 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR0, |
812 | BIT(6), 1 << 6); | 815 | BIT(6), 1 << 6); |
813 | 816 | ||
814 | /* | 817 | /* |
815 | * Power down PCIe PHY. | 818 | * Power down PCIe PHY. |
816 | */ | 819 | */ |
817 | regulator_disable(imx6_pcie->pcie_phy_reg); | 820 | regulator_disable(imx6_pcie->pcie_phy_reg); |
818 | regulator_disable(imx6_pcie->pcie_reg); | 821 | regulator_disable(imx6_pcie->pcie_reg); |
819 | } else { | 822 | } else { |
820 | if (IS_ENABLED(CONFIG_PCI_MSI)) | 823 | if (IS_ENABLED(CONFIG_PCI_MSI)) |
821 | dw_pcie_msi_cfg_save(pp); | 824 | dw_pcie_msi_cfg_save(pp); |
822 | 825 | ||
823 | /* PM_TURN_OFF */ | 826 | /* PM_TURN_OFF */ |
824 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 827 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
825 | BIT(16), 1 << 16); | 828 | BIT(16), 1 << 16); |
826 | udelay(10); | 829 | udelay(10); |
827 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 830 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
828 | BIT(16), 0 << 16); | 831 | BIT(16), 0 << 16); |
829 | clk_disable_unprepare(imx6_pcie->pcie_axi); | 832 | clk_disable_unprepare(imx6_pcie->pcie_axi); |
830 | clk_disable_unprepare(imx6_pcie->lvds_gate); | 833 | clk_disable_unprepare(imx6_pcie->lvds_gate); |
831 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); | 834 | clk_disable_unprepare(imx6_pcie->pcie_ref_125m); |
832 | clk_disable_unprepare(imx6_pcie->dis_axi); | 835 | clk_disable_unprepare(imx6_pcie->dis_axi); |
833 | release_bus_freq(BUS_FREQ_HIGH); | 836 | release_bus_freq(BUS_FREQ_HIGH); |
834 | } | 837 | } |
835 | } | 838 | } |
836 | 839 | ||
837 | return 0; | 840 | return 0; |
838 | } | 841 | } |
839 | 842 | ||
840 | static int pci_imx_resume_noirq(struct device *dev) | 843 | static int pci_imx_resume_noirq(struct device *dev) |
841 | { | 844 | { |
842 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); | 845 | struct imx6_pcie *imx6_pcie = dev_get_drvdata(dev); |
843 | struct pcie_port *pp = &imx6_pcie->pp; | 846 | struct pcie_port *pp = &imx6_pcie->pp; |
844 | 847 | ||
845 | if (is_imx6sx_pcie(imx6_pcie)) { | 848 | if (is_imx6sx_pcie(imx6_pcie)) { |
846 | if (IS_ENABLED(CONFIG_PCI_IMX6SX_EXTREMELY_PWR_SAVE)) { | 849 | if (IS_ENABLED(CONFIG_PCI_IMX6SX_EXTREMELY_PWR_SAVE)) { |
847 | /* Power up PCIe PHY, and so on again */ | 850 | /* Power up PCIe PHY, and so on again */ |
848 | imx6_pcie_init_phy(pp); | 851 | imx6_pcie_init_phy(pp); |
849 | imx6_pcie_deassert_core_reset(pp); | 852 | imx6_pcie_deassert_core_reset(pp); |
850 | 853 | ||
851 | /* | 854 | /* |
852 | * iMX6SX PCIe has the stand-alone power domain. | 855 | * iMX6SX PCIe has the stand-alone power domain. |
853 | * refer to the initialization for iMX6SX PCIe, | 856 | * refer to the initialization for iMX6SX PCIe, |
854 | * release the PCIe PHY reset here, | 857 | * release the PCIe PHY reset here, |
855 | * before LTSSM enable is set | 858 | * before LTSSM enable is set |
856 | * . | 859 | * . |
857 | */ | 860 | */ |
858 | regmap_update_bits(imx6_pcie->iomuxc_gpr, | 861 | regmap_update_bits(imx6_pcie->iomuxc_gpr, |
859 | IOMUXC_GPR5, BIT(19), 0 << 19); | 862 | IOMUXC_GPR5, BIT(19), 0 << 19); |
860 | 863 | ||
861 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { | 864 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { |
862 | imx6_pcie_setup_ep(pp); | 865 | imx6_pcie_setup_ep(pp); |
863 | } else { | 866 | } else { |
864 | /* | 867 | /* |
865 | * CMD reg:I/O space, MEM space, | 868 | * CMD reg:I/O space, MEM space, |
866 | * and Bus Master | 869 | * and Bus Master |
867 | */ | 870 | */ |
868 | writel(readl(pp->dbi_base + PCI_COMMAND) | 871 | writel(readl(pp->dbi_base + PCI_COMMAND) |
869 | | PCI_COMMAND_IO | 872 | | PCI_COMMAND_IO |
870 | | PCI_COMMAND_MEMORY | 873 | | PCI_COMMAND_MEMORY |
871 | | PCI_COMMAND_MASTER, | 874 | | PCI_COMMAND_MASTER, |
872 | pp->dbi_base + PCI_COMMAND); | 875 | pp->dbi_base + PCI_COMMAND); |
873 | /* | 876 | /* |
874 | * Set the CLASS_REV of RC CFG header to | 877 | * Set the CLASS_REV of RC CFG header to |
875 | * PCI_CLASS_BRIDGE_PCI | 878 | * PCI_CLASS_BRIDGE_PCI |
876 | */ | 879 | */ |
877 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) | 880 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) |
878 | | (PCI_CLASS_BRIDGE_PCI << 16), | 881 | | (PCI_CLASS_BRIDGE_PCI << 16), |
879 | pp->dbi_base + PCI_CLASS_REVISION); | 882 | pp->dbi_base + PCI_CLASS_REVISION); |
880 | } | 883 | } |
881 | 884 | ||
882 | if (IS_ENABLED(CONFIG_PCI_MSI)) | 885 | if (IS_ENABLED(CONFIG_PCI_MSI)) |
883 | dw_pcie_msi_cfg_restore(pp); | 886 | dw_pcie_msi_cfg_restore(pp); |
884 | 887 | ||
885 | /* assert LTSSM enable */ | 888 | /* assert LTSSM enable */ |
886 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 889 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
887 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); | 890 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); |
888 | } else { | 891 | } else { |
889 | request_bus_freq(BUS_FREQ_HIGH); | 892 | request_bus_freq(BUS_FREQ_HIGH); |
890 | clk_prepare_enable(imx6_pcie->dis_axi); | 893 | clk_prepare_enable(imx6_pcie->dis_axi); |
891 | clk_prepare_enable(imx6_pcie->lvds_gate); | 894 | clk_prepare_enable(imx6_pcie->lvds_gate); |
892 | clk_prepare_enable(imx6_pcie->pcie_ref_125m); | 895 | clk_prepare_enable(imx6_pcie->pcie_ref_125m); |
893 | clk_prepare_enable(imx6_pcie->pcie_axi); | 896 | clk_prepare_enable(imx6_pcie->pcie_axi); |
894 | 897 | ||
895 | /* Reset iMX6SX PCIe */ | 898 | /* Reset iMX6SX PCIe */ |
896 | regmap_update_bits(imx6_pcie->iomuxc_gpr, | 899 | regmap_update_bits(imx6_pcie->iomuxc_gpr, |
897 | IOMUXC_GPR5, BIT(18), 1 << 18); | 900 | IOMUXC_GPR5, BIT(18), 1 << 18); |
898 | 901 | ||
899 | regmap_update_bits(imx6_pcie->iomuxc_gpr, | 902 | regmap_update_bits(imx6_pcie->iomuxc_gpr, |
900 | IOMUXC_GPR5, BIT(18), 0 << 18); | 903 | IOMUXC_GPR5, BIT(18), 0 << 18); |
901 | /* | 904 | /* |
902 | * controller maybe turn off, re-configure again | 905 | * controller maybe turn off, re-configure again |
903 | */ | 906 | */ |
904 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) | 907 | writel(readl(pp->dbi_base + PCI_CLASS_REVISION) |
905 | | (PCI_CLASS_BRIDGE_PCI << 16), | 908 | | (PCI_CLASS_BRIDGE_PCI << 16), |
906 | pp->dbi_base + PCI_CLASS_REVISION); | 909 | pp->dbi_base + PCI_CLASS_REVISION); |
907 | dw_pcie_setup_rc(pp); | 910 | dw_pcie_setup_rc(pp); |
908 | 911 | ||
909 | if (IS_ENABLED(CONFIG_PCI_MSI)) | 912 | if (IS_ENABLED(CONFIG_PCI_MSI)) |
910 | dw_pcie_msi_cfg_restore(pp); | 913 | dw_pcie_msi_cfg_restore(pp); |
911 | } | 914 | } |
912 | } | 915 | } |
913 | 916 | ||
914 | return 0; | 917 | return 0; |
915 | } | 918 | } |
916 | 919 | ||
917 | static const struct dev_pm_ops pci_imx_pm_ops = { | 920 | static const struct dev_pm_ops pci_imx_pm_ops = { |
918 | .suspend_noirq = pci_imx_suspend_noirq, | 921 | .suspend_noirq = pci_imx_suspend_noirq, |
919 | .resume_noirq = pci_imx_resume_noirq, | 922 | .resume_noirq = pci_imx_resume_noirq, |
920 | .freeze_noirq = pci_imx_suspend_noirq, | 923 | .freeze_noirq = pci_imx_suspend_noirq, |
921 | .thaw_noirq = pci_imx_resume_noirq, | 924 | .thaw_noirq = pci_imx_resume_noirq, |
922 | .poweroff_noirq = pci_imx_suspend_noirq, | 925 | .poweroff_noirq = pci_imx_suspend_noirq, |
923 | .restore_noirq = pci_imx_resume_noirq, }; | 926 | .restore_noirq = pci_imx_resume_noirq, }; |
924 | #else | 927 | #else |
925 | static const struct dev_pm_ops pci_imx_pm_ops = { }; | 928 | static const struct dev_pm_ops pci_imx_pm_ops = { }; |
926 | #endif | 929 | #endif |
927 | 930 | ||
928 | static int __init imx6_pcie_probe(struct platform_device *pdev) | 931 | static int __init imx6_pcie_probe(struct platform_device *pdev) |
929 | { | 932 | { |
930 | struct pcie_port *pp; | 933 | struct pcie_port *pp; |
931 | const struct of_device_id *of_id = | 934 | const struct of_device_id *of_id = |
932 | of_match_device(imx6_pcie_of_match, &pdev->dev); | 935 | of_match_device(imx6_pcie_of_match, &pdev->dev); |
933 | struct device_node *np = pdev->dev.of_node; | 936 | struct device_node *np = pdev->dev.of_node; |
934 | struct resource *dbi_base; | 937 | struct resource *dbi_base; |
935 | int ret, i; | 938 | int ret, i; |
936 | void *test_reg1, *test_reg2; | 939 | void *test_reg1, *test_reg2; |
937 | void __iomem *pcie_arb_base_addr; | 940 | void __iomem *pcie_arb_base_addr; |
938 | struct timeval tv1, tv2, tv3; | 941 | struct timeval tv1, tv2, tv3; |
939 | u32 tv_count1, tv_count2; | 942 | u32 tv_count1, tv_count2; |
940 | 943 | ||
941 | imx6_pcie = devm_kzalloc(&pdev->dev, sizeof(*imx6_pcie), GFP_KERNEL); | 944 | imx6_pcie = devm_kzalloc(&pdev->dev, sizeof(*imx6_pcie), GFP_KERNEL); |
942 | if (!imx6_pcie) | 945 | if (!imx6_pcie) |
943 | return -ENOMEM; | 946 | return -ENOMEM; |
944 | 947 | ||
945 | pp = &imx6_pcie->pp; | 948 | pp = &imx6_pcie->pp; |
946 | pp->dev = &pdev->dev; | 949 | pp->dev = &pdev->dev; |
947 | imx6_pcie->data = of_id->data; | 950 | imx6_pcie->data = of_id->data; |
948 | 951 | ||
949 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { | 952 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { |
950 | /* add attributes for device */ | 953 | /* add attributes for device */ |
951 | ret = sysfs_create_group(&pdev->dev.kobj, &imx_pcie_attrgroup); | 954 | ret = sysfs_create_group(&pdev->dev.kobj, &imx_pcie_attrgroup); |
952 | if (ret) | 955 | if (ret) |
953 | return -EINVAL; | 956 | return -EINVAL; |
954 | } | 957 | } |
955 | 958 | ||
956 | /* Added for PCI abort handling */ | 959 | /* Added for PCI abort handling */ |
957 | hook_fault_code(16 + 6, imx6q_pcie_abort_handler, SIGBUS, 0, | 960 | hook_fault_code(16 + 6, imx6q_pcie_abort_handler, SIGBUS, 0, |
958 | "imprecise external abort"); | 961 | "imprecise external abort"); |
959 | 962 | ||
960 | dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 963 | dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
961 | if (!dbi_base) { | 964 | if (!dbi_base) { |
962 | dev_err(&pdev->dev, "dbi_base memory resource not found\n"); | 965 | dev_err(&pdev->dev, "dbi_base memory resource not found\n"); |
963 | return -ENODEV; | 966 | return -ENODEV; |
964 | } | 967 | } |
965 | 968 | ||
966 | pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base); | 969 | pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base); |
967 | if (IS_ERR(pp->dbi_base)) { | 970 | if (IS_ERR(pp->dbi_base)) { |
968 | ret = PTR_ERR(pp->dbi_base); | 971 | ret = PTR_ERR(pp->dbi_base); |
969 | goto err; | 972 | goto err; |
970 | } | 973 | } |
971 | 974 | ||
972 | /* Fetch GPIOs */ | 975 | /* Fetch GPIOs */ |
973 | imx6_pcie->reset_gpio = of_get_named_gpio(np, "reset-gpio", 0); | 976 | imx6_pcie->reset_gpio = of_get_named_gpio(np, "reset-gpio", 0); |
974 | if (gpio_is_valid(imx6_pcie->reset_gpio)) { | 977 | if (gpio_is_valid(imx6_pcie->reset_gpio)) { |
975 | ret = devm_gpio_request_one(&pdev->dev, | 978 | ret = devm_gpio_request_one(&pdev->dev, |
976 | imx6_pcie->reset_gpio, | 979 | imx6_pcie->reset_gpio, |
977 | GPIOF_OUT_INIT_LOW, | 980 | GPIOF_OUT_INIT_LOW, |
978 | "PCIe reset"); | 981 | "PCIe reset"); |
979 | if (ret) { | 982 | if (ret) { |
980 | dev_err(&pdev->dev, "unable to get reset gpio\n"); | 983 | dev_err(&pdev->dev, "unable to get reset gpio\n"); |
981 | goto err; | 984 | goto err; |
982 | } | 985 | } |
983 | } | 986 | } |
984 | 987 | ||
985 | imx6_pcie->power_on_gpio = of_get_named_gpio(np, "power-on-gpio", 0); | 988 | imx6_pcie->power_on_gpio = of_get_named_gpio(np, "power-on-gpio", 0); |
986 | if (gpio_is_valid(imx6_pcie->power_on_gpio)) { | 989 | if (gpio_is_valid(imx6_pcie->power_on_gpio)) { |
987 | ret = devm_gpio_request_one(&pdev->dev, | 990 | ret = devm_gpio_request_one(&pdev->dev, |
988 | imx6_pcie->power_on_gpio, | 991 | imx6_pcie->power_on_gpio, |
989 | GPIOF_OUT_INIT_LOW, | 992 | GPIOF_OUT_INIT_LOW, |
990 | "PCIe power enable"); | 993 | "PCIe power enable"); |
991 | if (ret) { | 994 | if (ret) { |
992 | dev_err(&pdev->dev, "unable to get power-on gpio\n"); | 995 | dev_err(&pdev->dev, "unable to get power-on gpio\n"); |
993 | goto err; | 996 | goto err; |
994 | } | 997 | } |
995 | } | 998 | } |
996 | 999 | ||
997 | imx6_pcie->wake_up_gpio = of_get_named_gpio(np, "wake-up-gpio", 0); | 1000 | imx6_pcie->wake_up_gpio = of_get_named_gpio(np, "wake-up-gpio", 0); |
998 | if (gpio_is_valid(imx6_pcie->wake_up_gpio)) { | 1001 | if (gpio_is_valid(imx6_pcie->wake_up_gpio)) { |
999 | ret = devm_gpio_request_one(&pdev->dev, | 1002 | ret = devm_gpio_request_one(&pdev->dev, |
1000 | imx6_pcie->wake_up_gpio, | 1003 | imx6_pcie->wake_up_gpio, |
1001 | GPIOF_IN, | 1004 | GPIOF_IN, |
1002 | "PCIe wake up"); | 1005 | "PCIe wake up"); |
1003 | if (ret) { | 1006 | if (ret) { |
1004 | dev_err(&pdev->dev, "unable to get wake-up gpio\n"); | 1007 | dev_err(&pdev->dev, "unable to get wake-up gpio\n"); |
1005 | goto err; | 1008 | goto err; |
1006 | } | 1009 | } |
1007 | } | 1010 | } |
1008 | 1011 | ||
1009 | imx6_pcie->disable_gpio = of_get_named_gpio(np, "disable-gpio", 0); | 1012 | imx6_pcie->disable_gpio = of_get_named_gpio(np, "disable-gpio", 0); |
1010 | if (gpio_is_valid(imx6_pcie->disable_gpio)) { | 1013 | if (gpio_is_valid(imx6_pcie->disable_gpio)) { |
1011 | ret = devm_gpio_request_one(&pdev->dev, | 1014 | ret = devm_gpio_request_one(&pdev->dev, |
1012 | imx6_pcie->disable_gpio, | 1015 | imx6_pcie->disable_gpio, |
1013 | GPIOF_OUT_INIT_HIGH, | 1016 | GPIOF_OUT_INIT_HIGH, |
1014 | "PCIe disable endpoint"); | 1017 | "PCIe disable endpoint"); |
1015 | if (ret) { | 1018 | if (ret) { |
1016 | dev_err(&pdev->dev, "unable to get disable-ep gpio\n"); | 1019 | dev_err(&pdev->dev, "unable to get disable-ep gpio\n"); |
1017 | goto err; | 1020 | goto err; |
1018 | } | 1021 | } |
1019 | } | 1022 | } |
1020 | 1023 | ||
1021 | /* Fetch clocks */ | 1024 | /* Fetch clocks */ |
1022 | imx6_pcie->lvds_gate = devm_clk_get(&pdev->dev, "lvds_gate"); | 1025 | imx6_pcie->lvds_gate = devm_clk_get(&pdev->dev, "lvds_gate"); |
1023 | if (IS_ERR(imx6_pcie->lvds_gate)) { | 1026 | if (IS_ERR(imx6_pcie->lvds_gate)) { |
1024 | dev_err(&pdev->dev, | 1027 | dev_err(&pdev->dev, |
1025 | "lvds_gate clock select missing or invalid\n"); | 1028 | "lvds_gate clock select missing or invalid\n"); |
1026 | ret = PTR_ERR(imx6_pcie->lvds_gate); | 1029 | ret = PTR_ERR(imx6_pcie->lvds_gate); |
1027 | goto err; | 1030 | goto err; |
1028 | } | 1031 | } |
1029 | 1032 | ||
1030 | imx6_pcie->pcie_ref_125m = devm_clk_get(&pdev->dev, "pcie_ref_125m"); | 1033 | imx6_pcie->pcie_ref_125m = devm_clk_get(&pdev->dev, "pcie_ref_125m"); |
1031 | if (IS_ERR(imx6_pcie->pcie_ref_125m)) { | 1034 | if (IS_ERR(imx6_pcie->pcie_ref_125m)) { |
1032 | dev_err(&pdev->dev, | 1035 | dev_err(&pdev->dev, |
1033 | "pcie_ref_125m clock source missing or invalid\n"); | 1036 | "pcie_ref_125m clock source missing or invalid\n"); |
1034 | ret = PTR_ERR(imx6_pcie->pcie_ref_125m); | 1037 | ret = PTR_ERR(imx6_pcie->pcie_ref_125m); |
1035 | goto err; | 1038 | goto err; |
1036 | } | 1039 | } |
1037 | 1040 | ||
1038 | imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi"); | 1041 | imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi"); |
1039 | if (IS_ERR(imx6_pcie->pcie_axi)) { | 1042 | if (IS_ERR(imx6_pcie->pcie_axi)) { |
1040 | dev_err(&pdev->dev, | 1043 | dev_err(&pdev->dev, |
1041 | "pcie_axi clock source missing or invalid\n"); | 1044 | "pcie_axi clock source missing or invalid\n"); |
1042 | ret = PTR_ERR(imx6_pcie->pcie_axi); | 1045 | ret = PTR_ERR(imx6_pcie->pcie_axi); |
1043 | goto err; | 1046 | goto err; |
1044 | } | 1047 | } |
1045 | 1048 | ||
1046 | if (is_imx6sx_pcie(imx6_pcie)) { | 1049 | if (is_imx6sx_pcie(imx6_pcie)) { |
1047 | imx6_pcie->dis_axi = devm_clk_get(&pdev->dev, "display_axi"); | 1050 | imx6_pcie->dis_axi = devm_clk_get(&pdev->dev, "display_axi"); |
1048 | if (IS_ERR(imx6_pcie->dis_axi)) { | 1051 | if (IS_ERR(imx6_pcie->dis_axi)) { |
1049 | dev_err(&pdev->dev, | 1052 | dev_err(&pdev->dev, |
1050 | "dis_axi clock source missing or invalid\n"); | 1053 | "dis_axi clock source missing or invalid\n"); |
1051 | ret = PTR_ERR(imx6_pcie->dis_axi); | 1054 | ret = PTR_ERR(imx6_pcie->dis_axi); |
1052 | goto err; | 1055 | goto err; |
1053 | } | 1056 | } |
1054 | 1057 | ||
1055 | /* Get pcie regulator */ | 1058 | /* Get pcie regulator */ |
1056 | imx6_pcie->pcie_reg = devm_regulator_get(pp->dev, "disp"); | 1059 | imx6_pcie->pcie_reg = devm_regulator_get(pp->dev, "disp"); |
1057 | if (IS_ERR(imx6_pcie->pcie_reg)) { | 1060 | if (IS_ERR(imx6_pcie->pcie_reg)) { |
1058 | dev_err(&pdev->dev, "pcie regulator not ready\n"); | 1061 | dev_err(&pdev->dev, "pcie regulator not ready\n"); |
1059 | imx6_pcie->pcie_reg = NULL; | 1062 | imx6_pcie->pcie_reg = NULL; |
1060 | } | 1063 | } |
1061 | imx6_pcie->pcie_phy_reg = devm_regulator_get(pp->dev, "pcie"); | 1064 | imx6_pcie->pcie_phy_reg = devm_regulator_get(pp->dev, "pcie"); |
1062 | if (IS_ERR(imx6_pcie->pcie_phy_reg)) { | 1065 | if (IS_ERR(imx6_pcie->pcie_phy_reg)) { |
1063 | dev_err(&pdev->dev, "pcie phy regulator not ready\n"); | 1066 | dev_err(&pdev->dev, "pcie phy regulator not ready\n"); |
1064 | imx6_pcie->pcie_phy_reg = NULL; | 1067 | imx6_pcie->pcie_phy_reg = NULL; |
1065 | } | 1068 | } |
1066 | 1069 | ||
1067 | /* Grab GPR config register range */ | 1070 | /* Grab GPR config register range */ |
1068 | imx6_pcie->iomuxc_gpr = | 1071 | imx6_pcie->iomuxc_gpr = |
1069 | syscon_regmap_lookup_by_compatible("fsl,imx6sx-iomuxc-gpr"); | 1072 | syscon_regmap_lookup_by_compatible("fsl,imx6sx-iomuxc-gpr"); |
1070 | } else { | 1073 | } else { |
1071 | /* sata_ref is not used by pcie on imx6sx */ | 1074 | /* sata_ref is not used by pcie on imx6sx */ |
1072 | imx6_pcie->sata_ref_100m = devm_clk_get(&pdev->dev, "sata_ref_100m"); | 1075 | imx6_pcie->sata_ref_100m = devm_clk_get(&pdev->dev, "sata_ref_100m"); |
1073 | if (IS_ERR(imx6_pcie->sata_ref_100m)) { | 1076 | if (IS_ERR(imx6_pcie->sata_ref_100m)) { |
1074 | dev_err(&pdev->dev, | 1077 | dev_err(&pdev->dev, |
1075 | "sata_ref_100m clock source missing or invalid\n"); | 1078 | "sata_ref_100m clock source missing or invalid\n"); |
1076 | ret = PTR_ERR(imx6_pcie->sata_ref_100m); | 1079 | ret = PTR_ERR(imx6_pcie->sata_ref_100m); |
1077 | goto err; | 1080 | goto err; |
1078 | } | 1081 | } |
1079 | 1082 | ||
1080 | /* Grab GPR config register range */ | 1083 | /* Grab GPR config register range */ |
1081 | imx6_pcie->iomuxc_gpr = | 1084 | imx6_pcie->iomuxc_gpr = |
1082 | syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr"); | 1085 | syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr"); |
1083 | } | 1086 | } |
1084 | 1087 | ||
1085 | if (IS_ERR(imx6_pcie->iomuxc_gpr)) { | 1088 | if (IS_ERR(imx6_pcie->iomuxc_gpr)) { |
1086 | dev_err(&pdev->dev, "unable to find iomuxc registers\n"); | 1089 | dev_err(&pdev->dev, "unable to find iomuxc registers\n"); |
1087 | ret = PTR_ERR(imx6_pcie->iomuxc_gpr); | 1090 | ret = PTR_ERR(imx6_pcie->iomuxc_gpr); |
1088 | goto err; | 1091 | goto err; |
1089 | } | 1092 | } |
1090 | 1093 | ||
1091 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { | 1094 | if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) { |
1092 | struct device_node *np = pp->dev->of_node; | 1095 | struct device_node *np = pp->dev->of_node; |
1093 | struct of_pci_range range; | 1096 | struct of_pci_range range; |
1094 | struct of_pci_range_parser parser; | 1097 | struct of_pci_range_parser parser; |
1095 | unsigned long restype; | 1098 | unsigned long restype; |
1096 | 1099 | ||
1097 | if (of_pci_range_parser_init(&parser, np)) { | 1100 | if (of_pci_range_parser_init(&parser, np)) { |
1098 | dev_err(pp->dev, "missing ranges property\n"); | 1101 | dev_err(pp->dev, "missing ranges property\n"); |
1099 | return -EINVAL; | 1102 | return -EINVAL; |
1100 | } | 1103 | } |
1101 | 1104 | ||
1102 | /* Get the memory ranges from DT */ | 1105 | /* Get the memory ranges from DT */ |
1103 | for_each_of_pci_range(&parser, &range) { | 1106 | for_each_of_pci_range(&parser, &range) { |
1104 | restype = range.flags & IORESOURCE_TYPE_BITS; | 1107 | restype = range.flags & IORESOURCE_TYPE_BITS; |
1105 | if (restype == IORESOURCE_MEM) { | 1108 | if (restype == IORESOURCE_MEM) { |
1106 | of_pci_range_to_resource(&range, | 1109 | of_pci_range_to_resource(&range, |
1107 | np, &pp->mem); | 1110 | np, &pp->mem); |
1108 | pp->mem.name = "MEM"; | 1111 | pp->mem.name = "MEM"; |
1109 | } | 1112 | } |
1110 | } | 1113 | } |
1111 | 1114 | ||
1112 | pp->mem_base = pp->mem.start; | 1115 | pp->mem_base = pp->mem.start; |
1113 | if (IS_ENABLED(CONFIG_EP_SELF_IO_TEST)) { | 1116 | if (IS_ENABLED(CONFIG_EP_SELF_IO_TEST)) { |
1114 | /* Prepare the test regions and data */ | 1117 | /* Prepare the test regions and data */ |
1115 | test_reg1 = devm_kzalloc(&pdev->dev, | 1118 | test_reg1 = devm_kzalloc(&pdev->dev, |
1116 | test_region_size, GFP_KERNEL); | 1119 | test_region_size, GFP_KERNEL); |
1117 | if (!test_reg1) { | 1120 | if (!test_reg1) { |
1118 | pr_err("pcie ep: can't alloc the test reg1.\n"); | 1121 | pr_err("pcie ep: can't alloc the test reg1.\n"); |
1119 | ret = PTR_ERR(test_reg1); | 1122 | ret = PTR_ERR(test_reg1); |
1120 | goto err; | 1123 | goto err; |
1121 | } | 1124 | } |
1122 | 1125 | ||
1123 | test_reg2 = devm_kzalloc(&pdev->dev, | 1126 | test_reg2 = devm_kzalloc(&pdev->dev, |
1124 | test_region_size, GFP_KERNEL); | 1127 | test_region_size, GFP_KERNEL); |
1125 | if (!test_reg2) { | 1128 | if (!test_reg2) { |
1126 | pr_err("pcie ep: can't alloc the test reg2.\n"); | 1129 | pr_err("pcie ep: can't alloc the test reg2.\n"); |
1127 | ret = PTR_ERR(test_reg1); | 1130 | ret = PTR_ERR(test_reg1); |
1128 | goto err; | 1131 | goto err; |
1129 | } | 1132 | } |
1130 | 1133 | ||
1131 | pcie_arb_base_addr = ioremap_cached(pp->mem_base, | 1134 | pcie_arb_base_addr = ioremap_cached(pp->mem_base, |
1132 | test_region_size); | 1135 | test_region_size); |
1133 | 1136 | ||
1134 | if (!pcie_arb_base_addr) { | 1137 | if (!pcie_arb_base_addr) { |
1135 | pr_err("error with ioremap in ep selftest\n"); | 1138 | pr_err("error with ioremap in ep selftest\n"); |
1136 | ret = PTR_ERR(pcie_arb_base_addr); | 1139 | ret = PTR_ERR(pcie_arb_base_addr); |
1137 | goto err; | 1140 | goto err; |
1138 | } | 1141 | } |
1139 | 1142 | ||
1140 | for (i = 0; i < test_region_size; i = i + 4) { | 1143 | for (i = 0; i < test_region_size; i = i + 4) { |
1141 | writel(0xE6600D00 + i, test_reg1 + i); | 1144 | writel(0xE6600D00 + i, test_reg1 + i); |
1142 | writel(0xDEADBEAF, test_reg2 + i); | 1145 | writel(0xDEADBEAF, test_reg2 + i); |
1143 | } | 1146 | } |
1144 | } | 1147 | } |
1145 | 1148 | ||
1146 | imx6_pcie_init_phy(pp); | 1149 | imx6_pcie_init_phy(pp); |
1147 | 1150 | ||
1148 | imx6_pcie_deassert_core_reset(pp); | 1151 | imx6_pcie_deassert_core_reset(pp); |
1149 | 1152 | ||
1150 | /* | 1153 | /* |
1151 | * iMX6SX PCIe has the stand-alone power domain. | 1154 | * iMX6SX PCIe has the stand-alone power domain. |
1152 | * refer to the initialization for iMX6SX PCIe, | 1155 | * refer to the initialization for iMX6SX PCIe, |
1153 | * release the PCIe PHY reset here, | 1156 | * release the PCIe PHY reset here, |
1154 | * before LTSSM enable is set | 1157 | * before LTSSM enable is set |
1155 | * . | 1158 | * . |
1156 | */ | 1159 | */ |
1157 | if (is_imx6sx_pcie(imx6_pcie)) | 1160 | if (is_imx6sx_pcie(imx6_pcie)) |
1158 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, | 1161 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR5, |
1159 | BIT(19), 0 << 19); | 1162 | BIT(19), 0 << 19); |
1160 | 1163 | ||
1161 | /* assert LTSSM enable */ | 1164 | /* assert LTSSM enable */ |
1162 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, | 1165 | regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, |
1163 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); | 1166 | IMX6Q_GPR12_PCIE_CTL_2, 1 << 10); |
1164 | 1167 | ||
1165 | dev_info(&pdev->dev, "PCIe EP: waiting for link up...\n"); | 1168 | dev_info(&pdev->dev, "PCIe EP: waiting for link up...\n"); |
1166 | 1169 | ||
1167 | platform_set_drvdata(pdev, imx6_pcie); | 1170 | platform_set_drvdata(pdev, imx6_pcie); |
1168 | /* link is indicated by the bit4 of DB_R1 register */ | 1171 | /* link is indicated by the bit4 of DB_R1 register */ |
1169 | do { | 1172 | do { |
1170 | usleep_range(10, 20); | 1173 | usleep_range(10, 20); |
1171 | } while ((readl(pp->dbi_base + PCIE_PHY_DEBUG_R1) & 0x10) == 0); | 1174 | } while ((readl(pp->dbi_base + PCIE_PHY_DEBUG_R1) & 0x10) == 0); |
1172 | 1175 | ||
1173 | imx6_pcie_setup_ep(pp); | 1176 | imx6_pcie_setup_ep(pp); |
1174 | 1177 | ||
1175 | /* Re-setup the iATU */ | 1178 | /* Re-setup the iATU */ |
1176 | imx_pcie_regions_setup(&pdev->dev); | 1179 | imx_pcie_regions_setup(&pdev->dev); |
1177 | 1180 | ||
1178 | if (IS_ENABLED(CONFIG_EP_SELF_IO_TEST)) { | 1181 | if (IS_ENABLED(CONFIG_EP_SELF_IO_TEST)) { |
1179 | /* PCIe EP start the data transfer after link up */ | 1182 | /* PCIe EP start the data transfer after link up */ |
1180 | pr_info("pcie ep: Starting data transfer...\n"); | 1183 | pr_info("pcie ep: Starting data transfer...\n"); |
1181 | do_gettimeofday(&tv1); | 1184 | do_gettimeofday(&tv1); |
1182 | 1185 | ||
1183 | memcpy((unsigned long *)pcie_arb_base_addr, | 1186 | memcpy((unsigned long *)pcie_arb_base_addr, |
1184 | (unsigned long *)test_reg1, | 1187 | (unsigned long *)test_reg1, |
1185 | test_region_size); | 1188 | test_region_size); |
1186 | 1189 | ||
1187 | do_gettimeofday(&tv2); | 1190 | do_gettimeofday(&tv2); |
1188 | 1191 | ||
1189 | memcpy((unsigned long *)test_reg2, | 1192 | memcpy((unsigned long *)test_reg2, |
1190 | (unsigned long *)pcie_arb_base_addr, | 1193 | (unsigned long *)pcie_arb_base_addr, |
1191 | test_region_size); | 1194 | test_region_size); |
1192 | 1195 | ||
1193 | do_gettimeofday(&tv3); | 1196 | do_gettimeofday(&tv3); |
1194 | 1197 | ||
1195 | if (memcmp(test_reg2, test_reg1, test_region_size) == 0) { | 1198 | if (memcmp(test_reg2, test_reg1, test_region_size) == 0) { |
1196 | tv_count1 = (tv2.tv_sec - tv1.tv_sec) | 1199 | tv_count1 = (tv2.tv_sec - tv1.tv_sec) |
1197 | * USEC_PER_SEC | 1200 | * USEC_PER_SEC |
1198 | + tv2.tv_usec - tv1.tv_usec; | 1201 | + tv2.tv_usec - tv1.tv_usec; |
1199 | tv_count2 = (tv3.tv_sec - tv2.tv_sec) | 1202 | tv_count2 = (tv3.tv_sec - tv2.tv_sec) |
1200 | * USEC_PER_SEC | 1203 | * USEC_PER_SEC |
1201 | + tv3.tv_usec - tv2.tv_usec; | 1204 | + tv3.tv_usec - tv2.tv_usec; |
1202 | 1205 | ||
1203 | pr_info("pcie ep: Data transfer is successful." | 1206 | pr_info("pcie ep: Data transfer is successful." |
1204 | " tv_count1 %dus," | 1207 | " tv_count1 %dus," |
1205 | " tv_count2 %dus.\n", | 1208 | " tv_count2 %dus.\n", |
1206 | tv_count1, tv_count2); | 1209 | tv_count1, tv_count2); |
1207 | pr_info("pcie ep: Data write speed:%ldMB/s.\n", | 1210 | pr_info("pcie ep: Data write speed:%ldMB/s.\n", |
1208 | ((test_region_size/1024) | 1211 | ((test_region_size/1024) |
1209 | * MSEC_PER_SEC) | 1212 | * MSEC_PER_SEC) |
1210 | /(tv_count1)); | 1213 | /(tv_count1)); |
1211 | pr_info("pcie ep: Data read speed:%ldMB/s.\n", | 1214 | pr_info("pcie ep: Data read speed:%ldMB/s.\n", |
1212 | ((test_region_size/1024) | 1215 | ((test_region_size/1024) |
1213 | * MSEC_PER_SEC) | 1216 | * MSEC_PER_SEC) |
1214 | /(tv_count2)); | 1217 | /(tv_count2)); |
1215 | } else { | 1218 | } else { |
1216 | pr_info("pcie ep: Data transfer is failed.\n"); | 1219 | pr_info("pcie ep: Data transfer is failed.\n"); |
1217 | } | 1220 | } |
1218 | } | 1221 | } |
1219 | } else { | 1222 | } else { |
1220 | ret = imx6_add_pcie_port(pp, pdev); | 1223 | ret = imx6_add_pcie_port(pp, pdev); |
1221 | if (ret < 0) | 1224 | if (ret < 0) |
1222 | goto err; | 1225 | goto err; |
1223 | 1226 | ||
1224 | platform_set_drvdata(pdev, imx6_pcie); | 1227 | platform_set_drvdata(pdev, imx6_pcie); |
1225 | 1228 | ||
1226 | /* Re-setup the iATU */ | 1229 | /* Re-setup the iATU */ |
1227 | imx_pcie_regions_setup(&pdev->dev); | 1230 | imx_pcie_regions_setup(&pdev->dev); |
1228 | } | 1231 | } |
1229 | 1232 | ||
1230 | return 0; | 1233 | return 0; |
1231 | 1234 | ||
1232 | err: | 1235 | err: |
1233 | return ret; | 1236 | return ret; |
1234 | } | 1237 | } |
1235 | 1238 | ||
1236 | static struct platform_driver imx6_pcie_driver = { | 1239 | static struct platform_driver imx6_pcie_driver = { |
1237 | .driver = { | 1240 | .driver = { |
1238 | .name = "imx6q-pcie", | 1241 | .name = "imx6q-pcie", |
1239 | .owner = THIS_MODULE, | 1242 | .owner = THIS_MODULE, |
1240 | .of_match_table = imx6_pcie_of_match, | 1243 | .of_match_table = imx6_pcie_of_match, |
1241 | .pm = &pci_imx_pm_ops, | 1244 | .pm = &pci_imx_pm_ops, |
1242 | }, | 1245 | }, |
1243 | }; | 1246 | }; |
1244 | 1247 | ||
1245 | /* Freescale PCIe driver does not allow module unload */ | 1248 | /* Freescale PCIe driver does not allow module unload */ |
1246 | 1249 | ||
1247 | static int __init imx6_pcie_init(void) | 1250 | static int __init imx6_pcie_init(void) |
1248 | { | 1251 | { |
1249 | return platform_driver_probe(&imx6_pcie_driver, imx6_pcie_probe); | 1252 | return platform_driver_probe(&imx6_pcie_driver, imx6_pcie_probe); |
1250 | } | 1253 | } |
1251 | fs_initcall(imx6_pcie_init); | 1254 | fs_initcall(imx6_pcie_init); |
1252 | 1255 | ||
1253 | MODULE_AUTHOR("Sean Cross <xobs@kosagi.com>"); | 1256 | MODULE_AUTHOR("Sean Cross <xobs@kosagi.com>"); |
1254 | MODULE_DESCRIPTION("Freescale i.MX6 PCIe host controller driver"); | 1257 | MODULE_DESCRIPTION("Freescale i.MX6 PCIe host controller driver"); |
1255 | MODULE_LICENSE("GPL v2"); | 1258 | MODULE_LICENSE("GPL v2"); |
1256 | 1259 |
drivers/power/Kconfig
1 | menuconfig POWER_SUPPLY | 1 | menuconfig POWER_SUPPLY |
2 | bool "Power supply class support" | 2 | bool "Power supply class support" |
3 | help | 3 | help |
4 | Say Y here to enable power supply class support. This allows | 4 | Say Y here to enable power supply class support. This allows |
5 | power supply (batteries, AC, USB) monitoring by userspace | 5 | power supply (batteries, AC, USB) monitoring by userspace |
6 | via sysfs and uevent (if available) and/or APM kernel interface | 6 | via sysfs and uevent (if available) and/or APM kernel interface |
7 | (if selected below). | 7 | (if selected below). |
8 | 8 | ||
9 | if POWER_SUPPLY | 9 | if POWER_SUPPLY |
10 | 10 | ||
11 | config POWER_SUPPLY_DEBUG | 11 | config POWER_SUPPLY_DEBUG |
12 | bool "Power supply debug" | 12 | bool "Power supply debug" |
13 | help | 13 | help |
14 | Say Y here to enable debugging messages for power supply class | 14 | Say Y here to enable debugging messages for power supply class |
15 | and drivers. | 15 | and drivers. |
16 | 16 | ||
17 | config PDA_POWER | 17 | config PDA_POWER |
18 | tristate "Generic PDA/phone power driver" | 18 | tristate "Generic PDA/phone power driver" |
19 | depends on !S390 | 19 | depends on !S390 |
20 | help | 20 | help |
21 | Say Y here to enable generic power driver for PDAs and phones with | 21 | Say Y here to enable generic power driver for PDAs and phones with |
22 | one or two external power supplies (AC/USB) connected to main and | 22 | one or two external power supplies (AC/USB) connected to main and |
23 | backup batteries, and optional builtin charger. | 23 | backup batteries, and optional builtin charger. |
24 | 24 | ||
25 | config APM_POWER | 25 | config APM_POWER |
26 | tristate "APM emulation for class batteries" | 26 | tristate "APM emulation for class batteries" |
27 | depends on APM_EMULATION | 27 | depends on APM_EMULATION |
28 | help | 28 | help |
29 | Say Y here to enable support APM status emulation using | 29 | Say Y here to enable support APM status emulation using |
30 | battery class devices. | 30 | battery class devices. |
31 | 31 | ||
32 | config GENERIC_ADC_BATTERY | 32 | config GENERIC_ADC_BATTERY |
33 | tristate "Generic battery support using IIO" | 33 | tristate "Generic battery support using IIO" |
34 | depends on IIO | 34 | depends on IIO |
35 | help | 35 | help |
36 | Say Y here to enable support for the generic battery driver | 36 | Say Y here to enable support for the generic battery driver |
37 | which uses IIO framework to read adc. | 37 | which uses IIO framework to read adc. |
38 | 38 | ||
39 | config MAX8925_POWER | 39 | config MAX8925_POWER |
40 | tristate "MAX8925 battery charger support" | 40 | tristate "MAX8925 battery charger support" |
41 | depends on MFD_MAX8925 | 41 | depends on MFD_MAX8925 |
42 | help | 42 | help |
43 | Say Y here to enable support for the battery charger in the Maxim | 43 | Say Y here to enable support for the battery charger in the Maxim |
44 | MAX8925 PMIC. | 44 | MAX8925 PMIC. |
45 | 45 | ||
46 | config WM831X_BACKUP | 46 | config WM831X_BACKUP |
47 | tristate "WM831X backup battery charger support" | 47 | tristate "WM831X backup battery charger support" |
48 | depends on MFD_WM831X | 48 | depends on MFD_WM831X |
49 | help | 49 | help |
50 | Say Y here to enable support for the backup battery charger | 50 | Say Y here to enable support for the backup battery charger |
51 | in the Wolfson Microelectronics WM831x PMICs. | 51 | in the Wolfson Microelectronics WM831x PMICs. |
52 | 52 | ||
53 | config WM831X_POWER | 53 | config WM831X_POWER |
54 | tristate "WM831X PMU support" | 54 | tristate "WM831X PMU support" |
55 | depends on MFD_WM831X | 55 | depends on MFD_WM831X |
56 | help | 56 | help |
57 | Say Y here to enable support for the power management unit | 57 | Say Y here to enable support for the power management unit |
58 | provided by Wolfson Microelectronics WM831x PMICs. | 58 | provided by Wolfson Microelectronics WM831x PMICs. |
59 | 59 | ||
60 | config WM8350_POWER | 60 | config WM8350_POWER |
61 | tristate "WM8350 PMU support" | 61 | tristate "WM8350 PMU support" |
62 | depends on MFD_WM8350 | 62 | depends on MFD_WM8350 |
63 | help | 63 | help |
64 | Say Y here to enable support for the power management unit | 64 | Say Y here to enable support for the power management unit |
65 | provided by the Wolfson Microelectronics WM8350 PMIC. | 65 | provided by the Wolfson Microelectronics WM8350 PMIC. |
66 | 66 | ||
67 | config TEST_POWER | 67 | config TEST_POWER |
68 | tristate "Test power driver" | 68 | tristate "Test power driver" |
69 | help | 69 | help |
70 | This driver is used for testing. It's safe to say M here. | 70 | This driver is used for testing. It's safe to say M here. |
71 | 71 | ||
72 | config BATTERY_88PM860X | 72 | config BATTERY_88PM860X |
73 | tristate "Marvell 88PM860x battery driver" | 73 | tristate "Marvell 88PM860x battery driver" |
74 | depends on MFD_88PM860X | 74 | depends on MFD_88PM860X |
75 | help | 75 | help |
76 | Say Y here to enable battery monitor for Marvell 88PM860x chip. | 76 | Say Y here to enable battery monitor for Marvell 88PM860x chip. |
77 | 77 | ||
78 | config BATTERY_DS2760 | 78 | config BATTERY_DS2760 |
79 | tristate "DS2760 battery driver (HP iPAQ & others)" | 79 | tristate "DS2760 battery driver (HP iPAQ & others)" |
80 | depends on W1 && W1_SLAVE_DS2760 | 80 | depends on W1 && W1_SLAVE_DS2760 |
81 | help | 81 | help |
82 | Say Y here to enable support for batteries with ds2760 chip. | 82 | Say Y here to enable support for batteries with ds2760 chip. |
83 | 83 | ||
84 | config BATTERY_DS2780 | 84 | config BATTERY_DS2780 |
85 | tristate "DS2780 battery driver" | 85 | tristate "DS2780 battery driver" |
86 | depends on HAS_IOMEM | 86 | depends on HAS_IOMEM |
87 | select W1 | 87 | select W1 |
88 | select W1_SLAVE_DS2780 | 88 | select W1_SLAVE_DS2780 |
89 | help | 89 | help |
90 | Say Y here to enable support for batteries with ds2780 chip. | 90 | Say Y here to enable support for batteries with ds2780 chip. |
91 | 91 | ||
92 | config BATTERY_DS2781 | 92 | config BATTERY_DS2781 |
93 | tristate "DS2781 battery driver" | 93 | tristate "DS2781 battery driver" |
94 | depends on HAS_IOMEM | 94 | depends on HAS_IOMEM |
95 | select W1 | 95 | select W1 |
96 | select W1_SLAVE_DS2781 | 96 | select W1_SLAVE_DS2781 |
97 | help | 97 | help |
98 | If you enable this you will have the DS2781 battery driver support. | 98 | If you enable this you will have the DS2781 battery driver support. |
99 | 99 | ||
100 | The battery monitor chip is used in many batteries/devices | 100 | The battery monitor chip is used in many batteries/devices |
101 | as the one who is responsible for charging/discharging/monitoring | 101 | as the one who is responsible for charging/discharging/monitoring |
102 | Li+ batteries. | 102 | Li+ batteries. |
103 | 103 | ||
104 | If you are unsure, say N. | 104 | If you are unsure, say N. |
105 | 105 | ||
106 | config BATTERY_DS2782 | 106 | config BATTERY_DS2782 |
107 | tristate "DS2782/DS2786 standalone gas-gauge" | 107 | tristate "DS2782/DS2786 standalone gas-gauge" |
108 | depends on I2C | 108 | depends on I2C |
109 | help | 109 | help |
110 | Say Y here to enable support for the DS2782/DS2786 standalone battery | 110 | Say Y here to enable support for the DS2782/DS2786 standalone battery |
111 | gas-gauge. | 111 | gas-gauge. |
112 | 112 | ||
113 | config BATTERY_PMU | 113 | config BATTERY_PMU |
114 | tristate "Apple PMU battery" | 114 | tristate "Apple PMU battery" |
115 | depends on PPC32 && ADB_PMU | 115 | depends on PPC32 && ADB_PMU |
116 | help | 116 | help |
117 | Say Y here to expose battery information on Apple machines | 117 | Say Y here to expose battery information on Apple machines |
118 | through the generic battery class. | 118 | through the generic battery class. |
119 | 119 | ||
120 | config BATTERY_OLPC | 120 | config BATTERY_OLPC |
121 | tristate "One Laptop Per Child battery" | 121 | tristate "One Laptop Per Child battery" |
122 | depends on X86_32 && OLPC | 122 | depends on X86_32 && OLPC |
123 | help | 123 | help |
124 | Say Y to enable support for the battery on the OLPC laptop. | 124 | Say Y to enable support for the battery on the OLPC laptop. |
125 | 125 | ||
126 | config BATTERY_TOSA | 126 | config BATTERY_TOSA |
127 | tristate "Sharp SL-6000 (tosa) battery" | 127 | tristate "Sharp SL-6000 (tosa) battery" |
128 | depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX | 128 | depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX |
129 | help | 129 | help |
130 | Say Y to enable support for the battery on the Sharp Zaurus | 130 | Say Y to enable support for the battery on the Sharp Zaurus |
131 | SL-6000 (tosa) models. | 131 | SL-6000 (tosa) models. |
132 | 132 | ||
133 | config BATTERY_COLLIE | 133 | config BATTERY_COLLIE |
134 | tristate "Sharp SL-5500 (collie) battery" | 134 | tristate "Sharp SL-5500 (collie) battery" |
135 | depends on SA1100_COLLIE && MCP_UCB1200 | 135 | depends on SA1100_COLLIE && MCP_UCB1200 |
136 | help | 136 | help |
137 | Say Y to enable support for the battery on the Sharp Zaurus | 137 | Say Y to enable support for the battery on the Sharp Zaurus |
138 | SL-5500 (collie) models. | 138 | SL-5500 (collie) models. |
139 | 139 | ||
140 | config BATTERY_WM97XX | 140 | config BATTERY_WM97XX |
141 | bool "WM97xx generic battery driver" | 141 | bool "WM97xx generic battery driver" |
142 | depends on TOUCHSCREEN_WM97XX=y | 142 | depends on TOUCHSCREEN_WM97XX=y |
143 | help | 143 | help |
144 | Say Y to enable support for battery measured by WM97xx aux port. | 144 | Say Y to enable support for battery measured by WM97xx aux port. |
145 | 145 | ||
146 | config BATTERY_SBS | 146 | config BATTERY_SBS |
147 | tristate "SBS Compliant gas gauge" | 147 | tristate "SBS Compliant gas gauge" |
148 | depends on I2C | 148 | depends on I2C |
149 | help | 149 | help |
150 | Say Y to include support for SBS battery driver for SBS-compliant | 150 | Say Y to include support for SBS battery driver for SBS-compliant |
151 | gas gauges. | 151 | gas gauges. |
152 | 152 | ||
153 | config BATTERY_BQ27x00 | 153 | config BATTERY_BQ27x00 |
154 | tristate "BQ27x00 battery driver" | 154 | tristate "BQ27x00 battery driver" |
155 | depends on I2C || I2C=n | 155 | depends on I2C || I2C=n |
156 | help | 156 | help |
157 | Say Y here to enable support for batteries with BQ27x00 (I2C/HDQ) chips. | 157 | Say Y here to enable support for batteries with BQ27x00 (I2C/HDQ) chips. |
158 | 158 | ||
159 | config BATTERY_BQ27X00_I2C | 159 | config BATTERY_BQ27X00_I2C |
160 | bool "BQ27200/BQ27500 support" | 160 | bool "BQ27200/BQ27500 support" |
161 | depends on BATTERY_BQ27x00 | 161 | depends on BATTERY_BQ27x00 |
162 | depends on I2C | 162 | depends on I2C |
163 | default y | 163 | default y |
164 | help | 164 | help |
165 | Say Y here to enable support for batteries with BQ27x00 (I2C) chips. | 165 | Say Y here to enable support for batteries with BQ27x00 (I2C) chips. |
166 | 166 | ||
167 | config BATTERY_BQ27X00_PLATFORM | 167 | config BATTERY_BQ27X00_PLATFORM |
168 | bool "BQ27000 support" | 168 | bool "BQ27000 support" |
169 | depends on BATTERY_BQ27x00 | 169 | depends on BATTERY_BQ27x00 |
170 | default y | 170 | default y |
171 | help | 171 | help |
172 | Say Y here to enable support for batteries with BQ27000 (HDQ) chips. | 172 | Say Y here to enable support for batteries with BQ27000 (HDQ) chips. |
173 | 173 | ||
174 | config BATTERY_DA9030 | 174 | config BATTERY_DA9030 |
175 | tristate "DA9030 battery driver" | 175 | tristate "DA9030 battery driver" |
176 | depends on PMIC_DA903X | 176 | depends on PMIC_DA903X |
177 | help | 177 | help |
178 | Say Y here to enable support for batteries charger integrated into | 178 | Say Y here to enable support for batteries charger integrated into |
179 | DA9030 PMIC. | 179 | DA9030 PMIC. |
180 | 180 | ||
181 | config BATTERY_DA9052 | 181 | config BATTERY_DA9052 |
182 | tristate "Dialog DA9052 Battery" | 182 | tristate "Dialog DA9052 Battery" |
183 | depends on PMIC_DA9052 | 183 | depends on PMIC_DA9052 |
184 | help | 184 | help |
185 | Say Y here to enable support for batteries charger integrated into | 185 | Say Y here to enable support for batteries charger integrated into |
186 | DA9052 PMIC. | 186 | DA9052 PMIC. |
187 | 187 | ||
188 | config BATTERY_MAX17040 | 188 | config BATTERY_MAX17040 |
189 | tristate "Maxim MAX17040 Fuel Gauge" | 189 | tristate "Maxim MAX17040 Fuel Gauge" |
190 | depends on I2C | 190 | depends on I2C |
191 | help | 191 | help |
192 | MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries | 192 | MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries |
193 | in handheld and portable equipment. The MAX17040 is configured | 193 | in handheld and portable equipment. The MAX17040 is configured |
194 | to operate with a single lithium cell | 194 | to operate with a single lithium cell |
195 | 195 | ||
196 | config BATTERY_MAX17042 | 196 | config BATTERY_MAX17042 |
197 | tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge" | 197 | tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge" |
198 | depends on I2C | 198 | depends on I2C |
199 | help | 199 | help |
200 | MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries | 200 | MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries |
201 | in handheld and portable equipment. The MAX17042 is configured | 201 | in handheld and portable equipment. The MAX17042 is configured |
202 | to operate with a single lithium cell. MAX8997 and MAX8966 are | 202 | to operate with a single lithium cell. MAX8997 and MAX8966 are |
203 | multi-function devices that include fuel gauages that are compatible | 203 | multi-function devices that include fuel gauages that are compatible |
204 | with MAX17042. This driver also supports max17047/50 chips which are | 204 | with MAX17042. This driver also supports max17047/50 chips which are |
205 | improved version of max17042. | 205 | improved version of max17042. |
206 | 206 | ||
207 | config BATTERY_Z2 | 207 | config BATTERY_Z2 |
208 | tristate "Z2 battery driver" | 208 | tristate "Z2 battery driver" |
209 | depends on I2C && MACH_ZIPIT2 | 209 | depends on I2C && MACH_ZIPIT2 |
210 | help | 210 | help |
211 | Say Y to include support for the battery on the Zipit Z2. | 211 | Say Y to include support for the battery on the Zipit Z2. |
212 | 212 | ||
213 | config BATTERY_S3C_ADC | 213 | config BATTERY_S3C_ADC |
214 | tristate "Battery driver for Samsung ADC based monitoring" | 214 | tristate "Battery driver for Samsung ADC based monitoring" |
215 | depends on S3C_ADC | 215 | depends on S3C_ADC |
216 | help | 216 | help |
217 | Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery | 217 | Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery |
218 | 218 | ||
219 | config CHARGER_88PM860X | 219 | config CHARGER_88PM860X |
220 | tristate "Marvell 88PM860x Charger driver" | 220 | tristate "Marvell 88PM860x Charger driver" |
221 | depends on MFD_88PM860X && BATTERY_88PM860X | 221 | depends on MFD_88PM860X && BATTERY_88PM860X |
222 | help | 222 | help |
223 | Say Y here to enable charger for Marvell 88PM860x chip. | 223 | Say Y here to enable charger for Marvell 88PM860x chip. |
224 | 224 | ||
225 | config CHARGER_PCF50633 | 225 | config CHARGER_PCF50633 |
226 | tristate "NXP PCF50633 MBC" | 226 | tristate "NXP PCF50633 MBC" |
227 | depends on MFD_PCF50633 | 227 | depends on MFD_PCF50633 |
228 | help | 228 | help |
229 | Say Y to include support for NXP PCF50633 Main Battery Charger. | 229 | Say Y to include support for NXP PCF50633 Main Battery Charger. |
230 | 230 | ||
231 | config BATTERY_JZ4740 | 231 | config BATTERY_JZ4740 |
232 | tristate "Ingenic JZ4740 battery" | 232 | tristate "Ingenic JZ4740 battery" |
233 | depends on MACH_JZ4740 | 233 | depends on MACH_JZ4740 |
234 | depends on MFD_JZ4740_ADC | 234 | depends on MFD_JZ4740_ADC |
235 | help | 235 | help |
236 | Say Y to enable support for the battery on Ingenic JZ4740 based | 236 | Say Y to enable support for the battery on Ingenic JZ4740 based |
237 | boards. | 237 | boards. |
238 | 238 | ||
239 | This driver can be build as a module. If so, the module will be | 239 | This driver can be build as a module. If so, the module will be |
240 | called jz4740-battery. | 240 | called jz4740-battery. |
241 | 241 | ||
242 | config BATTERY_INTEL_MID | 242 | config BATTERY_INTEL_MID |
243 | tristate "Battery driver for Intel MID platforms" | 243 | tristate "Battery driver for Intel MID platforms" |
244 | depends on INTEL_SCU_IPC && SPI | 244 | depends on INTEL_SCU_IPC && SPI |
245 | help | 245 | help |
246 | Say Y here to enable the battery driver on Intel MID | 246 | Say Y here to enable the battery driver on Intel MID |
247 | platforms. | 247 | platforms. |
248 | 248 | ||
249 | config BATTERY_RX51 | 249 | config BATTERY_RX51 |
250 | tristate "Nokia RX-51 (N900) battery driver" | 250 | tristate "Nokia RX-51 (N900) battery driver" |
251 | depends on TWL4030_MADC | 251 | depends on TWL4030_MADC |
252 | help | 252 | help |
253 | Say Y here to enable support for battery information on Nokia | 253 | Say Y here to enable support for battery information on Nokia |
254 | RX-51, also known as N900 tablet. | 254 | RX-51, also known as N900 tablet. |
255 | 255 | ||
256 | config CHARGER_ISP1704 | 256 | config CHARGER_ISP1704 |
257 | tristate "ISP1704 USB Charger Detection" | 257 | tristate "ISP1704 USB Charger Detection" |
258 | depends on USB_PHY | 258 | depends on USB_PHY |
259 | help | 259 | help |
260 | Say Y to enable support for USB Charger Detection with | 260 | Say Y to enable support for USB Charger Detection with |
261 | ISP1707/ISP1704 USB transceivers. | 261 | ISP1707/ISP1704 USB transceivers. |
262 | 262 | ||
263 | config CHARGER_MAX8903 | 263 | config CHARGER_MAX8903 |
264 | tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power" | 264 | tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power" |
265 | depends on GENERIC_HARDIRQS | 265 | depends on GENERIC_HARDIRQS |
266 | help | 266 | help |
267 | Say Y to enable support for the MAX8903 DC-DC charger and sysfs. | 267 | Say Y to enable support for the MAX8903 DC-DC charger and sysfs. |
268 | The driver supports controlling charger-enable and current-limit | 268 | The driver supports controlling charger-enable and current-limit |
269 | pins based on the status of charger connections with interrupt | 269 | pins based on the status of charger connections with interrupt |
270 | handlers. | 270 | handlers. |
271 | 271 | ||
272 | config SABRESD_MAX8903 | 272 | config SABRESD_MAX8903 |
273 | tristate "Sabresd Board Battery DC-DC Charger for USB and Adapter Power" | 273 | tristate "Sabresd Board Battery DC-DC Charger for USB and Adapter Power" |
274 | depends on GENERIC_HARDIRQS && TOUCHSCREEN_MAX11801 | 274 | depends on GENERIC_HARDIRQS && TOUCHSCREEN_MAX11801 |
275 | help | 275 | help |
276 | Say Y to enable support for the MAX8903 DC-DC charger and sysfs on | 276 | Say Y to enable support for the MAX8903 DC-DC charger and sysfs on |
277 | sabresd board.The driver supports controlling charger and battery | 277 | sabresd board.The driver supports controlling charger and battery |
278 | based on the status of charger connections with interrupt handlers. | 278 | based on the status of charger connections with interrupt handlers. |
279 | 279 | ||
280 | config CHARGER_TWL4030 | 280 | config CHARGER_TWL4030 |
281 | tristate "OMAP TWL4030 BCI charger driver" | 281 | tristate "OMAP TWL4030 BCI charger driver" |
282 | depends on TWL4030_CORE | 282 | depends on TWL4030_CORE |
283 | help | 283 | help |
284 | Say Y here to enable support for TWL4030 Battery Charge Interface. | 284 | Say Y here to enable support for TWL4030 Battery Charge Interface. |
285 | 285 | ||
286 | config CHARGER_LP8727 | 286 | config CHARGER_LP8727 |
287 | tristate "TI/National Semiconductor LP8727 charger driver" | 287 | tristate "TI/National Semiconductor LP8727 charger driver" |
288 | depends on I2C | 288 | depends on I2C |
289 | help | 289 | help |
290 | Say Y here to enable support for LP8727 Charger Driver. | 290 | Say Y here to enable support for LP8727 Charger Driver. |
291 | 291 | ||
292 | config CHARGER_LP8788 | 292 | config CHARGER_LP8788 |
293 | tristate "TI LP8788 charger driver" | 293 | tristate "TI LP8788 charger driver" |
294 | depends on MFD_LP8788 | 294 | depends on MFD_LP8788 |
295 | depends on LP8788_ADC | 295 | depends on LP8788_ADC |
296 | depends on IIO | 296 | depends on IIO |
297 | help | 297 | help |
298 | Say Y to enable support for the LP8788 linear charger. | 298 | Say Y to enable support for the LP8788 linear charger. |
299 | 299 | ||
300 | config CHARGER_GPIO | 300 | config CHARGER_GPIO |
301 | tristate "GPIO charger" | 301 | tristate "GPIO charger" |
302 | depends on GPIOLIB | 302 | depends on GPIOLIB |
303 | help | 303 | help |
304 | Say Y to include support for chargers which report their online status | 304 | Say Y to include support for chargers which report their online status |
305 | through a GPIO pin. | 305 | through a GPIO pin. |
306 | 306 | ||
307 | This driver can be build as a module. If so, the module will be | 307 | This driver can be build as a module. If so, the module will be |
308 | called gpio-charger. | 308 | called gpio-charger. |
309 | 309 | ||
310 | config CHARGER_MANAGER | 310 | config CHARGER_MANAGER |
311 | bool "Battery charger manager for multiple chargers" | 311 | bool "Battery charger manager for multiple chargers" |
312 | depends on REGULATOR && RTC_CLASS | 312 | depends on REGULATOR && RTC_CLASS |
313 | select EXTCON | 313 | select EXTCON |
314 | help | 314 | help |
315 | Say Y to enable charger-manager support, which allows multiple | 315 | Say Y to enable charger-manager support, which allows multiple |
316 | chargers attached to a battery and multiple batteries attached to a | 316 | chargers attached to a battery and multiple batteries attached to a |
317 | system. The charger-manager also can monitor charging status in | 317 | system. The charger-manager also can monitor charging status in |
318 | runtime and in suspend-to-RAM by waking up the system periodically | 318 | runtime and in suspend-to-RAM by waking up the system periodically |
319 | with help of suspend_again support. | 319 | with help of suspend_again support. |
320 | 320 | ||
321 | config CHARGER_MAX8997 | 321 | config CHARGER_MAX8997 |
322 | tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver" | 322 | tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver" |
323 | depends on MFD_MAX8997 && REGULATOR_MAX8997 | 323 | depends on MFD_MAX8997 && REGULATOR_MAX8997 |
324 | help | 324 | help |
325 | Say Y to enable support for the battery charger control sysfs and | 325 | Say Y to enable support for the battery charger control sysfs and |
326 | platform data of MAX8997/LP3974 PMICs. | 326 | platform data of MAX8997/LP3974 PMICs. |
327 | 327 | ||
328 | config CHARGER_MAX8998 | 328 | config CHARGER_MAX8998 |
329 | tristate "Maxim MAX8998/LP3974 PMIC battery charger driver" | 329 | tristate "Maxim MAX8998/LP3974 PMIC battery charger driver" |
330 | depends on MFD_MAX8998 && REGULATOR_MAX8998 | 330 | depends on MFD_MAX8998 && REGULATOR_MAX8998 |
331 | help | 331 | help |
332 | Say Y to enable support for the battery charger control sysfs and | 332 | Say Y to enable support for the battery charger control sysfs and |
333 | platform data of MAX8998/LP3974 PMICs. | 333 | platform data of MAX8998/LP3974 PMICs. |
334 | 334 | ||
335 | config CHARGER_BQ2415X | 335 | config CHARGER_BQ2415X |
336 | tristate "TI BQ2415x battery charger driver" | 336 | tristate "TI BQ2415x battery charger driver" |
337 | depends on I2C | 337 | depends on I2C |
338 | help | 338 | help |
339 | Say Y to enable support for the TI BQ2415x battery charger | 339 | Say Y to enable support for the TI BQ2415x battery charger |
340 | PMICs. | 340 | PMICs. |
341 | 341 | ||
342 | You'll need this driver to charge batteries on e.g. Nokia | 342 | You'll need this driver to charge batteries on e.g. Nokia |
343 | RX-51/N900. | 343 | RX-51/N900. |
344 | 344 | ||
345 | config CHARGER_BQ2477X | ||
346 | tristate "BQ24770/BQ24773 Charger driver support" | ||
347 | depends on I2C | ||
348 | help | ||
349 | BQ2477X is a companion pmic for smartphones and tablets | ||
350 | which supports battery charging feature. | ||
351 | Say Y here to enable driver support for TI BQ24770/ | ||
352 | BQ24773 Battery Charger. | ||
353 | |||
345 | config CHARGER_SMB347 | 354 | config CHARGER_SMB347 |
346 | tristate "Summit Microelectronics SMB347 Battery Charger" | 355 | tristate "Summit Microelectronics SMB347 Battery Charger" |
347 | depends on I2C | 356 | depends on I2C |
348 | select REGMAP_I2C | 357 | select REGMAP_I2C |
349 | help | 358 | help |
350 | Say Y to include support for Summit Microelectronics SMB347 | 359 | Say Y to include support for Summit Microelectronics SMB347 |
351 | Battery Charger. | 360 | Battery Charger. |
352 | 361 | ||
353 | config CHARGER_TPS65090 | 362 | config CHARGER_TPS65090 |
354 | tristate "TPS65090 battery charger driver" | 363 | tristate "TPS65090 battery charger driver" |
355 | depends on MFD_TPS65090 | 364 | depends on MFD_TPS65090 |
356 | help | 365 | help |
357 | Say Y here to enable support for battery charging with TPS65090 | 366 | Say Y here to enable support for battery charging with TPS65090 |
358 | PMIC chips. | 367 | PMIC chips. |
359 | 368 | ||
360 | config AB8500_BM | 369 | config AB8500_BM |
361 | bool "AB8500 Battery Management Driver" | 370 | bool "AB8500 Battery Management Driver" |
362 | depends on AB8500_CORE && AB8500_GPADC | 371 | depends on AB8500_CORE && AB8500_GPADC |
363 | help | 372 | help |
364 | Say Y to include support for AB8500 battery management. | 373 | Say Y to include support for AB8500 battery management. |
365 | 374 | ||
366 | config BATTERY_GOLDFISH | 375 | config BATTERY_GOLDFISH |
367 | tristate "Goldfish battery driver" | 376 | tristate "Goldfish battery driver" |
368 | depends on GENERIC_HARDIRQS | 377 | depends on GENERIC_HARDIRQS |
369 | help | 378 | help |
370 | Say Y to enable support for the battery and AC power in the | 379 | Say Y to enable support for the battery and AC power in the |
371 | Goldfish emulator. | 380 | Goldfish emulator. |
372 | 381 | ||
373 | config IMX6_USB_CHARGER | 382 | config IMX6_USB_CHARGER |
374 | bool "Freescale imx6 USB Charger" | 383 | bool "Freescale imx6 USB Charger" |
375 | depends on SOC_IMX6Q || SOC_IMX6SL | 384 | depends on SOC_IMX6Q || SOC_IMX6SL |
376 | help | 385 | help |
377 | Say Y to enable Freescale imx6 USB Charger Detect. | 386 | Say Y to enable Freescale imx6 USB Charger Detect. |
378 | 387 | ||
379 | source "drivers/power/reset/Kconfig" | 388 | source "drivers/power/reset/Kconfig" |
380 | 389 | ||
381 | endif # POWER_SUPPLY | 390 | endif # POWER_SUPPLY |
382 | 391 | ||
383 | source "drivers/power/avs/Kconfig" | 392 | source "drivers/power/avs/Kconfig" |
384 | 393 |
drivers/power/Makefile
1 | ccflags-$(CONFIG_POWER_SUPPLY_DEBUG) := -DDEBUG | 1 | ccflags-$(CONFIG_POWER_SUPPLY_DEBUG) := -DDEBUG |
2 | 2 | ||
3 | power_supply-y := power_supply_core.o | 3 | power_supply-y := power_supply_core.o |
4 | power_supply-$(CONFIG_SYSFS) += power_supply_sysfs.o | 4 | power_supply-$(CONFIG_SYSFS) += power_supply_sysfs.o |
5 | power_supply-$(CONFIG_LEDS_TRIGGERS) += power_supply_leds.o | 5 | power_supply-$(CONFIG_LEDS_TRIGGERS) += power_supply_leds.o |
6 | 6 | ||
7 | obj-$(CONFIG_POWER_SUPPLY) += power_supply.o | 7 | obj-$(CONFIG_POWER_SUPPLY) += power_supply.o |
8 | obj-$(CONFIG_GENERIC_ADC_BATTERY) += generic-adc-battery.o | 8 | obj-$(CONFIG_GENERIC_ADC_BATTERY) += generic-adc-battery.o |
9 | 9 | ||
10 | obj-$(CONFIG_PDA_POWER) += pda_power.o | 10 | obj-$(CONFIG_PDA_POWER) += pda_power.o |
11 | obj-$(CONFIG_APM_POWER) += apm_power.o | 11 | obj-$(CONFIG_APM_POWER) += apm_power.o |
12 | obj-$(CONFIG_MAX8925_POWER) += max8925_power.o | 12 | obj-$(CONFIG_MAX8925_POWER) += max8925_power.o |
13 | obj-$(CONFIG_WM831X_BACKUP) += wm831x_backup.o | 13 | obj-$(CONFIG_WM831X_BACKUP) += wm831x_backup.o |
14 | obj-$(CONFIG_WM831X_POWER) += wm831x_power.o | 14 | obj-$(CONFIG_WM831X_POWER) += wm831x_power.o |
15 | obj-$(CONFIG_WM8350_POWER) += wm8350_power.o | 15 | obj-$(CONFIG_WM8350_POWER) += wm8350_power.o |
16 | obj-$(CONFIG_TEST_POWER) += test_power.o | 16 | obj-$(CONFIG_TEST_POWER) += test_power.o |
17 | 17 | ||
18 | obj-$(CONFIG_BATTERY_88PM860X) += 88pm860x_battery.o | 18 | obj-$(CONFIG_BATTERY_88PM860X) += 88pm860x_battery.o |
19 | obj-$(CONFIG_BATTERY_DS2760) += ds2760_battery.o | 19 | obj-$(CONFIG_BATTERY_DS2760) += ds2760_battery.o |
20 | obj-$(CONFIG_BATTERY_DS2780) += ds2780_battery.o | 20 | obj-$(CONFIG_BATTERY_DS2780) += ds2780_battery.o |
21 | obj-$(CONFIG_BATTERY_DS2781) += ds2781_battery.o | 21 | obj-$(CONFIG_BATTERY_DS2781) += ds2781_battery.o |
22 | obj-$(CONFIG_BATTERY_DS2782) += ds2782_battery.o | 22 | obj-$(CONFIG_BATTERY_DS2782) += ds2782_battery.o |
23 | obj-$(CONFIG_BATTERY_GOLDFISH) += goldfish_battery.o | 23 | obj-$(CONFIG_BATTERY_GOLDFISH) += goldfish_battery.o |
24 | obj-$(CONFIG_BATTERY_PMU) += pmu_battery.o | 24 | obj-$(CONFIG_BATTERY_PMU) += pmu_battery.o |
25 | obj-$(CONFIG_BATTERY_OLPC) += olpc_battery.o | 25 | obj-$(CONFIG_BATTERY_OLPC) += olpc_battery.o |
26 | obj-$(CONFIG_BATTERY_TOSA) += tosa_battery.o | 26 | obj-$(CONFIG_BATTERY_TOSA) += tosa_battery.o |
27 | obj-$(CONFIG_BATTERY_COLLIE) += collie_battery.o | 27 | obj-$(CONFIG_BATTERY_COLLIE) += collie_battery.o |
28 | obj-$(CONFIG_BATTERY_WM97XX) += wm97xx_battery.o | 28 | obj-$(CONFIG_BATTERY_WM97XX) += wm97xx_battery.o |
29 | obj-$(CONFIG_BATTERY_SBS) += sbs-battery.o | 29 | obj-$(CONFIG_BATTERY_SBS) += sbs-battery.o |
30 | obj-$(CONFIG_BATTERY_BQ27x00) += bq27x00_battery.o | 30 | obj-$(CONFIG_BATTERY_BQ27x00) += bq27x00_battery.o |
31 | obj-$(CONFIG_BATTERY_DA9030) += da9030_battery.o | 31 | obj-$(CONFIG_BATTERY_DA9030) += da9030_battery.o |
32 | obj-$(CONFIG_BATTERY_DA9052) += da9052-battery.o | 32 | obj-$(CONFIG_BATTERY_DA9052) += da9052-battery.o |
33 | obj-$(CONFIG_BATTERY_MAX17040) += max17040_battery.o | 33 | obj-$(CONFIG_BATTERY_MAX17040) += max17040_battery.o |
34 | obj-$(CONFIG_BATTERY_MAX17042) += max17042_battery.o | 34 | obj-$(CONFIG_BATTERY_MAX17042) += max17042_battery.o |
35 | obj-$(CONFIG_BATTERY_Z2) += z2_battery.o | 35 | obj-$(CONFIG_BATTERY_Z2) += z2_battery.o |
36 | obj-$(CONFIG_BATTERY_S3C_ADC) += s3c_adc_battery.o | 36 | obj-$(CONFIG_BATTERY_S3C_ADC) += s3c_adc_battery.o |
37 | obj-$(CONFIG_CHARGER_88PM860X) += 88pm860x_charger.o | 37 | obj-$(CONFIG_CHARGER_88PM860X) += 88pm860x_charger.o |
38 | obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o | 38 | obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o |
39 | obj-$(CONFIG_BATTERY_JZ4740) += jz4740-battery.o | 39 | obj-$(CONFIG_BATTERY_JZ4740) += jz4740-battery.o |
40 | obj-$(CONFIG_BATTERY_INTEL_MID) += intel_mid_battery.o | 40 | obj-$(CONFIG_BATTERY_INTEL_MID) += intel_mid_battery.o |
41 | obj-$(CONFIG_BATTERY_RX51) += rx51_battery.o | 41 | obj-$(CONFIG_BATTERY_RX51) += rx51_battery.o |
42 | obj-$(CONFIG_AB8500_BM) += ab8500_bmdata.o ab8500_charger.o ab8500_fg.o ab8500_btemp.o abx500_chargalg.o pm2301_charger.o | 42 | obj-$(CONFIG_AB8500_BM) += ab8500_bmdata.o ab8500_charger.o ab8500_fg.o ab8500_btemp.o abx500_chargalg.o pm2301_charger.o |
43 | obj-$(CONFIG_CHARGER_ISP1704) += isp1704_charger.o | 43 | obj-$(CONFIG_CHARGER_ISP1704) += isp1704_charger.o |
44 | obj-$(CONFIG_CHARGER_MAX8903) += max8903_charger.o | 44 | obj-$(CONFIG_CHARGER_MAX8903) += max8903_charger.o |
45 | obj-$(CONFIG_SABRESD_MAX8903) += sabresd_battery.o | 45 | obj-$(CONFIG_SABRESD_MAX8903) += sabresd_battery.o |
46 | obj-$(CONFIG_CHARGER_TWL4030) += twl4030_charger.o | 46 | obj-$(CONFIG_CHARGER_TWL4030) += twl4030_charger.o |
47 | obj-$(CONFIG_CHARGER_LP8727) += lp8727_charger.o | 47 | obj-$(CONFIG_CHARGER_LP8727) += lp8727_charger.o |
48 | obj-$(CONFIG_CHARGER_LP8788) += lp8788-charger.o | 48 | obj-$(CONFIG_CHARGER_LP8788) += lp8788-charger.o |
49 | obj-$(CONFIG_CHARGER_GPIO) += gpio-charger.o | 49 | obj-$(CONFIG_CHARGER_GPIO) += gpio-charger.o |
50 | obj-$(CONFIG_CHARGER_MANAGER) += charger-manager.o | 50 | obj-$(CONFIG_CHARGER_MANAGER) += charger-manager.o |
51 | obj-$(CONFIG_CHARGER_MAX8997) += max8997_charger.o | 51 | obj-$(CONFIG_CHARGER_MAX8997) += max8997_charger.o |
52 | obj-$(CONFIG_CHARGER_MAX8998) += max8998_charger.o | 52 | obj-$(CONFIG_CHARGER_MAX8998) += max8998_charger.o |
53 | obj-$(CONFIG_CHARGER_BQ2415X) += bq2415x_charger.o | 53 | obj-$(CONFIG_CHARGER_BQ2415X) += bq2415x_charger.o |
54 | obj-$(CONFIG_CHARGER_BQ2477X) += bq2477x-charger.o | ||
54 | obj-$(CONFIG_POWER_AVS) += avs/ | 55 | obj-$(CONFIG_POWER_AVS) += avs/ |
55 | obj-$(CONFIG_CHARGER_SMB347) += smb347-charger.o | 56 | obj-$(CONFIG_CHARGER_SMB347) += smb347-charger.o |
56 | obj-$(CONFIG_CHARGER_TPS65090) += tps65090-charger.o | 57 | obj-$(CONFIG_CHARGER_TPS65090) += tps65090-charger.o |
57 | obj-$(CONFIG_POWER_RESET) += reset/ | 58 | obj-$(CONFIG_POWER_RESET) += reset/ |
58 | obj-$(CONFIG_IMX6_USB_CHARGER) += imx6_usb_charger.o | 59 | obj-$(CONFIG_IMX6_USB_CHARGER) += imx6_usb_charger.o |
59 | 60 |
drivers/power/bq2477x-charger.c
File was created | 1 | /* | |
2 | * bq2477x-charger.c -- BQ24770/3 Charger driver | ||
3 | * | ||
4 | * Copyright (c) 2013-2014, NVIDIA CORPORATION. All rights reserved. | ||
5 | * | ||
6 | * Author: Andy Park <an...@nvidia.com> | ||
7 | * Author: Syed Rafiuddin <srafi...@nvidia.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation version 2. | ||
12 | * | ||
13 | * This program is distributed "as is" WITHOUT ANY WARRANTY of any kind, | ||
14 | * whether express or implied; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
16 | * General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License | ||
19 | * along with this program; if not, write to the Free Software | ||
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | ||
21 | * 02111-1307, USA | ||
22 | */ | ||
23 | #include <linux/delay.h> | ||
24 | #include <linux/err.h> | ||
25 | #include <linux/i2c.h> | ||
26 | #include <linux/init.h> | ||
27 | #include <linux/interrupt.h> | ||
28 | #include <linux/kthread.h> | ||
29 | #include <linux/sched.h> | ||
30 | #include <linux/time.h> | ||
31 | #include <linux/timer.h> | ||
32 | #include <linux/kernel.h> | ||
33 | #include <linux/module.h> | ||
34 | #include <linux/power/bq2477x-charger.h> | ||
35 | #include <linux/power_supply.h> | ||
36 | #include <linux/regmap.h> | ||
37 | #include <linux/regulator/driver.h> | ||
38 | #include <linux/regulator/machine.h> | ||
39 | #include <linux/slab.h> | ||
40 | #include <linux/rtc.h> | ||
41 | #include <linux/alarmtimer.h> | ||
42 | #include <linux/sched/rt.h> | ||
43 | #include <linux/gpio.h> | ||
44 | #include <linux/of_gpio.h> | ||
45 | |||
46 | enum bq2477x_chip_id { BQ24770, BQ24773}; | ||
47 | |||
48 | struct bq2477x_chip { | ||
49 | struct device *dev; | ||
50 | struct power_supply ac; | ||
51 | struct regmap *regmap; | ||
52 | struct regmap *regmap_word; | ||
53 | struct mutex mutex; | ||
54 | int irq; | ||
55 | int charger_detect_gpio; | ||
56 | int charger_detect_gpio_active_low; | ||
57 | int ac_online; | ||
58 | int dac_ichg; | ||
59 | int dac_v; | ||
60 | int dac_minsv; | ||
61 | int dac_iin; | ||
62 | int suspended; | ||
63 | int wdt_refresh_timeout; | ||
64 | struct kthread_worker bq_kworker; | ||
65 | struct task_struct *bq_kworker_task; | ||
66 | struct kthread_work bq_wdt_work; | ||
67 | }; | ||
68 | |||
69 | /* Kthread scheduling parameters */ | ||
70 | struct sched_param bq2477x_param = { | ||
71 | .sched_priority = MAX_RT_PRIO - 1, | ||
72 | }; | ||
73 | |||
74 | static const struct regmap_config bq2477x_regmap_config = { | ||
75 | .name = "bq2477x", | ||
76 | .reg_bits = 8, | ||
77 | .val_bits = 8, | ||
78 | .max_register = BQ2477X_MAX_REGS, | ||
79 | }; | ||
80 | |||
81 | static const struct regmap_config bq2477x_regmap_word_config = { | ||
82 | .name = "bq2477x_word", | ||
83 | .reg_bits = 8, | ||
84 | .val_bits = 16, | ||
85 | .max_register = BQ2477X_MAX_REGS, | ||
86 | }; | ||
87 | |||
88 | static int bq2477x_read(struct bq2477x_chip *bq2477x, | ||
89 | unsigned int reg, unsigned int *val) | ||
90 | { | ||
91 | return regmap_read(bq2477x->regmap, reg, val); | ||
92 | } | ||
93 | |||
94 | static int bq2477x_write(struct bq2477x_chip *bq2477x, | ||
95 | unsigned int reg, unsigned int val) | ||
96 | { | ||
97 | return regmap_write(bq2477x->regmap, reg, val); | ||
98 | } | ||
99 | |||
100 | static int bq2477x_write_word(struct bq2477x_chip *bq2477x, | ||
101 | unsigned int reg, unsigned int val) | ||
102 | { | ||
103 | return regmap_write(bq2477x->regmap_word, reg, val); | ||
104 | } | ||
105 | |||
106 | static int bq2477x_update_bits(struct bq2477x_chip *bq2477x, | ||
107 | unsigned int reg, unsigned int mask, unsigned int val) | ||
108 | { | ||
109 | return regmap_update_bits(bq2477x->regmap, reg, mask, val); | ||
110 | } | ||
111 | |||
112 | static enum power_supply_property bq2477x_psy_props[] = { | ||
113 | POWER_SUPPLY_PROP_ONLINE, | ||
114 | }; | ||
115 | |||
116 | static int bq2477x_ac_get_property(struct power_supply *psy, | ||
117 | enum power_supply_property psp, union power_supply_propval *val) | ||
118 | { | ||
119 | struct bq2477x_chip *bq2477x; | ||
120 | |||
121 | bq2477x = container_of(psy, struct bq2477x_chip, ac); | ||
122 | if (psp == POWER_SUPPLY_PROP_ONLINE) | ||
123 | val->intval = bq2477x->ac_online; | ||
124 | else | ||
125 | return -EINVAL; | ||
126 | return 0; | ||
127 | } | ||
128 | |||
129 | static int bq2477x_show_chip_version(struct bq2477x_chip *bq2477x) | ||
130 | { | ||
131 | int ret; | ||
132 | unsigned int val; | ||
133 | |||
134 | ret = bq2477x_read(bq2477x, BQ2477X_DEVICE_ID_REG, &val); | ||
135 | if (ret < 0) { | ||
136 | dev_err(bq2477x->dev, "DEVICE_ID_REG read failed: %d\n", ret); | ||
137 | return ret; | ||
138 | } | ||
139 | |||
140 | if (val == BQ24770_DEVICE_ID) | ||
141 | dev_info(bq2477x->dev, "chip type BQ24770 detected\n"); | ||
142 | else if (val == BQ24773_DEVICE_ID) | ||
143 | dev_info(bq2477x->dev, "chip type BQ24773 detected\n"); | ||
144 | else { | ||
145 | dev_info(bq2477x->dev, "unrecognized chip type: 0x%4x\n", val); | ||
146 | return -EINVAL; | ||
147 | } | ||
148 | return 0; | ||
149 | } | ||
150 | |||
151 | static int bq2477x_hw_init(struct bq2477x_chip *bq2477x) | ||
152 | { | ||
153 | int ret = 0; | ||
154 | |||
155 | /* Configure control */ | ||
156 | ret = bq2477x_write(bq2477x, BQ2477X_CHARGE_OPTION_0_MSB, | ||
157 | BQ2477X_CHARGE_OPTION_POR_MSB); | ||
158 | if (ret < 0) { | ||
159 | dev_err(bq2477x->dev, "CHARGE_OPTION_0 write failed %d\n", ret); | ||
160 | return ret; | ||
161 | } | ||
162 | ret = bq2477x_write(bq2477x, BQ2477X_CHARGE_OPTION_0_LSB, | ||
163 | BQ2477X_CHARGE_OPTION_POR_LSB); | ||
164 | if (ret < 0) { | ||
165 | dev_err(bq2477x->dev, "CHARGE_OPTION_0 write failed %d\n", ret); | ||
166 | return ret; | ||
167 | } | ||
168 | |||
169 | ret = bq2477x_write_word(bq2477x, BQ2477X_MAX_CHARGE_VOLTAGE_LSB, | ||
170 | (bq2477x->dac_v >> 8) | (bq2477x->dac_v << 8)); | ||
171 | if (ret < 0) { | ||
172 | dev_err(bq2477x->dev, "CHARGE_VOLTAGE write failed %d\n", ret); | ||
173 | return ret; | ||
174 | } | ||
175 | |||
176 | ret = bq2477x_write(bq2477x, BQ2477X_MIN_SYS_VOLTAGE, | ||
177 | bq2477x->dac_minsv >> BQ2477X_MIN_SYS_VOLTAGE_SHIFT); | ||
178 | if (ret < 0) { | ||
179 | dev_err(bq2477x->dev, "MIN_SYS_VOLTAGE write failed %d\n", ret); | ||
180 | return ret; | ||
181 | } | ||
182 | |||
183 | /* Configure setting input current */ | ||
184 | ret = bq2477x_write(bq2477x, BQ2477X_INPUT_CURRENT, | ||
185 | bq2477x->dac_iin >> BQ2477X_INPUT_CURRENT_SHIFT); | ||
186 | if (ret < 0) { | ||
187 | dev_err(bq2477x->dev, "INPUT_CURRENT write failed %d\n", ret); | ||
188 | return ret; | ||
189 | } | ||
190 | |||
191 | ret = bq2477x_write_word(bq2477x, BQ2477X_CHARGE_CURRENT_LSB, | ||
192 | (bq2477x->dac_ichg >> 8) | (bq2477x->dac_ichg << 8)); | ||
193 | if (ret < 0) { | ||
194 | dev_err(bq2477x->dev, "CHARGE_CURRENT write failed %d\n", ret); | ||
195 | return ret; | ||
196 | } | ||
197 | |||
198 | return ret; | ||
199 | } | ||
200 | |||
201 | static void bq2477x_work_thread(struct kthread_work *work) | ||
202 | { | ||
203 | struct bq2477x_chip *bq2477x = container_of(work, | ||
204 | struct bq2477x_chip, bq_wdt_work); | ||
205 | int ret; | ||
206 | |||
207 | for (;;) { | ||
208 | ret = bq2477x_hw_init(bq2477x); | ||
209 | if (ret < 0) { | ||
210 | dev_err(bq2477x->dev, "Hardware init failed %d\n", ret); | ||
211 | return; | ||
212 | } | ||
213 | |||
214 | ret = bq2477x_update_bits(bq2477x, BQ2477X_CHARGE_OPTION_0_MSB, | ||
215 | BQ2477X_WATCHDOG_TIMER, 0x60); | ||
216 | if (ret < 0) { | ||
217 | dev_err(bq2477x->dev, | ||
218 | "CHARGE_OPTION write failed %d\n", ret); | ||
219 | return; | ||
220 | } | ||
221 | |||
222 | msleep(bq2477x->wdt_refresh_timeout * 1000); | ||
223 | } | ||
224 | } | ||
225 | |||
226 | static void of_bq2477x_parse_platform_data(struct i2c_client *client, | ||
227 | struct bq2477x_platform_data *pdata) | ||
228 | { | ||
229 | struct device_node *np = client->dev.of_node; | ||
230 | enum of_gpio_flags flags; | ||
231 | u32 pval; | ||
232 | int ret; | ||
233 | |||
234 | ret = of_property_read_u32(np, "ti,dac-ichg", &pval); | ||
235 | if (!ret) | ||
236 | pdata->dac_ichg = pval; | ||
237 | else | ||
238 | dev_warn(&client->dev, "dac-ichg not provided\n"); | ||
239 | |||
240 | ret = of_property_read_u32(np, "ti,dac-v", &pval); | ||
241 | if (!ret) | ||
242 | pdata->dac_v = pval; | ||
243 | else | ||
244 | dev_warn(&client->dev, "dac-v not provided\n"); | ||
245 | |||
246 | ret = of_property_read_u32(np, "ti,dac-minsv", &pval); | ||
247 | if (!ret) | ||
248 | pdata->dac_minsv = pval; | ||
249 | else | ||
250 | dev_warn(&client->dev, "dac-minsv not provided\n"); | ||
251 | |||
252 | ret = of_property_read_u32(np, "ti,dac-iin", &pval); | ||
253 | if (!ret) | ||
254 | pdata->dac_iin = pval; | ||
255 | else | ||
256 | dev_warn(&client->dev, "dac-iin not provided\n"); | ||
257 | |||
258 | ret = of_property_read_u32(np, "ti,wdt-refresh-timeout", &pval); | ||
259 | if (!ret) | ||
260 | pdata->wdt_refresh_timeout = pval; | ||
261 | else | ||
262 | dev_warn(&client->dev, "wdt-refresh-timeout not provided\n"); | ||
263 | |||
264 | pdata->charger_detect_gpio = of_get_named_gpio_flags(np, | ||
265 | "ti,charger-detect-gpio", | ||
266 | 0, &flags); | ||
267 | if (pdata->charger_detect_gpio >= 0) | ||
268 | pdata->charger_detect_gpio_active_low = flags & | ||
269 | OF_GPIO_ACTIVE_LOW; | ||
270 | else | ||
271 | dev_warn(&client->dev, "invalid charger_detect_gpio\n"); | ||
272 | } | ||
273 | |||
274 | static irqreturn_t bq2477x_charger_detect_irq(int irq, void *data) | ||
275 | { | ||
276 | struct bq2477x_chip *bq2477x = data; | ||
277 | bq2477x->ac_online = | ||
278 | gpio_get_value_cansleep(bq2477x->charger_detect_gpio); | ||
279 | bq2477x->ac_online ^= bq2477x->charger_detect_gpio_active_low; | ||
280 | |||
281 | if (bq2477x->ac_online == 1) | ||
282 | bq2477x_hw_init(bq2477x); | ||
283 | |||
284 | power_supply_changed(&bq2477x->ac); | ||
285 | return IRQ_HANDLED; | ||
286 | } | ||
287 | |||
288 | static int bq2477x_probe(struct i2c_client *client, | ||
289 | const struct i2c_device_id *id) | ||
290 | { | ||
291 | struct bq2477x_chip *bq2477x = NULL; | ||
292 | struct bq2477x_platform_data *pdata; | ||
293 | int ret = 0; | ||
294 | |||
295 | if (client->dev.of_node) { | ||
296 | pdata = devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL); | ||
297 | if (!pdata) | ||
298 | return -ENOMEM; | ||
299 | of_bq2477x_parse_platform_data(client, pdata); | ||
300 | } else { | ||
301 | pdata = client->dev.platform_data; | ||
302 | } | ||
303 | |||
304 | if (!pdata) { | ||
305 | dev_err(&client->dev, "No Platform data"); | ||
306 | return -EINVAL; | ||
307 | } | ||
308 | |||
309 | bq2477x = devm_kzalloc(&client->dev, sizeof(*bq2477x), GFP_KERNEL); | ||
310 | if (!bq2477x) { | ||
311 | dev_err(&client->dev, "Memory allocation failed\n"); | ||
312 | ret = -ENOMEM; | ||
313 | return ret; | ||
314 | } | ||
315 | bq2477x->dev = &client->dev; | ||
316 | |||
317 | bq2477x->dac_ichg = pdata->dac_ichg; | ||
318 | bq2477x->dac_v = pdata->dac_v; | ||
319 | bq2477x->dac_minsv = pdata->dac_minsv; | ||
320 | bq2477x->dac_iin = pdata->dac_iin; | ||
321 | bq2477x->wdt_refresh_timeout = pdata->wdt_refresh_timeout; | ||
322 | bq2477x->charger_detect_gpio = pdata->charger_detect_gpio; | ||
323 | bq2477x->charger_detect_gpio_active_low = | ||
324 | pdata->charger_detect_gpio_active_low; | ||
325 | |||
326 | i2c_set_clientdata(client, bq2477x); | ||
327 | mutex_init(&bq2477x->mutex); | ||
328 | |||
329 | bq2477x->ac_online = 0; | ||
330 | |||
331 | bq2477x->regmap = devm_regmap_init_i2c(client, &bq2477x_regmap_config); | ||
332 | if (IS_ERR(bq2477x->regmap)) { | ||
333 | ret = PTR_ERR(bq2477x->regmap); | ||
334 | dev_err(&client->dev, "regmap init failed with err %d\n", ret); | ||
335 | return ret; | ||
336 | } | ||
337 | |||
338 | bq2477x->regmap_word = devm_regmap_init_i2c(client, | ||
339 | &bq2477x_regmap_word_config); | ||
340 | if (IS_ERR(bq2477x->regmap_word)) { | ||
341 | ret = PTR_ERR(bq2477x->regmap_word); | ||
342 | dev_err(&client->dev, | ||
343 | "regmap_word init failed with err %d\n", ret); | ||
344 | return ret; | ||
345 | } | ||
346 | |||
347 | ret = bq2477x_show_chip_version(bq2477x); | ||
348 | if (ret < 0) { | ||
349 | dev_err(bq2477x->dev, "version read failed %d\n", ret); | ||
350 | return ret; | ||
351 | } | ||
352 | |||
353 | bq2477x->ac.name = "bq2477x-ac"; | ||
354 | bq2477x->ac.type = POWER_SUPPLY_TYPE_MAINS; | ||
355 | bq2477x->ac.get_property = bq2477x_ac_get_property; | ||
356 | bq2477x->ac.properties = bq2477x_psy_props; | ||
357 | bq2477x->ac.num_properties = ARRAY_SIZE(bq2477x_psy_props); | ||
358 | |||
359 | ret = power_supply_register(bq2477x->dev, &bq2477x->ac); | ||
360 | if (ret < 0) { | ||
361 | dev_err(bq2477x->dev, | ||
362 | "AC power supply register failed %d\n", ret); | ||
363 | return ret; | ||
364 | } | ||
365 | |||
366 | if (gpio_is_valid(bq2477x->charger_detect_gpio)) { | ||
367 | ret = devm_gpio_request_one(bq2477x->dev, | ||
368 | bq2477x->charger_detect_gpio, GPIOF_IN, | ||
369 | "bq2477x-charger-detect"); | ||
370 | if (ret) { | ||
371 | dev_err(bq2477x->dev, "gpio request failed %d\n", ret); | ||
372 | goto psy_err; | ||
373 | } | ||
374 | |||
375 | bq2477x->irq = gpio_to_irq(bq2477x->charger_detect_gpio); | ||
376 | bq2477x->ac_online = | ||
377 | gpio_get_value_cansleep(bq2477x->charger_detect_gpio); | ||
378 | bq2477x->ac_online ^= bq2477x->charger_detect_gpio_active_low; | ||
379 | |||
380 | ret = devm_request_threaded_irq(bq2477x->dev, bq2477x->irq, | ||
381 | NULL, bq2477x_charger_detect_irq, | ||
382 | IRQF_ONESHOT | IRQF_TRIGGER_RISING | ||
383 | | IRQF_TRIGGER_FALLING, dev_name(bq2477x->dev), | ||
384 | bq2477x); | ||
385 | if (ret < 0) { | ||
386 | dev_err(bq2477x->dev, | ||
387 | "Failed to request irq %d\n", ret); | ||
388 | goto psy_err; | ||
389 | } | ||
390 | } | ||
391 | |||
392 | ret = bq2477x_hw_init(bq2477x); | ||
393 | if (ret < 0) { | ||
394 | dev_err(bq2477x->dev, "Hardware init failed %d\n", ret); | ||
395 | goto psy_err; | ||
396 | } | ||
397 | |||
398 | init_kthread_worker(&bq2477x->bq_kworker); | ||
399 | bq2477x->bq_kworker_task = kthread_run(kthread_worker_fn, | ||
400 | &bq2477x->bq_kworker, | ||
401 | dev_name(bq2477x->dev)); | ||
402 | if (IS_ERR(bq2477x->bq_kworker_task)) { | ||
403 | ret = PTR_ERR(bq2477x->bq_kworker_task); | ||
404 | dev_err(&client->dev, "Kworker task creation failed %d\n", ret); | ||
405 | goto psy_err; | ||
406 | } | ||
407 | |||
408 | init_kthread_work(&bq2477x->bq_wdt_work, bq2477x_work_thread); | ||
409 | sched_setscheduler(bq2477x->bq_kworker_task, | ||
410 | SCHED_FIFO, &bq2477x_param); | ||
411 | queue_kthread_work(&bq2477x->bq_kworker, &bq2477x->bq_wdt_work); | ||
412 | |||
413 | dev_info(bq2477x->dev, "bq2477x charger registerd\n"); | ||
414 | |||
415 | return ret; | ||
416 | |||
417 | psy_err: | ||
418 | power_supply_unregister(&bq2477x->ac); | ||
419 | return ret; | ||
420 | } | ||
421 | |||
422 | static int bq2477x_remove(struct i2c_client *client) | ||
423 | { | ||
424 | struct bq2477x_chip *bq2477x = i2c_get_clientdata(client); | ||
425 | flush_kthread_worker(&bq2477x->bq_kworker); | ||
426 | kthread_stop(bq2477x->bq_kworker_task); | ||
427 | power_supply_unregister(&bq2477x->ac); | ||
428 | return 0; | ||
429 | } | ||
430 | |||
431 | static const struct i2c_device_id bq2477x_id[] = { | ||
432 | { "bq24770", BQ24770 }, | ||
433 | { "bq24773", BQ24773 }, | ||
434 | {}, | ||
435 | }; | ||
436 | MODULE_DEVICE_TABLE(i2c, bq2477x_id); | ||
437 | |||
438 | static struct i2c_driver bq2477x_i2c_driver = { | ||
439 | .driver = { | ||
440 | .name = "bq2477x-charger", | ||
441 | .owner = THIS_MODULE, | ||
442 | }, | ||
443 | .probe = bq2477x_probe, | ||
444 | .remove = bq2477x_remove, | ||
445 | .id_table = bq2477x_id, | ||
446 | }; | ||
447 | |||
448 | static int __init bq2477x_module_init(void) | ||
449 | { | ||
450 | return i2c_add_driver(&bq2477x_i2c_driver); | ||
451 | } | ||
452 | module_init(bq2477x_module_init); | ||
453 | |||
454 | static void __exit bq2477x_cleanup(void) | ||
455 | { | ||
456 | i2c_del_driver(&bq2477x_i2c_driver); | ||
457 | } | ||
458 | module_exit(bq2477x_cleanup); | ||
459 | |||
460 | MODULE_DESCRIPTION("BQ24770/BQ24773 battery charger driver"); | ||
461 | MODULE_AUTHOR("Andy Park <an...@nvidia.com>"); | ||
462 | MODULE_AUTHOR("Syed Rafiuddin <srafi...@nvidia.com"); | ||
463 | MODULE_LICENSE("GPL v2"); | ||
464 |
include/linux/power/bq2477x-charger.h
File was created | 1 | /* | |
2 | * bq2477x-charger.h -- BQ2477X Charger driver | ||
3 | * | ||
4 | * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved. | ||
5 | * | ||
6 | * Author: Andy Park <an...@nvidia.com> | ||
7 | * Author: Syed Rafiuddin <srafi...@nvidia.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License as published by | ||
11 | * the Free Software Foundation; either version 2 of the License, or | ||
12 | * (at your option) any later version. | ||
13 | * | ||
14 | * This program is distributed in the hope that it will be useful, but WITHOUT | ||
15 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
16 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
17 | * more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License along | ||
20 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
21 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | ||
22 | * | ||
23 | */ | ||
24 | |||
25 | #ifndef __LINUX_POWER_BQ2477X_CHARGER_H | ||
26 | #define __LINUX_POWER_BQ2477X_CHARGER_H | ||
27 | |||
28 | /* Register definitions */ | ||
29 | #define BQ2477X_CHARGE_OPTION_0_LSB 0x00 | ||
30 | #define BQ2477X_CHARGE_OPTION_0_MSB 0x01 | ||
31 | #define BQ2477X_CHARGE_OPTION_1_LSB 0x02 | ||
32 | #define BQ2477X_CHARGE_OPTION_1_MSB 0x03 | ||
33 | #define BQ2477X_PROCHOT_OPTION_0_LSB 0x04 | ||
34 | #define BQ2477X_PROCHOT_OPTION_0_MSB 0x05 | ||
35 | #define BQ2477X_PROCHOT_OPTION_1_LSB 0x06 | ||
36 | #define BQ2477X_PROCHOT_OPTION_1_MSB 0x07 | ||
37 | #define BQ2477X_DEVICE_ID_REG 0x09 | ||
38 | #define BQ2477X_CHARGE_CURRENT_LSB 0x0A | ||
39 | #define BQ2477X_CHARGE_CURRENT_MSB 0x0B | ||
40 | #define BQ2477X_MAX_CHARGE_VOLTAGE_LSB 0x0C | ||
41 | #define BQ2477X_MAX_CHARGE_VOLTAGE_MSB 0x0D | ||
42 | #define BQ2477X_MIN_SYS_VOLTAGE 0x0E | ||
43 | #define BQ2477X_INPUT_CURRENT 0x0F | ||
44 | |||
45 | #define BQ24770_DEVICE_ID 0x14 | ||
46 | #define BQ24773_DEVICE_ID 0x41 | ||
47 | |||
48 | #define BQ2477X_CHARGE_OPTION_POR_LSB 0x0E | ||
49 | #define BQ2477X_CHARGE_OPTION_POR_MSB 0x81 | ||
50 | |||
51 | #define BQ2477X_CHARGE_CURRENT_SHIFT 6 | ||
52 | #define BQ2477X_MAX_CHARGE_VOLTAGE_SHIFT 4 | ||
53 | #define BQ2477X_MIN_SYS_VOLTAGE_SHIFT 8 | ||
54 | #define BQ2477X_INPUT_CURRENT_SHIFT 6 | ||
55 | |||
56 | #define BQ2477X_ENABLE_CHARGE_MASK BIT(0) | ||
57 | #define BQ2477X_WATCHDOG_TIMER 0x60 | ||
58 | |||
59 | #define BQ2477X_MAX_REGS (BQ2477X_INPUT_CURRENT + 1) | ||
60 | |||
61 | struct bq2477x_platform_data { | ||
62 | int irq; | ||
63 | int dac_ctrl; | ||
64 | int dac_ichg; | ||
65 | int dac_v; | ||
66 | int dac_minsv; | ||
67 | int dac_iin; | ||
68 | int wdt_refresh_timeout; | ||
69 | int gpio; | ||
70 | int charger_detect_gpio; | ||
71 | int charger_detect_gpio_active_low; | ||
72 | }; | ||
73 | #endif /* __LINUX_POWER_BQ2477X_CHARGER_H */ | ||
74 |