* [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0
[not found] ` <408AD395.4060909@tiscali.be>
@ 2004-04-24 22:19 ` Grant Grundler
2004-04-24 22:31 ` Joel Soete
0 siblings, 1 reply; 4+ messages in thread
From: Grant Grundler @ 2004-04-24 22:19 UTC (permalink / raw)
To: Joel Soete; +Cc: parisc-linux
On Sat, Apr 24, 2004 at 08:52:37PM +0000, Joel Soete wrote:
> Hello Grant,
>
> Sorry in advance to disturbe you with this c110 pb but if I well understand
> the physical connection (fine doc find on openpa.net :) and better
> understand what james means, otc I past the full last week to study more
> ccio-dma and ncr53c8xx but I don't reach to locate the part of code making
> the link between those 2 part (i mean where ncr call ccio and visversa).
> Could you help me a bit more.
Yup. Using 2.6.5-pa8 source tree, ncr53c8xx.c calls DMA services from
ncr_scatter():
ncr53c8xx.c:7594: u_long baddr = map_scsi_single_data(np, cmd);
sym53c8xx_comm.h:699:static int __map_scsi_sg_data(struct device *dev, Scsi_Cmnd *cmd)
...
sym53c8xx_comm.h:708: use_sg = dma_map_sg(dev, cmd->buffer, cmd->use_sg, dma_dir);
asm/dma-mapping.h:91:static inline int
asm/dma-mapping.h:92:dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
asm/dma-mapping.h:93: enum dma_data_direction direction)
asm/dma-mapping.h:94:{
asm/dma-mapping.h:95: return hppa_dma_ops->map_sg(dev, sg, nents, direction);
asm/dma-mapping.h:96:}
Then search for hppa_dma_ops in arch/parisc/kernel/* and drivers/parisc/*.c
to locate the various platform/chipset DMA support:
grundler <553>fgrep -n hppa_dma_ops arch/parisc/kernel/*c drivers/parisc/*
arch/parisc/kernel/drivers.c:30:struct hppa_dma_ops *hppa_dma_ops;
arch/parisc/kernel/drivers.c:31:EXPORT_SYMBOL(hppa_dma_ops);
arch/parisc/kernel/pci-dma.c:492:struct hppa_dma_ops pcxl_dma_ops = {
arch/parisc/kernel/pci-dma.c:533:struct hppa_dma_ops pcx_dma_ops = {
arch/parisc/kernel/setup.c:96: hppa_dma_ops = &pcx_dma_ops;
arch/parisc/kernel/setup.c:101: hppa_dma_ops = &pcxl_dma_ops;
drivers/parisc/ccio-dma.c:1009:static struct hppa_dma_ops ccio_ops = {
drivers/parisc/ccio-dma.c:1545: hppa_dma_ops = &ccio_ops;
drivers/parisc/ccio-rm-dma.c:183: hppa_dma_ops = &ccio_ops;
drivers/parisc/sba_iommu.c:1177:static struct hppa_dma_ops sba_ops = {
drivers/parisc/sba_iommu.c:1809: hppa_dma_ops = &sba_ops;
Ideally, "make" would detect when support for only one chipset is
needed and just do away with hppa_dma_ops completely (ie directly
call into the chipset specific function).
> Thanks in advance,
> Joel
>
> PS: btw I noticed that ncr_attach() is still prefix by __init where
> sym_attach() is now prefix by __devinit. I trust it is important but could
> it be the simple reason of pb encounter?
IIRC, the difference is for hotplug.
__devinit section is preserved when CONFIG_HOTPLUG is enabled.
See linux/Documentation/pci.txt for the real description.
grant
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0
2004-04-24 22:19 ` [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0 Grant Grundler
@ 2004-04-24 22:31 ` Joel Soete
0 siblings, 0 replies; 4+ messages in thread
From: Joel Soete @ 2004-04-24 22:31 UTC (permalink / raw)
To: Grant Grundler; +Cc: parisc-linux
Grant Grundler wrote:
> On Sat, Apr 24, 2004 at 08:52:37PM +0000, Joel Soete wrote:
>
>>Hello Grant,
>>
>>Sorry in advance to disturbe you with this c110 pb but if I well understand
>>the physical connection (fine doc find on openpa.net :) and better
>>understand what james means, otc I past the full last week to study more
>>ccio-dma and ncr53c8xx but I don't reach to locate the part of code making
>> the link between those 2 part (i mean where ncr call ccio and visversa).
>> Could you help me a bit more.
>
>
> Yup. Using 2.6.5-pa8 source tree, ncr53c8xx.c calls DMA services from
> ncr_scatter():
>
> ncr53c8xx.c:7594: u_long baddr = map_scsi_single_data(np, cmd);
>
> sym53c8xx_comm.h:699:static int __map_scsi_sg_data(struct device *dev, Scsi_Cmnd *cmd)
> ...
> sym53c8xx_comm.h:708: use_sg = dma_map_sg(dev, cmd->buffer, cmd->use_sg, dma_dir);
>
>
> asm/dma-mapping.h:91:static inline int
> asm/dma-mapping.h:92:dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
> asm/dma-mapping.h:93: enum dma_data_direction direction)
> asm/dma-mapping.h:94:{
> asm/dma-mapping.h:95: return hppa_dma_ops->map_sg(dev, sg, nents, direction);
> asm/dma-mapping.h:96:}
>
> Then search for hppa_dma_ops in arch/parisc/kernel/* and drivers/parisc/*.c
> to locate the various platform/chipset DMA support:
>
> grundler <553>fgrep -n hppa_dma_ops arch/parisc/kernel/*c drivers/parisc/*
> arch/parisc/kernel/drivers.c:30:struct hppa_dma_ops *hppa_dma_ops;
> arch/parisc/kernel/drivers.c:31:EXPORT_SYMBOL(hppa_dma_ops);
> arch/parisc/kernel/pci-dma.c:492:struct hppa_dma_ops pcxl_dma_ops = {
> arch/parisc/kernel/pci-dma.c:533:struct hppa_dma_ops pcx_dma_ops = {
> arch/parisc/kernel/setup.c:96: hppa_dma_ops = &pcx_dma_ops;
> arch/parisc/kernel/setup.c:101: hppa_dma_ops = &pcxl_dma_ops;
> drivers/parisc/ccio-dma.c:1009:static struct hppa_dma_ops ccio_ops = {
> drivers/parisc/ccio-dma.c:1545: hppa_dma_ops = &ccio_ops;
> drivers/parisc/ccio-rm-dma.c:183: hppa_dma_ops = &ccio_ops;
> drivers/parisc/sba_iommu.c:1177:static struct hppa_dma_ops sba_ops = {
> drivers/parisc/sba_iommu.c:1809: hppa_dma_ops = &sba_ops;
>
> Ideally, "make" would detect when support for only one chipset is
> needed and just do away with hppa_dma_ops completely (ie directly
> call into the chipset specific function).
>
>
>>Thanks in advance,
>> Joel
>>
>>PS: btw I noticed that ncr_attach() is still prefix by __init where
>>sym_attach() is now prefix by __devinit. I trust it is important but could
>>it be the simple reason of pb encounter?
>
>
> IIRC, the difference is for hotplug.
> __devinit section is preserved when CONFIG_HOTPLUG is enabled.
> See linux/Documentation/pci.txt for the real description.
>
> grant
>
Great.
Many thanks,
Joel
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0
@ 2004-04-26 16:52 Joel Soete
2004-04-26 17:11 ` Grant Grundler
0 siblings, 1 reply; 4+ messages in thread
From: Joel Soete @ 2004-04-26 16:52 UTC (permalink / raw)
To: Grant Grundler; +Cc: parisc-linux
Hi all,
I know it shouldn't be the source of the pb but btw I noticed:
> ncr53c8xx.c:7594: u_long baddr = map_scsi_single_data(np, cmd);
cmd is a "struct scsi_cmnd *" (the parameter of ncr_scatter)
> sym53c8xx_comm.h:699:static int __map_scsi_sg_data(struct device *dev,
Scsi_Cmnd *cmd)
...
sym53c8xx_comm.h:708: use_sg = dma_map_sg(dev, cmd->buffer, cmd->use_sg,
dma_dir);
and here cmd is a "Scsi_Cmnd *" which is so of different type because of
"typedef struct scsi_cmnd Scsi_Cmnd"
What should it be done?
Thanks in advance for your attention,
Joel
----------------------------------------------------------------------------------------
Tiscali ADSL: 35 /mois, la meilleure offre du marché!
http://reg.tiscali.be/default.asp?lg=fr
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0
2004-04-26 16:52 [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0 Joel Soete
@ 2004-04-26 17:11 ` Grant Grundler
0 siblings, 0 replies; 4+ messages in thread
From: Grant Grundler @ 2004-04-26 17:11 UTC (permalink / raw)
To: Joel Soete; +Cc: parisc-linux
On Mon, Apr 26, 2004 at 06:52:40PM +0200, Joel Soete wrote:
> and here cmd is a "Scsi_Cmnd *" which is so of different type because of
> "typedef struct scsi_cmnd Scsi_Cmnd"
uhm...the typedef says Scsi_Cmnd *IS* struct scsi_cmnd.
Therefor "Scsi_Cmnd *" is the same type as "struct scsi_cmnd *".
> What should it be done?
Get rid of Scsi_Cmnd typedef?
I personally consider it bad style to use both forms in the same
subsystem and don't really care which is used. But that's an
issue for the subsystem maintainer to decide. :^)
grant
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2004-04-26 17:11 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-04-26 16:52 [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0 Joel Soete
2004-04-26 17:11 ` Grant Grundler
-- strict thread matches above, loose matches on Subject: below --
2004-04-19 16:53 [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0 [was: 2.6.5-rc2-pa2 boot panic on c110 :(] Joel Soete
[not found] ` <408AD395.4060909@tiscali.be>
2004-04-24 22:19 ` [parisc-linux] Re: kernel>=2.6.4-rc3 hung or panic on C1[18]0 Grant Grundler
2004-04-24 22:31 ` Joel Soete
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox