All of lore.kernel.org
 help / color / mirror / Atom feed
* What does ISA/PCI really mean to ARM architecture?
@ 2012-12-27  8:27 ` Woody Wu
  0 siblings, 0 replies; 10+ messages in thread
From: Woody Wu @ 2012-12-27  8:27 UTC (permalink / raw)
  To: kernelnewbies

Hi, list

I know this might be a very basic question.  But I really don't clear at
it.

Can a peripheral chip that claims to be ISA or PCI device be used in a
ARM based embedded system?  For these kind of chips, I only concern
about the planar kind of devices, means they are not on a dedicated
expansion card.

>From hardware point of view, to attach a ISA or PCI planar chip, is
there any requirement need to fulfill on a ARM bard?

>From Linux driver point of view, what are needed to support an ISA or
PCI driver in ARM architecture?  More important, is ISA or PCI device a
platform device?  If not, how to add these kind of devices in my board
definition?

I know my question might not be reasonable enough, if I messed concepts,
please sort me out.


Thanks in advance.


-- 
woody
I can't go back to yesterday - because I was a different person then.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* What does ISA/PCI really mean to ARM architecture?
@ 2012-12-27  8:27 ` Woody Wu
  0 siblings, 0 replies; 10+ messages in thread
From: Woody Wu @ 2012-12-27  8:27 UTC (permalink / raw)
  To: kernelnewbies, linux-kernel

Hi, list

I know this might be a very basic question.  But I really don't clear at
it.

Can a peripheral chip that claims to be ISA or PCI device be used in a
ARM based embedded system?  For these kind of chips, I only concern
about the planar kind of devices, means they are not on a dedicated
expansion card.

>From hardware point of view, to attach a ISA or PCI planar chip, is
there any requirement need to fulfill on a ARM bard?

>From Linux driver point of view, what are needed to support an ISA or
PCI driver in ARM architecture?  More important, is ISA or PCI device a
platform device?  If not, how to add these kind of devices in my board
definition?

I know my question might not be reasonable enough, if I messed concepts,
please sort me out.


Thanks in advance.


-- 
woody
I can't go back to yesterday - because I was a different person then.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
  2012-12-27  8:27 ` Woody Wu
  (?)
@ 2012-12-27  9:51 ` Geert Uytterhoeven
  2012-12-27 14:19     ` anish kumar
  -1 siblings, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2012-12-27  9:51 UTC (permalink / raw)
  To: Woody Wu; +Cc: kernelnewbies, linux-kernel

On Thu, Dec 27, 2012 at 9:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> Can a peripheral chip that claims to be ISA or PCI device be used in a
> ARM based embedded system?  For these kind of chips, I only concern
> about the planar kind of devices, means they are not on a dedicated
> expansion card.
>
> From hardware point of view, to attach a ISA or PCI planar chip, is
> there any requirement need to fulfill on a ARM bard?
>
> From Linux driver point of view, what are needed to support an ISA or
> PCI driver in ARM architecture?  More important, is ISA or PCI device a
> platform device?  If not, how to add these kind of devices in my board
> definition?

An ISA device is typically a platform device. For ARM, which uses device trees,
this means you define it in the device tree.

A PCI device is not a platform device, as devices on a PCI bus can be
probed automatically. The PCI host bridge is typically a platform device,
though, so it it should be in your device tree.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 10+ messages in thread

* What does ISA/PCI really mean to ARM architecture?
  2012-12-27  9:51 ` Geert Uytterhoeven
