diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-12-20 14:32:51 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-12-20 14:32:51 +0000 |
commit | 2de0fda08551c3a26ff96ed5e1492ac1ad9fa468 (patch) | |
tree | 59dd47bd20761adcd928a814e68143e0c37a4d6b | |
parent | 69905f61008f129ce37094baaa2e3b6eca2d2cb8 (diff) |
kernel: add mips_machine_set_name function
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18861 3c298f89-4303-0410-b956-a3cf2f4a3e73
3 files changed, 78 insertions, 63 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.30/020-mips_multi_machine_support.patch b/target/linux/generic-2.6/patches-2.6.30/020-mips_multi_machine_support.patch index 57dcc1dc43..28cc14931c 100644 --- a/target/linux/generic-2.6/patches-2.6.30/020-mips_multi_machine_support.patch +++ b/target/linux/generic-2.6/patches-2.6.30/020-mips_multi_machine_support.patch @@ -1,6 +1,6 @@ --- /dev/null +++ b/include/asm-mips/mips_machine.h -@@ -0,0 +1,46 @@ +@@ -0,0 +1,47 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -25,6 +25,7 @@ + +void mips_machine_register(struct mips_machine *) __init; +void mips_machine_setup(unsigned long machtype) __init; ++void mips_machine_set_name(char *name) __init; + +extern char *mips_machine_name; + @@ -49,7 +50,7 @@ + --- /dev/null +++ b/arch/mips/kernel/mips_machine.c -@@ -0,0 +1,70 @@ +@@ -0,0 +1,74 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -88,6 +89,25 @@ + list_add_tail(&mach->list, &mips_machines); +} + ++void __init mips_machine_set_name(char *name) ++{ ++ unsigned int len; ++ char *p; ++ ++ if (name == NULL) ++ return; ++ ++ len = strlen(name); ++ p = kmalloc(len + 1, GFP_KERNEL); ++ if (p) { ++ strncpy(p, name, len); ++ p[len] = '\0'; ++ mips_machine_name = p; ++ } else { ++ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); ++ } ++} ++ +void __init mips_machine_setup(unsigned long machtype) +{ + struct mips_machine *mach; @@ -99,30 +119,15 @@ + return; + } + -+ if (mach->mach_name) { -+ char *name; -+ unsigned int len; -+ -+ len = strlen(mach->mach_name); -+ name = kmalloc(len + 1, GFP_KERNEL); -+ if (name) { -+ strncpy(name, mach->mach_name,len); -+ name[len] = '\0'; -+ mips_machine_name = name; -+ } else { -+ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); -+ } -+ } -+ ++ mips_machine_set_name(mach->mach_name); + printk(KERN_INFO "MIPS: machine is %s\n", mips_machine_name); + + if (mach->mach_setup) + mach->mach_setup(); +} -+ --- a/arch/mips/kernel/Makefile +++ b/arch/mips/kernel/Makefile -@@ -85,6 +85,7 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o +@@ -85,6 +85,7 @@ obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o @@ -132,7 +137,7 @@ --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -803,6 +803,9 @@ config MIPS_DISABLE_OBSOLETE_IDE +@@ -803,6 +803,9 @@ config SYNC_R4K bool @@ -152,7 +157,7 @@ unsigned int vced_count, vcei_count; -@@ -33,8 +34,12 @@ static int show_cpuinfo(struct seq_file +@@ -33,8 +34,12 @@ /* * For the first processor also print the system type */ diff --git a/target/linux/generic-2.6/patches-2.6.31/020-mips_multi_machine_support.patch b/target/linux/generic-2.6/patches-2.6.31/020-mips_multi_machine_support.patch index 5c70b548ac..f602174c62 100644 --- a/target/linux/generic-2.6/patches-2.6.31/020-mips_multi_machine_support.patch +++ b/target/linux/generic-2.6/patches-2.6.31/020-mips_multi_machine_support.patch @@ -1,6 +1,6 @@ --- /dev/null +++ b/include/asm-mips/mips_machine.h -@@ -0,0 +1,46 @@ +@@ -0,0 +1,47 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -25,6 +25,7 @@ + +void mips_machine_register(struct mips_machine *) __init; +void mips_machine_setup(unsigned long machtype) __init; ++void mips_machine_set_name(char *name) __init; + +extern char *mips_machine_name; + @@ -49,7 +50,7 @@ + --- /dev/null +++ b/arch/mips/kernel/mips_machine.c -@@ -0,0 +1,70 @@ +@@ -0,0 +1,74 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -88,6 +89,25 @@ + list_add_tail(&mach->list, &mips_machines); +} + ++void __init mips_machine_set_name(char *name) ++{ ++ unsigned int len; ++ char *p; ++ ++ if (name == NULL) ++ return; ++ ++ len = strlen(name); ++ p = kmalloc(len + 1, GFP_KERNEL); ++ if (p) { ++ strncpy(p, name, len); ++ p[len] = '\0'; ++ mips_machine_name = p; ++ } else { ++ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); ++ } ++} ++ +void __init mips_machine_setup(unsigned long machtype) +{ + struct mips_machine *mach; @@ -99,30 +119,15 @@ + return; + } + -+ if (mach->mach_name) { -+ char *name; -+ unsigned int len; -+ -+ len = strlen(mach->mach_name); -+ name = kmalloc(len + 1, GFP_KERNEL); -+ if (name) { -+ strncpy(name, mach->mach_name,len); -+ name[len] = '\0'; -+ mips_machine_name = name; -+ } else { -+ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); -+ } -+ } -+ ++ mips_machine_set_name(mach->mach_name); + printk(KERN_INFO "MIPS: machine is %s\n", mips_machine_name); + + if (mach->mach_setup) + mach->mach_setup(); +} -+ --- a/arch/mips/kernel/Makefile +++ b/arch/mips/kernel/Makefile -@@ -87,6 +87,7 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o +@@ -87,6 +87,7 @@ obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o @@ -132,7 +137,7 @@ --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -837,6 +837,9 @@ config MIPS_DISABLE_OBSOLETE_IDE +@@ -837,6 +837,9 @@ config SYNC_R4K bool @@ -152,7 +157,7 @@ unsigned int vced_count, vcei_count; -@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file +@@ -31,8 +32,12 @@ /* * For the first processor also print the system type */ diff --git a/target/linux/generic-2.6/patches-2.6.32/020-mips_multi_machine_support.patch b/target/linux/generic-2.6/patches-2.6.32/020-mips_multi_machine_support.patch index 894a16b785..48b649195e 100644 --- a/target/linux/generic-2.6/patches-2.6.32/020-mips_multi_machine_support.patch +++ b/target/linux/generic-2.6/patches-2.6.32/020-mips_multi_machine_support.patch @@ -1,6 +1,6 @@ --- /dev/null +++ b/include/asm-mips/mips_machine.h -@@ -0,0 +1,46 @@ +@@ -0,0 +1,47 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -25,6 +25,7 @@ + +void mips_machine_register(struct mips_machine *) __init; +void mips_machine_setup(unsigned long machtype) __init; ++void mips_machine_set_name(char *name) __init; + +extern char *mips_machine_name; + @@ -49,7 +50,7 @@ + --- /dev/null +++ b/arch/mips/kernel/mips_machine.c -@@ -0,0 +1,70 @@ +@@ -0,0 +1,74 @@ +/* + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * @@ -88,6 +89,25 @@ + list_add_tail(&mach->list, &mips_machines); +} + ++void __init mips_machine_set_name(char *name) ++{ ++ unsigned int len; ++ char *p; ++ ++ if (name == NULL) ++ return; ++ ++ len = strlen(name); ++ p = kmalloc(len + 1, GFP_KERNEL); ++ if (p) { ++ strncpy(p, name, len); ++ p[len] = '\0'; ++ mips_machine_name = p; ++ } else { ++ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); ++ } ++} ++ +void __init mips_machine_setup(unsigned long machtype) +{ + struct mips_machine *mach; @@ -99,30 +119,15 @@ + return; + } + -+ if (mach->mach_name) { -+ char *name; -+ unsigned int len; -+ -+ len = strlen(mach->mach_name); -+ name = kmalloc(len + 1, GFP_KERNEL); -+ if (name) { -+ strncpy(name, mach->mach_name,len); -+ name[len] = '\0'; -+ mips_machine_name = name; -+ } else { -+ printk(KERN_WARNING "MIPS: no memory for machine_name\n"); -+ } -+ } -+ ++ mips_machine_set_name(mach->mach_name); + printk(KERN_INFO "MIPS: machine is %s\n", mips_machine_name); + + if (mach->mach_setup) + mach->mach_setup(); +} -+ --- a/arch/mips/kernel/Makefile +++ b/arch/mips/kernel/Makefile -@@ -87,6 +87,7 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o +@@ -87,6 +87,7 @@ obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o @@ -132,7 +137,7 @@ --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -854,6 +854,9 @@ config MIPS_DISABLE_OBSOLETE_IDE +@@ -854,6 +854,9 @@ config SYNC_R4K bool @@ -152,7 +157,7 @@ unsigned int vced_count, vcei_count; -@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file +@@ -31,8 +32,12 @@ /* * For the first processor also print the system type */ |