--
-- Recibiste este mensaje porque estás suscripto al Grupo Google Embebidos32. Para postear en este grupo, escribe un email a embeb...@googlegroups.com. Para des-suscribirte, envía un email a embebidos32...@googlegroups.com. Para más opciones, visita el sitio del grupo en https://groups.google.com/d/forum/embebidos32?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Embebidos32" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a embebidos32...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Realmente, si Linux en sistemas MMULess esta en abandono, me gustaría ver los indicios de eso mas allá del lógico bajo movimiento que tiene esta vertiente por ser un sector minoritario en el desarrollo del kernel linux, porque lo que veo es exactamente lo contrario, un vivo interés cada vez mayor por Linux como alternativa a frameworks con menos "masa critica" de desarrolladores.
Haaaahora siiii!!!!Ok, lo tomo, LA DISTRO uCLinux no existe en ese sentido.... nada justifica el uso de lo que salga en esa página.Sin embargo, yo no entiendo uCLinux como una distro, sino como el soporte de linux a sistemas sin mmu.Por eso la confusión.
Por supuesto, ahi coincido con vos, y aconsejo el uso de un Kernel mainstream parcheado con un BSP/Drivers propios y un mecanismo de construcción, o bien manual, o basado en buildroot como sugerís mas arriba.
--
Sebastián,
Tu problema no parece ser de MMU o no MMU, sino de RAM. Por lo que veo, las opciones de CIAA tienen mucho menos de 4 MiB de SDRAM. Diría que ese el límite inferior para usar Linux.
Pensá que hoy por hoy un kernel PELADO (sin nada de nada) pesa mucho más de 1 MiB. Imagináte que a eso tenés que sumarle drivers y rootfs. Por eso se habla de 4 MiB como mínimo.
La CIAA actual y Linux están claramente orientados a dos segmentos de la industrial mutuamente excluyentes. Una CIAA para Linux sería básicamente un SOM con un SoC tipo un ARM Cortex-A
(aunque puede ser MIPS o cualquier otra cosa), y como 512 MiB de SDRAM.
PS: Olvidáte de las distribuciones tradicionales como Ubuntu, eso no tiene absolutamente nada que ver con la clase de Linux Embebido que se discute en esta lista.
Pensá más bien en "kernel + rootfs".
On Tuesday, November 4, 2014 2:31:13 PM UTC-3, Sebastián Barillaro wrote:Hola Ezequiel!
Me refiero a que mi objetivo no es poner Linux (entero, con memoria virtual, etc) y empezar a buscar qué micro se lo banca, sino al revés: Teniendo el hardware de la CIAA, qué linux le calza mejor, aunque sepa que sin tener MMU, no podré poner un Linux entero, ni mucho menos ubuntu. Seguramente, algún martillazo le tendré que dar.
El martes, 4 de noviembre de 2014 09:53:16 UTC-3, Ezequiel Garcia escribió:Hola Sebastián,
A que te referís con "No quiero ir por un linux entero" ?
On Monday, November 3, 2014 11:28:55 AM UTC-3, Sebastián Barillaro wrote:Buenos días!
Interesantísima la discusión. Agradezco y valoro el comentario de todos.
Desconocía BuildRoot. Lo investigaré!
Ya sea BuildRoot, uCLinux (u otro), mi intención es brindar una plataforma operativa sobre la CIAA. Así, aquel que viene usando el
DragonBallMZ con 8MB y quiere actualizar el hardware, puede optar por una CIAA sin tener que enfrentarse a un micro pelado. También, que sirva para el que quiera adaptar su aplicación a la CIAA, y quisiera contar con un SO. Obviamente, no quiero malgastar la energía en algo que tenga tantos martillazos que pierda la forma original y sirva sólo de trofeo. No me interesa ser el Dimitry criollo.
No quiero ir por un linux entero, porque CIAA no lo soporta. No quiero cambiar el chip de la CIAA por uno con MMU.
Estimados,Encontré esta página http://www.linux-arm.org/Main/WebHome, aparentemente es "LA" referencia.Por otro lado confirmé que los Cortex-M no tienen MMU, tienen MPU (Memory Protection Unit) con la que se pueden definir regiones de memoria protegida (eso es bueno).
Por lo poco que pude ver, las implementaciones de Linux en micros chicos son bastante limitadas y con interfaces no gráficas (por ejemplo busybox).
Saludos,
On Thursday, November 6, 2014 12:06:57 PM UTC-3, Ezequiel Garcia wrote:Sebastián,
Tu problema no parece ser de MMU o no MMU, sino de RAM. Por lo que veo, las opciones de CIAA tienen mucho menos de 4 MiB de SDRAM. Diría que ese el límite inferior para usar Linux.
Pensá que hoy por hoy un kernel PELADO (sin nada de nada) pesa mucho más de 1 MiB. Imagináte que a eso tenés que sumarle drivers y rootfs. Por eso se habla de 4 MiB como mínimo.
La CIAA actual y Linux están claramente orientados a dos segmentos de la industrial mutuamente excluyentes. Una CIAA para Linux sería básicamente un SOM con un SoC tipo un ARM Cortex-A
(aunque puede ser MIPS o cualquier otra cosa), y como 512 MiB de SDRAM.
PS: Olvidáte de las distribuciones tradicionales como Ubuntu, eso no tiene absolutamente nada que ver con la clase de Linux Embebido que se discute en esta lista.
Pensá más bien en "kernel + rootfs".
On Tuesday, November 4, 2014 2:31:13 PM UTC-3, Sebastián Barillaro wrote:Hola Ezequiel!
Me refiero a que mi objetivo no es poner Linux (entero, con memoria virtual, etc) y empezar a buscar qué micro se lo banca, sino al revés: Teniendo el hardware de la CIAA, qué linux le calza mejor, aunque sepa que sin tener MMU, no podré poner un Linux entero, ni mucho menos ubuntu. Seguramente, algún martillazo le tendré que dar.
El martes, 4 de noviembre de 2014 09:53:16 UTC-3, Ezequiel Garcia escribió:Hola Sebastián,
A que te referís con "No quiero ir por un linux entero" ?
On Monday, November 3, 2014 11:28:55 AM UTC-3, Sebastián Barillaro wrote:Buenos días!
Interesantísima la discusión. Agradezco y valoro el comentario de todos.
Desconocía BuildRoot. Lo investigaré!
Ya sea BuildRoot, uCLinux (u otro), mi intención es brindar una plataforma operativa sobre la CIAA. Así, aquel que viene usando el
DragonBallMZ con 8MB y quiere actualizar el hardware, puede optar por una CIAA sin tener que enfrentarse a un micro pelado. También, que sirva para el que quiera adaptar su aplicación a la CIAA, y quisiera contar con un SO. Obviamente, no quiero malgastar la energía en algo que tenga tantos martillazos que pierda la forma original y sirva sólo de trofeo. No me interesa ser el Dimitry criollo.
No quiero ir por un linux entero, porque CIAA no lo soporta. No quiero cambiar el chip de la CIAA por uno con MMU.
Comparto otro link sacado del que publico Fernando …
http://opensrc.sec.samsung.com/
Saludos cordiales, Diego
Creo que nadie en su sano juicio pensaria en un sistema MMUless usando distribuciones como esas, igual ahi nos escapamos totalmente de lo embebido (y no, un celular no es ya un embebido, salvo que hablemos de mi querido nokia 1100)
On Thursday, November 6, 2014 12:32:11 PM UTC-3, El Ruso wrote:Creo que nadie en su sano juicio pensaria en un sistema MMUless usando distribuciones como esas, igual ahi nos escapamos totalmente de lo embebido (y no, un celular no es ya un embebido, salvo que hablemos de mi querido nokia 1100)
Me parece que estamos hablando de cosas distintas. Los sistemas "Linux Embebido" es una categoría muy difusa. Diría que los celulares aún están considerados sistemas embebidos dentro de la comunidad de Linux Embebido.
Podés mirar el sitio de la conferencia de Linux Embebido y ver qué tipo de charlas se plantean. El tema es que "embebido" ya no pasa más por la capacidad de procesamiento (un sistema embebido hoy puede tener 2 o 4 cores y un par de gigas de RAM), sino por otras cuestiones.
El 6 de noviembre de 2014, 13:46, Ezequiel Garcia <eleze...@gmail.com> escribió:
On Thursday, November 6, 2014 12:32:11 PM UTC-3, El Ruso wrote:Creo que nadie en su sano juicio pensaria en un sistema MMUless usando distribuciones como esas, igual ahi nos escapamos totalmente de lo embebido (y no, un celular no es ya un embebido, salvo que hablemos de mi querido nokia 1100)
Me parece que estamos hablando de cosas distintas. Los sistemas "Linux Embebido" es una categoría muy difusa. Diría que los celulares aún están considerados sistemas embebidos dentro de la comunidad de Linux Embebido.Tal cual, por lo que decís, en tu trabajo los embebidos que tenes a mano son equivalentes a una PC high-end de hace unos cuantos años (no muchos tampoco)Personalmente coincido en que, los costos de procesadores ahora son irrisorios como para dedicarle horas/hombre al desarrollo de software resource-constraint, pero hay una realidad que es que hoy, las capacidades tecnológicas medias de la fabricación local, están lejos de cubrir los requerimientos de la electrónica requerida por un SoC.
Me explico: En algún momento, se planteó en hecho la CIAA de entrada, como una PC industrial basada en un SoC (masomenos) endurecido (como los automotrices de TI, o los industriales de Freescale) pero se vio que la mayoria de fabricantes argentinos de placas tienen problemas mas allá de los 8 mils de vías y cuatro capas (ya 6 son pocos los que hacen y un diseño con SoCs requiere entre 8 y 12 capas normalmente, con anchos que rondan los 4/5 mils como normal)Esto es una situación lamentable pero que, eventualmente, confiamos en que mejore (soy optimista al respecto) pero en estos momentos, algo viable es un diseño de no mas de cuatro capas, con un micro que no sea BGA y restricciones de ese estilo.Creo que igual se pueden hacer muchas cosas con lo que tenemos, y también creo que Linux puede aportar una gran cantidad de código en campos como las comunicaciones y los protocolos, pero que hay que manejarlo con cuidado porque, en definitiva, es un experimento de poner un sistema pensado para una cosa en otra totalmente distinta (recordemos que Linux embebido es exactamente eso, partiendo del lado de las PC)De todas formas, estos planteamientos, son simplemente aire hasta que no tengamos un linux mmu-less corriendo sobre un Cortex-M4 y hagamos las pruebas correspondientes de si sirve o no...
De todas formas, estos planteamientos, son simplemente aire hasta que no tengamos un linux mmu-less corriendo sobre un Cortex-M4 y hagamos las pruebas correspondientes de si sirve o no...
Podríamos preguntarle a Uwe Kleine-König, que implementó el soporte para los Cortex-M4 de Energy Micro (EFM32), si lo hizo por diversión, o si tenía algún requerimiento específico. Creo haber escuchado que la aplicación sería ultra bajo consumo, pero es una cosa super específica. Puede ser interesante como experimento. Tener un shell pelado no creo que sea muy complicado. Alguien con idea de kernel puede hacerlo en unos días de trabajo.De ahí a tener algo usable...
Me interesa como curiosidad... pero por otro lado, le veo tan poca aplicación, que no estoy seguro que valga la pena invertir tiempo. Si la razón es aprender, creo que es más práctico comprar un par de Beaglebones y ponerse a meter mano.
El 7 de noviembre de 2014, 19:51, Ezequiel Garcia <eleze...@gmail.com> escribió:[snip]De todas formas, estos planteamientos, son simplemente aire hasta que no tengamos un linux mmu-less corriendo sobre un Cortex-M4 y hagamos las pruebas correspondientes de si sirve o no...
Podríamos preguntarle a Uwe Kleine-König, que implementó el soporte para los Cortex-M4 de Energy Micro (EFM32), si lo hizo por diversión, o si tenía algún requerimiento específico. Creo haber escuchado que la aplicación sería ultra bajo consumo, pero es una cosa super específica. Puede ser interesante como experimento. Tener un shell pelado no creo que sea muy complicado. Alguien con idea de kernel puede hacerlo en unos días de trabajo.De ahí a tener algo usable...Casualmente la semana pasada tuve que revisar el código del Kernel por otras cosas y veo el port a EMF32 en el fucking mainstream del 3.17!!!!! Mi cara de WTF no tuvo comparación...O sea, EMF32!!!!! Ni siquiera esta el port para LPC43 o el del K70 y tenemos el de EMF32!!!! Que ni siquiera tiene controlador DDR o SDRAM y hay que meterle o una PSRAM incomprable en ningún lado, o una SRAM que te cuesta un ojo de la cara...Ok, cada día entiendo menos este mundo... jajajajajaja ¿Alguien puede explicarme que criterios hay para meter código en el mainstream?
Hola a todos,
Estuve hablando con Uwe Kleine-König de Pengutronix, qué estuvo a cargo de implementar el soporte de los MCU Cortex-M4 de Energy Micro 32 en el Kernel. Dado que él ya hizo una buena parte del trabajo necesario para soportar ARMv7-M, solamente quedaría implementar los drivers: UART y timer son los fundamentales (y son muy fáciles). El irqchip para el NVIC ya está hecho (creo).
Eso es por el lado del kernel. Por el lado de userspace yo no conozco demasiado. Uwe me comentó que ellos usaron la infra de ptxdist con los paquetes de uclinux. Acá está el BSP que hicieron ellos:
http://git-public.pengutronix.de/?p=OSELAS.BSP-EnergyMicro-Gecko.git;a=summary
Respecto de la motivación, como sospechábamos tiene que ver un el consumo de energía. Acá hay un spot publicitario sobre el uCLinux para EFM32:
https://www.youtube.com/watch?v=3WS3pvsOmp4
El video dice que en idle consume 1.6 uA. Esa es la razón (supongo) por la cuál las placas llevan SRAM.
Por otro lado, la CIAA NXP tendría SDRAM, con lo cuál no estoy seguro que sea comparable. Por eso, sigo sin saber si trabajar en portar el kernel para la CIAA NXP es viable desde el punto de vista comercial, pero al menos tenemos un roadmap :-)
Espero que sirva!
Ezequiel
On Wednesday, October 29, 2014 8:36:32 PM UTC-3, Sebastián Barillaro wrote:Buenas noches!
De la lectura de otros hilos (y de la web) me ha quedado claro que la mayoría prefiere usar un CortexM con un RTOS, y un CortexA con un full Linux.
Me pregunto si tener una CIAA con ucLinux tendría alguna utilidad para alguien. Quizás exista un lugar para tener las comodidades de un SO de propósito general, (vs RTOS) corriendo en un hardware modesto que pueda aprovecharse.
Es encontrar, si existe, un nuevo uso para la CIAA.
Desde ya, agradezco las opiniones de todos.
Saludos
Sebastián Barillaro
Gran aporte! Algunos comentarios abajo:El 10 de noviembre de 2014, 10:04, Ezequiel Garcia <eleze...@gmail.com> escribió:Hola a todos,
Estuve hablando con Uwe Kleine-König de Pengutronix, qué estuvo a cargo de implementar el soporte de los MCU Cortex-M4 de Energy Micro 32 en el Kernel. Dado que él ya hizo una buena parte del trabajo necesario para soportar ARMv7-M, solamente quedaría implementar los drivers: UART y timer son los fundamentales (y son muy fáciles). El irqchip para el NVIC ya está hecho (creo).Confirmo:Con esto, cualquier port de ARMv7M es factible con la misma facilidad que con EMF32.OT: ¿Desde cuando movieron el subsistema de irq de ARM a los drivers? No me quejo, todo lo contrario, es mas ordenado y facil de agregar arquitecturas, pero me descoloco un poco ver el directorio arm tan... ¿limpio? ¿ordenado?
Saludos!!
Me tuve que poner a estudiar y los mails me pasaron por arriba, así que contesto el ultimo.Obviamente que cuando decimos uCLinux estamos hablando de linux sin mmu, y no de la distro.
Entiendo que son dos cosas diferentes, lo que pasa es que no lo veo relevante para la discusión. Lo que quiero decir es que lo relevante de la discusión es si tiene sentido la CIAA con uCLinux (o linux-MMUless o linux) o un RTOS al cual sumarle stacks, LCD, HMI, etc!
--