@ 2012-12-27 14:19     ` anish kumar
  0 siblings, 0 replies; 10+ messages in thread
From: anish kumar @ 2012-12-27 14:19 UTC (permalink / raw)
  To: kernelnewbies

On Thu, 2012-12-27 at 10:51 +0100, Geert Uytterhoeven wrote:
> On Thu, Dec 27, 2012 at 9:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> > Can a peripheral chip that claims to be ISA or PCI device be used in a
> > ARM based embedded system?  For these kind of chips, I only concern
> > about the planar kind of devices, means they are not on a dedicated
> > expansion card.
> >
> > From hardware point of view, to attach a ISA or PCI planar chip, is
> > there any requirement need to fulfill on a ARM bard?
arm AFAIK is only used in embedded system but ISA/PCI buses are
generally part of 'big systems' and most of the times it refers to x86
PC.
> >
> > From Linux driver point of view, what are needed to support an ISA or
> > PCI driver in ARM architecture?  More important, is ISA or PCI device a
> > platform device?  If not, how to add these kind of devices in my board
> > definition?
AFAIK, Platform device is just a way to add a particular driver whose
probe can't be called at runtime.Mostly platform device is part of
system on chip.
PCI devices probe function will be called by the PCI bus as and when it
detects any activity on the bus.So you don't need PCI device to be  a
platform device.
> 
> An ISA device is typically a platform device. For ARM, which uses device trees,
Don't know much about ISA device to comment on this but people familiar
with this can enlighten us as to the reason why it is platform device in
detail.
> this means you define it in the device tree.
> 
> A PCI device is not a platform device, as devices on a PCI bus can be
> probed automatically. The PCI host bridge is typically a platform device,
> though, so it it should be in your device tree.
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
@ 2012-12-27 14:19     ` anish kumar
  0 siblings, 0 replies; 10+ messages in thread
From: anish kumar @ 2012-12-27 14:19 UTC (permalink / raw)
  To: Geert Uytterhoeven, Woody Wu; +Cc: kernelnewbies, linux-kernel

On Thu, 2012-12-27 at 10:51 +0100, Geert Uytterhoeven wrote:
> On Thu, Dec 27, 2012 at 9:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> > Can a peripheral chip that claims to be ISA or PCI device be used in a
> > ARM based embedded system?  For these kind of chips, I only concern
> > about the planar kind of devices, means they are not on a dedicated
> > expansion card.
> >
> > From hardware point of view, to attach a ISA or PCI planar chip, is
> > there any requirement need to fulfill on a ARM bard?
arm AFAIK is only used in embedded system but ISA/PCI buses are
generally part of 'big systems' and most of the times it refers to x86
PC.
> >
> > From Linux driver point of view, what are needed to support an ISA or
> > PCI driver in ARM architecture?  More important, is ISA or PCI device a
> > platform device?  If not, how to add these kind of devices in my board
> > definition?
AFAIK, Platform device is just a way to add a particular driver whose
probe can't be called at runtime.Mostly platform device is part of
system on chip.
PCI devices probe function will be called by the PCI bus as and when it
detects any activity on the bus.So you don't need PCI device to be  a
platform device.
> 
> An ISA device is typically a platform device. For ARM, which uses device trees,
Don't know much about ISA device to comment on this but people familiar
with this can enlighten us as to the reason why it is platform device in
detail.
> this means you define it in the device tree.
> 
> A PCI device is not a platform device, as devices on a PCI bus can be
> probed automatically. The PCI host bridge is typically a platform device,
> though, so it it should be in your device tree.
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
  2012-12-27 14:19     ` anish kumar
  (?)
@ 2012-12-27 16:07     ` Arnd Bergmann
  -1 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2012-12-27 16:07 UTC (permalink / raw)
  To: anish kumar; +Cc: Geert Uytterhoeven, Woody Wu, kernelnewbies, linux-kernel

On Thursday 27 December 2012, anish kumar wrote:
> On Thu, 2012-12-27 at 10:51 +0100, Geert Uytterhoeven wrote:
> > On Thu, Dec 27, 2012 at 9:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> > > Can a peripheral chip that claims to be ISA or PCI device be used in a
> > > ARM based embedded system?  For these kind of chips, I only concern
> > > about the planar kind of devices, means they are not on a dedicated
> > > expansion card.
> > >
> > > From hardware point of view, to attach a ISA or PCI planar chip, is
> > > there any requirement need to fulfill on a ARM bard?
> arm AFAIK is only used in embedded system but ISA/PCI buses are
> generally part of 'big systems' and most of the times it refers to x86
> PC.

