[opensuse-arm] Re: [opensuse-kernel] [PATCH] ARM: update armv7 default config - master branch
On 03.04.14 13:47, Guillaume Gardet wrote:
Le 03/04/2014 13:39, Alexander Graf a écrit :
On 02.04.14 20:48, Guillaume Gardet wrote:
Hi,
please find in attachment an ARMv7 -default config update to fix Ethernet and HDMI output on iMX6 SABRE Lite board. It also add initial support to USB on this board.
This patch is against master branch.
Signed-off-by: Guillaume GARDET
Moving modules from =m to =y is the wrong answer usually. Why don't the modules work as modules? I do not know. Modules are loaded with no error but they do not work. The fact is switching FEC and SDMA from =m to =y fix the problems. It is true for 13.1 and master branches.
Sascha, you're the one closest to upstream i.MX development that I'm aware of. Do you have any idea why we have to set FEC and SDMA to =y to make them work? Have you ever tried to use them as modules? Thanks, Alex -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
Hi, On Thu, Apr 03, 2014 at 02:48:11PM +0200, Alexander Graf wrote:
On 03.04.14 13:47, Guillaume Gardet wrote:
Le 03/04/2014 13:39, Alexander Graf a écrit :
On 02.04.14 20:48, Guillaume Gardet wrote:
Hi,
please find in attachment an ARMv7 -default config update to fix Ethernet and HDMI output on iMX6 SABRE Lite board. It also add initial support to USB on this board.
This patch is against master branch.
Signed-off-by: Guillaume GARDET
Moving modules from =m to =y is the wrong answer usually. Why don't the modules work as modules? I do not know. Modules are loaded with no error but they do not work. The fact is switching FEC and SDMA from =m to =y fix the problems. It is true for 13.1 and master branches. Sascha, you're the one closest to upstream i.MX development that I'm aware of. Do you have any idea why we have to set FEC and SDMA to =y to make them work?
I just tried and compiled the fec driver as module. It still works and I don't see why it shouldn't. What could cause trouble is this in arch/arm/mach-imx/mach-imx6q.c: /* For imx6q sabrelite board: set KSZ9021RN RGMII pad skew */ static int ksz9021rn_phy_fixup(struct phy_device *phydev) { if (IS_BUILTIN(CONFIG_PHYLIB)) { /* min rx data delay */ phy_write(phydev, MICREL_KSZ9021_EXTREG_CTRL, 0x8000 | MICREL_KSZ9021_RGMII_RX_DATA_PAD_SCEW); ... } } This means the phy fixup is only executed when PHYLIB is builtin. The fec driver selects PHYLIB, so as long fec is builtin PHYLIB will be builtin also. If you build the fec as a module, then PHYLIB may be built as a module aswell. As a test try building the fec as module, but make CONFIG_PHYLIB=y. For the SDMA: What exactly doesn't work? Sound? Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
Le 03/04/2014 15:08, Sascha Hauer a écrit :
Hi,
On Thu, Apr 03, 2014 at 02:48:11PM +0200, Alexander Graf wrote:
On 03.04.14 13:47, Guillaume Gardet wrote:
Le 03/04/2014 13:39, Alexander Graf a écrit :
On 02.04.14 20:48, Guillaume Gardet wrote:
Hi,
please find in attachment an ARMv7 -default config update to fix Ethernet and HDMI output on iMX6 SABRE Lite board. It also add initial support to USB on this board.
This patch is against master branch.
Signed-off-by: Guillaume GARDET
Moving modules from =m to =y is the wrong answer usually. Why don't the modules work as modules? I do not know. Modules are loaded with no error but they do not work. The fact is switching FEC and SDMA from =m to =y fix the problems. It is true for 13.1 and master branches. Sascha, you're the one closest to upstream i.MX development that I'm aware of. Do you have any idea why we have to set FEC and SDMA to =y to make them work? I just tried and compiled the fec driver as module. It still works and I don't see why it shouldn't. What could cause trouble is this in arch/arm/mach-imx/mach-imx6q.c: /* For imx6q sabrelite board: set KSZ9021RN RGMII pad skew */ static int ksz9021rn_phy_fixup(struct phy_device *phydev) { if (IS_BUILTIN(CONFIG_PHYLIB)) { /* min rx data delay */ phy_write(phydev, MICREL_KSZ9021_EXTREG_CTRL, 0x8000 | MICREL_KSZ9021_RGMII_RX_DATA_PAD_SCEW); ... } }
This means the phy fixup is only executed when PHYLIB is builtin. The fec driver selects PHYLIB, so as long fec is builtin PHYLIB will be builtin also. If you build the fec as a module, then PHYLIB may be built as a module aswell. As a test try building the fec as module, but make CONFIG_PHYLIB=y.
I will give it a try.
For the SDMA: What exactly doesn't work? Sound?
Sound and video output. Guillaume -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
On Thu, Apr 03, 2014 at 03:24:54PM +0200, Guillaume Gardet wrote:
Le 03/04/2014 15:08, Sascha Hauer a écrit :
Hi,
On Thu, Apr 03, 2014 at 02:48:11PM +0200, Alexander Graf wrote:
On 03.04.14 13:47, Guillaume Gardet wrote:
Le 03/04/2014 13:39, Alexander Graf a écrit :
On 02.04.14 20:48, Guillaume Gardet wrote:
Hi,
please find in attachment an ARMv7 -default config update to fix Ethernet and HDMI output on iMX6 SABRE Lite board. It also add initial support to USB on this board.
This patch is against master branch.
Signed-off-by: Guillaume GARDET
Moving modules from =m to =y is the wrong answer usually. Why don't the modules work as modules? I do not know. Modules are loaded with no error but they do not work. The fact is switching FEC and SDMA from =m to =y fix the problems. It is true for 13.1 and master branches. Sascha, you're the one closest to upstream i.MX development that I'm aware of. Do you have any idea why we have to set FEC and SDMA to =y to make them work? I just tried and compiled the fec driver as module. It still works and I don't see why it shouldn't. What could cause trouble is this in arch/arm/mach-imx/mach-imx6q.c: /* For imx6q sabrelite board: set KSZ9021RN RGMII pad skew */ static int ksz9021rn_phy_fixup(struct phy_device *phydev) { if (IS_BUILTIN(CONFIG_PHYLIB)) { /* min rx data delay */ phy_write(phydev, MICREL_KSZ9021_EXTREG_CTRL, 0x8000 | MICREL_KSZ9021_RGMII_RX_DATA_PAD_SCEW); ... } }
This means the phy fixup is only executed when PHYLIB is builtin. The fec driver selects PHYLIB, so as long fec is builtin PHYLIB will be builtin also. If you build the fec as a module, then PHYLIB may be built as a module aswell. As a test try building the fec as module, but make CONFIG_PHYLIB=y.
I will give it a try.
For the SDMA: What exactly doesn't work? Sound?
Sound and video output.
Video? This should have nothing to do with SDMA. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
Le 03/04/2014 15:51, Sascha Hauer a écrit :
On Thu, Apr 03, 2014 at 03:24:54PM +0200, Guillaume Gardet wrote:
Le 03/04/2014 15:08, Sascha Hauer a écrit :
Hi,
On Thu, Apr 03, 2014 at 02:48:11PM +0200, Alexander Graf wrote:
On 03.04.14 13:47, Guillaume Gardet wrote:
Le 03/04/2014 13:39, Alexander Graf a écrit :
On 02.04.14 20:48, Guillaume Gardet wrote: > Hi, > > please find in attachment an ARMv7 -default config update to fix Ethernet and HDMI output on iMX6 SABRE Lite board. It also add initial support to USB on this board. > > This patch is against master branch. > > Signed-off-by: Guillaume GARDET
Moving modules from =m to =y is the wrong answer usually. Why don't the modules work as modules? I do not know. Modules are loaded with no error but they do not work. The fact is switching FEC and SDMA from =m to =y fix the problems. It is true for 13.1 and master branches. Sascha, you're the one closest to upstream i.MX development that I'm aware of. Do you have any idea why we have to set FEC and SDMA to =y to make them work? I just tried and compiled the fec driver as module. It still works and I don't see why it shouldn't. What could cause trouble is this in arch/arm/mach-imx/mach-imx6q.c: /* For imx6q sabrelite board: set KSZ9021RN RGMII pad skew */ static int ksz9021rn_phy_fixup(struct phy_device *phydev) { if (IS_BUILTIN(CONFIG_PHYLIB)) { /* min rx data delay */ phy_write(phydev, MICREL_KSZ9021_EXTREG_CTRL, 0x8000 | MICREL_KSZ9021_RGMII_RX_DATA_PAD_SCEW); ... } }
This means the phy fixup is only executed when PHYLIB is builtin. The fec driver selects PHYLIB, so as long fec is builtin PHYLIB will be builtin also. If you build the fec as a module, then PHYLIB may be built as a module aswell. As a test try building the fec as module, but make CONFIG_PHYLIB=y. I will give it a try.
It is enough indeed. Ethernet is working like this. Thanks. Note: CONFIG_PHYLIB=y also enables CONFIG_OF_MDIO=y
For the SDMA: What exactly doesn't work? Sound? Sound and video output.
Video? This should have nothing to do with SDMA.
After more testing, SDMA seems to be fine as a module (sorry) but I managed to get video working with SD/MMC modules as built-in instead of modules. It is crazy! What is the link between SD/MMC and video??? openSUSE uses an initrd with SD/MMC modules but for my testing I do not regenerate the initrd, so I need SD/MMC as built-in to boot on my SD rootfs. Guillaume -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
participants (3)
-
Alexander Graf
-
Guillaume Gardet
-
Sascha Hauer