linux-mips
[Top] [All Lists]

[GIT repo] loongson: Merge and Clean up fuloong(2e), fuloong(2f) and yee

To: linux-mips@linux-mips.org, Ralf Baechle <ralf@linux-mips.org>
Subject: [GIT repo] loongson: Merge and Clean up fuloong(2e), fuloong(2f) and yeeloong(2f) support
From: Wu Zhangjin <wuzhangjin@gmail.com>
Date: Fri, 15 May 2009 11:19:13 +0800
Cc: loongson-dev@googlegroups.com, zhangfx@lemote.com, yanh@lemote.com, Philippe Vachon <philippe@cowpig.ca>, Erwan Lerale <erwan@thiscow.com>, Zhang Le <r0bertz@gentoo.org>
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:subject:from:reply-to:to:cc :content-type:organization:date:message-id:mime-version:x-mailer; bh=9kzVkXrIg6eSieN115RxuY+JtzAQhqRkQgVpXAdOiOs=; b=SgpL/ULH6CIDt4ODiTkm/698IFAseCagXyc2/5p0Q4OO2JRweWwalBjO5jkrCxXn8i wd/TjL/8XkSsvblD4Kgz+CnVnri7oMkJPUQmDkqHqwAPlnXwwATP8e/Xle5XN1cyn37t 5s1Z8YOgYv4b6jqDsLPPomlFo8xj9LobIrqCk=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=subject:from:reply-to:to:cc:content-type:organization:date :message-id:mime-version:x-mailer; b=i+U1jsDgrMM1zB8/UwVFaDyuwkeC4YqYy+mOZiqXlmIyMdznFHkkHStD5t18KoLYku FStzUh3pmIf3g7B1qPFURjxK9qYowdbk2/wdrFsu5JWQj7aQVqgQEFCUQQKlGKttxw2C 0Bbi1BQSjJxk7EMxNKu+7IFvuuwW0xcp67IQA=
Organization: DSLab, Lanzhou University, China
Original-recipient: rfc822;linux-mips@linux-mips.org
Reply-to: wuzhangjin@gmail.com
Sender: linux-mips-bounce@linux-mips.org
Dear all,

I have cleaned up the source code of loongson-based machines support and
updated it to linux-2.6.29.3, the result is put to the following git
repository:

   git://dev.lemote.com/rt4ls.git linux-2.6.29-stable-loongson-to-ralf

this job is based on the to-mips branch of Yanhua's
git://dev.lemote.com/linux_loongson.git and the lm2e-fixes branch of
Philippe's git://git.linux-cisco.org/linux-mips.git. thanks goes to
them.

I have tested it with gcc 4.3 on fuloong(2e), fuloong(2f), yeeloong(2f),
both 32bit and 64bit kernel works well, if you want to try it with gcc
4.4, please use the patch from attachment.

* the current source code architecture

$ tree arch/mips/loongson/
arch/mips/loongson/
|-- Kconfig
|-- Makefile
|-- common
|   |-- Makefile
|   |-- bonito-irq.c
|   |-- clock.c
|   |-- cmdline.c
|   |-- cs5536_vsm.c
|   |-- early_printk.c
|   |-- init.c
|   |-- irq.c
|   |-- mem.c
|   |-- mfgpt.c
|   |-- mipsdha.c
|   |-- misc.c
|   |-- pci.c
|   |-- reset.c
|   |-- rtc.c
|   |-- serial.c
|   |-- setup.c
|   `-- time.c
|-- fuloong-2e
|   |-- Makefile
|   |-- irq.c
|   `-- reset.c
|-- fuloong-2f
|   |-- Makefile
|   |-- irq.c
|   `-- reset.c
`-- yeeloong-2f
    |-- Makefile
    |-- init.c
    |-- irq.c
    `-- reset.c
4 directories, 30 files

$ tree arch/mips/include/asm/mach-loongson/
arch/mips/include/asm/mach-loongson/
|-- cpu-feature-overrides.h
|-- cs5536
|   |-- cs5536.h
|   |-- cs5536_pci.h
|   |-- mfgpt.h
|   `-- pcireg.h
|-- dma-coherence.h
|-- fuloong-2e
|   `-- machine.h
|-- fuloong-2f
|   `-- machine.h
|-- loongson.h
|-- mc146818rtc.h
|-- war.h
`-- yeeloong-2f
    `-- machine.h
4 directories, 12 files

$ ls arch/mips/pci/fixup-lemote2*
arch/mips/pci/fixup-lemote2e.c  arch/mips/pci/fixup-lemote2f.c
$ ls arch/mips/pci/ops-loongson2.c 
arch/mips/pci/ops-loongson2.c

* the main changes

1. make the source code of loongson support scalable, sharable

  a. rename some lemote* names to loongson* names to support non-lemote
machines 
  b. remove the reference to bonito64, add a new loongson.h header file
  c. split the source code to loongson-specific(common/) &
board-specific parts(board-name/)
  d. divide the source code files to the smallest logic function unit   
  e. replace tons of magic numbers to understandable macros
  d. initialize several base addresses to simplify MMIO operation
  f. fixup RTC support

2. add basic lemote fuloong(2f) mini notebook support

  a. add AMD cs5536 south bridge support
  b. add fuloong-specific reboot/halt operation
  c. add fuloong-specific irq operation
  d. add cs5536 mfgpt timer support
  e. add cpu frequency scaling support
  f. add MIPS STD support

3. add basic lemote yeeloong(2f) mini notebook support

  a. add yeeloong-specific reboot/halt operation
  b. add yeeloong-specific command line operation

you can get the detail change logs from the git log.

Welcome your comments and suggestions. highly hope some fuloong and
yeeloong users help to test it, thanks!

best regards!
Wu Zhangjin

Attachment: linux-loongson-gcc4.4.patch.tar.gz
Description: application/compressed-tar

<Prev in Thread] Current Thread [Next in Thread>