In the old days, there were a few ARM based systems that were closer
to what we think of as a PC, and that had actual ISA slots, or
(more commonly) PCMCIA, which is related to ISA.

Aside from that, there are and have been for a long time some ARM
systems that have PCI or PCIe slots.

Note that the distinction between ISA-style platform devices and
ISA add-on cards is a little fuzzy. The Kconfig option CONFIG_ISA
refers to the latter, but there are also ARM systems that only
have the former, e.g. for floppy controller.

> > > From Linux driver point of view, what are needed to support an ISA or
> > > PCI driver in ARM architecture?  More important, is ISA or PCI device a
> > > platform device?  If not, how to add these kind of devices in my board
> > > definition?
>
> AFAIK, Platform device is just a way to add a particular driver whose
> probe can't be called at runtime. Mostly platform device is part of
> system on chip.

Right. Note that some ISA devices (especially those that are typically
on-board) are platform devices as well, but PCI devices never are.

> > An ISA device is typically a platform device. For ARM, which uses device trees,
> Don't know much about ISA device to comment on this but people familiar
> with this can enlighten us as to the reason why it is platform device in
> detail.

Classic ISA has no way to probe the presence of a device, so platform
devices were introduced to handle those. There is also ISAPNP, which adds
PCI-like probing on top of ISA, but most ISA cards precede that standard.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
  2012-12-27  8:27 ` Woody Wu
  (?)
  (?)
@ 2012-12-27 16:22 ` jonsmirl
  2012-12-27 16:46     ` anish kumar
  -1 siblings, 1 reply; 10+ messages in thread
From: jonsmirl @ 2012-12-27 16:22 UTC (permalink / raw)
  To: Woody Wu; +Cc: kernelnewbies, linux-kernel

On Thu, Dec 27, 2012 at 3:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> Hi, list
>
> I know this might be a very basic question.  But I really don't clear at
> it.
>
> Can a peripheral chip that claims to be ISA or PCI device be used in a
> ARM based embedded system?  For these kind of chips, I only concern
> about the planar kind of devices, means they are not on a dedicated
> expansion card.
>
> From hardware point of view, to attach a ISA or PCI planar chip, is
> there any requirement need to fulfill on a ARM board?

See if your ARM CPU has an interface for SRAM (in addition to DRAM).
You can use a SRAM chip select to access ISA type devices. But you may
need additional buffers/latches to do this.

Another solution is to attach you peripherals using USB. Almost all
embedded wifi chips are attached this way. The USB connectors aren't
required, you can route USB around on your PCB. USB hub chips are
$0.35 if you need more ports.  USB Ethernet chips are available.

Other options include SPI/I2C. It is worthwhile to investigate these
serial solutions before doing a parallel solution. Parallel buses eat
up a lot of PCB space.


>
> From Linux driver point of view, what are needed to support an ISA or
> PCI driver in ARM architecture?  More important, is ISA or PCI device a
> platform device?  If not, how to add these kind of devices in my board
> definition?
>
> I know my question might not be reasonable enough, if I messed concepts,
> please sort me out.
>
>
> Thanks in advance.
>
>
> --
> woody
> I can't go back to yesterday - because I was a different person then.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/



--
Jon Smirl
jonsmirl@gmail.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

* What does ISA/PCI really mean to ARM architecture?
  2012-12-27 16:22 ` jonsmirl
