Randy Chou <rchou3@...>
Hi community,
I'm using nrf52840 on our own development board, I met one problem about abnormal disconnect.
[Peripheral 1] Zephyr peripheral_hids sample application runs on nRF52840_PCA10056 [Peripheral 2] Zephyr peripheral_hids sample application runs on our EVB (nRF52840)
[per 2] abnormal disconnect while I move the central a bit far away from peripheral (< 1m).
As my understanding, in SoftDevice, it will do the clock calibration automatically. I only find one related configuration (CONFIG_CLOCK_CONTROL_NRF5_K32SRC_250PPM). Does it also have same feature in Zephyr? or do you have other comment about this issue? Thanks, Randy
|
|
Re: Zephyr Memory Heap Size
"K.I.R.A.
Hi Chintan, I'm not sure we can do like that. But you might define your customized mem pool, and take use of k_mem_alloc* instead. Looking forward to more ideas! Best Regards, Bub ---Original--- From: " via Lists.Zephyrproject.Org"<meetcd=yahoo.com@...> Date: Wed, Oct 31, 2018 21:43 PM To: "devel@..."<devel@...>;"K.I.R.A."<38900484@...>; Cc: "devel"<devel@...>; Subject: Re: [Zephyr-devel] Zephyr Memory Heap Size Hi Bub, Thanks for reply. My question is related to only HEAP MEM POOL and not GENERIC MEM POOL. In other words can I have CONFIG_HEAP_MEM_POOL_SIZE greater than 16k bytes? My heap requirement to satisfy all k_malloc() is higher. Regards, Chintan
On Wednesday, October 31, 2018, 5:25:22 PM GMT+5:30, K.I.R.A. <38900484@...> wrote:
Hi Chintan, It's a single maximum size block. I'm wondering which scenario you need such big block. Best Regards, Bub ---Original--- From: " via Lists.Zephyrproject.Org"<meetcd=yahoo.com@...> Date: Wed, Oct 31, 2018 18:04 PM To: "devel@..."<devel@...>; Cc: "devel"<devel@...>; Subject: [Zephyr-devel] Zephyr Memory Heap Size Hi Community, As per Zephyr Documentation in this link. The size of the heap memory pool is configurable. The following sizes are supported: 256 bytes, 1024 bytes, 4096 bytes, and 16384 bytes. Does that mean we can not have heap size greater than 16384 bytes? Please clarify. Regards, Chintan
|
|
Re: Zephyr Memory Heap Size
Chintan Patel <meetcd@...>
Hi Bub, Thanks for reply. My question is related to only HEAP MEM POOL and not GENERIC MEM POOL. In other words can I have CONFIG_HEAP_MEM_POOL_SIZE greater than 16k bytes? My heap requirement to satisfy all k_malloc() is higher. Regards, Chintan
On Wednesday, October 31, 2018, 5:25:22 PM GMT+5:30, K.I.R.A. <38900484@...> wrote:
Hi Chintan, It's a single maximum size block. I'm wondering which scenario you need such big block. Best Regards, Bub ---Original--- From: " via Lists.Zephyrproject.Org"<meetcd=yahoo.com@...> Date: Wed, Oct 31, 2018 18:04 PM To: "devel@..."<devel@...>; Cc: "devel"<devel@...>; Subject: [Zephyr-devel] Zephyr Memory Heap Size Hi Community, As per Zephyr Documentation in this link. The size of the heap memory pool is configurable. The following sizes are supported: 256 bytes, 1024 bytes, 4096 bytes, and 16384 bytes. Does that mean we can not have heap size greater than 16384 bytes? Please clarify. Regards, Chintan
|
|
Re: Zephyr Memory Heap Size
"K.I.R.A.
Hi Chintan, It's a single maximum size block. I'm wondering which scenario you need such big block. Best Regards, Bub ---Original--- From: " via Lists.Zephyrproject.Org"<meetcd=yahoo.com@...> Date: Wed, Oct 31, 2018 18:04 PM To: "devel@..."<devel@...>; Cc: "devel"<devel@...>; Subject: [Zephyr-devel] Zephyr Memory Heap Size Hi Community, As per Zephyr Documentation in this link. The size of the heap memory pool is configurable. The following sizes are supported: 256 bytes, 1024 bytes, 4096 bytes, and 16384 bytes. Does that mean we can not have heap size greater than 16384 bytes? Please clarify. Regards, Chintan
|
|
Re: I2C Driver nfrx_twi BUSY state
#nrf52840
Rodrigo Peixoto <rodrigopex@...>
Why aren't you using the Zephyr i2c driver instead of nrfx?
toggle quoted messageShow quoted text
On Tue, 30 Oct 2018 at 23:49 Rodrigo Peixoto <rodrigopex@...> wrote: I would suggest you to use the mutex or even a semaphore to deal with the concurrent access to the driver. It seems to be the simple way in my point of view. --
Rodrigo Peixoto Co-founder and Technical guru +55 (82) 98144-8585 http://ayna.tech | Skype: rodrigopex .
|
|
Zephyr Memory Heap Size
Chintan Patel <meetcd@...>
Hi Community, As per Zephyr Documentation in this link. The size of the heap memory pool is configurable. The following sizes are supported: 256 bytes, 1024 bytes, 4096 bytes, and 16384 bytes. Does that mean we can not have heap size greater than 16384 bytes? Please clarify. Regards, Chintan
|
|
Re: I2C Driver nfrx_twi BUSY state
#nrf52840
Rodrigo Peixoto <rodrigopex@...>
I would suggest you to use the mutex or even a semaphore to deal with the concurrent access to the driver. It seems to be the simple way in my point of view.
toggle quoted messageShow quoted text
Indeed I guess the first "workaround" you suggest could be added to the driver. It would be better than return always an EIO. Best regards, Rodrigo Peixoto
On Tue, 30 Oct 2018 at 12:47 <aurelien.vouaillat@...> wrote: Hi, --
Rodrigo Peixoto Co-founder and Technical guru +55 (82) 98144-8585 http://ayna.tech | Skype: rodrigopex .
|
|
I2C Driver nfrx_twi BUSY state
#nrf52840
aurelien.vouaillat@...
Hi,
I'm currently using the i2c_nrfx_twi driver to process i2c transfers with some peripherals. I have several slave units on the same i2c bus and use multi-threading to deal with all of them. I have to face the problem that at least two threads have to use the i2c bus at the same time. Unfortunately the i2c_nrfx_twi_transfer() function doesn't handle this issue and only returns -EIO even if the real problem comes from the busy state of the i2c bus: nrfx_err_t res = nrfx_twi_xfer(&get_dev_config(dev)->twi, &cur_xfer, (msgs[i].flags & I2C_MSG_STOP) ? 0 : NRFX_TWI_FLAG_TX_NO_STOP); if (res != NRFX_SUCCESS) { LOG_ERR("Error nrfx_twi_xfer with %d", res); return -EIO; } Easy workarounds was to : 1- Add another if case : if (res != NRFX_ERROR_BUSY) and return a -EBUSY OR 2- Protect the function with a mutex and leaving the kernel handle this using the priority of each threads I don't know if there are better/cleaner solution than these two ones but i would really appreciate some help Thanks Aurelien
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Sigvart Hovland
[]
1. Development channel on IRC4. Reddit subreddit Right, and besides that "potentially pointless" situation (or more specifically, depending on the goodwill of developers), there 2 otherIsn't there a 3rd option which does require some more work than the other two other options and that is to have both slack and IRC while mirroring the channels from IRC to slack with an IRC-slack bridge[0](sort of like this but you could make it more advanced)? At least that's what we did when we migrated to slack on another project I worked on. That way devs don't have to frequent slack as it's optional but a nice addition. One of the big pain points I've had with these bridges is however if the slack-IRC bot disconnects for some reason you'll lose history synchronisation between the sides, also there is maintenance and upkeep. So someone has to be responsible for making sure it's alive and kicking at least. Another problem I've faced is that the bridge does not support threading so if people start a discussion in a thread on slack, this will be lost on IRC. Maybe some newer bridges have support for this. At least the problems I see with IRC at this point is that if you are not connected continuously (paying for web-based clients) or running on your own server, you'll lose history. This can be mitigated with an IRC bot where you could /msg history or public logs, but I don't see either in the project at the moment. Maybe I'm looking in the wrong place [1]? I'm curious which route will be taken. But I'm sure that whichever will, it will be for the greater good of the project. Anyway, while that was the more controversial point in Anas' email, I guess the most *important* is upcoming PR/patch process changes. So, I guess I'll wait for more info on that part from now on. (But I do hope that more people will cast their "votes" of IRC vs non-IRC matter yet.)So I'll cast my "vote" right in the middle and ask for the consideration of having both with an integration in between them where you mirror the channels to slack(this way you could also see which channels are being used). I also think these kinds of bridges exists for gitter. This will also give new developers/users from a younger age group or those who are inexperienced with IRC a lower barrier of entry and maybe they'll eventually migrate over to IRC or visa versa. [0] https://github.com/ekmartin/slack-irc [1] https://freenode.irclog.whitequark.org/
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Paul Sokolovsky
On Mon, 29 Oct 2018 22:08:55 +0000
"Cufi, Carles" <Carles.Cufi@nordicsemi.no> wrote: Hi Paul,[] For what is worth, I (relatively) regularly comment and post onGreat to know, you must be <...> then ;-) (Well, nick is skipped for privacy reasons). Right, and besides that "potentially pointless" situation (or more1. Development channel on IRCNot sure if I get this, but I think you are suggesting we combine specifically, depending on the goodwill of developers), there 2 other choices: don't change anything, let it work like it worked for decades, people who need will find their way on IRC. Or, forcibly move everyone elsewhere. I'm curious which route will be taken. But I'm sure that whichever will, it will be for the greater good of the project. Anyway, while that was the more controversial point in Anas' email, I guess the most *important* is upcoming PR/patch process changes. So, I guess I'll wait for more info on that part from now on. (But I do hope that more people will cast their "votes" of IRC vs non-IRC matter yet.)
-- Best Regards, Paul Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Paul Sokolovsky
On Mon, 29 Oct 2018 21:58:22 +0000
Marti Bolivar <marti@foundries.io> wrote: [] I personally never talked about "favorite chat clients" or something. IThis sentence is hard to parse, but I suspect you (and Flavio) haveSlack is a proprietary de facto standard in this context, atLove that argument. So, perhaps we shouldn't look for easy ways and just calmly use mine, based on the projects' requirements, and those requirements for last 10-15 years were consistent - IRC (so yes, I had to acquire my favorite IRC client, etc.). Now requirements seem to change, so I'm just trying to understand why, and make sure that if change is made, no improvement opportunities are missed or hasty decisions are made, like trading "east" for "west", etc. [] Yes, and weekly summaries of Zephyr changes too. Why not?The more dissemination we have, the better. Just randomly searchedSo "do all the things"? For one, I hope there won't be external directives where to go, especially represented as a "community decision". (Note that I personally happy to follow any project requirements, especially if it's clear where they originate from and what are their purpose.) That's easy: "[]" is a common placeholder for deleted text; there wasSince you deleted most of the rest of the context in this thread sobut I think we a complaint that quoting of the thread was broken, moreover I don't think that every participant of such threads should comment every point of other participants, a couple of important is enough, or discussion get unwieldy. Finally, I really appreciate your call to be honest with ourselves of what we're arguing about, so I tried to say in fair manner what I think about these matters. [] -- Best Regards, Paul Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Marti Bolivar <marti@...>
On Mon, Oct 29, 2018, 9:45 PM Paul Sokolovsky <paul.sokolovsky@...> wrote: On Mon, 29 Oct 2018 20:11:04 +0000 This sentence is hard to parse, but I suspect you (and Flavio) have both missed my point, which was that if you're talking about "everyone's" favorite chat clients by raw number of users, IRC integration is basically non-existent. So claiming that as a plus seems bogus.
So "do all the things"?
Since you deleted most of the rest of the context in this thread so far, I'm not sure what including the above followed by "[]" means. Thanks, Marti
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Carles Cufi
Hi Paul,
toggle quoted messageShow quoted text
-----Original Message-----For what is worth, I (relatively) regularly comment and post on Reddit about Zephyr. On r/embedded to be precise, but also on other subreddits. Not sure if I get this, but I think you are suggesting we combine both IRC and Slack. While I don't think that's the greatest of situations to find ourselves in, I would have no problem using both (I already do in fact). But then we'd need the devs to also frequent the Slack channel, otherwise it'd be a bit pointless. Carles
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Paul Sokolovsky
On Mon, 29 Oct 2018 20:11:04 +0000
"Marti Bolivar" <marti@foundries.io> wrote: [] Slack is a proprietary de facto standard in this context, at least inLove that argument. So, perhaps we shouldn't look for easy ways and embrace diversity in general, and look for WeChat that you mentioned or QQ? From Carles next mail: IRC is not only a tool for core contributors, maintainers and TSCThat's actually very good comment. Trying to close my eyes and make a reminiscence of that, following comes out of me: "There's an idea to make a *support* channel on Slack for all the "IRC lives??" people." Sounds great, and especially that there're people who want to do support both on IRC and elsewhere. The more dissemination we have, the better. Just randomly searched for "zephyr rtos" (no hope for just "zephyr") on Reddit, and disappointedly, #1 hit is still the post for 1.9 release I made a year ago. If we can't make semi-regular posts on popular IT crowd sites like Reddit, let's at least create a Slack channel. Or can do both actually. Or all of them: 1. Development channel on IRC 2. I believe there is/was something like #zephyr-bluetooth on IRC too. I never understood why, but I heard there was. 3. Slack channel. 4. Reddit subreddit ... more but I think we [] -- Best Regards, Paul Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Perez-Gonzalez, Inaky <inaky.perez-gonzalez@...>
My replies with IPG>> prefixed below
From: tsc@... [tsc@...] on behalf of Marti Bolivar [marti@...]
Sent: Monday, October 29, 2018 1:11 PM To: Ceolin, Flavio Cc: Perez-Gonzalez, Inaky; Nashif, Anas; devel@...; tsc@... Subject: Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE Hi,
I'd like to discuss some counterpoints.
On Mon, Oct 29, 2018, 6:38 PM Flavio Ceolin <flavio.ceolin@...> wrote:
"Perez-Gonzalez, Inaky" <inaky.perez-gonzalez@...> writes: In all honesty I think
s/platform/Linux distribution/
And I agree.
IRC is not "easy" across platforms in a modern sense of the word, unless you use irccloud (which, full disclosure, I do, after changing from ERC within emacs by way of various other clients starting with Ircle on pre-OS X Macs back in the day).
Note irccloud is not free software.
IPG >> I'll admit I haven't used windows for a long time, but a quick google:
IPG>> many of them open source; and I can tell you pidgin (the client I use in Linux) works in Windows supporting almost every single messaging protocol reasonably open (and some propietary ones).
> - well integrated into everyone's favourite messaging client "Everyone's"?
IPG>> I'll be quite surprised a successful multi-protocol messaging client is written that doesn't support IRC
IPG>> pidgin for Windows/Linux/Mac/Chrome, mutter for IRC on iOS (can't talk to that because I don't IRC from my cellphone)
And it's not like irccloud is exactly a household name.
Taking "everyone" by raw numbers, we'd be looking for WhatsApp, WeChat, etc. integration, and I don't think their clients can be called "well" integrated with IRC.
IPG>> each of those is a private/proprietary network (for example); I for one would not install WeChat in my cellphone after all the
free publicity they've gained courtesy of the Chinese Government. Now, if we are talking being able to send notifications to those networks, yes, why not? but forcing any of those to be the central forum for open discussion? disagreed.
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Marti Bolivar <marti@...>
On Mon, Oct 29, 2018, 8:41 PM Cufi, Carles <Carles.Cufi@...> wrote:
My fault (?). I replied from mobile.
|
|
Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Carles Cufi
Adding to Martí’s points here.
Can’t seem to break lines with Outlook so I will need to use another color. Apologies for that, but I blame whoever introduced HTML to this thread.
From: tsc@... <tsc@...>
On Behalf Of Marti Bolivar
Sent: 29 October 2018 21:11 To: Flavio Ceolin <flavio.ceolin@...> Cc: Perez-Gonzalez, Inaky <inaky.perez-gonzalez@...>; Nashif, Anas <anas.nashif@...>; devel@...; tsc@... Subject: Re: [Zephyr-tsc] [Zephyr-devel] Highlights from the TSC meeting during ELCE
Hi,
I'd like to discuss some counterpoints. On Mon, Oct 29, 2018, 6:38 PM Flavio Ceolin <flavio.ceolin@...> wrote:
In all honesty I think
s/platform/Linux distribution/
And I agree.
IRC is not "easy" across platforms in a modern sense of the word, unless you use irccloud (which, full disclosure, I do, after changing from ERC within emacs by way of various other clients starting with Ircle on pre-OS X Macs back in the day).
Note irccloud is not free software.
Not only that, but IRC doesn’t provide you with a permanent connection unless you pay for money in one way or another, unless you use something like matrix and that is not very pretty.
"Everyone's"?
I think this statement also has some Linux bias. Zephyr is a Linux foundation project, but it's also important to be able to develop using Zephyr and collaborate with other users on all supported platforms, and convenience and familiarity do have some practical weight here.
IRC clients that look good on a modern desktop (again, other than irccloud) are lacking. (Yup, that's an opinion.) Mobile support without irccloud is also lacking.
Again, I completely agree with Martí here. While HexChat is usable, it definitely does not fit the category of “favourite messaging client” for most people. Mobile support is a pretty fundamental feature these days, and our users do not currently have access to it unless they use irccloud or a similar service.
And it's not like irccloud is exactly a household name.
No, but to be fair, it is very reliable and dependable.
Taking "everyone" by raw numbers, we'd be looking for WhatsApp, WeChat, etc. integration, and I don't think their clients can be called "well" integrated with IRC.
So the above statement seems suspect to me.
That said, preferring open and battle-tested standards is usually a good idea in an open source project, at least so long as they get the job done well enough.
And as long as they provide the functionality we need (i.e. permanent connections) for free for users. Not to mention the advanced functionality available on Slack that simply will never make it into IRC.
Slack is a proprietary de facto standard in this context, at least in the west. IRC is a venerable and interoperable open standard with usability issues and mindshare problems depending on who you're talking to. That seems to be the real crux of the matter here.
There's good arguments on either side of this debate, but I think we ought to be honest with ourselves that this is really what we are arguing about.
I think we should carefully consider what our users would like to use as well. IRC is not only a tool for core contributors, maintainers and TSC members, but also users of the RTOS. The sentence “oh, but IRC still *exists*” has come up too many times in the last few months while introducing engineers to the Zephyr project. Now, how to actually do that is not trivial, but I’m thinking perhaps a poll amongst users of some sort?
Full of spam (and, let's be frank, some of that spam is hate speech), it's 2018 and slack is lightweight enough for all the laptops we tend to use, lacks native support for anything that isn't plain text, ...
I hope the above is some fodder for discussion on why this is not a no-brainer decision.
I hope so too. While I personally have nothing against IRC and it pretty much does the job for me, not everyone wants to set up a proxy or pay for irccloud in order to get the functionality they need.
Thanks, Marti
|
|
Re: Highlights from the TSC meeting during ELCE
Marti Bolivar <marti@...>
Hi, I'd like to discuss some counterpoints. On Mon, Oct 29, 2018, 6:38 PM Flavio Ceolin <flavio.ceolin@...> wrote: "Perez-Gonzalez, Inaky" <inaky.perez-gonzalez@...> writes: In all honesty I think s/platform/Linux distribution/ And I agree. IRC is not "easy" across platforms in a modern sense of the word, unless you use irccloud (which, full disclosure, I do, after changing from ERC within emacs by way of various other clients starting with Ircle on pre-OS X Macs back in the day). Note irccloud is not free software. > - well integrated into everyone's favourite messaging client "Everyone's"? I think this statement also has some Linux bias. Zephyr is a Linux foundation project, but it's also important to be able to develop using Zephyr and collaborate with other users on all supported platforms, and convenience and familiarity do have some practical weight here. IRC clients that look good on a modern desktop (again, other than irccloud) are lacking. (Yup, that's an opinion.) Mobile support without irccloud is also lacking. And it's not like irccloud is exactly a household name. Taking "everyone" by raw numbers, we'd be looking for WhatsApp, WeChat, etc. integration, and I don't think their clients can be called "well" integrated with IRC. So the above statement seems suspect to me. That said, preferring open and battle-tested standards is usually a good idea in an open source project, at least so long as they get the job done well enough. > - does not depend on a single corporation (looking at you, Slack) Slack is a proprietary de facto standard in this context, at least in the west. IRC is a venerable and interoperable open standard with usability issues and mindshare problems depending on who you're talking to. That seems to be the real crux of the matter here. There's good arguments on either side of this debate, but I think we ought to be honest with ourselves that this is really what we are arguing about.
Full of spam (and, let's be frank, some of that spam is hate speech), it's 2018 and slack is lightweight enough for all the laptops we tend to use, lacks native support for anything that isn't plain text, ... Without a good reason I hope the above is some fodder for discussion on why this is not a no-brainer decision. Thanks, Marti
|
|
Re: Does the EFR32_slwstk6061a port work?
Christian Taedcke
Hello Jake,
Am Montag, den 29.10.2018, 18:03 +0000 schrieb Kumar Gala: I just tried samples/hello_world from the current master on theOn Oct 29, 2018, at 5:00 PM, Jake Baldwin <jake.a.baldwin@gmail.comHopefully Christian can chime in if the latest code is working forwrote:The EFR32_SLWSTK6061A board is very similar to the efr32_slwstk6061a and it is working fine: ***** Booting Zephyr OS zephyr-v1.13.0-1384-gf2b9cc62bb ***** Hello World! efr32_slwstk6061a Also samples/basic/button works as expected. Since your board has a Mighty Gecko, it might be better to start from https://github.com/zephyrproject-rtos/zephyr/pull/9042 instead of the Flex Gecko, which is used on the EFR32_SLWSTK6061A. Regards, Christian
|
|
Re: [Zephyr-tsc] Highlights from the TSC meeting during ELCE
Paul Sokolovsky
Hello Anas,
On Mon, 29 Oct 2018 16:51:29 +0000 "Nashif, Anas" <anas.nashif@intel.com> wrote: Hi,[] 2. To improve the review process we will introduce theGreat! That's great! But what does "on IRC on teleconference" mean? Is it on IRC or not? to give community members the opportunity to addressThe moment I've read this line, I felt nice butterflies in my stomach. Here it comes. Finally! The ugly zoom.us tool used for all Zephyr meetings will be gone! That tool has ~ zero Linux browsers support. I have to hack a URL just to be able into the meeting, and then I see almost nothing - no participants list, no chat, no nothing. Sound quality is also below the level of similar tools. This tool actively discourages participation in Zephyr meetings for Linux users. (Oh, I was suggested that there's a run-on-your-own-computer client, but at the age of meltdowns that seems like a brave, if not crazy, idea). But instead... IRC.IRC! We're talking about replacing IRC. OMG. We need more proprietary tools to get us into a nice cozy cave. Candidates are Slack and gitter. This has not been decided yet, -- Best Regards, Paul Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog
|
|