ARM: tegra: fixes for 3.7

This branch contains a number of minor bug-fixes for Tegra.
 
 This branch is based ono v3.6-rc4.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJQU3zlAAoJEMzrak5tbycx2SgQALIWZ4nEVwtwvEpDG5Poga1g
 hqe9j34k18cDg4Aw8pca4YwCYJGddHfOm9lbqHy9OXI37juUT+cKOSCN6VFbgwuh
 MRukS4FsKfz0aBAetEWI0E2k0Zo6/faX43H+MWDfvgV2JWCcxYkrDIn/3IRAd4Lt
 bpF5OMqMRNjp9XwLzScf3x7IBk/DbJZ2qRkqIIjx2un+BXnWmw2WbcsT5XrWyt8N
 NYfh3P4UaCzQAbjeVICuAD/vO4LHNGz0WTkQ2BFJktLwN15xPereNsrIS/eCvk+A
 6E7Rxmn61orWy6MJZ8rayOKW0wf0qww5H4tNJBhBDZpGiZoRc08aG7ozQUdvRpzu
 LGpVeWoVKmY21nnk4/oAYE6qhZI+cMtDhT9JdRJLTqKMElwm0fK1yq089uNIyB0D
 t6+50Imb2M0sh8vF0ZzeWci1vpaNrYlkbe/pXMBslNjSjn6tWHcge7BOQX6Hnaxt
 3I/KIO7CygmrDlYhUi0e8zNal49jbDtjBaQUbEmkjWs+40R2IH+Eu7fIFctfySO/
 /FUCjrogE82cqbKIlfPSnrpu4n448AQJHQOrbv19UWvsbNTvPcFUFWewGJ+9zLCM
 ko3UZPD47dCbE8AnYjkJfFbKfptci0LQYSHvh2oua3c6Y+M1Mi44eJOse2zz6J+x
 NLAHHfvibmMf4YzfBx6L
 =OYpu
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.7-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into next/fixes-non-critical

* tag 'tegra-for-3.7-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra:
  ARM: enable SUSPEND/ARCH_SUSPEND_POSSIBLE for ARCH_TEGRA
  ARM: tegra: fix debugfs entry for Tegra30
  ARM: tegra: fix return value for debugfs init
This commit is contained in:
Olof Johansson 2012-09-16 18:13:46 -07:00
commit a95aa84f5e
2 changed files with 37 additions and 8 deletions

View File

@ -2313,7 +2313,7 @@ menu "Power management options"
source "kernel/power/Kconfig" source "kernel/power/Kconfig"
config ARCH_SUSPEND_POSSIBLE config ARCH_SUSPEND_POSSIBLE
depends on !ARCH_S5PC100 && !ARCH_TEGRA depends on !ARCH_S5PC100
depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \ depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \
CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK
def_bool y def_bool y

View File

@ -199,7 +199,9 @@ int __init tegra_powergate_init(void)
#ifdef CONFIG_DEBUG_FS #ifdef CONFIG_DEBUG_FS
static const char * const powergate_name[] = { static const char * const *powergate_name;
static const char * const powergate_name_t20[] = {
[TEGRA_POWERGATE_CPU] = "cpu", [TEGRA_POWERGATE_CPU] = "cpu",
[TEGRA_POWERGATE_3D] = "3d", [TEGRA_POWERGATE_3D] = "3d",
[TEGRA_POWERGATE_VENC] = "venc", [TEGRA_POWERGATE_VENC] = "venc",
@ -209,6 +211,23 @@ static const char * const powergate_name[] = {
[TEGRA_POWERGATE_MPE] = "mpe", [TEGRA_POWERGATE_MPE] = "mpe",
}; };
static const char * const powergate_name_t30[] = {
[TEGRA_POWERGATE_CPU] = "cpu0",
[TEGRA_POWERGATE_3D] = "3d0",
[TEGRA_POWERGATE_VENC] = "venc",
[TEGRA_POWERGATE_VDEC] = "vdec",
[TEGRA_POWERGATE_PCIE] = "pcie",
[TEGRA_POWERGATE_L2] = "l2",
[TEGRA_POWERGATE_MPE] = "mpe",
[TEGRA_POWERGATE_HEG] = "heg",
[TEGRA_POWERGATE_SATA] = "sata",
[TEGRA_POWERGATE_CPU1] = "cpu1",
[TEGRA_POWERGATE_CPU2] = "cpu2",
[TEGRA_POWERGATE_CPU3] = "cpu3",
[TEGRA_POWERGATE_CELP] = "celp",
[TEGRA_POWERGATE_3D1] = "3d1",
};
static int powergate_show(struct seq_file *s, void *data) static int powergate_show(struct seq_file *s, void *data)
{ {
int i; int i;
@ -237,14 +256,24 @@ static const struct file_operations powergate_fops = {
int __init tegra_powergate_debugfs_init(void) int __init tegra_powergate_debugfs_init(void)
{ {
struct dentry *d; struct dentry *d;
int err = -ENOMEM;
d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL, switch (tegra_chip_id) {
&powergate_fops); case TEGRA20:
if (!d) powergate_name = powergate_name_t20;
return -ENOMEM; break;
case TEGRA30:
powergate_name = powergate_name_t30;
break;
}
return err; if (powergate_name) {
d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL,
&powergate_fops);
if (!d)
return -ENOMEM;
}
return 0;
} }
#endif #endif