@ 2012-12-27 16:46     ` anish kumar
  0 siblings, 0 replies; 10+ messages in thread
From: anish kumar @ 2012-12-27 16:46 UTC (permalink / raw)
  To: kernelnewbies

On Thu, 2012-12-27 at 11:22 -0500, jonsmirl at gmail.com wrote:
> On Thu, Dec 27, 2012 at 3:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> > Hi, list
> >
> > I know this might be a very basic question.  But I really don't clear at
> > it.
> >
> > Can a peripheral chip that claims to be ISA or PCI device be used in a
> > ARM based embedded system?  For these kind of chips, I only concern
> > about the planar kind of devices, means they are not on a dedicated
> > expansion card.
> >
> > From hardware point of view, to attach a ISA or PCI planar chip, is
> > there any requirement need to fulfill on a ARM board?
> 
> See if your ARM CPU has an interface for SRAM (in addition to DRAM).
> You can use a SRAM chip select to access ISA type devices. But you may
Would you mind explaining this in detail?
> need additional buffers/latches to do this.
> 
> Another solution is to attach you peripherals using USB. Almost all
Connect using USB what does this mean?
> embedded wifi chips are attached this way. The USB connectors aren't
> required, you can route USB around on your PCB. USB hub chips are
> $0.35 if you need more ports.  USB Ethernet chips are available.
> 
> Other options include SPI/I2C. It is worthwhile to investigate these
Only chips which support SPI/I2C can be used but ISA/PCI is completely
orthogonal to this AFAIK.
> serial solutions before doing a parallel solution. Parallel buses eat
> up a lot of PCB space.
> 
> 
> >
> > From Linux driver point of view, what are needed to support an ISA or
> > PCI driver in ARM architecture?  More important, is ISA or PCI device a
> > platform device?  If not, how to add these kind of devices in my board
> > definition?
> >
> > I know my question might not be reasonable enough, if I messed concepts,
> > please sort me out.
> >
> >
> > Thanks in advance.
> >
> >
> > --
> > woody
> > I can't go back to yesterday - because I was a different person then.
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo at vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at  http://www.tux.org/lkml/
> 
> 
> 
> --
> Jon Smirl
> jonsmirl at gmail.com
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
@ 2012-12-27 16:46     ` anish kumar
  0 siblings, 0 replies; 10+ messages in thread
From: anish kumar @ 2012-12-27 16:46 UTC (permalink / raw)
  To: jonsmirl@gmail.com; +Cc: Woody Wu, kernelnewbies, linux-kernel

On Thu, 2012-12-27 at 11:22 -0500, jonsmirl@gmail.com wrote:
> On Thu, Dec 27, 2012 at 3:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
> > Hi, list
> >
> > I know this might be a very basic question.  But I really don't clear at
> > it.
> >
> > Can a peripheral chip that claims to be ISA or PCI device be used in a
> > ARM based embedded system?  For these kind of chips, I only concern
> > about the planar kind of devices, means they are not on a dedicated
> > expansion card.
> >
> > From hardware point of view, to attach a ISA or PCI planar chip, is
> > there any requirement need to fulfill on a ARM board?
> 
> See if your ARM CPU has an interface for SRAM (in addition to DRAM).
> You can use a SRAM chip select to access ISA type devices. But you may
Would you mind explaining this in detail?
> need additional buffers/latches to do this.
> 
> Another solution is to attach you peripherals using USB. Almost all
Connect using USB what does this mean?
> embedded wifi chips are attached this way. The USB connectors aren't
> required, you can route USB around on your PCB. USB hub chips are
> $0.35 if you need more ports.  USB Ethernet chips are available.
> 
> Other options include SPI/I2C. It is worthwhile to investigate these
Only chips which support SPI/I2C can be used but ISA/PCI is completely
orthogonal to this AFAIK.
> serial solutions before doing a parallel solution. Parallel buses eat
> up a lot of PCB space.
> 
> 
> >
> > From Linux driver point of view, what are needed to support an ISA or
> > PCI driver in ARM architecture?  More important, is ISA or PCI device a
> > platform device?  If not, how to add these kind of devices in my board
> > definition?
> >
> > I know my question might not be reasonable enough, if I messed concepts,
> > please sort me out.
> >
> >
> > Thanks in advance.
> >
> >
> > --
> > woody
> > I can't go back to yesterday - because I was a different person then.
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at  http://www.tux.org/lkml/
> 
> 
> 
> --
> Jon Smirl
> jonsmirl@gmail.com
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: What does ISA/PCI really mean to ARM architecture?
  2012-12-27 16:46     ` anish kumar
  (?)
@ 2012-12-27 17:10     ` jonsmirl
  -1 siblings, 0 replies; 10+ messages in thread
