* Re: i2c on mpc5200
From: Wolfgang Denk @ 2004-12-20 21:02 UTC (permalink / raw)
To: ivica; +Cc: linuxppc-embedded
In-Reply-To: <41C72733.9030300@asist-traffic.com>
In message <41C72733.9030300@asist-traffic.com> you wrote:
>
...
> module I would like to have I2C support working in my kernel.
...
> I tried with v various 2.4 kernels but I only had some success with a
> kernel
> form metrowerks which I got from a colleague. This is it's output.
It works fine with the 2.4.x kernel on our CVS server.
> i2c-core.o: i2c core module
> i2c-dev.o: i2c /dev entries driver module
> i2c-core.o: driver i2c-dev dummy driver registered.
> i2c-algo-bit.o: i2c bit algorithm module
> i2c-proc.o version 2.6.1 (20010825)
> devfs_register(ttyS): could not append to parent, err: -17
> devfs_register(ttyS): could not append to parent, err: -17
> devfs_register(cua): could not append to parent, err: -17
> devfs_register(cua): could not append to parent, err: -17
Did you try NOT using devfs?
> Also if anyone has already succeeded in supporting i2c for mpc5200 I
> would love
> to hear your experience.
We did, in 2.4, where it works OK, at least as long as the hardware
is OK (some of the earlier Icecube boards had some issues).
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
The ultimate barrier is one's viewpoint.
- Terry Pratchett, _The Dark Side of the Sun_
^ permalink raw reply
* i2c on mpc5200
From: ivica @ 2004-12-20 19:25 UTC (permalink / raw)
To: linuxppc-embedded
Hi!
I have a hardware clock (RTC) which is not yet supported in
the linux kernel. It is RX-8025 module from EPSON and it is
I2C bus-interface based. Before I start writing support for this
module I would like to have I2C support working in my kernel.
Has anybody succeeded in getting I2C supported for MPC5200
based boards with 2.6 kernels? I'm using the one which maintains
Sylvain Munaut. If I boot up the kernel with I2C support in it
I don't get any initialization messages for I2C, only this one line:
----------------------------------------------------------------------
eth0: Phy @ 0x0, type LXT971 (0x001378e2)
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
-----------------------------------------------------------------------
I tried with v various 2.4 kernels but I only had some success with a
kernel
form metrowerks which I got from a colleague. This is it's output.
--------------------------------------------------------------------------------
i2c-core.o: i2c core module
i2c-dev.o: i2c /dev entries driver module
i2c-core.o: driver i2c-dev dummy driver registered.
i2c-algo-bit.o: i2c bit algorithm module
i2c-proc.o version 2.6.1 (20010825)
devfs_register(ttyS): could not append to parent, err: -17
devfs_register(ttyS): could not append to parent, err: -17
devfs_register(cua): could not append to parent, err: -17
devfs_register(cua): could not append to parent, err: -17
PORT CONFIG 4
PORT CONFIG 500044
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
i2c-dev.o: Registered 'Icecube I2C module #2 interface' as minor 0
i2c-core.o: adapter Icecube I2C module #2 interface registered as adapter 0.
i2c-algo-5xxx.o: scanning bus Icecube I2C module #2 interface...
..................................................(0x32).............................(0x50)(0x51)(0x52)(0x53)(0x54)(0x55)(0x56)(0x57).......................................(0x)
i2c-icecube.o: I2C module #2 installed
------------------------------------------------------------------------------------
This kernel has some strange hacks in it and I needed to change some
code in order
for it to compile under gcc. Ok, it works now but I would really like to
code the driver
for RTC module under 2.6 tree and like it is supposed to be done. I like
the 2.6 I2C directory tree
and it all makes more sense to a newb like me. First I need to get those
core.o and algo.o
stuff working. Under the menuconfig in the I2C there is a
I2C Hardware Bus support ---> [*] MPC107/824x/85xx/52xx
'Help' says :
"If you say yes to this option, support will be included for the
built-in I2C interface on the MPC107/Tsi107/MPC8240/MPC8245 and
MPC85xx family processors. The driver may also work on 52xx
family processors, though interrupts are known not to work."
I'm guessing this (drivers/i2c/busses/i2c-mpc.c) is the part I need to
work on?
Of course any input on where should I start would be greatly appreciated.
Also if anyone has already succeeded in supporting i2c for mpc5200 I
would love
to hear your experience.
Best regards,
Ivica
^ permalink raw reply
* 2.6.10-rc3 for 8xx with I2C config enabled compiles now ...
From: Povolotsky, Alexander @ 2004-12-20 18:44 UTC (permalink / raw)
To: 'Tom Rini'
Cc: etux, LM Sensors, 'linuxppc-embedded@ozlabs.org'
Hi Tom,
I have made the following configuration being "compilable" on 2.6.10-rc3
*********** .config ************
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y
#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=y
.........
CONFIG_I2C_ALGO8XX=y
#
# I2C Hardware Bus support
#
..............
CONFIG_I2C_RPXLITE=y
............
#
# Hardware Sensors Chip support
#
CONFIG_I2C_SENSOR=y
.............
*********** .config ************
by following changes:
1) i2c-algo-8xx.h is copied from 2.4(.26) and placed into
./include/linux/i2c-algo-8xx.h
2) i2c-algo-8xx.c is copied from 2.4(.26) and placed into
./drivers/i2c/algos/i2c-algo-8xx.c
3) added into ./drivers/i2c/algos/Makefile
after existing line:
obj-$(CONFIG_I2C_ALGOITE) += i2c-algo-ite.o
the following new line:
obj-$(CONFIG_I2C_ALGO8XX) += i2c-algo-8xx.o
4) added into ./include/asm-ppc/commproc.h
after existing line:
extern void cpm_free_handler(int vec);
the following new line:
extern const char *cpm_int_name[];
5) in ./drivers/i2c/busses/i2c-rpx.c
changed the order of include files:
moving the line:
#include <asm/commproc.h>
to be above the line:
#include <linux/i2c-algo-8xx.h>
so now includes are in the following order:
...
#include <linux/config.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/stddef.h>
#include <linux/i2c.h>
#include <asm/commproc.h>
#include <linux/i2c-algo-8xx.h>
#include <asm/mpc8xx.h>
...
Thanks,
Alex
-----Original Message-----
From: Tom Rini [mailto:trini@kernel.crashing.org]
Sent: Friday, December 17, 2004 12:09 PM
To: Povolotsky, Alexander
Subject: Re: 2.6.10-rc3 for 8xx with I2C config enabled still fails ...
On Fri, Dec 17, 2004 at 11:58:30AM -0500, Povolotsky, Alexander wrote:
So, your best bet to get 8xx I2C working is to grab the 'latest' from a
2.4 tree that has it working, and move it up. In doing so, you may want
to kill 'i2c-rpx' and merge it all into the i2c-algo-8xx file.
So, I've attached the newest i2c-algo-8xx.h I can find. The rest of the
code that's in 2.6 is probably good enough. With this, hopefully you
can hack things into working (if you need a very simple i2c test
program, let me know. I _think_ i have one around that should give you
the temp info found at least on my old rpxlite).
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply
* IDE
From: Barbier, Renaud (GE Infrastructure) @ 2004-12-20 15:17 UTC (permalink / raw)
To: linuxppc-embedded
I have a custom 440GX board with a Promise 20269.
even though, I used the options ide3=3Dnoprobe or hdg=3Dnoprobe and =
hdh=3Dnoprobe
Linux hangs on probing the second interface.=20
Am using the kernel options the correct way?
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with =
idebus=3Dxx
PDC20269: IDE controller at PCI slot 00:03.0
PDC20269: chipset revision 2
PDC20269: not 100% native mode: will probe irqs later
PDC20269: ROM enabled at 0x000dc000
ide2: BM-DMA at 0xefd0-0xefd7, BIOS settings: hde:pio, hdf:pio
ide3: BM-DMA at 0xefd8-0xefdf, BIOS settings: hdg:pio, hdh:pio
Probing IDE interface ide2...
hde: STI Flash 6.2.0, CFA DISK drive
blk: queue c01dbea0, I/O limit 4095Mb (mask 0xffffffff)
Probing IDE interface ide3...
^ permalink raw reply
* Re: Write Combining for PowerPC?
From: Antonio Vargas @ 2004-12-17 21:16 UTC (permalink / raw)
To: Kendall Bennett; +Cc: linuxppc-dev
In-Reply-To: <41B9A33A.26557.5DDD7EC8@localhost>
On Fri, 10 Dec 2004 13:23:06 -0800, Kendall Bennett
<KendallB@scitechsoft.com> wrote:
> Hi Guys,
>
> We are working on some PowerPC machines and noticed that the boxes don't
> appear to support the equivalent of Write Combining that we get on x86
> boxes. Copies to Video Memory on our Motorola Sandpoint box run about
> 10Mb/s, which is terribly, terribly slow!
>
> Does anyone know if it is possible to do something similar to Write
> Combining for the PowerPC architecture, to speed up CPU access to the
> linear framebuffer? Part of the problem is that for video overlay support
hmmm... G4 processors will do write-combining when you write two
cachelines just one after the other... there is a write-queue on the
cpu and when there is 1 write on the queue and you add another one for
the next cacheline, it will automatically merge the write. Also, if
you manage to complete a sector, then he knows you don't need to
read-then-write the memory and just issues a "kill-this-cacheline" on
the bus instead of "please-i-need-exclusive-access-for-this-cacheline"
> (not motion compensation) you have to dump the entire YUV frame into
> video memory for the hardware overlay, and even on a 1GHz PPC box playing
> an MPEG2 stream is not possible as X takes up over 80% of the CPU just to
> copy the YUV data to video memory!
>
> Obviously bus mastering will help solve this problem, but it would be
> better if there was a way to enabling faster CPU access to the
> framebuffer as well.
bus mastering is DMA-ing from system memory to gfxcard memory?
> Regards,
>
> ---
> Kendall Bennett
> Chief Executive Officer
> SciTech Software, Inc.
> Phone: (530) 894 8400
> http://www.scitechsoft.com
>
> ~ SciTech SNAP - The future of device driver technology! ~
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
>
--
Greetz, Antonio Vargas aka winden of network
http://wind.codepixel.com/
Las cosas no son lo que parecen, excepto cuando parecen lo que si son.
^ permalink raw reply
* Re: 2.6.10-rc3 for 8xx with I2C config enabled still fails ...
From: Tom Rini @ 2004-12-17 16:38 UTC (permalink / raw)
To: Povolotsky, Alexander
Cc: 'Demke, Torsten', 'linuxppc-embedded@ozlabs.org',
'Steven Blakeslee'
In-Reply-To: <313680C9A886D511A06000204840E1CF0A6473AF@whq-msgusr-02.pit.comms.marconi.com>
On Fri, Dec 17, 2004 at 11:30:53AM -0500, Povolotsky, Alexander wrote:
> Hi,
>
> Even so much "touted" ;-) 2.6.10-rc3 FAILS for 8xx with I2C config enabled
> ... and our custom MPC885 based board is using a single 24C02 type I2C
> EEPROM, connected to the I2C bus ...
>
> Does anyone of you has any input/experience about 2.6.10-rc3 functionality
> (this all relates to our card) of:
> SPI, HDLC, Entropia, Legerity, watchdog, NAND flash support,
> MTD with JFFS2 filesystem support and flash compatibility ??? (Any info will
> be much appreciated !)
So, your best bet to get 8xx I2C working is to grab the 'latest' from a
2.4 tree that has it working, and move it up. In doing so, you may want
to kill 'i2c-rpx' and merge it all into the i2c-algo-8xx file.
[snip]
> CONFIG_8xx=y
CONFIG_BROKEN=y
as well. Not that it's directly relevant (the 8xx breakage is in
something else), but..
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply
* 2.6.10-rc3 for 8xx with I2C config enabled still fails ...
From: Povolotsky, Alexander @ 2004-12-17 16:30 UTC (permalink / raw)
To: 'Sam Song'
Cc: 'Demke, Torsten', 'linuxppc-embedded@ozlabs.org',
'Steven Blakeslee'
Hi,
Even so much "touted" ;-) 2.6.10-rc3 FAILS for 8xx with I2C config enabled
... and our custom MPC885 based board is using a single 24C02 type I2C
EEPROM, connected to the I2C bus ...
Does anyone of you has any input/experience about 2.6.10-rc3 functionality
(this all relates to our card) of:
SPI, HDLC, Entropia, Legerity, watchdog, NAND flash support,
MTD with JFFS2 filesystem support and flash compatibility ??? (Any info will
be much appreciated !)
Thanks,
Alex
****************************************************************
CONFIG_8xx=y
............
............
CONFIG_MTD=y
............
CONFIG_HDLC=y
............
CONFIG_PPP=y
............
CONFIG_I2C=y
...............
CC drivers/i2c/busses/i2c-rpx.o
drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file or
directory
drivers/i2c/busses/i2c-rpx.c:26: warning: "struct i2c_algo_8xx_data"
declared inside parameter list
drivers/i2c/busses/i2c-rpx.c:26: warning: its scope is only this definition
or declaration,
which is probably not what you want
drivers/i2c/busses/i2c-rpx.c: In function `rpx_iic_init':
drivers/i2c/busses/i2c-rpx.c:34: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:41: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:42: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:53: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:56: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c: At top level:
drivers/i2c/busses/i2c-rpx.c:67: error: variable `rpx_data' has initializer
but
incomplete type
drivers/i2c/busses/i2c-rpx.c:68: error: unknown field `setisr' specified in
initializer
drivers/i2c/busses/i2c-rpx.c:69: warning: excess elements in struct
initializer
drivers/i2c/busses/i2c-rpx.c:69: warning: (near initialization for
`rpx_data')
drivers/i2c/busses/i2c-rpx.c: In function `i2c_rpx_init':
drivers/i2c/busses/i2c-rpx.c:83: warning: passing arg 1 of `rpx_iic_init'
from incompatible pointer type
drivers/i2c/busses/i2c-rpx.c:85: warning: implicit declaration of function
`i2c_8xx_add_bus'
drivers/i2c/busses/i2c-rpx.c: In function `i2c_rpx_exit':
drivers/i2c/busses/i2c-rpx.c:95: warning: implicit declaration of function
`i2c_8xx_del_bus'
drivers/i2c/busses/i2c-rpx.c: At top level:
drivers/i2c/busses/i2c-rpx.c:67: error: storage size of `rpx_data' isn't
known
make[3]: *** [drivers/i2c/busses/i2c-rpx.o] Error 1
make[2]: *** [drivers/i2c/busses] Error 2
make[1]: *** [drivers/i2c] Error 2
make: *** [drivers] Error 2
-----Original Message-----
From: Sam Song [mailto:samlinuxppc@yahoo.com.cn]
Sent: Friday, December 17, 2004 5:32 AM
To: Povolotsky, Alexander; 'linuxppc-embedded@ozlabs.org'
Subject: Re: Error cross-building Linux 2.6 for 8xx
^ permalink raw reply
* Re: Initialization of Timer Clock on the MPC8260
From: annamaya @ 2004-12-17 15:56 UTC (permalink / raw)
To: Wolfgang Denk; +Cc: linuxppc-embedded
In-Reply-To: <20041215171824.97038.qmail@web53805.mail.yahoo.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=us-ascii, Size: 2779 bytes --]
OK Wolfgang. Noone has posted an answer to this
question in the U-Boot mailing list. So, I still need
help with this. :-)
I am looking at the support for one of your own
boards, the TQM8260. I dont see PC25, PC27 and PC26
being configured anywhere. And PC29 is configured as
an SCC1 CLSN signal. Therefore, I think the internal
BRGCLK is used as an input to the timerclk. Now, if
this was true, BRGC1 should have been programmed to
generate either 4MHz or 32KHz clock. But I dont see
this being done anywhere else in the code. I am
missing something and I am not sure what that is.
Thanks much for your help.
--- annamaya <annamaya@yahoo.com> wrote:
> Hello Wolfgang,
>
> I will surely post this in the U-Boot forums. I just
> did not know where it was but I think I've found it
> now. I still had the address to the PPCBOOT mailist
> lists. I miss the good old days. :-)
>
> And to answer you questions, yes, I did look at the
> GPIO pins for all the 8260 boards and not one of
> them
> was configured to be a clock. And I was unable to
> find
> the setbrg() routine elsewhere to set brgc1 to be
> the
> input for timerclk.
>
> -Navin.
>
> --- Wolfgang Denk <wd@denx.de> wrote:
>
> > In message
> >
> <20041214230712.79751.qmail@web53805.mail.yahoo.com>
> > you wrote:
> > > I am not sure if this is the right place to ask
> > this
> > > question since this may be a U-Boot question. I
> am
> >
> > Why do you ask here and not on the U-Boot mailing
> > list then?
> >
> > > trying to understand how the source for the
> timer
> > > clock is selected on this processor. Figure 4-3
> > tries
> > > to explain this but I am unable to find code in
> > U-Boot
> > > that actually sets either BRG1 or one of the
> GPIO
> > pins
> > > to act as inputs for the timer clock generation.
> > Can
> > > someone point me to the right place in the code
> > where
> >
> > Well, did you check the place where all GPIO pins
> > get initialized, i. e. board/<name>/<name>.c ?
> >
> > Best regards,
> >
> > Wolfgang Denk
> >
> > --
> > Software Engineering: Embedded and Realtime
> > Systems, Embedded Linux
> > Phone: (+49)-8142-66989-10 Fax:
> (+49)-8142-66989-80
> > Email: wd@denx.de
> > "To take a significant step forward, you must make
> a
> > series of finite
> > improvements." - Donald J. Atwood, General Motors
> >
>
>
>
>
> __________________________________
> Do you Yahoo!?
> The all-new My Yahoo! - Get yours free!
> http://my.yahoo.com
>
>
> _______________________________________________
> Linuxppc-embedded mailing list
> Linuxppc-embedded@ozlabs.org
>
https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
__________________________________
Do you Yahoo!?
All your favorites on one personal page Try My Yahoo!
http://my.yahoo.com
^ permalink raw reply
* Re: Error cross-building Linux 2.6 for 8xx
From: Sam Song @ 2004-12-17 10:32 UTC (permalink / raw)
To: Povolotsky, Alexander, 'linuxppc-embedded@ozlabs.org'
In-Reply-To: <313680C9A886D511A06000204840E1CF0A6473AA@whq-msgusr-02.pit.comms.marconi.com>
"Povolotsky, Alexander"
Alexander.Povolotsky@marconi.com> wrote:
> Hi - I am double posting this on both:
> linuxppc-embedded@ozlabs.org and
> etux@embeddedtux.org, hoping to increase the
> audience and, hence, to maximize the
> number of responses (if
Pls try to avoid cross-posting your technical message.
> Then I took the I2C configuration out and tried to
> build the kernel again -
> but I am still getting errors
> (not sure though whether cross-compiler
> "contributes" to those recent errors
> or not ... - I would, as always,
> appreciate any opinion/input ! ):
To get a workable 2.6.x 8xx kernel running with
ramdisk root filesystem, you could refer to:
http://ozlabs.org/pipermail/linuxppc-dev/2004-September/017602.html
And also from this thread, you could get a clear clue
on the 2.6 porting on 8xx.
I tested 2.6 kernel on RPXlite DW from 2.6.7 to
2.6.9-rc2 with ELDK3.0. All worked fine with ramdisk.
If adding the ONE-LINE patch from Pantelis Antoniou
which you could get it on the thread, it could work
right with NFS but still need some fix to make it on
production.
It seems that we leave the right result just one step
but it's most likely the most difficult part, IMHO:-)
=====
Best regards,
Sam
_________________________________________________________
Do You Yahoo!?
150万曲MP3疯狂搜,带您闯入音乐殿堂
http://music.yisou.com/
美女明星应有尽有,搜遍美图、艳图和酷图
http://image.yisou.com
1G就是1000兆,雅虎电邮自助扩容!
http://cn.rd.yahoo.com/mail_cn/tag/1g/*http://cn.mail.yahoo.com/event/mail_1g/
^ permalink raw reply
* RE: Lite5200 and PCI1520 - preliminary patch
From: Andrew Dennison @ 2004-12-17 7:11 UTC (permalink / raw)
To: wd, 'Zeitler, Nathan'; +Cc: linuxppc-embedded
In-Reply-To: <20041214003301.2CC13C1430@atlas.denx.de>
[-- Attachment #1: Type: text/plain, Size: 1548 bytes --]
On Tuesday, 14 December 2004 11:33 AM, wd@denx.de wrote:
>
> I'd like to see your patch (even if preliminary).
>
Well - here it is.
This is a patch against Denx linuxppc_2_4_devel, LABEL_2003_12_22_1500.
Yes - I know that's old but I have some RTAI modules and I didn't want to
jump kernel versions just yet.
All problems I've fixed are still in the top of CVS anyway. Some changes
I've made are backported from or inspired by later 2.4 and 2.6 kernels.
Current status:
orinoco_cs cards work for me
ide_cs fails registering the driver.
some cardbus cards enumerate and can dump_cis, others cause a TEA on
insertion. May be hardware or software bugs:)
card status and functional interrupts sometimes don't work on boot.
IRQ = 0 not supported, may just change mpc5xxx_pci to start interrupts at
1 as fixing this is a lot of work, and all the same assumptions still
exist in 2.6:(
lots of debug rubbish still present
Issues addressed:
1) remap PCI addresses to make PCMCIA feasible
2) use io_block_mapping for MBAR, so pci configuration type 0 cycles are
on a valid memory address after init
3) fix pci configuration type 1 cycles as per errata
4) add PCI1520 support, with interrupt related fixes
5) added preliminary support for my hardware. Most (all?) of the
deviations from idecube in the vpc platform are required for PCMCIA
If anyone has a cardbus pci card that works in a lite5200 and wants to do
some testing I can patch the icecube platform.
I would appreciate some feedback on this!
Andrew
[-- Attachment #2: vpc_patch.2.gz --]
[-- Type: application/x-gzip, Size: 16529 bytes --]
^ permalink raw reply
* [PATCH][PPC32] Fix io_remap_page_range for 36-bit phys platforms
From: Matt Porter @ 2004-12-17 0:51 UTC (permalink / raw)
To: torvalds; +Cc: akpm, linux-kernel, linuxppc-embedded
Fixes io_remap_page_range() to use the 32-bit address translator
similar to ioremap(). Someday u64 start/end resources should make
this unnecessary. Fixes set_pte() to handle a long long pte_t
properly.
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
diff -Nru a/arch/ppc/Kconfig b/arch/ppc/Kconfig
--- a/arch/ppc/Kconfig 2004-12-16 17:31:53 -07:00
+++ b/arch/ppc/Kconfig 2004-12-16 17:31:53 -07:00
@@ -97,6 +97,11 @@
depends on 44x
default y
+config PHYS_64BIT
+ bool
+ depends on 44x
+ default y
+
config ALTIVEC
bool "AltiVec Support"
depends on 6xx || POWER4
diff -Nru a/arch/ppc/syslib/ibm44x_common.c b/arch/ppc/syslib/ibm44x_common.c
--- a/arch/ppc/syslib/ibm44x_common.c 2004-12-16 17:31:53 -07:00
+++ b/arch/ppc/syslib/ibm44x_common.c 2004-12-16 17:31:53 -07:00
@@ -19,6 +19,7 @@
#include <linux/time.h>
#include <linux/types.h>
#include <linux/serial.h>
+#include <linux/module.h>
#include <asm/ibm44x.h>
#include <asm/mmu.h>
@@ -47,6 +48,7 @@
return (page_4gb | addr);
};
+EXPORT_SYMBOL(fixup_bigphys_addr);
void __init ibm44x_calibrate_decr(unsigned int freq)
{
diff -Nru a/include/asm-ppc/pgtable.h b/include/asm-ppc/pgtable.h
--- a/include/asm-ppc/pgtable.h 2004-12-16 17:31:53 -07:00
+++ b/include/asm-ppc/pgtable.h 2004-12-16 17:31:53 -07:00
@@ -431,7 +431,7 @@
#define pte_pfn(x) (pte_val(x) >> PAGE_SHIFT)
#define pte_page(x) pfn_to_page(pte_pfn(x))
-#define pfn_pte(pfn, prot) __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot))
+#define pfn_pte(pfn, prot) __pte(((pte_t)(pfn) << PAGE_SHIFT) | pgprot_val(prot))
#define mk_pte(page, prot) pfn_pte(page_to_pfn(page), prot)
/*
@@ -714,8 +714,22 @@
/* Needs to be defined here and not in linux/mm.h, as it is arch dependent */
#define kern_addr_valid(addr) (1)
+#ifdef CONFIG_PHYS_64BIT
+extern int remap_pfn_range(struct vm_area_struct *vma, unsigned long from,
+ unsigned long paddr, unsigned long size, pgprot_t prot);
+static inline int io_remap_page_range(struct vm_area_struct *vma,
+ unsigned long vaddr,
+ unsigned long paddr,
+ unsigned long size,
+ pgprot_t prot)
+{
+ phys_addr_t paddr64 = fixup_bigphys_addr(paddr, size);
+ return remap_pfn_range(vma, vaddr, paddr64 >> PAGE_SHIFT, size, prot);
+}
+#else
#define io_remap_page_range(vma, vaddr, paddr, size, prot) \
remap_pfn_range(vma, vaddr, (paddr) >> PAGE_SHIFT, size, prot)
+#endif
/*
* No page table caches to initialise
^ permalink raw reply
* RE: Error cross-building Linux 2.6 for 8xx
From: Demke, Torsten @ 2004-12-16 16:05 UTC (permalink / raw)
To: Povolotsky, Alexander, linuxppc-embedded, etux
Hello Alexander,
(snip)
>
> Make zImage
>
> CHK include/linux/version.h
> make[1]: `arch/ppc/kernel/asm-offsets.asm' is up to date.
> CHK include/linux/compile.h
> CC arch/ppc/8xx_io/uart.o
> arch/ppc/8xx_io/uart.c:82: warning: type defaults to `int' in
> declaration of
> `DECLARE_TASK_QUEUE'
> arch/ppc/8xx_io/uart.c:82: warning: parameter names (without types) in
> function declaration
> arch/ppc/8xx_io/uart.c: In function `serial_console_device':
> arch/ppc/8xx_io/uart.c:145: error: storage class specified
> for parameter
> `rs_table'
> arch/ppc/8xx_io/uart.c:145: error: parameter `rs_table' is initialized
Its also recommended to use the "new" serial driver for 8xx
(CONFIG_SERIAL_CPM_xxx) from the ../drivers/serial/cpm_uart/*.* directory.
Regards,
Torsten
>
> Thanks,
> Best Regards,
> Alex
>
> -----Original Message-----
> From: Dan Malek [mailto:dan@embeddededge.com]
> Sent: Wednesday, December 15, 2004 11:54 AM
> To: Povolotsky, Alexander
> Cc: 'linuxppc-embedded@ozlabs.org'
> Subject: Re: I2C + Linux 2.6 on MPC880/MPC885 based board(s)
>
>
> On Dec 15, 2004, at 11:04 AM, Povolotsky, Alexander wrote:
>
> > On a software (Linux 2.6) side ...
> > Did you deal with Linux 2.6 + MPC880/MPC885 (or at least
> any MPC8xx) ?
> > If yes, what I2C settings in .config were used for
> successful 2.6 kernel
>
> > build ?
> > I am having a problem building it (see below attached) ...
> - that is
> > why I am trying to understand from the hardware point of
> view - hence my
> h/w related questions
> > ... - the importance of I2C.
>
> It looks like someone that has an interest in
> using the CPM I2C (which isn't me) will need to port it first to 2.6,
> then provide the board specific functions for set up and control.
>
> On top of this, if you want to run the SMBus protocols, you will
> need a much more complex CPM I2C functions.
>
>
> -- Dan
> ******************
> -----Original Message-----
> From: Povolotsky, Alexander
> Sent: Tuesday, December 14, 2004 6:13 PM
> To: 'Greg KH'; Jean Delvare
> Subject: RE: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
> Hi,
>
> >Alexander, what arch are you building for?
>
> PPC ->8xx ->MPC880 (Motorola -> FreeScale Semiconductor)
> http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code
> =MPC885&nodeId
> =018rH3bTdG4204
>
> Thanks,
> Best Regards,
> Alex
>
> PPS I have attached my original e-mail in its entirety (at the end ).
>
> -----Original Message-----
> From: Greg KH [mailto:greg@kroah.com]
> Sent: Tuesday, December 14, 2004 4:50 PM
> To: Jean Delvare
> Cc: Alexander.Povolotsky@marconi.com
> Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
> On Tue, Dec 14, 2004 at 10:38:00AM +0100, Jean Delvare wrote:
> >
> > On 2004-12-14, Alexander Povolotsky wrote:
> >
> > > Hi,
> > >
> > > I have the following .config setup:
> > > (...)
> > > CONFIG_I2C_RPXLITE=y
> > > (...)
> > >
> > > Originally I was getting error:
> > > CC drivers/i2c/busses/i2c-rpx.o
> > > drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h:
> No such file
> or
> > > directory - why I am missing it - any hint ?
> >
> > Hm, looks like the 8xx i2c algorithm was never ported to
> Linux 2.6. Greg,
> > how come that the RPX adapter driver is present in the tree and the
> > algorithm it depends on isn't?
>
> Because no one ever sent me the patch with those files in it? :)
>
> I have no idea, I've not cross built this driver before.
>
> > Greg, could it be that an arch-specific (m68k? don't know what this
> > rpx/8xx thing is) variant of the Linux tree already has the
> i2c-algo-8xx
> > driver ported to 2.6? We probably want to import it into
> the main tree
> > if this is the case (having adapter drivers that won't
> compile doesn't
> > sound good...)
>
> It might, I've seen i2c drivers in different arch specific trees (like
> sh for example I know has a few.)
>
> Alexander, what arch are you building for?
>
> thanks,
>
> greg k-h
> *************
> -----Original Message-----
> From: Jean Delvare [mailto:khali@linux-fr.org]
> Sent: Tuesday, December 14, 2004 4:38 AM
> To: Alexander.Povolotsky@marconi.com; greg@kroah.com
> Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
>
> On 2004-12-14, Alexander Povolotsky wrote:
>
> > Hi,
> >
> > I have the following .config setup:
> > (...)
> > CONFIG_I2C_RPXLITE=y
> > (...)
> >
> > Originally I was getting error:
> > CC drivers/i2c/busses/i2c-rpx.o
> > drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h:
> No such file or
> > directory - why I am missing it - any hint ?
>
> Hm, looks like the 8xx i2c algorithm was never ported to
> Linux 2.6. Greg,
> how come that the RPX adapter driver is present in the tree and the
> algorithm it depends on isn't?
>
> > So I copied the i2c-algo-8xx.h file from Linux 2.4.26
> distribution ...
> > could I use it ?
> > (if not - could you send me the correct i2c-algo-8xx.h file
> ? - TIA !)
>
> I don't think it'll work. The header file is one thing, the algorithm
> driver is another and you would need to port both (they proabbly won't
> work out of the box due to important changes in the i2c subsystem
> between 2.4 and 2.6 kernels). Also, obviously the RPX adapter driver
> couldn't be used so far so it was possibly never tested. There will
> probably be much porting and debugging work if you want to get it to
> work.
>
> Greg, could it be that an arch-specific (m68k? don't know what this
> rpx/8xx thing is) variant of the Linux tree already has the
> i2c-algo-8xx
> driver ported to 2.6? We probably want to import it into the main tree
> if this is the case (having adapter drivers that won't compile doesn't
> sound good...)
>
> Alexander, at any rate, there's not much I can do myself, as I don't
> have compatible hardware to port/test/debug the i2c-algo-8xx
> and i2c-rpx
> drivers. Sorry.
>
> Thanks,
> --
> Jean Delvare
> -----Original Message-----
> From: Povolotsky, Alexander
> Sent: Monday, December 13, 2004 10:22 PM
> To: 'khali@linux-fr.org'
> Subject: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
> Hi,
>
> I have the following .config setup:
> .....
> # I2C Hardware Bus support
> #
> # CONFIG_I2C_AMD756 is not set
> # CONFIG_I2C_AMD8111 is not set
> # CONFIG_I2C_ISA is not set
> # CONFIG_I2C_PARPORT_LIGHT is not set
> CONFIG_I2C_RPXLITE=y
> # CONFIG_SCx200_ACB is not set
>
> #
> # Hardware Sensors Chip support
> #
> # CONFIG_I2C_SENSOR is not set
> # CONFIG_SENSORS_ADM1021 is not set
> # CONFIG_SENSORS_ADM1025 is not set
> # CONFIG_SENSORS_ADM1031 is not set
> # CONFIG_SENSORS_ASB100 is not set
> # CONFIG_SENSORS_DS1621 is not set
> # CONFIG_SENSORS_FSCHER is not set
> # CONFIG_SENSORS_GL518SM is not set
> # CONFIG_SENSORS_IT87 is not set
> # CONFIG_SENSORS_LM75 is not set
> # CONFIG_SENSORS_LM77 is not set
> # CONFIG_SENSORS_LM78 is not set
> # CONFIG_SENSORS_LM80 is not set
> # CONFIG_SENSORS_LM83 is not set
> # CONFIG_SENSORS_LM85 is not set
> # CONFIG_SENSORS_LM90 is not set
> # CONFIG_SENSORS_MAX1619 is not set
> # CONFIG_SENSORS_W83781D is not set
> # CONFIG_SENSORS_W83L785TS is not set
> # CONFIG_SENSORS_W83627HF is not set
>
> #
> # Other I2C Chip support
> #
> # CONFIG_SENSORS_EEPROM is not set
> # CONFIG_SENSORS_PCF8574 is not set
> # CONFIG_SENSORS_PCF8591 is not set
> # CONFIG_SENSORS_RTC8564 is not set
> # CONFIG_I2C_DEBUG_CORE is not set
> # CONFIG_I2C_DEBUG_ALGO is not set
> # CONFIG_I2C_DEBUG_BUS is not set
> # CONFIG_I2C_DEBUG_CHIP is not set
> ...............
>
> Originally I was getting error:
> CC drivers/i2c/busses/i2c-rpx.o
> drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No
> such file or
> directory - why I am missing it - any hint ?
>
> So I copied the i2c-algo-8xx.h file from Linux 2.4.26
> distribution ... could
> I use it ?
> (if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
>
> Then I started to get another error:
>
> CC drivers/i2c/busses/i2c-rpx.o
> In file included from drivers/i2c/busses/i2c-rpx.c:20:
> include/linux/i2c-algo-8xx.h:15: warning: type defaults to `int' in
> declaration of `i2c8xx_t'
> include/linux/i2c-algo-8xx.h:15: warning: no semicolon at end
> of struct or
> union
> include/linux/i2c-algo-8xx.h:15: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:16: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:16: warning: type defaults to `int' in
> declaration of `iip'
> include/linux/i2c-algo-8xx.h:16: warning: data definition has
> no type or
> storage class
> include/linux/i2c-algo-8xx.h:17: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:17: warning: type defaults to `int' in
> declaration of `cp'
> include/linux/i2c-algo-8xx.h:17: warning: data definition has
> no type or
> storage class
> include/linux/i2c-algo-8xx.h:25: error: parse error before '}' token
> drivers/i2c/busses/i2c-rpx.c: In function `rpx_iic_init':
> drivers/i2c/busses/i2c-rpx.c:34: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:41: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:42: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:53: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:56: error: dereferencing pointer
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c: At top level:
> drivers/i2c/busses/i2c-rpx.c:67: error: variable `rpx_data'
> has initializer
> but incomplete type
> drivers/i2c/busses/i2c-rpx.c:68: error: unknown field
> `setisr' specified in
> initializer
> drivers/i2c/busses/i2c-rpx.c:69: warning: excess elements in struct
> initializer
> drivers/i2c/busses/i2c-rpx.c:69: warning: (near initialization for
> `rpx_data')
> drivers/i2c/busses/i2c-rpx.c:67: error: storage size of
> `rpx_data' isn't
> known
> make[3]: *** [drivers/i2c/busses/i2c-rpx.o] Error 1
> make[2]: *** [drivers/i2c/busses] Error 2
> make[1]: *** [drivers/i2c] Error 2
> make: *** [drivers] Error 2
>
> Here is the listing of i2c-algo-8xx.h I have (from Linux
> 2.4.26 distribution
> )
> /*
> --------------------------------------------------------------
> ----------
> /* i2c-algo-8xx.h i2c driver algorithms for MPX8XX CPM
> /*
> --------------------------------------------------------------
> ----------
>
> /* $Id$ */
>
> #ifndef I2C_ALGO_8XX_H
> #define I2C_ALGO_8XX_H 1
>
> #include <linux/i2c.h>
>
> struct i2c_algo_8xx_data {
> uint dp_addr;
> int reloc;
> volatile i2c8xx_t *i2c;
> volatile iic_t *iip;
> volatile cpm8xx_t *cp;
>
> int (*setisr) (int irq,
> void (*func)(int, void *, struct
> pt_regs *),
> const char *name,
> void *data);
>
> u_char temp[513];
> };
>
> int i2c_8xx_add_bus(struct i2c_adapter *);
> int i2c_8xx_del_bus(struct i2c_adapter *);
>
> #endif /* I2C_ALGO_8XX_H */
>
>
> Thanks,
> Best Regards,
> I will highly Appreciate your response/help !
> Alex Povolotsky
>
> _______________________________________________
> Linuxppc-embedded mailing list
> Linuxppc-embedded@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
^ permalink raw reply
* RE: Error cross-building Linux 2.6 for 8xx
From: Steven Blakeslee @ 2004-12-16 15:41 UTC (permalink / raw)
To: Povolotsky, Alexander, linuxppc-embedded, etux
arch/ppc/8xx_io/uart.c is the problem. For the 2.6 kernel that compiles
for 8xx that file does not exist. You need a newer version of the 2.6
kernel. The version that compiles correctly and sort of runs is Linux
2.6.10-rc3. I know for a fact that Linux 2.6.9 and lower does not
compile correctly on 8xx.=20
Also, nfs root does not work, use a ramdisk.
My email client sucks, so I probably broke the thread, sorry.
> -----Original Message-----
> From: linuxppc-embedded-bounces@ozlabs.org=20
> [mailto:linuxppc-embedded-bounces@ozlabs.org] On Behalf Of=20
> Povolotsky, Alexander
> Sent: Thursday, December 16, 2004 10:31 AM
> To: 'linuxppc-embedded@ozlabs.org'; 'etux@embeddedtux.org'
> Subject: Error cross-building Linux 2.6 for 8xx
>=20
> Hi - I am double posting this on both:=20
> linuxppc-embedded@ozlabs.org and etux@embeddedtux.org, hoping=20
> to increase the audience and, hence, to maximize the number=20
> of responses (if only the same people read both mail lists,=20
> why such duplicate redundant mail lists exist ?)
>=20
> I recognize and highly appreciate what Wolfgang Denk=20
> <wd@denx.de> wrote (to
> me) on etux@embeddedtux.org:
>=20
> >Forget the combination of a 2.6 kernel and a MPC8xx =20
> processor for=20
> >now. There are still serious problems in 2.6 on these processors.
>=20
> But at least (I thought) I should be able to build the 2.6=20
> kernel for 8xx.
> So firstly I ran into I2C "no-current-support-for-8xx" (see=20
> details in the listed below e-mail chain) ...
>=20
> Then I took the I2C configuration out and tried to build the=20
> kernel again - but I am still getting errors (not sure though=20
> whether cross-compiler "contributes" to those recent errors=20
> or not ... - I would, as always, appreciate any opinion/input ! ):
>=20
> Make zImage
>=20
> CHK include/linux/version.h
> make[1]: `arch/ppc/kernel/asm-offsets.asm' is up to date.
> CHK include/linux/compile.h
> CC arch/ppc/8xx_io/uart.o
> arch/ppc/8xx_io/uart.c:82: warning: type defaults to `int' in=20
> declaration of `DECLARE_TASK_QUEUE'
> arch/ppc/8xx_io/uart.c:82: warning: parameter names (without=20
> types) in function declaration
> arch/ppc/8xx_io/uart.c: In function `serial_console_device':
> arch/ppc/8xx_io/uart.c:145: error: storage class specified=20
> for parameter `rs_table'
> arch/ppc/8xx_io/uart.c:145: error: parameter `rs_table' is initialized
>=20
> Thanks,
> Best Regards,
> Alex
>=20
> -----Original Message-----
> From: Dan Malek [mailto:dan@embeddededge.com]
> Sent: Wednesday, December 15, 2004 11:54 AM
> To: Povolotsky, Alexander
> Cc: 'linuxppc-embedded@ozlabs.org'
> Subject: Re: I2C + Linux 2.6 on MPC880/MPC885 based board(s)
>=20
>=20
> On Dec 15, 2004, at 11:04 AM, Povolotsky, Alexander wrote:
>=20
> > On a software (Linux 2.6) side ...
> > Did you deal with Linux 2.6 + MPC880/MPC885 (or at least=20
> any MPC8xx) ?
> > If yes, what I2C settings in .config were used for successful 2.6=20
> > kernel
>=20
> > build ?
> > I am having a problem building it (see below attached) ...=20
> - that is =20
> > why I am trying to understand from the hardware point of=20
> view - hence=20
> > my
> h/w related questions =20
> > ... - the importance of I2C.
>=20
> It looks like someone that has an interest in using the CPM=20
> I2C (which isn't me) will need to port it first to 2.6, then=20
> provide the board specific functions for set up and control.
>=20
> On top of this, if you want to run the SMBus protocols, you=20
> will need a much more complex CPM I2C functions.
>=20
>=20
> -- Dan
> ******************
> -----Original Message-----
> From: Povolotsky, Alexander
> Sent: Tuesday, December 14, 2004 6:13 PM
> To: 'Greg KH'; Jean Delvare
> Subject: RE: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>=20
>=20
> Hi,
>=20
> >Alexander, what arch are you building for?
>=20
> PPC ->8xx ->MPC880 (Motorola -> FreeScale Semiconductor)
> http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code
=3DMPC885&nodeId
> =3D018rH3bTdG4204
>=20
> Thanks,
> Best Regards,
> Alex
>=20
> PPS I have attached my original e-mail in its entirety (at the end ).
>=20
> -----Original Message-----
> From: Greg KH [mailto:greg@kroah.com]
> Sent: Tuesday, December 14, 2004 4:50 PM
> To: Jean Delvare
> Cc: Alexander.Povolotsky@marconi.com
> Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>=20
>=20
> On Tue, Dec 14, 2004 at 10:38:00AM +0100, Jean Delvare wrote:
> >=20
> > On 2004-12-14, Alexander Povolotsky wrote:
> >=20
> > > Hi,
> > >
> > > I have the following .config setup:
> > > (...)
> > > CONFIG_I2C_RPXLITE=3Dy
> > > (...)
> > >=20
> > > Originally I was getting error:
> > > CC drivers/i2c/busses/i2c-rpx.o
> > > drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h:=20
> No such file
> or
> > > directory - why I am missing it - any hint ?
> >=20
> > Hm, looks like the 8xx i2c algorithm was never ported to=20
> Linux 2.6. Greg,
> > how come that the RPX adapter driver is present in the tree and the
> > algorithm it depends on isn't?
>=20
> Because no one ever sent me the patch with those files in it? :)
>=20
> I have no idea, I've not cross built this driver before.
>=20
> > Greg, could it be that an arch-specific (m68k? don't know what this
> > rpx/8xx thing is) variant of the Linux tree already has the=20
> i2c-algo-8xx
> > driver ported to 2.6? We probably want to import it into=20
> the main tree
> > if this is the case (having adapter drivers that won't=20
> compile doesn't
> > sound good...)
>=20
> It might, I've seen i2c drivers in different arch specific trees (like
> sh for example I know has a few.)
>=20
> Alexander, what arch are you building for?
>=20
> thanks,
>=20
> greg k-h
> *************
> -----Original Message-----
> From: Jean Delvare [mailto:khali@linux-fr.org]
> Sent: Tuesday, December 14, 2004 4:38 AM
> To: Alexander.Povolotsky@marconi.com; greg@kroah.com
> Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>=20
>=20
>=20
> On 2004-12-14, Alexander Povolotsky wrote:
>=20
> > Hi,
> >
> > I have the following .config setup:
> > (...)
> > CONFIG_I2C_RPXLITE=3Dy
> > (...)
> >=20
> > Originally I was getting error:
> > CC drivers/i2c/busses/i2c-rpx.o
> > drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h:=20
> No such file or
> > directory - why I am missing it - any hint ?
>=20
> Hm, looks like the 8xx i2c algorithm was never ported to=20
> Linux 2.6. Greg,
> how come that the RPX adapter driver is present in the tree and the
> algorithm it depends on isn't?
>=20
> > So I copied the i2c-algo-8xx.h file from Linux 2.4.26=20
> distribution ...
> > could I use it ?
> > (if not - could you send me the correct i2c-algo-8xx.h file=20
> ? - TIA !)
>=20
> I don't think it'll work. The header file is one thing, the algorithm
> driver is another and you would need to port both (they proabbly won't
> work out of the box due to important changes in the i2c subsystem
> between 2.4 and 2.6 kernels). Also, obviously the RPX adapter driver
> couldn't be used so far so it was possibly never tested. There will
> probably be much porting and debugging work if you want to get it to
> work.
>=20
> Greg, could it be that an arch-specific (m68k? don't know what this
> rpx/8xx thing is) variant of the Linux tree already has the=20
> i2c-algo-8xx
> driver ported to 2.6? We probably want to import it into the main tree
> if this is the case (having adapter drivers that won't compile doesn't
> sound good...)
>=20
> Alexander, at any rate, there's not much I can do myself, as I don't
> have compatible hardware to port/test/debug the i2c-algo-8xx=20
> and i2c-rpx
> drivers. Sorry.
>=20
> Thanks,
> --
> Jean Delvare
> -----Original Message-----
> From: Povolotsky, Alexander =20
> Sent: Monday, December 13, 2004 10:22 PM
> To: 'khali@linux-fr.org'
> Subject: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>=20
> Hi,
>=20
> I have the following .config setup:
> .....
> # I2C Hardware Bus support
> #
> # CONFIG_I2C_AMD756 is not set
> # CONFIG_I2C_AMD8111 is not set
> # CONFIG_I2C_ISA is not set
> # CONFIG_I2C_PARPORT_LIGHT is not set
> CONFIG_I2C_RPXLITE=3Dy
> # CONFIG_SCx200_ACB is not set
>=20
> #
> # Hardware Sensors Chip support
> #
> # CONFIG_I2C_SENSOR is not set
> # CONFIG_SENSORS_ADM1021 is not set
> # CONFIG_SENSORS_ADM1025 is not set
> # CONFIG_SENSORS_ADM1031 is not set
> # CONFIG_SENSORS_ASB100 is not set
> # CONFIG_SENSORS_DS1621 is not set
> # CONFIG_SENSORS_FSCHER is not set
> # CONFIG_SENSORS_GL518SM is not set
> # CONFIG_SENSORS_IT87 is not set
> # CONFIG_SENSORS_LM75 is not set
> # CONFIG_SENSORS_LM77 is not set
> # CONFIG_SENSORS_LM78 is not set
> # CONFIG_SENSORS_LM80 is not set
> # CONFIG_SENSORS_LM83 is not set
> # CONFIG_SENSORS_LM85 is not set
> # CONFIG_SENSORS_LM90 is not set
> # CONFIG_SENSORS_MAX1619 is not set
> # CONFIG_SENSORS_W83781D is not set
> # CONFIG_SENSORS_W83L785TS is not set
> # CONFIG_SENSORS_W83627HF is not set
>=20
> #
> # Other I2C Chip support
> #
> # CONFIG_SENSORS_EEPROM is not set
> # CONFIG_SENSORS_PCF8574 is not set
> # CONFIG_SENSORS_PCF8591 is not set
> # CONFIG_SENSORS_RTC8564 is not set
> # CONFIG_I2C_DEBUG_CORE is not set
> # CONFIG_I2C_DEBUG_ALGO is not set
> # CONFIG_I2C_DEBUG_BUS is not set
> # CONFIG_I2C_DEBUG_CHIP is not set
> ...............
>=20
> Originally I was getting error:
> CC drivers/i2c/busses/i2c-rpx.o
> drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No=20
> such file or
> directory - why I am missing it - any hint ?
>=20
> So I copied the i2c-algo-8xx.h file from Linux 2.4.26=20
> distribution ... could
> I use it ?
> (if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
>=20
> Then I started to get another error:
>=20
> CC drivers/i2c/busses/i2c-rpx.o
> In file included from drivers/i2c/busses/i2c-rpx.c:20:
> include/linux/i2c-algo-8xx.h:15: warning: type defaults to `int' in
> declaration of `i2c8xx_t'
> include/linux/i2c-algo-8xx.h:15: warning: no semicolon at end=20
> of struct or
> union
> include/linux/i2c-algo-8xx.h:15: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:16: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:16: warning: type defaults to `int' in
> declaration of `iip'
> include/linux/i2c-algo-8xx.h:16: warning: data definition has=20
> no type or
> storage class
> include/linux/i2c-algo-8xx.h:17: error: parse error before '*' token
> include/linux/i2c-algo-8xx.h:17: warning: type defaults to `int' in
> declaration of `cp'
> include/linux/i2c-algo-8xx.h:17: warning: data definition has=20
> no type or
> storage class
> include/linux/i2c-algo-8xx.h:25: error: parse error before '}' token
> drivers/i2c/busses/i2c-rpx.c: In function `rpx_iic_init':
> drivers/i2c/busses/i2c-rpx.c:34: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:41: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:42: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:53: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c:56: error: dereferencing pointer=20
> to incomplete
> type
> drivers/i2c/busses/i2c-rpx.c: At top level:
> drivers/i2c/busses/i2c-rpx.c:67: error: variable `rpx_data'=20
> has initializer
> but incomplete type
> drivers/i2c/busses/i2c-rpx.c:68: error: unknown field=20
> `setisr' specified in
> initializer
> drivers/i2c/busses/i2c-rpx.c:69: warning: excess elements in struct
> initializer
> drivers/i2c/busses/i2c-rpx.c:69: warning: (near initialization for
> `rpx_data')
> drivers/i2c/busses/i2c-rpx.c:67: error: storage size of=20
> `rpx_data' isn't
> known
> make[3]: *** [drivers/i2c/busses/i2c-rpx.o] Error 1
> make[2]: *** [drivers/i2c/busses] Error 2
> make[1]: *** [drivers/i2c] Error 2
> make: *** [drivers] Error 2
>=20
> Here is the listing of i2c-algo-8xx.h I have (from Linux=20
> 2.4.26 distribution
> )
> /*=20
> --------------------------------------------------------------
> ----------
> /* i2c-algo-8xx.h i2c driver algorithms for MPX8XX CPM
> /*=20
> --------------------------------------------------------------
> ----------
>=20
> /* $Id$ */
>=20
> #ifndef I2C_ALGO_8XX_H
> #define I2C_ALGO_8XX_H 1
>=20
> #include <linux/i2c.h>
>=20
> struct i2c_algo_8xx_data {
> uint dp_addr;
> int reloc;
> volatile i2c8xx_t *i2c;
> volatile iic_t *iip;
> volatile cpm8xx_t *cp;
>=20
> int (*setisr) (int irq,
> void (*func)(int, void *, struct=20
> pt_regs *),
> const char *name,
> void *data);
>=20
> u_char temp[513];
> };
>=20
> int i2c_8xx_add_bus(struct i2c_adapter *);
> int i2c_8xx_del_bus(struct i2c_adapter *);
>=20
> #endif /* I2C_ALGO_8XX_H */
>=20
>=20
> Thanks,
> Best Regards,
> I will highly Appreciate your response/help !
> Alex Povolotsky
>=20
> _______________________________________________
> Linuxppc-embedded mailing list
> Linuxppc-embedded@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>=20
^ permalink raw reply
* Re: Error cross-building Linux 2.6 for 8xx
From: Guillaume Autran @ 2004-12-16 15:47 UTC (permalink / raw)
To: Povolotsky, Alexander; +Cc: 'linuxppc-embedded@ozlabs.org'
In-Reply-To: <313680C9A886D511A06000204840E1CF0A6473AA@whq-msgusr-02.pit.comms.marconi.com>
[-- Attachment #1: Type: text/plain, Size: 12781 bytes --]
Alex,
The earlier 2.6.9 kernel version do not compile right on MPC8xx, but the
2.6.10-rc3 does compile without problem (in my case using a cross gcc
v3.4.3). You may want to try this version first...
As many people explained, the linux kernel on MPC8xx is not totally
working for now. But you can still play arround with it and contribute
to the porting :)
Regards,
Guillaume.
Povolotsky, Alexander wrote:
>Hi - I am double posting this on both: linuxppc-embedded@ozlabs.org and
>etux@embeddedtux.org, hoping to
>increase the audience and, hence, to maximize the number of responses (if
>only the same people read both mail lists,
>why such duplicate redundant mail lists exist ?)
>
>I recognize and highly appreciate what Wolfgang Denk <wd@denx.de> wrote (to
>me) on etux@embeddedtux.org:
>
>
>
>>Forget the combination of a 2.6 kernel and a MPC8xx processor for
>>now. There are still serious problems in 2.6 on these processors.
>>
>>
>
>But at least (I thought) I should be able to build the 2.6 kernel for 8xx.
>So firstly I ran into I2C "no-current-support-for-8xx" (see details in the
>listed below e-mail chain) ...
>
>Then I took the I2C configuration out and tried to build the kernel again -
>but I am still getting errors
>(not sure though whether cross-compiler "contributes" to those recent errors
>or not ... - I would, as always,
> appreciate any opinion/input ! ):
>
>Make zImage
>
> CHK include/linux/version.h
>make[1]: `arch/ppc/kernel/asm-offsets.asm' is up to date.
> CHK include/linux/compile.h
> CC arch/ppc/8xx_io/uart.o
>arch/ppc/8xx_io/uart.c:82: warning: type defaults to `int' in declaration of
>`DECLARE_TASK_QUEUE'
>arch/ppc/8xx_io/uart.c:82: warning: parameter names (without types) in
>function declaration
>arch/ppc/8xx_io/uart.c: In function `serial_console_device':
>arch/ppc/8xx_io/uart.c:145: error: storage class specified for parameter
>`rs_table'
>arch/ppc/8xx_io/uart.c:145: error: parameter `rs_table' is initialized
>
>Thanks,
>Best Regards,
>Alex
>
>-----Original Message-----
>From: Dan Malek [mailto:dan@embeddededge.com]
>Sent: Wednesday, December 15, 2004 11:54 AM
>To: Povolotsky, Alexander
>Cc: 'linuxppc-embedded@ozlabs.org'
>Subject: Re: I2C + Linux 2.6 on MPC880/MPC885 based board(s)
>
>
>On Dec 15, 2004, at 11:04 AM, Povolotsky, Alexander wrote:
>
>
>
>>On a software (Linux 2.6) side ...
>>Did you deal with Linux 2.6 + MPC880/MPC885 (or at least any MPC8xx) ?
>> If yes, what I2C settings in .config were used for successful 2.6 kernel
>>
>>
>
>
>
>> build ?
>> I am having a problem building it (see below attached) ... - that is
>> why I am trying to understand from the hardware point of view - hence my
>>
>>
>h/w related questions
>
>
>> ... - the importance of I2C.
>>
>>
>
>It looks like someone that has an interest in
>using the CPM I2C (which isn't me) will need to port it first to 2.6,
>then provide the board specific functions for set up and control.
>
>On top of this, if you want to run the SMBus protocols, you will
>need a much more complex CPM I2C functions.
>
>
> -- Dan
>******************
>-----Original Message-----
>From: Povolotsky, Alexander
>Sent: Tuesday, December 14, 2004 6:13 PM
>To: 'Greg KH'; Jean Delvare
>Subject: RE: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
>Hi,
>
>
>
>>Alexander, what arch are you building for?
>>
>>
>
>PPC ->8xx ->MPC880 (Motorola -> FreeScale Semiconductor)
>http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPC885&nodeId
>=018rH3bTdG4204
>
>Thanks,
>Best Regards,
>Alex
>
>PPS I have attached my original e-mail in its entirety (at the end ).
>
>-----Original Message-----
>From: Greg KH [mailto:greg@kroah.com]
>Sent: Tuesday, December 14, 2004 4:50 PM
>To: Jean Delvare
>Cc: Alexander.Povolotsky@marconi.com
>Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
>On Tue, Dec 14, 2004 at 10:38:00AM +0100, Jean Delvare wrote:
>
>
>>On 2004-12-14, Alexander Povolotsky wrote:
>>
>>
>>
>>>Hi,
>>>
>>>I have the following .config setup:
>>>(...)
>>>CONFIG_I2C_RPXLITE=y
>>>(...)
>>>
>>>Originally I was getting error:
>>> CC drivers/i2c/busses/i2c-rpx.o
>>>drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file
>>>
>>>
>or
>
>
>>>directory - why I am missing it - any hint ?
>>>
>>>
>>Hm, looks like the 8xx i2c algorithm was never ported to Linux 2.6. Greg,
>>how come that the RPX adapter driver is present in the tree and the
>>algorithm it depends on isn't?
>>
>>
>
>Because no one ever sent me the patch with those files in it? :)
>
>I have no idea, I've not cross built this driver before.
>
>
>
>>Greg, could it be that an arch-specific (m68k? don't know what this
>>rpx/8xx thing is) variant of the Linux tree already has the i2c-algo-8xx
>>driver ported to 2.6? We probably want to import it into the main tree
>>if this is the case (having adapter drivers that won't compile doesn't
>>sound good...)
>>
>>
>
>It might, I've seen i2c drivers in different arch specific trees (like
>sh for example I know has a few.)
>
>Alexander, what arch are you building for?
>
>thanks,
>
>greg k-h
>*************
>-----Original Message-----
>From: Jean Delvare [mailto:khali@linux-fr.org]
>Sent: Tuesday, December 14, 2004 4:38 AM
>To: Alexander.Povolotsky@marconi.com; greg@kroah.com
>Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>
>
>On 2004-12-14, Alexander Povolotsky wrote:
>
>
>
>>Hi,
>>
>>I have the following .config setup:
>>(...)
>>CONFIG_I2C_RPXLITE=y
>>(...)
>>
>>Originally I was getting error:
>> CC drivers/i2c/busses/i2c-rpx.o
>>drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file or
>>directory - why I am missing it - any hint ?
>>
>>
>
>Hm, looks like the 8xx i2c algorithm was never ported to Linux 2.6. Greg,
>how come that the RPX adapter driver is present in the tree and the
>algorithm it depends on isn't?
>
>
>
>>So I copied the i2c-algo-8xx.h file from Linux 2.4.26 distribution ...
>>could I use it ?
>>(if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
>>
>>
>
>I don't think it'll work. The header file is one thing, the algorithm
>driver is another and you would need to port both (they proabbly won't
>work out of the box due to important changes in the i2c subsystem
>between 2.4 and 2.6 kernels). Also, obviously the RPX adapter driver
>couldn't be used so far so it was possibly never tested. There will
>probably be much porting and debugging work if you want to get it to
>work.
>
>Greg, could it be that an arch-specific (m68k? don't know what this
>rpx/8xx thing is) variant of the Linux tree already has the i2c-algo-8xx
>driver ported to 2.6? We probably want to import it into the main tree
>if this is the case (having adapter drivers that won't compile doesn't
>sound good...)
>
>Alexander, at any rate, there's not much I can do myself, as I don't
>have compatible hardware to port/test/debug the i2c-algo-8xx and i2c-rpx
>drivers. Sorry.
>
>Thanks,
>--
>Jean Delvare
>-----Original Message-----
>From: Povolotsky, Alexander
>Sent: Monday, December 13, 2004 10:22 PM
>To: 'khali@linux-fr.org'
>Subject: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
>
>Hi,
>
>I have the following .config setup:
>.....
># I2C Hardware Bus support
>#
># CONFIG_I2C_AMD756 is not set
># CONFIG_I2C_AMD8111 is not set
># CONFIG_I2C_ISA is not set
># CONFIG_I2C_PARPORT_LIGHT is not set
>CONFIG_I2C_RPXLITE=y
># CONFIG_SCx200_ACB is not set
>
>#
># Hardware Sensors Chip support
>#
># CONFIG_I2C_SENSOR is not set
># CONFIG_SENSORS_ADM1021 is not set
># CONFIG_SENSORS_ADM1025 is not set
># CONFIG_SENSORS_ADM1031 is not set
># CONFIG_SENSORS_ASB100 is not set
># CONFIG_SENSORS_DS1621 is not set
># CONFIG_SENSORS_FSCHER is not set
># CONFIG_SENSORS_GL518SM is not set
># CONFIG_SENSORS_IT87 is not set
># CONFIG_SENSORS_LM75 is not set
># CONFIG_SENSORS_LM77 is not set
># CONFIG_SENSORS_LM78 is not set
># CONFIG_SENSORS_LM80 is not set
># CONFIG_SENSORS_LM83 is not set
># CONFIG_SENSORS_LM85 is not set
># CONFIG_SENSORS_LM90 is not set
># CONFIG_SENSORS_MAX1619 is not set
># CONFIG_SENSORS_W83781D is not set
># CONFIG_SENSORS_W83L785TS is not set
># CONFIG_SENSORS_W83627HF is not set
>
>#
># Other I2C Chip support
>#
># CONFIG_SENSORS_EEPROM is not set
># CONFIG_SENSORS_PCF8574 is not set
># CONFIG_SENSORS_PCF8591 is not set
># CONFIG_SENSORS_RTC8564 is not set
># CONFIG_I2C_DEBUG_CORE is not set
># CONFIG_I2C_DEBUG_ALGO is not set
># CONFIG_I2C_DEBUG_BUS is not set
># CONFIG_I2C_DEBUG_CHIP is not set
>...............
>
>Originally I was getting error:
> CC drivers/i2c/busses/i2c-rpx.o
>drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file or
>directory - why I am missing it - any hint ?
>
>So I copied the i2c-algo-8xx.h file from Linux 2.4.26 distribution ... could
>I use it ?
>(if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
>
>Then I started to get another error:
>
> CC drivers/i2c/busses/i2c-rpx.o
>In file included from drivers/i2c/busses/i2c-rpx.c:20:
>include/linux/i2c-algo-8xx.h:15: warning: type defaults to `int' in
>declaration of `i2c8xx_t'
>include/linux/i2c-algo-8xx.h:15: warning: no semicolon at end of struct or
>union
>include/linux/i2c-algo-8xx.h:15: error: parse error before '*' token
>include/linux/i2c-algo-8xx.h:16: error: parse error before '*' token
>include/linux/i2c-algo-8xx.h:16: warning: type defaults to `int' in
>declaration of `iip'
>include/linux/i2c-algo-8xx.h:16: warning: data definition has no type or
>storage class
>include/linux/i2c-algo-8xx.h:17: error: parse error before '*' token
>include/linux/i2c-algo-8xx.h:17: warning: type defaults to `int' in
>declaration of `cp'
>include/linux/i2c-algo-8xx.h:17: warning: data definition has no type or
>storage class
>include/linux/i2c-algo-8xx.h:25: error: parse error before '}' token
>drivers/i2c/busses/i2c-rpx.c: In function `rpx_iic_init':
>drivers/i2c/busses/i2c-rpx.c:34: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:41: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:42: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:53: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c:56: error: dereferencing pointer to incomplete
>type
>drivers/i2c/busses/i2c-rpx.c: At top level:
>drivers/i2c/busses/i2c-rpx.c:67: error: variable `rpx_data' has initializer
>but incomplete type
>drivers/i2c/busses/i2c-rpx.c:68: error: unknown field `setisr' specified in
>initializer
>drivers/i2c/busses/i2c-rpx.c:69: warning: excess elements in struct
>initializer
>drivers/i2c/busses/i2c-rpx.c:69: warning: (near initialization for
>`rpx_data')
>drivers/i2c/busses/i2c-rpx.c:67: error: storage size of `rpx_data' isn't
>known
>make[3]: *** [drivers/i2c/busses/i2c-rpx.o] Error 1
>make[2]: *** [drivers/i2c/busses] Error 2
>make[1]: *** [drivers/i2c] Error 2
>make: *** [drivers] Error 2
>
>Here is the listing of i2c-algo-8xx.h I have (from Linux 2.4.26 distribution
>)
>/* ------------------------------------------------------------------------
>/* i2c-algo-8xx.h i2c driver algorithms for MPX8XX CPM
>/* ------------------------------------------------------------------------
>
>/* $Id$ */
>
>#ifndef I2C_ALGO_8XX_H
>#define I2C_ALGO_8XX_H 1
>
>#include <linux/i2c.h>
>
>struct i2c_algo_8xx_data {
> uint dp_addr;
> int reloc;
> volatile i2c8xx_t *i2c;
> volatile iic_t *iip;
> volatile cpm8xx_t *cp;
>
> int (*setisr) (int irq,
> void (*func)(int, void *, struct pt_regs *),
> const char *name,
> void *data);
>
> u_char temp[513];
>};
>
>int i2c_8xx_add_bus(struct i2c_adapter *);
>int i2c_8xx_del_bus(struct i2c_adapter *);
>
>#endif /* I2C_ALGO_8XX_H */
>
>
>Thanks,
>Best Regards,
>I will highly Appreciate your response/help !
>Alex Povolotsky
>
>_______________________________________________
>Linuxppc-embedded mailing list
>Linuxppc-embedded@ozlabs.org
>https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
>
>
--
=======================================
Guillaume Autran
Senior Software Engineer
MRV Communications, Inc.
Tel: (978) 952-4932 office
E-mail: gautran@mrv.com
=======================================
[-- Attachment #2: Type: text/html, Size: 15123 bytes --]
^ permalink raw reply
* Error cross-building Linux 2.6 for 8xx
From: Povolotsky, Alexander @ 2004-12-16 15:31 UTC (permalink / raw)
To: 'linuxppc-embedded@ozlabs.org',
'etux@embeddedtux.org'
Hi - I am double posting this on both: linuxppc-embedded@ozlabs.org and
etux@embeddedtux.org, hoping to
increase the audience and, hence, to maximize the number of responses (if
only the same people read both mail lists,
why such duplicate redundant mail lists exist ?)
I recognize and highly appreciate what Wolfgang Denk <wd@denx.de> wrote (to
me) on etux@embeddedtux.org:
>Forget the combination of a 2.6 kernel and a MPC8xx processor for
>now. There are still serious problems in 2.6 on these processors.
But at least (I thought) I should be able to build the 2.6 kernel for 8xx.
So firstly I ran into I2C "no-current-support-for-8xx" (see details in the
listed below e-mail chain) ...
Then I took the I2C configuration out and tried to build the kernel again -
but I am still getting errors
(not sure though whether cross-compiler "contributes" to those recent errors
or not ... - I would, as always,
appreciate any opinion/input ! ):
Make zImage
CHK include/linux/version.h
make[1]: `arch/ppc/kernel/asm-offsets.asm' is up to date.
CHK include/linux/compile.h
CC arch/ppc/8xx_io/uart.o
arch/ppc/8xx_io/uart.c:82: warning: type defaults to `int' in declaration of
`DECLARE_TASK_QUEUE'
arch/ppc/8xx_io/uart.c:82: warning: parameter names (without types) in
function declaration
arch/ppc/8xx_io/uart.c: In function `serial_console_device':
arch/ppc/8xx_io/uart.c:145: error: storage class specified for parameter
`rs_table'
arch/ppc/8xx_io/uart.c:145: error: parameter `rs_table' is initialized
Thanks,
Best Regards,
Alex
-----Original Message-----
From: Dan Malek [mailto:dan@embeddededge.com]
Sent: Wednesday, December 15, 2004 11:54 AM
To: Povolotsky, Alexander
Cc: 'linuxppc-embedded@ozlabs.org'
Subject: Re: I2C + Linux 2.6 on MPC880/MPC885 based board(s)
On Dec 15, 2004, at 11:04 AM, Povolotsky, Alexander wrote:
> On a software (Linux 2.6) side ...
> Did you deal with Linux 2.6 + MPC880/MPC885 (or at least any MPC8xx) ?
> If yes, what I2C settings in .config were used for successful 2.6 kernel
> build ?
> I am having a problem building it (see below attached) ... - that is
> why I am trying to understand from the hardware point of view - hence my
h/w related questions
> ... - the importance of I2C.
It looks like someone that has an interest in
using the CPM I2C (which isn't me) will need to port it first to 2.6,
then provide the board specific functions for set up and control.
On top of this, if you want to run the SMBus protocols, you will
need a much more complex CPM I2C functions.
-- Dan
******************
-----Original Message-----
From: Povolotsky, Alexander
Sent: Tuesday, December 14, 2004 6:13 PM
To: 'Greg KH'; Jean Delvare
Subject: RE: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
Hi,
>Alexander, what arch are you building for?
PPC ->8xx ->MPC880 (Motorola -> FreeScale Semiconductor)
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPC885&nodeId
=018rH3bTdG4204
Thanks,
Best Regards,
Alex
PPS I have attached my original e-mail in its entirety (at the end ).
-----Original Message-----
From: Greg KH [mailto:greg@kroah.com]
Sent: Tuesday, December 14, 2004 4:50 PM
To: Jean Delvare
Cc: Alexander.Povolotsky@marconi.com
Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
On Tue, Dec 14, 2004 at 10:38:00AM +0100, Jean Delvare wrote:
>
> On 2004-12-14, Alexander Povolotsky wrote:
>
> > Hi,
> >
> > I have the following .config setup:
> > (...)
> > CONFIG_I2C_RPXLITE=y
> > (...)
> >
> > Originally I was getting error:
> > CC drivers/i2c/busses/i2c-rpx.o
> > drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file
or
> > directory - why I am missing it - any hint ?
>
> Hm, looks like the 8xx i2c algorithm was never ported to Linux 2.6. Greg,
> how come that the RPX adapter driver is present in the tree and the
> algorithm it depends on isn't?
Because no one ever sent me the patch with those files in it? :)
I have no idea, I've not cross built this driver before.
> Greg, could it be that an arch-specific (m68k? don't know what this
> rpx/8xx thing is) variant of the Linux tree already has the i2c-algo-8xx
> driver ported to 2.6? We probably want to import it into the main tree
> if this is the case (having adapter drivers that won't compile doesn't
> sound good...)
It might, I've seen i2c drivers in different arch specific trees (like
sh for example I know has a few.)
Alexander, what arch are you building for?
thanks,
greg k-h
*************
-----Original Message-----
From: Jean Delvare [mailto:khali@linux-fr.org]
Sent: Tuesday, December 14, 2004 4:38 AM
To: Alexander.Povolotsky@marconi.com; greg@kroah.com
Subject: Re: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
On 2004-12-14, Alexander Povolotsky wrote:
> Hi,
>
> I have the following .config setup:
> (...)
> CONFIG_I2C_RPXLITE=y
> (...)
>
> Originally I was getting error:
> CC drivers/i2c/busses/i2c-rpx.o
> drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file or
> directory - why I am missing it - any hint ?
Hm, looks like the 8xx i2c algorithm was never ported to Linux 2.6. Greg,
how come that the RPX adapter driver is present in the tree and the
algorithm it depends on isn't?
> So I copied the i2c-algo-8xx.h file from Linux 2.4.26 distribution ...
> could I use it ?
> (if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
I don't think it'll work. The header file is one thing, the algorithm
driver is another and you would need to port both (they proabbly won't
work out of the box due to important changes in the i2c subsystem
between 2.4 and 2.6 kernels). Also, obviously the RPX adapter driver
couldn't be used so far so it was possibly never tested. There will
probably be much porting and debugging work if you want to get it to
work.
Greg, could it be that an arch-specific (m68k? don't know what this
rpx/8xx thing is) variant of the Linux tree already has the i2c-algo-8xx
driver ported to 2.6? We probably want to import it into the main tree
if this is the case (having adapter drivers that won't compile doesn't
sound good...)
Alexander, at any rate, there's not much I can do myself, as I don't
have compatible hardware to port/test/debug the i2c-algo-8xx and i2c-rpx
drivers. Sorry.
Thanks,
--
Jean Delvare
-----Original Message-----
From: Povolotsky, Alexander
Sent: Monday, December 13, 2004 10:22 PM
To: 'khali@linux-fr.org'
Subject: 8xx i2c drivers (cross)compilation errors on Linux 2.6.8
Hi,
I have the following .config setup:
.....
# I2C Hardware Bus support
#
# CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
# CONFIG_I2C_ISA is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
CONFIG_I2C_RPXLITE=y
# CONFIG_SCx200_ACB is not set
#
# Hardware Sensors Chip support
#
# CONFIG_I2C_SENSOR is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_FSCHER is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_LM75 is not set
# CONFIG_SENSORS_LM77 is not set
# CONFIG_SENSORS_LM78 is not set
# CONFIG_SENSORS_LM80 is not set
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83627HF is not set
#
# Other I2C Chip support
#
# CONFIG_SENSORS_EEPROM is not set
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_SENSORS_RTC8564 is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set
...............
Originally I was getting error:
CC drivers/i2c/busses/i2c-rpx.o
drivers/i2c/busses/i2c-rpx.c:20:32: linux/i2c-algo-8xx.h: No such file or
directory - why I am missing it - any hint ?
So I copied the i2c-algo-8xx.h file from Linux 2.4.26 distribution ... could
I use it ?
(if not - could you send me the correct i2c-algo-8xx.h file ? - TIA !)
Then I started to get another error:
CC drivers/i2c/busses/i2c-rpx.o
In file included from drivers/i2c/busses/i2c-rpx.c:20:
include/linux/i2c-algo-8xx.h:15: warning: type defaults to `int' in
declaration of `i2c8xx_t'
include/linux/i2c-algo-8xx.h:15: warning: no semicolon at end of struct or
union
include/linux/i2c-algo-8xx.h:15: error: parse error before '*' token
include/linux/i2c-algo-8xx.h:16: error: parse error before '*' token
include/linux/i2c-algo-8xx.h:16: warning: type defaults to `int' in
declaration of `iip'
include/linux/i2c-algo-8xx.h:16: warning: data definition has no type or
storage class
include/linux/i2c-algo-8xx.h:17: error: parse error before '*' token
include/linux/i2c-algo-8xx.h:17: warning: type defaults to `int' in
declaration of `cp'
include/linux/i2c-algo-8xx.h:17: warning: data definition has no type or
storage class
include/linux/i2c-algo-8xx.h:25: error: parse error before '}' token
drivers/i2c/busses/i2c-rpx.c: In function `rpx_iic_init':
drivers/i2c/busses/i2c-rpx.c:34: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:38: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:39: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:41: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:42: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:53: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c:56: error: dereferencing pointer to incomplete
type
drivers/i2c/busses/i2c-rpx.c: At top level:
drivers/i2c/busses/i2c-rpx.c:67: error: variable `rpx_data' has initializer
but incomplete type
drivers/i2c/busses/i2c-rpx.c:68: error: unknown field `setisr' specified in
initializer
drivers/i2c/busses/i2c-rpx.c:69: warning: excess elements in struct
initializer
drivers/i2c/busses/i2c-rpx.c:69: warning: (near initialization for
`rpx_data')
drivers/i2c/busses/i2c-rpx.c:67: error: storage size of `rpx_data' isn't
known
make[3]: *** [drivers/i2c/busses/i2c-rpx.o] Error 1
make[2]: *** [drivers/i2c/busses] Error 2
make[1]: *** [drivers/i2c] Error 2
make: *** [drivers] Error 2
Here is the listing of i2c-algo-8xx.h I have (from Linux 2.4.26 distribution
)
/* ------------------------------------------------------------------------
/* i2c-algo-8xx.h i2c driver algorithms for MPX8XX CPM
/* ------------------------------------------------------------------------
/* $Id$ */
#ifndef I2C_ALGO_8XX_H
#define I2C_ALGO_8XX_H 1
#include <linux/i2c.h>
struct i2c_algo_8xx_data {
uint dp_addr;
int reloc;
volatile i2c8xx_t *i2c;
volatile iic_t *iip;
volatile cpm8xx_t *cp;
int (*setisr) (int irq,
void (*func)(int, void *, struct pt_regs *),
const char *name,
void *data);
u_char temp[513];
};
int i2c_8xx_add_bus(struct i2c_adapter *);
int i2c_8xx_del_bus(struct i2c_adapter *);
#endif /* I2C_ALGO_8XX_H */
Thanks,
Best Regards,
I will highly Appreciate your response/help !
Alex Povolotsky
^ permalink raw reply
* Re: [PATCH] Make OpenPIC serial clock configurable
From: Tom Rini @ 2004-12-16 14:57 UTC (permalink / raw)
To: tglx; +Cc: linuxppc-embedded
In-Reply-To: <20041216112511.1.patchmail@tglx>
On Thu, Dec 16, 2004 at 11:25:13AM +0100, tglx@linutronix.de wrote:
> Make OpenPIC serial clock configurable
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
I'd like to wait on this at least until the code for a board that uses
this comes out.
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply
* [RFC][PATCH] Adds support for PF_FREEZE on ppc
From: Sylvain Munaut @ 2004-12-16 14:26 UTC (permalink / raw)
To: Linux PPC Dev
Hello,
While trying to use the /sys/power interface on a ppc target,
I noticed that the processes didn't freeze. Apparently, since
that interface was never used on ppc beforce, signal.c didn't handle the
signal.
The patch below fixes that for me.
Sylvain
Signed-Off-By: Sylvain Munaut <tnt@246tNt.com>
===== arch/ppc/kernel/signal.c 1.40 vs edited =====
--- 1.40/arch/ppc/kernel/signal.c 2004-10-28 09:39:49 +02:00
+++ edited/arch/ppc/kernel/signal.c 2004-12-01 09:25:55 +01:00
@@ -24,6 +24,7 @@
#include <linux/wait.h>
#include <linux/ptrace.h>
#include <linux/unistd.h>
+#include <linux/suspend.h>
#include <linux/stddef.h>
#include <linux/elf.h>
#include <linux/tty.h>
@@ -616,6 +617,11 @@
if (!oldset)
oldset = ¤t->blocked;
+
+ if (current->flags & PF_FREEZE) {
+ refrigerator(0);
+ return 0;
+ }
newsp = frame = 0;
^ permalink raw reply
* [PATCH] Add __iomem qualifier to cfg_{addr,data} fields in stuct pci_controller
From: Sylvain Munaut @ 2004-12-16 14:17 UTC (permalink / raw)
To: Linux PPC Dev
Hello,
The patch below add the __iomem qualifier to the fields containing
addresses to access the PCI config space. It seems right to add them
since they're gonna be used with {in,out}_{le,be} that requires them
not to produce sparse warning.
Sylvain
ppc32: Add __iomem qualifier to cfg_{addr,data} fields in stuct
pci_controller
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
===== include/asm-ppc/pci-bridge.h 1.13 vs edited =====
--- 1.13/include/asm-ppc/pci-bridge.h 2004-11-11 09:25:52 +01:00
+++ edited/include/asm-ppc/pci-bridge.h 2004-12-16 15:07:14 +01:00
@@ -57,8 +57,8 @@
unsigned long pci_mem_offset;
struct pci_ops *ops;
- volatile unsigned int *cfg_addr;
- volatile unsigned char *cfg_data;
+ volatile unsigned int __iomem *cfg_addr;
+ volatile unsigned char __iomem *cfg_data;
/*
* If set, indirect method will set the cfg_type bit as
* needed to generate type 1 configuration transactions.
^ permalink raw reply
* saving registers on task switch
From: Schneider, Jan (GE51) @ 2004-12-16 13:44 UTC (permalink / raw)
To: 'linuxppc-embedded@ozlabs.org'
Hello,
I have a MPC855t and using the Kernel 2.4.18.
I want to make some changes in the kernel to use the MPC855's Debug
Registers.
Where is the part in the sources where the registers of one process are
being saved on the stack?
Is it possible to add there the DebugRegisters?
thank you for any suggestions
Jan
^ permalink raw reply
* Re: Error compiling 40x ppc kernels (walnut)
From: Nico Schottelius @ 2004-12-16 13:40 UTC (permalink / raw)
To: linuxppc-dev
In-Reply-To: <200412161318.37998.g.jaeger@sysgo.com>
[-- Attachment #1: Type: text/plain, Size: 701 bytes --]
Hello!
Gerhard Jaeger [Thu, Dec 16, 2004 at 01:18:37PM +0100]:
> from what I see from your config file, you have enabled a lot of stuff,
> I'm pretty sure which won't build correctly for the walnut.
> I.e. the whole framebuffer stuff is not needed - switch it off.
You got 100 points! After disabling mostly everything, it compiled.
Although I'll need to enable trident framebuffer later, as the thinclient should be
useable by end-users.
For now I'll concentrate on debugging the oak version.
Have a nice day,
Nico
--
Keep it simple & stupid, use what's available.
Please use pgp encryption: 8D0E 27A4 is my id.
http://nico.schotteli.us | http://linux.schottelius.org
[-- Attachment #2: Type: application/pgp-signature, Size: 827 bytes --]
^ permalink raw reply
* Re: Error compiling 40x ppc kernels (walnut)
From: Gerhard Jaeger @ 2004-12-16 12:18 UTC (permalink / raw)
To: Nico Schottelius; +Cc: linuxppc-dev
In-Reply-To: <20041216103325.GA6713@schottelius.org>
Hi,
On Thursday 16 December 2004 11:33, Nico Schottelius wrote:
>I am trying to build a 40x / Walnut Linux (only for testing), but
>the compile process always breaks:
>
>1. walnut build with ibm emac network card enabled
>2. walnut build without ibm emac network card enabled
>
>I am currently using
>
>make ARCH=3Dppc CROSS_COMPILE=3Dpowerpc-linux-uclibc-
>
>on my x86 machine as my ibook is currently at home.
>Do you know why those errors occur and can you help me fix them?
>
from what I see from your config file, you have enabled a lot of stuff,
I'm pretty sure which won't build correctly for the walnut.
I.e. the whole framebuffer stuff is not needed - switch it off.
(This is also your problem here!)
I suggest to go through all of your configuration and disable all of
the stuff, which you do not really need:
- frame-buffer
- usb
- all of the crypto stuff
- IPv6
=2E
=2E
=2E
Set at least only processor, platform and serial console support on
(and of course correctly) then try again. Never start with a full=20
or overloaded config set ;)
Ciao,
Gerhard
--=20
Gerhard Jaeger g.jaeger@sysgo.com
SYSGO AG Embedded and Real-Time Software
www.sysgo.com | www.elinos.com | www.osek.de | www.imerva.com
^ permalink raw reply
* Error compiling 40x ppc kernels (walnut)
From: Nico Schottelius @ 2004-12-16 10:33 UTC (permalink / raw)
To: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 837 bytes --]
Good morning!
I am trying to build a 40x / Walnut Linux (only for testing), but
the compile process always breaks:
1. walnut build with ibm emac network card enabled
2. walnut build without ibm emac network card enabled
I am currently using
make ARCH=ppc CROSS_COMPILE=powerpc-linux-uclibc-
on my x86 machine as my ibook is currently at home.
Do you know why those errors occur and can you help me fix them?
The config and the two error messages can be found at
http://schotteli.us/~nico/ppc/walnut/.
Nico
P.S.:
I'll try to work through the Oak problem the next weeks, if I have
some free time (Gerhard Jaeger sent me some tips howto fix it).
--
Keep it simple & stupid, use what's available.
Please use pgp encryption: 8D0E 27A4 is my id.
http://nico.schotteli.us | http://linux.schottelius.org
[-- Attachment #2: Type: application/pgp-signature, Size: 827 bytes --]
^ permalink raw reply
* [PATCH] Make OpenPIC serial clock configurable
From: tglx @ 2004-12-16 10:25 UTC (permalink / raw)
To: trini; +Cc: linuxppc-embedded
Make OpenPIC serial clock configurable
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/ppc/syslib/open_pic.c | 6 +++++-
include/asm-ppc/open_pic.h | 3 +++
2 files changed, 8 insertions(+), 1 deletion(-)
---
Index: 2.6.10-rc3/include/asm-ppc/open_pic.h
===================================================================
--- 2.6.10-rc3/include/asm-ppc/open_pic.h (revision 11)
+++ 2.6.10-rc3/include/asm-ppc/open_pic.h (working copy)
@@ -35,6 +35,9 @@
extern u_int OpenPIC_NumInitSenses;
extern u_char *OpenPIC_InitSenses;
+#ifdef CONFIG_EPIC_SERIAL_MODE
+extern u_int OpenPIC_ClockRatioSerial;
+#endif
extern void* OpenPIC_Addr;
extern int epic_serial_mode;
Index: 2.6.10-rc3/arch/ppc/syslib/open_pic.c
===================================================================
--- 2.6.10-rc3/arch/ppc/syslib/open_pic.c (revision 11)
+++ 2.6.10-rc3/arch/ppc/syslib/open_pic.c (working copy)
@@ -42,6 +42,10 @@
*/
u_int OpenPIC_NumInitSenses __initdata = 0;
u_char *OpenPIC_InitSenses __initdata = NULL;
+#ifdef CONFIG_EPIC_SERIAL_MODE
+/* Slowest value until we know better */
+u_int OpenPIC_ClockRatioSerial __initdata = 7;
+#endif
extern int use_of_interrupt_tree;
static u_int NumProcessors;
@@ -418,7 +422,7 @@
openpic_disable_8259_pass_through();
#ifdef CONFIG_EPIC_SERIAL_MODE
if (epic_serial_mode) {
- openpic_eicr_set_clk(7); /* Slowest value until we know better */
+ openpic_eicr_set_clk(OpenPIC_ClockRatioSerial);
openpic_enable_sie();
}
#endif
^ permalink raw reply
* [PATCH][PPC32] PPC4XX DMA polarity init fix
From: Matt Porter @ 2004-12-15 18:59 UTC (permalink / raw)
To: akpm, torvalds; +Cc: linux-kernel, cwernham, linuxppc-embedded
[Clear bug fix, hopefully it can go in before 2.6.10]
This patch applies to the kernel 2.6.9 and fixes the initialisation of
the DMA channel polarity in the function ppc4xx_init_dma_channel() for
the PPC 4XX processor.
Signed-off-by: Colin P Wernham <cwernham@airspan.com>
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
===== arch/ppc/syslib/ppc4xx_dma.c 1.8 vs edited =====
--- 1.8/arch/ppc/syslib/ppc4xx_dma.c 2004-08-07 11:05:39 -07:00
+++ edited/arch/ppc/syslib/ppc4xx_dma.c 2004-12-15 11:58:16 -07:00
@@ -466,7 +466,7 @@
/* clear all polarity signals and then "or" in new signal levels */
polarity &= ~GET_DMA_POLARITY(dmanr);
- polarity |= p_dma_ch->polarity;
+ polarity |= p_init->polarity;
#if DCRN_POL > 0
mtdcr(DCRN_POL, polarity);
#endif
^ permalink raw reply
* [PATCH][PPC32] Add uImage to default targets
From: Matt Porter @ 2004-12-15 18:49 UTC (permalink / raw)
To: akpm, linux-kernel; +Cc: linuxppc-dev
We'd like to get a uImage when just using 'make' on many
targets. After some discussion, it made sense to simply
add uImage to the default targets since it adds minimal
build overhead and will work on all platforms. Also,
fix a dependency in the boot stuff.
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
===== arch/ppc/Makefile 1.66 vs edited =====
--- 1.66/arch/ppc/Makefile 2004-10-05 17:28:57 -07:00
+++ edited/arch/ppc/Makefile 2004-12-15 10:27:30 -07:00
@@ -68,7 +68,7 @@
.PHONY: $(BOOT_TARGETS)
-all: zImage
+all: uImage zImage
CPPFLAGS_vmlinux.lds := -Upowerpc
===== arch/ppc/boot/simple/misc.c 1.24 vs edited =====
--- 1.24/arch/ppc/boot/simple/misc.c 2004-10-08 02:57:32 -07:00
+++ edited/arch/ppc/boot/simple/misc.c 2004-12-15 10:25:10 -07:00
@@ -102,7 +102,7 @@
com_port = serial_init(0, NULL);
#endif
-#ifdef CONFIG_44x
+#if defined(CONFIG_44x) && defined(PPC44x_EMAC0_MR0)
/* Reset MAL */
mtdcr(DCRN_MALCR(DCRN_MAL_BASE), MALCR_MMSR);
/* Wait for reset */
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox