* [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) @ 2015-01-09 15:27 Bob Mottram [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-09 15:27 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO Cc: Bob Mottram During testing of big-endian on a Jetson TK1 with baserock, the following issues were found and fixed. Note that to get the system running with big-endian you will need to disable ARCH_SUSPEND_POSSIBLE within arch/arm/Kconfig. Bob Mottram (4): ARM: tegra: Add a separate big-endian configuration ARM: gpio: tegra: Maintain endianness ARM: tegra: enable big-endian support ARM: tegra: fix big-endian issue with irq code arch/arm/configs/tegra_be_defconfig | 298 ++++++++++++++++++++++++++++++++++++ arch/arm/mach-tegra/Kconfig | 1 + arch/arm/mach-tegra/headsmp.S | 3 +- arch/arm/mach-tegra/irq.c | 2 +- drivers/gpio/gpio-tegra.c | 4 +- 5 files changed, 304 insertions(+), 4 deletions(-) create mode 100644 arch/arm/configs/tegra_be_defconfig -- 2.1.0 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* [PATCH 1/4] ARM: tegra: Add a separate big-endian configuration [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-09 15:27 ` Bob Mottram 2015-01-09 15:27 ` [PATCH 2/4] ARM: gpio: tegra: Maintain endianness Bob Mottram ` (3 subsequent siblings) 4 siblings, 0 replies; 27+ messages in thread From: Bob Mottram @ 2015-01-09 15:27 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO Cc: Bob Mottram Create a separate configuration file for tegra big-endian. The only change from tegra_defconfig is the addition of the first two lines. Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> --- arch/arm/configs/tegra_be_defconfig | 298 ++++++++++++++++++++++++++++++++++++ 1 file changed, 298 insertions(+) create mode 100644 arch/arm/configs/tegra_be_defconfig diff --git a/arch/arm/configs/tegra_be_defconfig b/arch/arm/configs/tegra_be_defconfig new file mode 100644 index 0000000..c0a8636 --- /dev/null +++ b/arch/arm/configs/tegra_be_defconfig @@ -0,0 +1,298 @@ +CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y +CONFIG_CPU_BIG_ENDIAN=y +CONFIG_SYSVIPC=y +CONFIG_FHANDLE=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_CGROUPS=y +CONFIG_CGROUP_DEBUG=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_RESOURCE_COUNTERS=y +CONFIG_CGROUP_SCHED=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_BLK_DEV_INITRD=y +# CONFIG_ELF_CORE is not set +CONFIG_EMBEDDED=y +CONFIG_PERF_EVENTS=y +CONFIG_SLAB=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +# CONFIG_BLK_DEV_BSG is not set +CONFIG_PARTITION_ADVANCED=y +# CONFIG_IOSCHED_DEADLINE is not set +# CONFIG_IOSCHED_CFQ is not set +CONFIG_ARCH_TEGRA=y +CONFIG_ARCH_TEGRA_2x_SOC=y +CONFIG_ARCH_TEGRA_3x_SOC=y +CONFIG_ARCH_TEGRA_114_SOC=y +CONFIG_ARCH_TEGRA_124_SOC=y +CONFIG_PCI=y +CONFIG_PCI_MSI=y +CONFIG_PCI_TEGRA=y +CONFIG_PCIEPORTBUS=y +CONFIG_SMP=y +CONFIG_PREEMPT=y +CONFIG_AEABI=y +CONFIG_HIGHMEM=y +CONFIG_CMA=y +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBOOT_ROM_BSS=0x0 +CONFIG_KEXEC=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_STAT_DETAILS=y +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +CONFIG_CPU_IDLE=y +CONFIG_VFP=y +CONFIG_NEON=y +CONFIG_PM=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_NET_KEY=y +CONFIG_INET=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +CONFIG_IP_PNP_RARP=y +CONFIG_INET_ESP=y +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_LRO is not set +# CONFIG_INET_DIAG is not set +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=y +CONFIG_INET6_ESP=y +CONFIG_INET6_IPCOMP=y +CONFIG_IPV6_MIP6=y +CONFIG_IPV6_TUNNEL=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_CAN=y +CONFIG_CAN_MCP251X=y +CONFIG_BT=y +CONFIG_BT_RFCOMM=y +CONFIG_BT_BNEP=y +CONFIG_BT_HIDP=y +CONFIG_BT_HCIBTUSB=m +CONFIG_CFG80211=y +CONFIG_MAC80211=y +CONFIG_RFKILL=y +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_GPIO=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +# CONFIG_FIRMWARE_IN_KERNEL is not set +CONFIG_DMA_CMA=y +CONFIG_CMA_SIZE_MBYTES=64 +CONFIG_MTD=y +CONFIG_MTD_M25P80=y +CONFIG_MTD_SPI_NOR=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_AD525X_DPOT=y +CONFIG_AD525X_DPOT_I2C=y +CONFIG_ICS932S401=y +CONFIG_APDS9802ALS=y +CONFIG_ISL29003=y +CONFIG_EEPROM_AT24=y +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=y +# CONFIG_SCSI_LOWLEVEL is not set +CONFIG_ATA=y +CONFIG_SATA_AHCI=y +CONFIG_AHCI_TEGRA=y +CONFIG_NETDEVICES=y +CONFIG_DUMMY=y +CONFIG_IGB=y +CONFIG_R8169=y +CONFIG_USB_PEGASUS=y +CONFIG_USB_USBNET=y +CONFIG_USB_NET_SMSC75XX=y +CONFIG_USB_NET_SMSC95XX=y +CONFIG_BRCMFMAC=m +CONFIG_RT2X00=y +CONFIG_RT2800USB=m +CONFIG_INPUT_JOYDEV=y +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_GPIO=y +CONFIG_KEYBOARD_TEGRA=y +CONFIG_KEYBOARD_CROS_EC=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=y +CONFIG_TOUCHSCREEN_STMPE=y +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MPU3050=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_DEVKMEM is not set +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_TEGRA=y +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_HW_RANDOM is not set +# CONFIG_I2C_COMPAT is not set +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_MUX_PINCTRL=y +CONFIG_I2C_TEGRA=y +CONFIG_SPI=y +CONFIG_SPI_TEGRA114=y +CONFIG_SPI_TEGRA20_SFLASH=y +CONFIG_SPI_TEGRA20_SLINK=y +CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_PALMAS=y +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PALMAS=y +CONFIG_GPIO_TPS6586X=y +CONFIG_GPIO_TPS65910=y +CONFIG_POWER_SUPPLY=y +CONFIG_BATTERY_SBS=y +CONFIG_CHARGER_TPS65090=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_AS3722=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_SENSORS_LM90=y +CONFIG_SENSORS_LM95245=y +CONFIG_MFD_AS3722=y +CONFIG_MFD_CROS_EC=y +CONFIG_MFD_CROS_EC_SPI=y +CONFIG_MFD_MAX8907=y +CONFIG_MFD_STMPE=y +CONFIG_MFD_PALMAS=y +CONFIG_MFD_TPS65090=y +CONFIG_MFD_TPS6586X=y +CONFIG_MFD_TPS65910=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_AS3722=y +CONFIG_REGULATOR_GPIO=y +CONFIG_REGULATOR_MAX8907=y +CONFIG_REGULATOR_PALMAS=y +CONFIG_REGULATOR_TPS51632=y +CONFIG_REGULATOR_TPS62360=y +CONFIG_REGULATOR_TPS65090=y +CONFIG_REGULATOR_TPS6586X=y +CONFIG_REGULATOR_TPS65910=y +CONFIG_MEDIA_SUPPORT=y +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_USB_SUPPORT=y +CONFIG_USB_VIDEO_CLASS=y +CONFIG_USB_GSPCA=y +CONFIG_DRM=y +CONFIG_DRM_TEGRA=y +CONFIG_DRM_PANEL_SIMPLE=y +CONFIG_BACKLIGHT_LCD_SUPPORT=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_GENERIC is not set +CONFIG_BACKLIGHT_PWM=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_LOGO=y +CONFIG_SOUND=y +CONFIG_SND=y +# CONFIG_SND_SUPPORT_OLD_API is not set +# CONFIG_SND_DRIVERS is not set +# CONFIG_SND_ARM is not set +# CONFIG_SND_SPI is not set +# CONFIG_SND_USB is not set +CONFIG_SND_SOC=y +CONFIG_SND_SOC_TEGRA=y +CONFIG_SND_SOC_TEGRA_RT5640=y +CONFIG_SND_SOC_TEGRA_WM8753=y +CONFIG_SND_SOC_TEGRA_WM8903=y +CONFIG_SND_SOC_TEGRA_TRIMSLICE=y +CONFIG_SND_SOC_TEGRA_ALC5632=y +CONFIG_SND_SOC_TEGRA_MAX98090=y +CONFIG_USB=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_TEGRA=y +CONFIG_USB_ACM=y +CONFIG_USB_WDM=y +CONFIG_USB_STORAGE=y +CONFIG_MMC=y +CONFIG_MMC_BLOCK_MINORS=16 +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_TEGRA=y +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_PWM=y +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_GPIO=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y +CONFIG_LEDS_TRIGGER_TRANSIENT=y +CONFIG_LEDS_TRIGGER_CAMERA=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_AS3722=y +CONFIG_RTC_DRV_DS1307=y +CONFIG_RTC_DRV_MAX8907=y +CONFIG_RTC_DRV_PALMAS=y +CONFIG_RTC_DRV_TPS6586X=y +CONFIG_RTC_DRV_TPS65910=y +CONFIG_RTC_DRV_EM3027=y +CONFIG_RTC_DRV_TEGRA=y +CONFIG_DMADEVICES=y +CONFIG_TEGRA20_APB_DMA=y +CONFIG_STAGING=y +CONFIG_SENSORS_ISL29018=y +CONFIG_SENSORS_ISL29028=y +CONFIG_MFD_NVEC=y +CONFIG_KEYBOARD_NVEC=y +CONFIG_SERIO_NVEC_PS2=y +CONFIG_NVEC_POWER=y +CONFIG_NVEC_PAZ00=y +CONFIG_TEGRA_IOMMU_GART=y +CONFIG_TEGRA_IOMMU_SMMU=y +CONFIG_MEMORY=y +CONFIG_IIO=y +CONFIG_AK8975=y +CONFIG_PWM=y +CONFIG_PWM_TEGRA=y +CONFIG_EXT2_FS=y +CONFIG_EXT2_FS_XATTR=y +CONFIG_EXT2_FS_POSIX_ACL=y +CONFIG_EXT2_FS_SECURITY=y +CONFIG_EXT3_FS=y +# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set +CONFIG_EXT3_FS_POSIX_ACL=y +CONFIG_EXT3_FS_SECURITY=y +CONFIG_EXT4_FS=y +# CONFIG_DNOTIFY is not set +CONFIG_VFAT_FS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +CONFIG_NFS_FS=y +CONFIG_ROOT_NFS=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ISO8859_1=y +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_FS=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_SLAB=y +CONFIG_DEBUG_VM=y +CONFIG_DETECT_HUNG_TASK=y +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +# CONFIG_DEBUG_PREEMPT is not set +CONFIG_DEBUG_MUTEXES=y +CONFIG_DEBUG_SG=y +CONFIG_DEBUG_LL=y +CONFIG_EARLY_PRINTK=y +CONFIG_CRYPTO_TWOFISH=y +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRC_CCITT=y -- 2.1.0 ^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:27 ` [PATCH 1/4] ARM: tegra: Add a separate big-endian configuration Bob Mottram @ 2015-01-09 15:27 ` Bob Mottram [not found] ` <1420817231-8346-3-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:27 ` [PATCH 3/4] ARM: tegra: enable big-endian support Bob Mottram ` (2 subsequent siblings) 4 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-09 15:27 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO Cc: Bob Mottram Replace the _raw-writel with writel_relaxed to fix issue with running tegra in big-endian. Tested on Jetson TK1. Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> --- drivers/gpio/gpio-tegra.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c index 1741981..a83e140 100644 --- a/drivers/gpio/gpio-tegra.c +++ b/drivers/gpio/gpio-tegra.c @@ -85,12 +85,12 @@ static struct tegra_gpio_bank *tegra_gpio_banks; static inline void tegra_gpio_writel(u32 val, u32 reg) { - __raw_writel(val, regs + reg); + writel_relaxed(val, regs + reg); } static inline u32 tegra_gpio_readl(u32 reg) { - return __raw_readl(regs + reg); + return readl_relaxed(regs + reg); } static int tegra_gpio_compose(int bank, int port, int bit) -- 2.1.0 ^ permalink raw reply related [flat|nested] 27+ messages in thread
[parent not found: <1420817231-8346-3-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <1420817231-8346-3-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-27 18:41 ` Dmitry Osipenko 2015-03-11 9:43 ` Thierry Reding 1 sibling, 0 replies; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-27 18:41 UTC (permalink / raw) To: Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 09.01.2015 18:27, Bob Mottram пишет: > Replace the _raw-writel with writel_relaxed to fix issue with > running tegra in big-endian. Tested on Jetson TK1. > > Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > --- > drivers/gpio/gpio-tegra.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c > index 1741981..a83e140 100644 > --- a/drivers/gpio/gpio-tegra.c > +++ b/drivers/gpio/gpio-tegra.c > @@ -85,12 +85,12 @@ static struct tegra_gpio_bank *tegra_gpio_banks; > > static inline void tegra_gpio_writel(u32 val, u32 reg) > { > - __raw_writel(val, regs + reg); > + writel_relaxed(val, regs + reg); > } > > static inline u32 tegra_gpio_readl(u32 reg) > { > - return __raw_readl(regs + reg); > + return readl_relaxed(regs + reg); > } > > static int tegra_gpio_compose(int bank, int port, int bit) > -- > 2.1.0 > -- > To unsubscribe from this list: send the line "unsubscribe linux-tegra" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Tested-by: Dmitry Osipenko <digetx-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <1420817231-8346-3-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-27 18:41 ` Dmitry Osipenko @ 2015-03-11 9:43 ` Thierry Reding [not found] ` <20150311094324.GH19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 1 sibling, 1 reply; 27+ messages in thread From: Thierry Reding @ 2015-03-11 9:43 UTC (permalink / raw) To: Bob Mottram, Linus Walleij, Alex Courbot Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO [-- Attachment #1: Type: text/plain, Size: 1468 bytes --] On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: > Replace the _raw-writel with writel_relaxed to fix issue with > running tegra in big-endian. Tested on Jetson TK1. > > Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > --- > drivers/gpio/gpio-tegra.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Linus, Alex, would you prefer to take this through the GPIO tree or shall I take it into the Tegra tree along with the rest of this series. In case of the former: Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> I see that the patch wasn't Cc'ed to linux-gpio or Linus so, for reference, here's a link to it in patchwork: http://patchwork.ozlabs.org/patch/427142/ I'm also quoting the entire patch below for your reference. Thierry > diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c > index 1741981..a83e140 100644 > --- a/drivers/gpio/gpio-tegra.c > +++ b/drivers/gpio/gpio-tegra.c > @@ -85,12 +85,12 @@ static struct tegra_gpio_bank *tegra_gpio_banks; > > static inline void tegra_gpio_writel(u32 val, u32 reg) > { > - __raw_writel(val, regs + reg); > + writel_relaxed(val, regs + reg); > } > > static inline u32 tegra_gpio_readl(u32 reg) > { > - return __raw_readl(regs + reg); > + return readl_relaxed(regs + reg); > } > > static int tegra_gpio_compose(int bank, int port, int bit) > -- > 2.1.0 [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20150311094324.GH19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>]
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <20150311094324.GH19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> @ 2015-03-11 9:46 ` Alexandre Courbot [not found] ` <CAAVeFuLBz0UJsVEi=EYPbGd2x3Q6_JOELb4SHspR+w=tBS8mZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-03-18 1:36 ` Linus Walleij 1 sibling, 1 reply; 27+ messages in thread From: Alexandre Courbot @ 2015-03-11 9:46 UTC (permalink / raw) To: Thierry Reding Cc: Bob Mottram, Linus Walleij, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO On Wed, Mar 11, 2015 at 6:43 PM, Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: >> Replace the _raw-writel with writel_relaxed to fix issue with >> running tegra in big-endian. Tested on Jetson TK1. >> >> Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> >> --- >> drivers/gpio/gpio-tegra.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) > > Linus, Alex, > > would you prefer to take this through the GPIO tree or shall I take it > into the Tegra tree along with the rest of this series. In case of the > former: > > Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> > > I see that the patch wasn't Cc'ed to linux-gpio or Linus so, for > reference, here's a link to it in patchwork: > > http://patchwork.ozlabs.org/patch/427142/ Please take it in the Tegra tree, that way the patches of this series will appear sequentially in the git log instead of being spread across various trees without any hint about their relation. ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <CAAVeFuLBz0UJsVEi=EYPbGd2x3Q6_JOELb4SHspR+w=tBS8mZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <CAAVeFuLBz0UJsVEi=EYPbGd2x3Q6_JOELb4SHspR+w=tBS8mZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2015-03-11 9:55 ` Thierry Reding [not found] ` <20150311095543.GJ19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Thierry Reding @ 2015-03-11 9:55 UTC (permalink / raw) To: Alexandre Courbot Cc: Bob Mottram, Linus Walleij, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO [-- Attachment #1: Type: text/plain, Size: 1318 bytes --] On Wed, Mar 11, 2015 at 06:46:10PM +0900, Alexandre Courbot wrote: > On Wed, Mar 11, 2015 at 6:43 PM, Thierry Reding > <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: > >> Replace the _raw-writel with writel_relaxed to fix issue with > >> running tegra in big-endian. Tested on Jetson TK1. > >> > >> Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > >> --- > >> drivers/gpio/gpio-tegra.c | 4 ++-- > >> 1 file changed, 2 insertions(+), 2 deletions(-) > > > > Linus, Alex, > > > > would you prefer to take this through the GPIO tree or shall I take it > > into the Tegra tree along with the rest of this series. In case of the > > former: > > > > Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> > > > > I see that the patch wasn't Cc'ed to linux-gpio or Linus so, for > > reference, here's a link to it in patchwork: > > > > http://patchwork.ozlabs.org/patch/427142/ > > Please take it in the Tegra tree, that way the patches of this series > will appear sequentially in the git log instead of being spread across > various trees without any hint about their relation. Does that imply an Acked-by from you as GPIO maintainer? Thierry [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20150311095543.GJ19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>]
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <20150311095543.GJ19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> @ 2015-03-11 9:58 ` Alexandre Courbot [not found] ` <CAAVeFuLenb8V3rk6bbc2uDWo65sWZ2YLtFfuRLt2yEZ-3KwFwQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Alexandre Courbot @ 2015-03-11 9:58 UTC (permalink / raw) To: Thierry Reding Cc: Bob Mottram, Linus Walleij, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO On Wed, Mar 11, 2015 at 6:55 PM, Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > On Wed, Mar 11, 2015 at 06:46:10PM +0900, Alexandre Courbot wrote: >> On Wed, Mar 11, 2015 at 6:43 PM, Thierry Reding >> <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: >> > On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: >> >> Replace the _raw-writel with writel_relaxed to fix issue with >> >> running tegra in big-endian. Tested on Jetson TK1. >> >> >> >> Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> >> >> --- >> >> drivers/gpio/gpio-tegra.c | 4 ++-- >> >> 1 file changed, 2 insertions(+), 2 deletions(-) >> > >> > Linus, Alex, >> > >> > would you prefer to take this through the GPIO tree or shall I take it >> > into the Tegra tree along with the rest of this series. In case of the >> > former: >> > >> > Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> >> > >> > I see that the patch wasn't Cc'ed to linux-gpio or Linus so, for >> > reference, here's a link to it in patchwork: >> > >> > http://patchwork.ozlabs.org/patch/427142/ >> >> Please take it in the Tegra tree, that way the patches of this series >> will appear sequentially in the git log instead of being spread across >> various trees without any hint about their relation. > > Does that imply an Acked-by from you as GPIO maintainer? My bad: Acked-by: Alexandre Courbot <gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <CAAVeFuLenb8V3rk6bbc2uDWo65sWZ2YLtFfuRLt2yEZ-3KwFwQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [Ct173-kernel-internal] [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <CAAVeFuLenb8V3rk6bbc2uDWo65sWZ2YLtFfuRLt2yEZ-3KwFwQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2015-03-11 10:03 ` Ben Dooks 0 siblings, 0 replies; 27+ messages in thread From: Ben Dooks @ 2015-03-11 10:03 UTC (permalink / raw) To: Alexandre Courbot, Thierry Reding Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Linus Walleij, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO, Stephen Warren On 11/03/15 09:58, Alexandre Courbot wrote: > On Wed, Mar 11, 2015 at 6:55 PM, Thierry Reding > <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: >> On Wed, Mar 11, 2015 at 06:46:10PM +0900, Alexandre Courbot wrote: >>> On Wed, Mar 11, 2015 at 6:43 PM, Thierry Reding >>> <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: >>>> On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: >>>>> Replace the _raw-writel with writel_relaxed to fix issue with >>>>> running tegra in big-endian. Tested on Jetson TK1. >>>>> >>>>> Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> >>>>> --- >>>>> drivers/gpio/gpio-tegra.c | 4 ++-- >>>>> 1 file changed, 2 insertions(+), 2 deletions(-) >>>> >>>> Linus, Alex, >>>> >>>> would you prefer to take this through the GPIO tree or shall I take it >>>> into the Tegra tree along with the rest of this series. In case of the >>>> former: >>>> >>>> Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> >>>> >>>> I see that the patch wasn't Cc'ed to linux-gpio or Linus so, for >>>> reference, here's a link to it in patchwork: >>>> >>>> http://patchwork.ozlabs.org/patch/427142/ >>> >>> Please take it in the Tegra tree, that way the patches of this series >>> will appear sequentially in the git log instead of being spread across >>> various trees without any hint about their relation. >> >> Does that imply an Acked-by from you as GPIO maintainer? > > My bad: > > Acked-by: Alexandre Courbot <gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Thanks for sorting this out. -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 2/4] ARM: gpio: tegra: Maintain endianness [not found] ` <20150311094324.GH19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 2015-03-11 9:46 ` Alexandre Courbot @ 2015-03-18 1:36 ` Linus Walleij 1 sibling, 0 replies; 27+ messages in thread From: Linus Walleij @ 2015-03-18 1:36 UTC (permalink / raw) To: Thierry Reding Cc: Bob Mottram, Alex Courbot, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO On Wed, Mar 11, 2015 at 10:43 AM, Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > On Fri, Jan 09, 2015 at 03:27:09PM +0000, Bob Mottram wrote: >> Replace the _raw-writel with writel_relaxed to fix issue with >> running tegra in big-endian. Tested on Jetson TK1. >> >> Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> >> --- >> drivers/gpio/gpio-tegra.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) > > Linus, Alex, > > would you prefer to take this through the GPIO tree or shall I take it > into the Tegra tree along with the rest of this series. OK take it in the Tegra tree as Alex suggests, Acked-by: Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Yours, Linus Walleij ^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:27 ` [PATCH 1/4] ARM: tegra: Add a separate big-endian configuration Bob Mottram 2015-01-09 15:27 ` [PATCH 2/4] ARM: gpio: tegra: Maintain endianness Bob Mottram @ 2015-01-09 15:27 ` Bob Mottram [not found] ` <1420817231-8346-4-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:27 ` [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code Bob Mottram 2015-01-20 10:31 ` [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) Ben Dooks 4 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-09 15:27 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO Cc: Bob Mottram Config changes to enable big-endian support. Tested on Jetson TK1. Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> --- arch/arm/mach-tegra/Kconfig | 1 + arch/arm/mach-tegra/headsmp.S | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index d0be9a1..d8cb963 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -2,6 +2,7 @@ menuconfig ARCH_TEGRA bool "NVIDIA Tegra" if ARCH_MULTI_V7 select ARCH_REQUIRE_GPIOLIB select ARCH_SUPPORTS_TRUSTED_FOUNDATIONS + select ARCH_SUPPORTS_BIG_ENDIAN select ARM_AMBA select ARM_GIC select CLKSRC_MMIO diff --git a/arch/arm/mach-tegra/headsmp.S b/arch/arm/mach-tegra/headsmp.S index 2072e73..9896981 100644 --- a/arch/arm/mach-tegra/headsmp.S +++ b/arch/arm/mach-tegra/headsmp.S @@ -1,11 +1,12 @@ #include <linux/linkage.h> #include <linux/init.h> - +#include <asm/assembler.h> #include "sleep.h" .section ".text.head", "ax" ENTRY(tegra_secondary_startup) + ARM_BE8(setend be) check_cpu_part_num 0xc09, r8, r9 bleq v7_invalidate_l1 b secondary_startup -- 2.1.0 ^ permalink raw reply related [flat|nested] 27+ messages in thread
[parent not found: <1420817231-8346-4-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <1420817231-8346-4-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-09 15:46 ` Dmitry Osipenko [not found] ` <54AFF7E6.9030308-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-09 15:46 UTC (permalink / raw) To: Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 09.01.2015 18:27, Bob Mottram пишет: > Config changes to enable big-endian support. Tested on Jetson TK1. > > Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > --- > arch/arm/mach-tegra/Kconfig | 1 + > arch/arm/mach-tegra/headsmp.S | 3 ++- > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig > index d0be9a1..d8cb963 100644 > --- a/arch/arm/mach-tegra/Kconfig > +++ b/arch/arm/mach-tegra/Kconfig > @@ -2,6 +2,7 @@ menuconfig ARCH_TEGRA > bool "NVIDIA Tegra" if ARCH_MULTI_V7 > select ARCH_REQUIRE_GPIOLIB > select ARCH_SUPPORTS_TRUSTED_FOUNDATIONS > + select ARCH_SUPPORTS_BIG_ENDIAN > select ARM_AMBA > select ARM_GIC > select CLKSRC_MMIO > diff --git a/arch/arm/mach-tegra/headsmp.S b/arch/arm/mach-tegra/headsmp.S > index 2072e73..9896981 100644 > --- a/arch/arm/mach-tegra/headsmp.S > +++ b/arch/arm/mach-tegra/headsmp.S > @@ -1,11 +1,12 @@ > #include <linux/linkage.h> > #include <linux/init.h> > - > +#include <asm/assembler.h> > #include "sleep.h" > > .section ".text.head", "ax" > > ENTRY(tegra_secondary_startup) > + ARM_BE8(setend be) > check_cpu_part_num 0xc09, r8, r9 > bleq v7_invalidate_l1 > b secondary_startup > -- > 2.1.0 > -- > To unsubscribe from this list: send the line "unsubscribe linux-tegra" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Hi, Bob. What about suspend/cpuidle? Won't it make sense to set BE mode in reset handler? -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54AFF7E6.9030308-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54AFF7E6.9030308-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2015-01-09 16:27 ` Bob Mottram [not found] ` <54B0017E.2060509-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-09 16:27 UTC (permalink / raw) To: Dmitry Osipenko Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO [-- Attachment #1: Type: text/plain, Size: 436 bytes --] On 09/01/15 15:46, Dmitry Osipenko wrote: > What about suspend/cpuidle? Won't it make sense to set BE mode in reset handler? I did try adding: ARM_BE8(setend be) to the entry point within reset-handler.S, but to no avail. There are definitely problems with suspend, which currently I can work around by turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be needed to get the sleep/suspend working. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54B0017E.2060509-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B0017E.2060509-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-09 16:32 ` Dmitry Osipenko [not found] ` <54B0028C.8050802-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-09 16:32 UTC (permalink / raw) To: Bob Mottram Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 09.01.2015 19:27, Bob Mottram пишет: > On 09/01/15 15:46, Dmitry Osipenko wrote: >> What about suspend/cpuidle? Won't it make sense to set BE mode in reset handler? > > I did try adding: > > ARM_BE8(setend be) > > to the entry point within reset-handler.S, but to no avail. There are > definitely problems with suspend, which currently I can work around by > turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be > needed to get the sleep/suspend working. > Yeah, just noticed that it mentioned in cover letter. -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54B0028C.8050802-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B0028C.8050802-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2015-01-09 17:14 ` Ben Dooks [not found] ` <54B00C58.3070303-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Ben Dooks @ 2015-01-09 17:14 UTC (permalink / raw) To: Dmitry Osipenko, Bob Mottram Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, gnurou-Re5JQEeQqe8AvxtiuMwx3w, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO, swarren-3lzwWm7+Weoh9ZMKESR00Q On 09/01/15 16:32, Dmitry Osipenko wrote: > 09.01.2015 19:27, Bob Mottram пишет: >> On 09/01/15 15:46, Dmitry Osipenko wrote: >>> What about suspend/cpuidle? Won't it make sense to set BE mode in reset handler? >> >> I did try adding: >> >> ARM_BE8(setend be) >> >> to the entry point within reset-handler.S, but to no avail. There are >> definitely problems with suspend, which currently I can work around by >> turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be >> needed to get the sleep/suspend working. >> > > Yeah, just noticed that it mentioned in cover letter. I had a look through the code and it was not easy to work out what was going on so skipped over it. We decided to leave it out of the initial submission as we can get a workable system without suspend. The suspend/resume code does make accesses to registers, and all these will need to be found and have the correct endian conversion done (stores will be in big-endian but the hardware registers stay little endian) -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54B00C58.3070303-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B00C58.3070303-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-12 18:04 ` Dmitry Osipenko [not found] ` <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-12 18:04 UTC (permalink / raw) To: Ben Dooks, Bob Mottram Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, gnurou-Re5JQEeQqe8AvxtiuMwx3w, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO, swarren-3lzwWm7+Weoh9ZMKESR00Q 09.01.2015 20:14, Ben Dooks пишет: > On 09/01/15 16:32, Dmitry Osipenko wrote: >> 09.01.2015 19:27, Bob Mottram пишет: >>> On 09/01/15 15:46, Dmitry Osipenko wrote: >>>> What about suspend/cpuidle? Won't it make sense to set BE mode in reset handler? >>> >>> I did try adding: >>> >>> ARM_BE8(setend be) >>> >>> to the entry point within reset-handler.S, but to no avail. There are >>> definitely problems with suspend, which currently I can work around by >>> turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be >>> needed to get the sleep/suspend working. >>> >> >> Yeah, just noticed that it mentioned in cover letter. > > I had a look through the code and it was not easy to work out what > was going on so skipped over it. We decided to leave it out of the > initial submission as we can get a workable system without suspend. > > The suspend/resume code does make accesses to registers, and all > these will need to be found and have the correct endian conversion > done (stores will be in big-endian but the hardware registers stay > little endian) > I fixed cpuidle and suspend for tegra2, it involved fixing reset handler, sleep and l2 cache resume asm code. Also fixed tegra timer and i2c drivers in order to get booting. Unfortunately I don't have tegra3 hw nor support for it in QEMU, however cpuidle should work I suppose. I'll post patches later. https://dl.dropboxusercontent.com/u/3913472/IMG_20150112_202034.jpg -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2015-01-13 8:47 ` Ben Dooks 2015-01-13 9:05 ` Bob Mottram 2015-01-19 14:26 ` Bob Mottram 2 siblings, 0 replies; 27+ messages in thread From: Ben Dooks @ 2015-01-13 8:47 UTC (permalink / raw) To: Dmitry Osipenko, Bob Mottram Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, gnurou-Re5JQEeQqe8AvxtiuMwx3w, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO, swarren-3lzwWm7+Weoh9ZMKESR00Q On 12/01/15 18:04, Dmitry Osipenko wrote: > 09.01.2015 20:14, Ben Dooks пишет: >> On 09/01/15 16:32, Dmitry Osipenko wrote: >>> 09.01.2015 19:27, Bob Mottram пишет: >>>> On 09/01/15 15:46, Dmitry Osipenko wrote: >>>>> What about suspend/cpuidle? Won't it make sense to set BE mode in >>>>> reset handler? >>>> >>>> I did try adding: >>>> >>>> ARM_BE8(setend be) >>>> >>>> to the entry point within reset-handler.S, but to no avail. There are >>>> definitely problems with suspend, which currently I can work around by >>>> turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be >>>> needed to get the sleep/suspend working. >>>> >>> >>> Yeah, just noticed that it mentioned in cover letter. >> >> I had a look through the code and it was not easy to work out what >> was going on so skipped over it. We decided to leave it out of the >> initial submission as we can get a workable system without suspend. >> >> The suspend/resume code does make accesses to registers, and all >> these will need to be found and have the correct endian conversion >> done (stores will be in big-endian but the hardware registers stay >> little endian) >> > I fixed cpuidle and suspend for tegra2, it involved fixing reset > handler, sleep and l2 cache resume asm code. Also fixed tegra timer and > i2c drivers in order to get booting. Unfortunately I don't have tegra3 > hw nor support for it in QEMU, however cpuidle should work I suppose. > I'll post patches later. Thank for this. I suggest submitting directly as there is no need to make a coherent series of these. -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-13 8:47 ` Ben Dooks @ 2015-01-13 9:05 ` Bob Mottram 2015-01-19 14:26 ` Bob Mottram 2 siblings, 0 replies; 27+ messages in thread From: Bob Mottram @ 2015-01-13 9:05 UTC (permalink / raw) To: Dmitry Osipenko Cc: Ben Dooks, linux-tegra-u79uwXL29TY76Z2rM5mHXA, gnurou-Re5JQEeQqe8AvxtiuMwx3w, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO, swarren-3lzwWm7+Weoh9ZMKESR00Q [-- Attachment #1: Type: text/plain, Size: 454 bytes --] On 12/01/15 18:04, Dmitry Osipenko wrote: > I fixed cpuidle and suspend for tegra2, it involved fixing reset > handler, sleep and l2 cache resume asm code. Also fixed tegra timer and > i2c drivers in order to get booting. Unfortunately I don't have tegra3 > hw nor support for it in QEMU, however cpuidle should work I suppose. > I'll post patches later. > > https://dl.dropboxusercontent.com/u/3913472/IMG_20150112_202034.jpg Well done. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-13 8:47 ` Ben Dooks 2015-01-13 9:05 ` Bob Mottram @ 2015-01-19 14:26 ` Bob Mottram [not found] ` <54BD141F.7070803-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-19 14:26 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA Cc: Dmitry Osipenko, linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO [-- Attachment #1: Type: text/plain, Size: 1639 bytes --] On 12/01/15 18:04, Dmitry Osipenko wrote: > 09.01.2015 20:14, Ben Dooks пишет: >> On 09/01/15 16:32, Dmitry Osipenko wrote: >>> 09.01.2015 19:27, Bob Mottram пишет: >>>> On 09/01/15 15:46, Dmitry Osipenko wrote: >>>>> What about suspend/cpuidle? Won't it make sense to set BE mode in >>>>> reset handler? >>>> >>>> I did try adding: >>>> >>>> ARM_BE8(setend be) >>>> >>>> to the entry point within reset-handler.S, but to no avail. There are >>>> definitely problems with suspend, which currently I can work around by >>>> turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be >>>> needed to get the sleep/suspend working. >>>> >>> >>> Yeah, just noticed that it mentioned in cover letter. >> >> I had a look through the code and it was not easy to work out what >> was going on so skipped over it. We decided to leave it out of the >> initial submission as we can get a workable system without suspend. >> >> The suspend/resume code does make accesses to registers, and all >> these will need to be found and have the correct endian conversion >> done (stores will be in big-endian but the hardware registers stay >> little endian) >> > I fixed cpuidle and suspend for tegra2, it involved fixing reset > handler, sleep and l2 cache resume asm code. Also fixed tegra timer and > i2c drivers in order to get booting. Unfortunately I don't have tegra3 > hw nor support for it in QEMU, however cpuidle should work I suppose. > I'll post patches later. > > https://dl.dropboxusercontent.com/u/3913472/IMG_20150112_202034.jpg Nice. Do you have a patch for those fixes? [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54BD141F.7070803-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [Linux-kernel] [PATCH 3/4] ARM: tegra: enable big-endian support [not found] ` <54BD141F.7070803-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-19 15:08 ` Dmitry Osipenko 0 siblings, 0 replies; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-19 15:08 UTC (permalink / raw) To: Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA Cc: linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 19.01.2015 17:26, Bob Mottram пишет: > On 12/01/15 18:04, Dmitry Osipenko wrote: >> 09.01.2015 20:14, Ben Dooks пишет: >>> On 09/01/15 16:32, Dmitry Osipenko wrote: >>>> 09.01.2015 19:27, Bob Mottram пишет: >>>>> On 09/01/15 15:46, Dmitry Osipenko wrote: >>>>>> What about suspend/cpuidle? Won't it make sense to set BE mode in >>>>>> reset handler? >>>>> >>>>> I did try adding: >>>>> >>>>> ARM_BE8(setend be) >>>>> >>>>> to the entry point within reset-handler.S, but to no avail. There are >>>>> definitely problems with suspend, which currently I can work around by >>>>> turning off ARCH_SUSPEND_POSSIBLE. More investigation is going to be >>>>> needed to get the sleep/suspend working. >>>>> >>>> >>>> Yeah, just noticed that it mentioned in cover letter. >>> >>> I had a look through the code and it was not easy to work out what >>> was going on so skipped over it. We decided to leave it out of the >>> initial submission as we can get a workable system without suspend. >>> >>> The suspend/resume code does make accesses to registers, and all >>> these will need to be found and have the correct endian conversion >>> done (stores will be in big-endian but the hardware registers stay >>> little endian) >>> >> I fixed cpuidle and suspend for tegra2, it involved fixing reset >> handler, sleep and l2 cache resume asm code. Also fixed tegra timer and >> i2c drivers in order to get booting. Unfortunately I don't have tegra3 >> hw nor support for it in QEMU, however cpuidle should work I suppose. >> I'll post patches later. >> >> https://dl.dropboxusercontent.com/u/3913472/IMG_20150112_202034.jpg > > Nice. Do you have a patch for those fixes? > Sorry for delay. I have patches locally, need to prepare them. I think some arch code needs to be cleaned first, so it might be some more work. Planning to send this week. -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> ` (2 preceding siblings ...) 2015-01-09 15:27 ` [PATCH 3/4] ARM: tegra: enable big-endian support Bob Mottram @ 2015-01-09 15:27 ` Bob Mottram [not found] ` <1420817231-8346-5-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-20 10:31 ` [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) Ben Dooks 4 siblings, 1 reply; 27+ messages in thread From: Bob Mottram @ 2015-01-09 15:27 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO Cc: Bob Mottram Replace the _raw-writel with writel_relaxed to fix issue with running tegra in big-endian. Tested on Jetson TK1. Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> --- arch/arm/mach-tegra/irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-tegra/irq.c b/arch/arm/mach-tegra/irq.c index ab95f53..f4c2857 100644 --- a/arch/arm/mach-tegra/irq.c +++ b/arch/arm/mach-tegra/irq.c @@ -94,7 +94,7 @@ static inline void tegra_irq_write_mask(unsigned int irq, unsigned long reg) base = ictlr_reg_base[(irq - FIRST_LEGACY_IRQ) / 32]; mask = BIT((irq - FIRST_LEGACY_IRQ) % 32); - __raw_writel(mask, base + reg); + writel_relaxed(mask, base + reg); } static void tegra_mask(struct irq_data *d) -- 2.1.0 ^ permalink raw reply related [flat|nested] 27+ messages in thread
[parent not found: <1420817231-8346-5-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code [not found] ` <1420817231-8346-5-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-27 18:42 ` Dmitry Osipenko 2015-03-11 9:48 ` Thierry Reding 1 sibling, 0 replies; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-27 18:42 UTC (permalink / raw) To: Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 09.01.2015 18:27, Bob Mottram пишет: > Replace the _raw-writel with writel_relaxed to fix issue with > running tegra in big-endian. Tested on Jetson TK1. > > Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > --- > arch/arm/mach-tegra/irq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/mach-tegra/irq.c b/arch/arm/mach-tegra/irq.c > index ab95f53..f4c2857 100644 > --- a/arch/arm/mach-tegra/irq.c > +++ b/arch/arm/mach-tegra/irq.c > @@ -94,7 +94,7 @@ static inline void tegra_irq_write_mask(unsigned int irq, unsigned long reg) > base = ictlr_reg_base[(irq - FIRST_LEGACY_IRQ) / 32]; > mask = BIT((irq - FIRST_LEGACY_IRQ) % 32); > > - __raw_writel(mask, base + reg); > + writel_relaxed(mask, base + reg); > } > > static void tegra_mask(struct irq_data *d) > -- > 2.1.0 > -- > To unsubscribe from this list: send the line "unsubscribe linux-tegra" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Tested-by: Dmitry Osipenko <digetx-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code [not found] ` <1420817231-8346-5-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-27 18:42 ` Dmitry Osipenko @ 2015-03-11 9:48 ` Thierry Reding 1 sibling, 0 replies; 27+ messages in thread From: Thierry Reding @ 2015-03-11 9:48 UTC (permalink / raw) To: Bob Mottram Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO [-- Attachment #1: Type: text/plain, Size: 394 bytes --] On Fri, Jan 09, 2015 at 03:27:11PM +0000, Bob Mottram wrote: > Replace the _raw-writel with writel_relaxed to fix issue with > running tegra in big-endian. Tested on Jetson TK1. > > Signed-off-by: Bob Mottram <bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> > --- > arch/arm/mach-tegra/irq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Applied, thanks. Thierry [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> ` (3 preceding siblings ...) 2015-01-09 15:27 ` [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code Bob Mottram @ 2015-01-20 10:31 ` Ben Dooks [not found] ` <54BE2E77.9050909-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 4 siblings, 1 reply; 27+ messages in thread From: Ben Dooks @ 2015-01-20 10:31 UTC (permalink / raw) To: Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO On 09/01/15 15:27, Bob Mottram wrote: > During testing of big-endian on a Jetson TK1 with baserock, the following > issues were found and fixed. Note that to get the system running with > big-endian you will need to disable ARCH_SUSPEND_POSSIBLE within > arch/arm/Kconfig. > > Bob Mottram (4): > ARM: tegra: Add a separate big-endian configuration > ARM: gpio: tegra: Maintain endianness > ARM: tegra: enable big-endian support > ARM: tegra: fix big-endian issue with irq code Is it possible to get the tegra core patches applied? These seem to work enough to get a system running and once the PM fixes are in there should be no problems running big-endian tegra? -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54BE2E77.9050909-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) [not found] ` <54BE2E77.9050909-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-20 11:36 ` Dmitry Osipenko [not found] ` <54BE3DD2.1060204-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-20 11:36 UTC (permalink / raw) To: Ben Dooks, Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 20.01.2015 13:31, Ben Dooks пишет: > On 09/01/15 15:27, Bob Mottram wrote: >> During testing of big-endian on a Jetson TK1 with baserock, the following >> issues were found and fixed. Note that to get the system running with >> big-endian you will need to disable ARCH_SUSPEND_POSSIBLE within >> arch/arm/Kconfig. >> >> Bob Mottram (4): >> ARM: tegra: Add a separate big-endian configuration >> ARM: gpio: tegra: Maintain endianness >> ARM: tegra: enable big-endian support >> ARM: tegra: fix big-endian issue with irq code > > Is it possible to get the tegra core patches applied? These seem to work > enough to get a system running and once the PM fixes are in there should > be no problems running big-endian tegra? > I don't think it's enough. Upstream kernel doesn't accept half working solutions. It's not only PM that needs fixing, but i2c, timer, reset handler and possibly more. You are enabling big-endian across all tegra generations, but tegra2 won't boot at all for example. Patches must be tested on all hw before applying. And nit: big-endian should be enabled after all dependencies resolved. -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54BE3DD2.1060204-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) [not found] ` <54BE3DD2.1060204-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2015-01-20 11:45 ` Ben Dooks [not found] ` <54BE3FC1.5010107-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 0 siblings, 1 reply; 27+ messages in thread From: Ben Dooks @ 2015-01-20 11:45 UTC (permalink / raw) To: Dmitry Osipenko, Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO On 20/01/15 11:36, Dmitry Osipenko wrote: > 20.01.2015 13:31, Ben Dooks пишет: >> On 09/01/15 15:27, Bob Mottram wrote: >>> During testing of big-endian on a Jetson TK1 with baserock, the >>> following >>> issues were found and fixed. Note that to get the system running with >>> big-endian you will need to disable ARCH_SUSPEND_POSSIBLE within >>> arch/arm/Kconfig. >>> >>> Bob Mottram (4): >>> ARM: tegra: Add a separate big-endian configuration >>> ARM: gpio: tegra: Maintain endianness >>> ARM: tegra: enable big-endian support >>> ARM: tegra: fix big-endian issue with irq code >> >> Is it possible to get the tegra core patches applied? These seem to work >> enough to get a system running and once the PM fixes are in there should >> be no problems running big-endian tegra? >> > I don't think it's enough. Upstream kernel doesn't accept half working > solutions. It's not only PM that needs fixing, but i2c, timer, reset > handler and possibly more. You are enabling big-endian across all tegra > generations, but tegra2 won't boot at all for example. Patches must be > tested on all hw before applying. And nit: big-endian should be enabled > after all dependencies resolved. Ok, we hadn't found any issue with the reset. I thought we had the timer fix in this series. Most of the other drivers didn't use any __raw code so we're reasonably confident they will work. I didn't see any issues with the i2c from visual inspection, what's wrong with it in big endian? -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <54BE3FC1.5010107-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>]
* Re: [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) [not found] ` <54BE3FC1.5010107-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> @ 2015-01-20 13:18 ` Dmitry Osipenko 0 siblings, 0 replies; 27+ messages in thread From: Dmitry Osipenko @ 2015-01-20 13:18 UTC (permalink / raw) To: Ben Dooks, Bob Mottram, linux-tegra-u79uwXL29TY76Z2rM5mHXA, swarren-3lzwWm7+Weoh9ZMKESR00Q, thierry.reding-Re5JQEeQqe8AvxtiuMwx3w, gnurou-Re5JQEeQqe8AvxtiuMwx3w, ct173-kernel-internal-81qHHgoATdFT9dQujB1mzip2UmYkHbXO 20.01.2015 14:45, Ben Dooks пишет: > On 20/01/15 11:36, Dmitry Osipenko wrote: >> 20.01.2015 13:31, Ben Dooks пишет: >>> On 09/01/15 15:27, Bob Mottram wrote: >>>> During testing of big-endian on a Jetson TK1 with baserock, the >>>> following >>>> issues were found and fixed. Note that to get the system running with >>>> big-endian you will need to disable ARCH_SUSPEND_POSSIBLE within >>>> arch/arm/Kconfig. >>>> >>>> Bob Mottram (4): >>>> ARM: tegra: Add a separate big-endian configuration >>>> ARM: gpio: tegra: Maintain endianness >>>> ARM: tegra: enable big-endian support >>>> ARM: tegra: fix big-endian issue with irq code >>> >>> Is it possible to get the tegra core patches applied? These seem to work >>> enough to get a system running and once the PM fixes are in there should >>> be no problems running big-endian tegra? >>> >> I don't think it's enough. Upstream kernel doesn't accept half working >> solutions. It's not only PM that needs fixing, but i2c, timer, reset >> handler and possibly more. You are enabling big-endian across all tegra >> generations, but tegra2 won't boot at all for example. Patches must be >> tested on all hw before applying. And nit: big-endian should be enabled >> after all dependencies resolved. > > Ok, we hadn't found any issue with the reset. I thought we had the > timer fix in this series. Most of the other drivers didn't use > any __raw code so we're reasonably confident they will work. > > I didn't see any issues with the i2c from visual inspection, what's > wrong with it in big endian? > I've sent patch. -- Dmitry ^ permalink raw reply [flat|nested] 27+ messages in thread
end of thread, other threads:[~2015-03-18 1:36 UTC | newest] Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2015-01-09 15:27 [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) Bob Mottram [not found] ` <1420817231-8346-1-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:27 ` [PATCH 1/4] ARM: tegra: Add a separate big-endian configuration Bob Mottram 2015-01-09 15:27 ` [PATCH 2/4] ARM: gpio: tegra: Maintain endianness Bob Mottram [not found] ` <1420817231-8346-3-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-27 18:41 ` Dmitry Osipenko 2015-03-11 9:43 ` Thierry Reding [not found] ` <20150311094324.GH19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 2015-03-11 9:46 ` Alexandre Courbot [not found] ` <CAAVeFuLBz0UJsVEi=EYPbGd2x3Q6_JOELb4SHspR+w=tBS8mZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-03-11 9:55 ` Thierry Reding [not found] ` <20150311095543.GJ19577-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 2015-03-11 9:58 ` Alexandre Courbot [not found] ` <CAAVeFuLenb8V3rk6bbc2uDWo65sWZ2YLtFfuRLt2yEZ-3KwFwQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-03-11 10:03 ` [Ct173-kernel-internal] " Ben Dooks 2015-03-18 1:36 ` Linus Walleij 2015-01-09 15:27 ` [PATCH 3/4] ARM: tegra: enable big-endian support Bob Mottram [not found] ` <1420817231-8346-4-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 15:46 ` Dmitry Osipenko [not found] ` <54AFF7E6.9030308-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-09 16:27 ` Bob Mottram [not found] ` <54B0017E.2060509-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-09 16:32 ` Dmitry Osipenko [not found] ` <54B0028C.8050802-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-09 17:14 ` [Linux-kernel] " Ben Dooks [not found] ` <54B00C58.3070303-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-12 18:04 ` Dmitry Osipenko [not found] ` <54B40C99.4020907-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-13 8:47 ` Ben Dooks 2015-01-13 9:05 ` Bob Mottram 2015-01-19 14:26 ` Bob Mottram [not found] ` <54BD141F.7070803-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-19 15:08 ` Dmitry Osipenko 2015-01-09 15:27 ` [PATCH 4/4] ARM: tegra: fix big-endian issue with irq code Bob Mottram [not found] ` <1420817231-8346-5-git-send-email-bob.mottram-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-27 18:42 ` Dmitry Osipenko 2015-03-11 9:48 ` Thierry Reding 2015-01-20 10:31 ` [Ct173-kernel-internal] [PATCH 0/4] ARM: tegra: Support for big-endian (version 3) Ben Dooks [not found] ` <54BE2E77.9050909-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-20 11:36 ` Dmitry Osipenko [not found] ` <54BE3DD2.1060204-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2015-01-20 11:45 ` Ben Dooks [not found] ` <54BE3FC1.5010107-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org> 2015-01-20 13:18 ` Dmitry Osipenko
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.