From: jonsmirl @ 2012-12-27 17:10 UTC (permalink / raw)
  To: anish kumar; +Cc: Woody Wu, kernelnewbies, linux-kernel

On Thu, Dec 27, 2012 at 11:46 AM, anish kumar
<anish198519851985@gmail.com> wrote:
> On Thu, 2012-12-27 at 11:22 -0500, jonsmirl@gmail.com wrote:
>> On Thu, Dec 27, 2012 at 3:27 AM, Woody Wu <narkewoody@gmail.com> wrote:
>> > Hi, list
>> >
>> > I know this might be a very basic question.  But I really don't clear at
>> > it.
>> >
>> > Can a peripheral chip that claims to be ISA or PCI device be used in a
>> > ARM based embedded system?  For these kind of chips, I only concern
>> > about the planar kind of devices, means they are not on a dedicated
>> > expansion card.
>> >
>> > From hardware point of view, to attach a ISA or PCI planar chip, is
>> > there any requirement need to fulfill on a ARM board?
>>
>> See if your ARM CPU has an interface for SRAM (in addition to DRAM).
>> You can use a SRAM chip select to access ISA type devices. But you may
> Would you mind explaining this in detail?

The old ISA bus is very similar to modern SRAM interfaces.  Address
latch enable + R/W + data strobe. Not DRAM interfaces which are
different.  See if your CPU supports attaching SRAM and then look at
the timing diagrams.  You can probably make it work with some logic
glue.

>> need additional buffers/latches to do this.
>>
>> Another solution is to attach you peripherals using USB. Almost all
> Connect using USB what does this mean?

Find the peripheral function you are looking for in a a chip with USB
device support. Most ARM CPUs have USB host support. Pick chips with
on-chip PHY support.

>> embedded wifi chips are attached this way. The USB connectors aren't
>> required, you can route USB around on your PCB. USB hub chips are
>> $0.35 if you need more ports.  USB Ethernet chips are available.
>>
>> Other options include SPI/I2C. It is worthwhile to investigate these
> Only chips which support SPI/I2C can be used but ISA/PCI is completely
> orthogonal to this AFAIK.

Instead of trying to hook up an ISA chip, go look for the same
function in a SPI/I2C/USB chip.  Almost every peripheral function is
available with many interface choices. Pick one that is more
compatible with your host CPU.

>> serial solutions before doing a parallel solution. Parallel buses eat
>> up a lot of PCB space.
>>
>>
>> >
>> > From Linux driver point of view, what are needed to support an ISA or
>> > PCI driver in ARM architecture?  More important, is ISA or PCI device a
>> > platform device?  If not, how to add these kind of devices in my board
>> > definition?
>> >
>> > I know my question might not be reasonable enough, if I messed concepts,
>> > please sort me out.
>> >
>> >
>> > Thanks in advance.
>> >
>> >
>> > --
>> > woody
>> > I can't go back to yesterday - because I was a different person then.
>> > --
>> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> > the body of a message to majordomo@vger.kernel.org
>> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> > Please read the FAQ at  http://www.tux.org/lkml/
>>
>>
>>
>> --
>> Jon Smirl
>> jonsmirl@gmail.com
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/
>
>



--
Jon Smirl
jonsmirl@gmail.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-12-27 17:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-27  8:27 What does ISA/PCI really mean to ARM architecture? Woody Wu
2012-12-27  8:27 ` Woody Wu
2012-12-27  9:51 ` Geert Uytterhoeven
2012-12-27 14:19   ` anish kumar
2012-12-27 14:19     ` anish kumar
2012-12-27 16:07     ` Arnd Bergmann
2012-12-27 16:22 ` jonsmirl
2012-12-27 16:46   ` anish kumar
2012-12-27 16:46     ` anish kumar
2012-12-27 17:10     ` jonsmirl

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.