Am Mittwoch, 30. Mai 2007 23:54 schrieben Sie: > On Wed, 30 May 2007 23:18:26 +0200 > > "Uwe Bugla" <uwe.bugla@xxxxxx> wrote: > > Could you please tell me whose / how many signatures you need to at least > > pull this stuff into the mm tree? > > I'm not a dvb developer. Please work it with the guys who maintain that > code. Yes, that would be the "ideal" solution to work that out, sure! And I deeply wished that this would be as easy as that. But it unfortunatley isn't! And that is the pain! But the one who maintains that stuff (Manu Abraham) seems to regard the dst driver as his only one property, i. e. in his personal rules system the open source philosophy seems to be abolished, like in a small virtual kingdom, you know! In fact he seems to have nothing in his mind except industrial interests. Anything else around this is just rubbish and bullshit for his deep reactionary policy, i. e. users needs do not exist for him at all. Fact is, he is only ONE copyright owner. Plus: In a private mail he wrote me that "he does hate people adding their copyright to code that he ever touched". Fact is, if one dares to mix himself in order to help (like f. ex. Trent Piepho) then this person is flamed! But the main issue about it all is the conceptionlessness of the copyright owner (Manu): There are "frontend not found"-issues still unresolved in the stock kernel, but the copyright owner does not have any idea how to resolve the issue. Plus: As a consequence he smashes other people who offer nothing but help. As a consequence of his own conceptionlessness! And I asked myself so often: How could we all try to overcome this ego bullshit? In so far my idea was to pull this stuff at least into mm-tree to give it a real testing chance. Just to establish facts contrary to the copyright owners throwing fog candles and smash other people down! The other alternative would be to get Trent's work rusty for months, if not to say years! And there were other issues that Manu still ignores, like the endless "cx24108 debug warnings" messing up the whole kern.log without making any sense. For instance, his "solution" to use "dprintk" instead of "printk" reagrding the dvb-bt8xx module to stop that idiotic debug messages like "cx24108 debug....." is nothing but rubbish. It's nonsense, it's crap, it's bullshit! What is the concept of Linux, Andrew? Is it evolution, like propagated publically (GKH), or is it a rulership of some small conceptionless self-established kings? You certainly can, as you did together with Linus, cry public tears that there is a structural lack of voluntary maintainers. That is correct and OK so far! But please what is the perspective to overcome that? Closing your eyes on conceptionless hindrance policy people blahblahing users request dead until everything has become calm, and, as a consequence, their stupid egos have every kind of "freedom" to treat other people or ordinary users like bullshit, i. e. simply ignore their requests? Now, if this is becoming normal case, who are the losers? Do you really think, Andrew, that you can go on simply ignoring ego trips like that? Have you, inofficially, capitulated as far as synergy principle and evolution (GKH) is concerned? My idea to overcome that ego trip bullshit is still to give it a chance to become fairly tested in the mm-tree: For the following reasons: 1. That is the purpose of the mm-tree. 2. That helps to find out the real technical withdraw issues ignoring the "small king ego trips" of some people who, in reality, do not want to admit that they haven't got any idea or concept!! Now, let us stick to the real facts: 1. Manu Abraham, as can be easily proven by some threads, does not have the slightest idea on how to resolve the "frontend not found issue", appearing on the linuxdvb ML list almost regularly, regarding "his self established small kingdom" of TwinHan DST modules. 2. If people touch "his majesties Manu Abraham code", he smashes them down by producing verbal spaghetti (fog candles) until they do not even dare to speak (incompetence, small knowledge, and stuff like that). If that does not help he executes ignoring policy, like every "pig-headed politician", not wanting to present his own limitations of knowledge. 3. A DST deselection patchset is a completely different issue compared to the unresolved "frontend not found" issue. He (Manu) is it personally to mix it up in order to produce verbal spaghetti to confuse people and users brains throwing fog candles. 4. If Manu Abraham calls other people "pig headed politicians" then he simply forgot to look into the mirror of his bathroom (hypocrite effect caused by individual lack of technical and, more severely: human competence and utmost small brained existence). Now, Andrew, just please do your job: Just please use the mm-tree as originally designed and do not conform to stupid dumb narrow-minded self-established small-brained kingdoms. Just give established code a real chance and please do not conform to utmost reactionary bad politics of some narrow-brained self-established kings! Just do your job and make Linux what it is: evolution, and nothing else. For the people who do not know what this mail is bound to I will add the code: This stuff was originally written by Trent Piepho. To be found here: http://linuxtv.org/hg/~tap/dst-new/ I modified it for current kernel needs (2.6.22-rc3). It should at least receive a fair chance to be tested in the mm-tree: Functions: - dst: Make the DST ASIC customizable - dst: Make dst more consistent with other helper drivers Signed-off-by: Uwe Bugla <uwe.bugla@xxxxxx> --- a/drivers/media/dvb/bt8xx/dst.c Fri Apr 27 12:16:31 2007 +++ b/drivers/media/dvb/bt8xx/dst.c Mon May 28 19:46:33 2007 @@ -1729,12 +1729,22 @@ static void dst_release(struct dvb_front static struct dvb_frontend_ops dst_dvbc_ops; static struct dvb_frontend_ops dst_atsc_ops; -struct dst_state *dst_attach(struct dst_state *state, struct dvb_adapter *dvb_adapter) -{ +struct dvb_frontend *dst_attach(struct dst_config *config, struct bt878 *bt, + struct i2c_adapter *i2c) +{ +struct dst_state *state = kzalloc(sizeof(*state), GFP_KERNEL); + + if (!state) { + printk(KERN_ERR "dst: No memory!\n"); + return NULL;; + } + state->i2c = i2c; + state->config = config; + state->bt = bt; + /* check if the ASIC is there */ if (dst_probe(state) < 0) { - kfree(state); - return NULL; + goto fail; } /* determine settings based on type */ /* create dvb_frontend */ @@ -1753,12 +1763,15 @@ struct dst_state *dst_attach(struct dst_ break; default: dprintk(verbose, DST_ERROR, 1, "unknown DST type. please report to the LinuxTV.org DVB mailinglist."); - kfree(state); - return NULL; + goto fail; } state->frontend.demodulator_priv = state; - return state; /* Manu (DST is a card not a frontend) */ + return &state->frontend; /* Manu (DST is a card not a frontend) */ + + fail: + kfree(state); + return NULL; } EXPORT_SYMBOL(dst_attach); --- a/drivers/media/dvb/bt8xx/dst_ca.c Fri Apr 27 12:16:31 2007 +++ b/drivers/media/dvb/bt8xx/dst_ca.c Mon May 28 19:47:33 2007 @@ -699,8 +699,9 @@ static struct dvb_device dvbdev_ca = { .fops = &dst_ca_fops }; -struct dvb_device *dst_ca_attach(struct dst_state *dst, struct dvb_adapter *dvb_adapter) -{ +struct dvb_device *dst_ca_attach(struct dvb_frontend *fe, struct dvb_adapter *dvb_adapter) +{ + struct dst_state *dst = fe->demodulator_priv; struct dvb_device *dvbdev; dprintk(verbose, DST_CA_ERROR, 1, "registering DST-CA device"); --- a/drivers/media/dvb/bt8xx/dst_common.h Fri Apr 27 12:16:31 2007 +++ b/drivers/media/dvb/bt8xx/dst_common.h Mon May 28 19:47:33 2007 @@ -177,11 +177,25 @@ int write_dst(struct dst_state *state, u int write_dst(struct dst_state *state, u8 * data, u8 len); int read_dst(struct dst_state *state, u8 * ret, u8 len); u8 dst_check_sum(u8 * buf, u32 len); -struct dst_state* dst_attach(struct dst_state* state, struct dvb_adapter *dvb_adapter); -struct dvb_device *dst_ca_attach(struct dst_state *state, struct dvb_adapter *dvb_adapter); -int dst_gpio_outb(struct dst_state* state, u32 mask, u32 enbb, u32 outhigh, int delay); - -int dst_command(struct dst_state* state, u8 * data, u8 len); - - +int dst_gpio_outb(struct dst_state* state, u32 mask, u32 enbb, u32 outhigh, int delay); +int dst_command(struct dst_state* state, u8 * data, u8 len); + +#if defined(CONFIG_DVB_DST) || (defined(CONFIG_DVB_DST_MODULE) && defined(MODULE)) +struct dvb_frontend *dst_attach(struct dst_config *config, struct bt878 *bt, +struct i2c_adapter *i2c); +struct dvb_device *dst_ca_attach(struct dvb_frontend *fe, struct dvb_adapter *dvb_adapter); +#else +static inline struct dvb_frontend *dst_attach(struct dst_config *config, + struct bt878 *bt, struct i2c_adapter *i2c) +{ + printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__); + return NULL; +} +static inline struct dvb_device *dst_ca_attach(struct dvb_frontend *fe, + struct dvb_adapter *dvb_adapter) +{ + printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__); + return NULL; +} +#endif // CONFIG_DVB_DST #endif // DST_COMMON_H --- a/drivers/media/dvb/bt8xx/dvb-bt8xx.c Fri Apr 27 12:16:31 2007 +++ b/drivers/media/dvb/bt8xx/dvb-bt8xx.c Mon May 28 19:47:33 2007 @@ -659,26 +659,17 @@ static void frontend_init(struct dvb_bt8 case BTTV_BOARD_TWINHAN_DST: /* DST is not a frontend driver !!! */ - state = kmalloc(sizeof (struct dst_state), GFP_KERNEL); - if (!state) { - printk("dvb_bt8xx: No memory\n"); - break; - } - /* Setup the Card */ - state->config = &dst_config; - state->i2c = card->i2c_adapter; - state->bt = card->bt; - state->dst_ca = NULL; /* DST is not a frontend, attaching the ASIC */ - if (dvb_attach(dst_attach, state, &card->dvb_adapter) == NULL) { - printk("%s: Could not find a Twinhan DST.\n", __FUNCTION__); + card->fe = dvb_attach(dst_attach, &dst_config, card->bt, + card->i2c_adapter); + if (card->fe != NULL) { + printk(KERN_ERR "%s: Could not find a Twinhan DST.\n", __FUNCTION__); break; } /* Attach other DST peripherals if any */ /* Conditional Access device */ - card->fe = &state->frontend; if (state->dst_hw_cap & DST_TYPE_HAS_CA) - dvb_attach(dst_ca_attach, state, &card->dvb_adapter); + dvb_attach(dst_ca_attach, card->fe, &card->dvb_adapter); break; case BTTV_BOARD_PINNACLESAT: --- a/drivers/media/dvb/bt8xx/Makefile Mon Apr 30 12:39:33 2007 +++ b/drivers/media/dvb/bt8xx/Makefile Thu May 28 19:47:00 2007 @@ -1,3 +1,4 @@ obj-$(CONFIG_DVB_BT8XX) += bt878.o dvb-b -obj-$(CONFIG_DVB_BT8XX) += bt878.o dvb-bt8xx.o dst.o dst_ca.o +obj-$(CONFIG_DVB_BT8XX) += bt878.o dvb-bt8xx.o +obj-$(CONFIG_DVB_DST) += dst.o dst_ca.o EXTRA_CFLAGS = -Idrivers/media/dvb/dvb-core/ -Idrivers/media/video/bt8xx -Idrivers/media/dvb/frontends --- a/drivers/media/dvb/bt8xx/Kconfig Mon Apr 30 12:39:33 2007 +++ b/drivers/media/dvb/bt8xx/Kconfig Mon May 28 19:47:00 2007 @@ -9,6 +9,7 @@ config DVB_BT8XX select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_PLL select DVB_ZL10353 if !DVB_FE_CUSTOMISE + select DVB_DST if !DVB_FE_CUSTOMISE select FW_LOADER help Support for PCI cards based on the Bt8xx PCI bridge. Examples are @@ -21,3 +22,11 @@ config DVB_BT8XX an external software decoder to watch TV on your computer. Say Y if you own such a device and want to use it. + +config DVB_DST + tristate "Support for TwinHan DST boards (CA) and clones" + depends on DVB_BT8XX && DVB_CORE && I2C + default m if DVB_FE_CUSTOMISE + help + Support for the following boards: TwinHan DST or clones, Pinnacle PCTV Sat CI, Chaintech DST-1000, DNTV Live ! + Say Y if you own such a device and want to use it. P. S.: I never liked pseudo-authorities, produced in whatever economic system or society, and, as opposite I do declare that I do hate them like I do hate the pest. I never liked people abolishing the synergy or community principle for just pursuing their egomanic ego trip interests, and, as opposite I do declare that I do hate them like I do hate the pest. If there is a concept of a world to be ruled by small brained expert egoistic ellbow dummies and deeply asocial idiots then this world concept never really wanted or intended to conform to any kind of community effort or synergy. FUCK ALL REACTIONARIES! They are no help at all, but they are, behind their petit bourgeois masks, nothing but personified reactionary hindrance factors! And that's why nobody needs them at all! They are obsolete! I bet that none of the CCed persons ever did listen to Bob Marley's Reggae music. I swear I did and I understood the message behind it all! _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb